自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(41)
  • 收藏
  • 关注

原创 Ubuntu自启动设置

5. 设置开机自动启动。4. 给文件增加权限。

2023-10-23 18:22:52 399

原创 代码书写命名规范示例

解析:前面小写代表类型 vector用v表示,string用str表示, bool用b表示,pointer用p表示;首字母大写代表变量名称。

2023-09-12 18:14:44 109

原创 ubuntu常用命令

sudo rm -rf /opt/*** 强制删除系统盘中的东西。sudo dpkg -i ***.deb 安装安装包。sudo apt-get remove *** 删除安装包。rs-sensor-control 用于获取相机内外参。free -m命令用于查询ubuntu系统内存剩余量;tar -xf ***.tar.gz 解压。touch命令用于创建文件或文件夹;

2023-09-12 18:14:40 156

原创 VSCode常用设置

调整编辑器的宽度来适应整个代码视图:使用快捷键Ctrl + ,),然后搜索 "Editor: Word Wrap"。将此选项设置为“on”,VSCode将自动调整编辑器宽度以适应代码的长度。 如果你想要折叠所有的代码,可以按下Ctrl + K,然后按下Ctrl + 0。 如果你想要展开所有的代码,可以按下Ctrl + K,然后按下Ctrl + J。 选中需要折叠的代码块,按下Ctrl + Shift + [快捷键。

2023-09-12 18:14:35 385

原创 c++总结

基础知识

2022-12-15 17:20:28 672 1

原创 opencv标定

相机内外参标定参考:https://jingyan.baidu.com/article/7f41ecec5877eb593d095ce9.html手眼标定参考:https://blog.csdn.net/hellohake/article/details/104808149https://blog.csdn.net/weixin_41698305/article/details/110133734

2021-08-23 10:00:50 99

原创 LEETCODE链表

1. 判断链表是否为空if(head==nullptr)

2021-07-26 09:46:35 125

原创 ubuntu18.04+ros+zed(一)

1、安装参考:https://blog.csdn.net/jiejiemcu/article/details/105314870#commentBox

2021-05-26 15:59:44 760 1

原创 ubuntu系统学习(1)

1. 查看ubuntu版本lsb_release -a2. 安装软件已安装有输入法fctix,3. 删除文件或文件夹指令cd 文件夹目录rm -r 文件夹名称4. 截图快捷键shift+printscreen 选中某区域截图alt+printscreen 对当前窗口截图printscreen 屏幕截图...

2021-05-17 14:12:47 125

原创 LEETCODE:数组

1、二维数组vector<vector<int>> A的尺寸://vector<vector<int> >A中的vector元素的个数len = A.size();//vector<vector<int> >A中第i个vector元素的长度len = A[i].size();//访问跟数组访问相同A[i][j]//赋值vector<vector<int>> B=A;2、swap

2021-04-16 11:34:04 72

原创 LEETCODE:字符串

1. 判断字符串中字符的唯一性string和CString的区别:CString是MFC或者ATL中的实现。这也就是在MFC、ATL中使用字符串尽量使用CString,它比其它更有优势,方便好用。string是C++标准库中的实现。最大的优点就是移植性非常好,而且标准库中提供了强大的泛型算法。(不要和<string.h>弄混,<string.h>提供了一些strcat,strcpy等函数;而string是完整的类,头文件是<string>)string的使用

2021-03-26 10:18:21 92

原创 caffe初体验

1. 安装flash插件参考:http://blog.sina.com.cn/s/blog_1a078b8470102yzra.html2. 学习caffe参考:https://www.bilibili.com/video/BV1pt411D7ud?from=search&seid=14601061253438027264

2021-03-04 17:25:58 102 1

原创 双系统安装(win10+ubuntu)以及深度学习环境搭建

参考:https://www.cnblogs.com/masbay/p/10745170.html遇到问题:1. 开机后没有系统选择界面参考:2. 安装anaconda+pycharm参考:https://blog.csdn.net/qq_15192373/article/details/81091098https://blog.csdn.net/qq_40726937/article/details/1052850923. ubuntu18.04添加Pycharm快捷方式参

2021-03-03 17:17:20 462 1

原创 努力学习c++的一天(十二)

1. 联合体union一个 union 可以有多个数据成员,但是在任意时刻只有一个数据成员可以有值。当某个成员被赋值后其他成员变为未定义状态。默认访问控制符为 public 可以含有构造函数、析构函数 不能含有引用类型的成员 不能继承自其他类,不能作为基类 不能含有虚函数 匿名 union 在定义所在作用域可直接访问 union 成员 匿名 union 不能包含 protected 成员或 private 成员 全局匿名联合必须是静态(static)的2. 全局变量和全局静态变量、局

2021-02-26 16:18:11 357

原创 Ubuntu系统下编译.h和.cpp

1. 新建一个test文件夹,其中再新建.h和.cpp文件mkdir testcd testmkdir includemkdir srccd includetouch myhead.htouch myhend.cppcd ..cd srctouch main.cpp2. 编辑.h 和.cppgedit myhead.hgedit mygead.cppgedit main.cpp3. 编译链接cd includeg++ -c myhead.cpp -o myh

2021-02-24 11:14:39 1693

原创 ubuntu系统下编译cpp程序(一)

1. 检查有无安装g++ 命令:g++ -v(查看版本号)如果未安装,安装命令: sudo apt-get install g++2. 创建cpp文档~$ touch test.cpp3. 打开cpp,编写代码保存~$ gedit test.cpp4. 编译~$ g++ test.cpp -o test-o指定输出文件, 最后一个test表示输出的文件的名称。5. 运行~$ ./test6. 测试完毕之后删除文件(切记:rm指令一旦删除,不好恢复,慎用!...

2021-02-24 10:37:42 4512

原创 VS2019调试c++程序常见问题

1. vs出错提示程序无法正常启动(0xc000007b)解决方案动态库dll未加载成功,可以将dll库放入c盘----windows----system32中2. 未加载kernelbase.pdb目前还未找到解决办法啊3. 生成解决方案时,无法打开预编译头文件xxx.pch: No such file or directory的解决方法在解决方案资源管理器中:在项目右键–>属性,选择配置属性–>C/C++–>预编译头,在预编译头中选择“创建”,而不是原来默认的“

2021-02-24 09:45:44 2109 1

原创 努力学习c++的一天(十一)

1. c++函数模板所谓函数模板,实际上是建立一个通用函数,它所用到的数据的类型(包括返回值类型、形参类型、局部变量类型)可以不具体指定,而是用一个虚拟的类型来代替(实际上是用一个标识符来占位),等发生函数调用时再根据传入的实参来逆推出真正的类型。这个通用函数就称为函数模板(Function Template)。template<typename T> void Swap(T *a, T *b){T temp = *a;*a = *b;*b = temp;}templ

2021-02-24 09:44:58 99

原创 c++编程遵循规范

参考:https://developer.lsst.io/cpp/style.html1. 命名约定名称+修饰词 类名应大写每个单词首字母,例如ClassName 变量名尽量写成line_width 中间加下划线的格式 命名常量(const/enum)必须全部大写+下划线 int const MAX_ITERATIONS = 25; 私有成员变量和成员函数最前面加下划线 private: void _get_name(){}; 命名空间 首字母小写+驼峰式 布尔变量的命名采用 bool.

2021-02-22 11:31:54 97

原创 努力学习c++的一天(十)

1. string类使用 string 类需要包含头文件<string>参考:http://c.biancheng.net/cpp/biancheng/view/3284.html2. c++引用引用的定义方式类似于指针,只是用&取代了*,语法格式为:type &name = data;引用必须在定义的同时初始化,并且以后也要从一而终,不能再引用其它数据,这有点类似于常量(const 变量)。注意,引用在定义时需要添加&,在使用时不能添加&am

2021-01-15 11:31:23 152 1

原创 努力学习c++的一天(九)

参考:http://c.biancheng.net/cpp/biancheng/view/2971.html参考:https://ruochen.blog.csdn.net/article/details/90719951?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromBaidu-1.control&depth_1-utm_source=distribute.pc_relevant_t0.none-task-

2021-01-08 17:23:11 149

原创 努力学习c++的一天(八)

1. 析构函数前加virtual的作用是?继承时,要养成的一个好习惯就是,基类析构函数中,加上virtual。这是为了防止内存泄漏。假设基类中采用的是非虚析构函数,当删除基类指针指向的派生类对象时就不会触发动态绑定,因而只会调用基类的析构函数,而不会调用派生类的析构函数。那么在这种情况下,派生类中申请的空间就得不到释放从而产生内存泄漏。所以,为了防止这种情况的发生,C++中基类的析构函数应采用virtual虚析构函数。...

2021-01-08 10:51:12 88 2

原创 LINUX下的realsense相机标定

1. kalibr安装参考:https://blog.csdn.net/weixin_40725884/article/details/889339722. kalibr学习标定

2021-01-06 11:09:40 425

原创 halcon和opencv内参标定结果的关系

1、halcon相机内参标定的结果CameraParameters=[f(m),Kappa,Sx(m),Sy(m),Cx,Cy,width,Height]2、opencv相机内参标定的结果 3、两者之间的关系参考:https://www.pianshen.com/article/51301367667/https://stackoverflow.com/questions/58606394/halcon-to-opencv-distortion-coefficients-c...

2020-12-29 17:00:35 1437 1

原创 halcon 标定中找不到标识点的问题

首先一定要保证 标定板的位置位于相机准确调焦的位置实时改变亮度信息步骤 先拍照 看是否能提取到标定点然后在采集数据 采集数据时最好能输出Rpy 不用自己去写一次性完成标定

2020-10-25 13:28:57 3076

原创 努力成为优秀视觉工程师的一天(六)

参考:https://blog.csdn.net/c20081052/article/details/807038961. MobileNet网络MobileNet是Google最近提出的一种小巧而高效的CNN模型,其在accuracy精度和latency速度之间做了折中。MobileNet的基本单元是深度级可分离卷积(depthwise separable convolution),其可以分解为两个更小的操作:depthwise convolution和pointwise convolutio

2020-09-12 15:28:23 85

原创 努力学习c++的一天(七)

1. c++继承和派生的理解参考:https://blog.csdn.net/insistgogo/article/details/66452152. c++ 类的使用方法:定义类的目的其实是为了把很多变量、函数等的罗列到一起,这样程序更加简化、方便;//类的定义class Yxx{ public: //定义类成员的访问属性 int age; int height; int skin; int knowyxx.

2020-09-12 15:07:16 241

原创 视觉中光源的选择

如果想要边界非常清晰 而且没有阴影通常是背光 但是背光的最大影响就是光源在下面放置 容易怕压 而且灰尘等污渍对其影响也大另一种方案是在物体的四周打光 这样的话上面的问题就可以解决了 缺陷是物体周围得做个支撑光源的件儿 有可能会不太方便还有就是四周打光的高度问题 高度越高 距离越远 光斑越大 阴影问题就会解决通常在物体上方打光的话 最讨厌的是反光和阴影的问题 因为光源和物体的相对位置会影响反光和阴影的位置 所以使得视觉的算法很不稳定以前讨论都是基于普通的led灯除去特殊的无影光源等等之外..

2020-09-09 11:48:13 167

原创 Halcon连接大恒相机

1. 先使用大恒自带的图像采集exe 查看图像采集是否正常;2. 之后打开halcon的采集助手,注意选对接口!3. 选对设备,点击连接,然后实时采集,看是否成功4. 下一步就可以选择生成代码,一直到VS中即可;...

2020-09-03 10:26:49 4039

原创 努力学习c++的一天(六)

1. 创建一个新的基于对话框的VS MFC项目包括哪些文件?都是干嘛用的?头文件中包含:framework.h 预编译头文件MFC名称.h 应用程序头文件MFC名称Dlg.h 对话框头文件pch.h预编译标头文件resource.h用于标识控件的IDtargetver.h定义了程序运行需要的最低Windows版本2. MFC应用程序类型中单文档、多文档和对话框的区别是什么?对话框模板适合于做交互界面 单文档模板适合于做文件处理 多文档模板适合于...

2020-09-01 10:20:42 495

原创 努力成为优秀视觉工程师的一天(五)

参考:https://www.cnblogs.com/xiaoboge/p/10539884.html1. ResNet网络 从之前的经验我们可以知道,随着网络层数越深,网络训练的效果越好。但我们后来发现,传统的CNN网络结构随着层数加深到一定程度之后,越深的网络反而效果更差,过深的网络竟然使分类的准确率下降了! 那么为什么CNN网络层数增加分类的准确率却下降了呢? 难道是因为模型参数过多表达能力太强出现了过拟合?难道是因为数据集太小出现过拟合?显然都不是!!...

2020-08-26 09:34:54 121

原创 努力学习C++的一天(五)

1. stdafx.h和stdafx.cpp是用来干嘛的?StdAfx.h, StdAfx.cpp这些文件用于生成名为.pch 的预编译头 (PCH) 文件和名为 StdAfx.obj 的预编译类型文件。

2020-08-22 17:02:58 93

原创 努力学习C++的一天(四)

https://www.zhihu.com/question/19801131/answer/171560231. c++中回调函数是什么?回调函数 我的理解是 相当于配了一个秘书,我在办公室忙着我的事情,刚开始我就通知秘书,如果外面有人来访,秘书再来告知我,无事就请勿扰。那如果没有这个秘书,那只能是我忙死了。。。在这个例子中,有三个人,我就是程序的主函数,忙着做主程序的事情秘书就是登记回调函数,主函数在刚开始的时候就应该通知/调用登记回调函数(有人来了再来打扰我,没人就不要打扰我).

2020-08-12 16:09:01 72

原创 努力成为优秀视觉工程师的一天(四)

1. GoogleNet网络的深度理解GoogleNet相比AleXNet和VGG网络,最大的改进就是引入了Inception模块,为什么引入呢?根据前面神经网络的经验,我们需要通过增加网络深度(层数)来提高训练效果,但缺点是:层数多导致参数多,容易引起过拟合、梯度消失等问题,因此呢,解决上述缺点的根本方法是使用“稀疏连接结构”(为什么呢?一方面,现实中的生物神经网络连接本身就是稀疏的;另一方面,Arora等人证明,对于大规模的稀疏网络,可通过分析前一层激活值的相关统计数据和对高度相关的输出神经元聚类来

2020-08-12 11:58:42 78

原创 努力学习c++的一天(三)

1. 封装成dll和lib的区别是什么?首先,dll和lib都是链接库,dll是动态链接库,lib是静态链接库。静态库是指在链接的过程中,将该库中的代码完全复制到可执行文件中;动态库是指可以被不同进程调用但不属于可执行文件的函数,可由多个程序同时使用。总之,lib是编译时用到的,dll是运行时用到的。2. VS2019 c++封装成dll和lib的方法?...

2020-08-12 11:14:54 70

原创 努力成为优秀视觉工程师的一天(三)

1. 感受野的深刻理解?为什么感受野这么重要?感受野,receptive filed,也称之为接收的区域。其实有点类似于相机的视场,就是说它能匹配到的视野有多大,那么这里的感受野是用在卷积层面的一个概念,通过卷积可以改变一个图像的尺寸,感受野就是cnn卷积后的特征图上一点相对于原图的大小。因此,这个感受野的大小与卷积核的尺寸和数量等有关。神经元感受野的值越大表示其能接触到的原始图像范围就越大,也意味着它可能蕴含更为全局,语义层次更高的特征;相反,值越小则表示其所包含的特征越趋向局部和细节。因此感受野

2020-08-07 14:29:43 121

原创 Halcon 相机标定、手眼标定及机器人位姿矩阵的求解

1.相机内外参标定标定目的:为了获得相机的内参(焦距、畸变系数等)和外参(从世界坐标系转换到摄像机坐标系的旋转矩阵和平移矩阵)标定步骤:(1)相机固定,在放置物体的平面上放置halcon标定板;(2)拍摄标定板图像,拍摄要求如下图所示:(3)拍摄完毕后,打开halcon相机标定助手:(4)将第二步拍摄到的标定板图像输入,进行标定。(5)点击标定,内外参即可标定完毕。2.眼在手外的手眼标定眼在手外,是指摄像机(眼)和机械手(手)分离,眼的位置相对于手是固定的,如下图所示:手眼标定

2020-08-05 11:20:04 5644 15

原创 努力成为优秀视觉工程师的一天(二)

1. 经典神经网络AlexNet的理解(1)卷积层、池化层 和全连接层的理解 从宏观的角度看,如果我们要对一幅图像进行识别,从图像处理--像素的角度来看,每个物体不同像素的组成构成了不同的特征,通过这些特征来区分物体是什么;那么卷积层就是从图像中提取各种特征,池化层就是为了简化特征提取最重要的特征,这样可以减少识别的时间,全连接层就是把这些特征都组合起来,这样才能判断这个图像中到底是什么东西(2)卷积层是如何实现特征提取的 首先,从图像处理的角度,卷积本意是寻...

2020-07-29 10:31:49 148

原创 努力成为优秀视觉工程师的一天(一)

1. 经过RGBD-SLAM的一系列配置之后,重新打开pytorch的深度学习算法,在pycharm中在调用MatPlotLib库的时候遇到了如下问题:大概意思就是说 QT平台有些问题,估计是之前配置的时候修改了一些东西,所以这个问题的解决办法:...

2020-07-27 11:09:01 169

原创 努力学习c++的一天(二)

1. enum是什么类型?作用是什么?什么时候用?enum称为枚举数据类型,就是可以一个个列举出来的东西,比如星期几或者性别,可以清楚知道里面有什么内容的数据,一般使用形式是 enum 枚举名{枚举列表, ,}枚举变量名;其中枚举名和变量名都是可有可无的,枚举列表默认是从0开始赋值,逐渐加一的一个符号常量的几何,也可以直接进行整型常量的赋值;作用就是 相比const和define有了enum可以更加简洁的定义很多个符号常量,更加方便;一般是需要定义多个符号常量时,例如errorcode或者需要定义常量时

2020-07-23 17:24:10 107

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除