- 博客(16)
- 资源 (3)
- 收藏
- 关注
转载 Linux expect详解
随处可见的expect第一次见expect这个命令还是我第一次参加全量上线的时候,那是公司的一个牛人用Shell脚本写的一套自动部署、MD5 比对、发布的全量上线工具,没事的时候,看了下其中的几个脚本,好多的expect命令。实在是看不懂这个expect命令的用法,所以就找时间总结了这篇关于expect命令的文章。先抛出一个问题现在有两台Linux主机A和B,如何从A主机ssh到B主机,然后在B主机上执行命令,如何使这个过程实现全程自动化?你可能会使用这种方法:1ssh admin...
2021-08-28 15:49:49 1076
原创 vsCode+ROS源码调试(Debug ROS Source Code)
在Ubuntu16.04环境下使用vsCode调试ROS源码1、ROS源码安装参考官方wiki,这里简单整理;安装引导程序依赖项$ sudo apt-get install python-rosdep python-rosinstall-generator python-wstool python-rosinstall build-essential初始化并更新rosdep$ sudo rosdep init$ rosdep update创建catkin Workspace(.
2020-12-29 15:42:19 1024
原创 C#应用 保证在本机只启动一个
以WPF应用为例,在Application启动前进行Check 如把Check函数放在构造函数中。 public partial class App { public App() { //保证该应用本机只启动一个 SingleInstanceManager.SingleInstanceCheck(); ... } }SingleInstanceManager
2020-11-09 11:36:39 266
原创 示例学QT系列三——opengl window
已经不知道多少次看Learn OpenGL的你好,三角形了,这种感觉似曾相识:abandon、abandon、abandon ~ [捂脸]结果不出所料,好久没用,忘得一干二净。本篇就从OpenGL的一些概念说起吧。最终目的:使用QT+OpenGL绘制如下效果的三角形OpenGL与shader 我们知道在OpenGL中,任何事物都在3D空间中,而我们的显示介质是2D的像素空间,so OpenGL中很重要的一环就是把3D坐标转换为适应你屏幕的2D像素。3D坐标转换为2D坐标处...
2020-11-04 16:28:28 917
原创 C++11与简单线程池实现
C++11与简单线程池实现不足百行的线程池代码,里面有很多值得学习、借鉴的思想和方法(@_@~好学脸)class noncopyable{public: noncopyable(){} ~noncopyable(){}private: noncopyable(const noncopyable&); const noncopyable& operator= (noncopyable&){}};定义一不可拷贝的类,将该类拷贝构造函数与赋值运算符的重载..
2020-11-03 11:33:58 336
原创 示例学QT系列二——Bars Example
看了一些QT的教程和视频,当时个人感觉都听懂了,但真正开发过程中好像不知道去用它的一些特性和库,或者说又忘记怎么使用了~这几年的开发经验告诉我,代码放在具体项目中才能记忆深刻(是一长串“无情”的代码直观呢?还是一个绚丽的界面和功能呢?)刚好QT本身提供了非常多的示例源码,于是乎突发奇想,是不是把这些示例代码都搞懂,算不算熟悉QT了呢~(因为我之前有4年多的WPF和C++开发经验,所以示例代码看上去不是特别吃力,学习中总感觉QT是WPF的C++版,果然好的框架的设计模式都是潜移默化的)。但愿此系列可以坚持
2020-10-29 22:16:12 756
原创 示例学QT系列一——Movie Example
Movie Example(导入视频并控制播放)1、功能描述:如上图所示,下面一排控件有:视频导入、播放、暂停、重置、删除的功能;上面依次是视频播放窗口、是否FitToWindow、Current frame(播放条与视频同步);2、代码实现:从主函数开始看比较简单int main(int argc, char *argv[]){ QApplication app(argc, argv); MoviePlayer player; player.show..
2020-10-29 11:46:24 407
原创 OpenGL-Shader学习之基础知识介绍
Shader与OpenGL现代OpenGL渲染管线严重依赖着色器(shader)来处理传入的数据。可以这么说,如果不使用shader,用OpenGL可以做到的事情只有清除窗口了。从3.1版本开始,固定管线从core模式中去除,因此我们必须使用shader来完成工作。OpenGL渲染管线可以被划分为几个阶段,每个阶段会把前一阶段的输出作为输入,每个阶段都是有各自的分工。正是由于它们具有并行执...
2020-10-07 18:04:21 950
原创 C++11的新特性
C++11 是第二个真正意义上的 C++ 标准,其中增加了很多现代编程语言的特性~1、新类型C++11新增了类型long long和unsigned long long,以支持64位的整型;新增了char16_t和char32_t,以支持16位和32位的字符表示。2、统一的初始化C++11扩大了用大括号括起列表的适用范围int x = {5};double y {2.75};通过初始化列表初始化对象。class Foo{public: Foo(int) {}.
2020-10-07 18:02:28 183
原创 C++中的类型转换
C++有着丰富的数据类型(11种整型和3种浮点型),相同类型间运算的硬件指令可能会与其他类型间的不同。为了处理这种潜在的混乱,C++中存在了很多隐式类型转换隐式转换(1)基础类型short a=2000;int b;b=a; //将一种算术类型的值赋给另一种算术类型的变量这里无需任何显式操作,C++将short值转换为int,这种转换被称为整型提升(integral promotion);之所以称为提升,因其可以保证目标类型中会产生完全相同的值。当然基.
2020-09-26 17:28:32 1109
翻译 三维重建学习之旅(四)相机标定之(3)Matlab Calibration
上篇博客笔者大体上介绍了张正友标定的相关理论基础和数学框架,解决了学习之旅(二)中的问题:原理是什么?这篇博客具体介绍我们如何使用Matlab来对相机进行标定。 Matlab Calibration参考一位外国大神写的资料和工具在此我结合个人使用过后的理解,对此工具做一些介绍;首先下载toolbox_calib.zip,在上面超链接中有下载链接;解压之后放在工作
2016-06-28 10:34:28 5043 1
转载 三维重建学习之旅(三)相机标定之(2)张正友标定
相机的标定之二上一博客的最后笔者给出了几个变换的结合式,我们概括一下,很容易得到对应关系: 其中m的齐次坐标表示图像平面的像素坐标(u,v,1),M的齐次坐标表示世界坐标系的坐标点(X,Y,Z,1)。A[R t]即是上面一篇博客推出的P。R表示旋转矩阵、t表示平移矩阵、S表示尺度因子。A表示摄像机的内参数,具体表达式如下:α=f/dx,β=f/dy,因为像素
2016-06-27 10:52:43 5563 2
转载 三维重建学习之旅(二)相机标定之(1)
1、相机的标定我们先思考一下,相机是如何将现实中的物体呈现在二维图片上的?这一般分为三个步骤:刚体变换(regidbody motion),透视投影,离散化
2016-06-25 20:28:31 3462
原创 三维重建学习之旅(一)
笔者本身对三维比较感兴趣,无意中在学校中接触到了三维重建,因此在师姐和师兄的指导下,从0开始学习三维重建,越往里面学越感觉到里面的东西很多,在这里我只介绍我自己在三维重建过程中用到的方法、工具和一些算法、参考的博客、论文,其中的很多东西并不是重建中最佳的选择(但每一件我都亲身试验和深入了解过),我在学习中得到的每一点进步都是在前人无私的分享中获得的,因此写此博客的目的也是想将这种分享的精神延续下去
2016-06-25 17:20:06 13295 4
原创 Opencv中对Mat矩阵的简单操作(菜鸟级别)
作为初学opencv的菜鸟,对opencv中很基本的mat变量的一些简单操作进行了总结。参考博客:http://blog.csdn.net/mikedadong/article/details/51305640
2016-06-17 14:57:13 1484
原创 opencv内demo(find_obj.cpp)理解
#include "opencv2/objdetect/objdetect.hpp"#include "opencv2/features2d/features2d.hpp"#include "opencv2/highgui/highgui.hpp"#include "opencv2/calib3d/calib3d.hpp"#include "opencv2/nonfree/nonf
2016-06-09 13:33:17 1932
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人