自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 PCL计算点的法向量pcl::PointNormal,构造函数失败

但是会出错,我的环境是1.8.1跑起来失败了,原因是pcl::PointNormal()构造函数,pcl1.8.1不支持这种写法,pcl1.12的可以。修改成pcl::_PointNormal可以解决问题。

2023-04-16 20:25:49 650 1

原创 【slam14】安装多个opencv版本

安装了opencv4的基础上安装opencv3

2022-06-23 15:51:42 1439

原创 读取txt数据文件算法

1.istringstream【C++】使用istringstream根据分隔符分割字符串 - Flix - 博客园istream& getline ( istream &is , string &str , char delim );第一个参数为 is 表示一个 istringstream,第二个参数表示我们要将字符串分割的结果通过 getline 逐个放入 str 中,第三个参数为分隔符,注意分隔符只能为字符型,默认的是空格分隔,如果是逗分割,即',',而不是字符

2022-05-31 10:49:03 820

原创 vs2017 qt 修改exe图标没有更新成功

VS 中生成 EXE 时,修改图标一直没有改动的问题_W_SX12553的博客-CSDN博客

2022-04-27 22:53:43 905

原创 boost::filesystem 由相对路径创建文件

#include <pcl/io/pcd_io.h>#include <boost/filesystem.hpp>#include <iostream>using namespace std;int main(int argc, char* argv[]){ std::string str = "D:/repo/CompoundGrinding/x64/Release/Data/GlobalRubber_defect.pcd"; pcl::PointC..

2022-04-12 10:13:29 1950 1

原创 【slam14讲】g++ 更改生成的程序文件名

g++ (源代码) -o (程序名字)g++ test.cpp -o test,那么结果就是在文件目录下会生成执行文件

2022-04-03 13:46:55 409

原创 vs2017debug E0020 未定义标识符“xxx“

结构光项目文件目录common/common.h与pcl的pcl/common/common.h冲突,此时刻通过F12可以跳转到相应的程序代码里面,但是项目编译的时候会跳过,将结构光文件目录common/common.h文件重命名为common/common_fsl.h,编译通过。或者include搜索路径设置,不要同时可以找到两个common.h文件...

2022-02-24 09:46:51 2266

原创 Flir相机spinnaker库配置缺少directshow

1>VideoInput.obj : error LNK2001: 无法解析的外部符号 IID_ICreateDevEnum1>VideoInput.obj : error LNK2001: 无法解析的外部符号 IID_IBaseFilter1>VideoInput.obj : error LNK2001: 无法解析的外部符号 CLSID_SystemDeviceEnum1>VideoInput.obj : error LNK2001: 无法解析的外部符号 CLSID_Vide

2022-02-17 09:56:36 1767

原创 matlab2018a 中文乱码问题(修改lcdata.xml 没用)

matlab2018a 中文乱码问题(win10)_果小仁的博客呀-CSDN博客_matlab2018注释乱码

2022-01-18 18:50:06 1698

原创 VS的RelWithDebInfo模式设置

debug用release进行程序调试C++>General->Debug Information Format->Program Database (/Zi) C++>Optimization->Optimization->Disabled (/Od) Linker->Debugging->Generate Debug Info->Yes (/DEBUG) Linker->Debugging->Generate Program .

2022-01-11 10:23:41 2016

原创 PCL包围盒计算原理及代码

[算法][包围盒]球,AABB,OBB - 南水之源 - 博客园

2022-01-04 22:06:45 3424

原创 pcl+vtk 程序编译无法解析的外部符号

#define vtkRenderingCore_AUTOINIT 3(vtkInteractionStyle,vtkRenderingFreeType,vtkRenderingOpenGL2) VTK_MODULE_INIT(vtkRenderingOpenGL);错误1error LNK2019: 无法解析的外部符号 "void __cdecl vtkRenderingOpenGL_AutoInit_Construct(void)" (?vtkRenderingOpenGL_...

2022-01-04 14:59:54 1277 1

原创 PCL数据类型union格式设置

struct 和 class内存对齐

2021-12-29 16:06:43 166

转载 【C++】字符串printf格式化输出

1.转换说明符 %a(%A) 浮点数、十六进制数字和p-(P-)记数法(C99) %c 字符 %d 有符号十进制整数 %f 浮点数(包括float和double) %e(%E) 浮点数指数输出[e-(E-)记数法] %g(%G) 浮点数不显无意义的零"0" %i 有符号十进制整数(与%d相同) %u 无符号十进...

2021-12-24 19:04:36 3704

原创 QTimer::singleShot(0, this, slot函数);

意味只要构造函数结束,同时主窗口显示出来就调用loadFile()函数,这样不会因为加载文件太大屏幕上看不任何东西。在exec或show一个QWidget(及其子类)时,如果构造函数中需要做的工作需要消耗较多时间,会导致用户启动程序后,很长时间看不到界面的弹出。特别是如果这个消耗时间很长的工作并不影响程序的UI,而让用户去等待较长的时间显然是不合适的。 一个带UI的程序,如果在构造时需要用到UI的一些geo相关参数(如size),可能会出现显示问题。因为在构造动作结束之前,UI是不显示的。而UI.

2021-12-24 17:09:38 2628 1

原创 vs添加dll动态库的方法

无论是设置DLL目录,或者是Lib目录,亦或是头文件的目录,都有release版本和debug版本的区分,每种版本的设置都是独立的,要分别设置。一、VS中添加LIb库及头文件(外部依赖项)的步骤:1、添加工程的头文件目录:工程---属性---配置属性---c/c++---常规---附加包含目录:加上头文件存放目录。2、添加文件引用的lib静态库路径:工程---属性---配置属性---链接器---常规---附加库目录:加上lib文件存放目录。 然后添加工程引用的lib文件名:工程...

2021-12-15 10:07:48 17067 1

原创 机器人齐次变换矩阵 相机标定坐标系变换 几何含义

6. 机器人正运动学---齐次变换矩阵的三种解读_hitgavin的博客-CSDN博客_齐次变换矩阵相机标定坐标系转换表示SLAM入门之视觉里程计(6):相机标定 张正友经典标定法详解 - Brook_icv - 博客园

2021-12-14 22:41:29 1825

原创 ubuntu18.04 /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.28‘ not found

ubuntu18.04上 /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.28‘ not found_cumtchw-CSDN博客

2021-12-13 14:25:57 13792 7

原创 ifstream 文件存在的判断

文件存在的判断_yishang44的博客-CSDN博客_expect 判断文件是否存在

2021-12-13 14:07:50 1441

原创 相机标定函数说明

1.findChessboardCorners参数说明CALIB_CB_ADAPTIVE_THRESH 使用自适应阈值法把图像转换为黑白图,而不是使用一个固定的阈值。CALIB_CB_NORMALIZE_IMAGE 在利用固定阈值或自适应阈值法二值化图像之前,利用直方图均衡化图像。CALIB_CB_FILTER_QUADS 使用额外的标准(如轮廓面积,周长,正方形形状)来过滤掉在轮廓检索阶段提取的假四边形。CALIB_CB_FAST_CHECK 对图像运行一个快速检查机制以查找棋盘板的角点,

2021-12-12 19:29:42 3186

原创 vector:emplace_back与push_back区别

push_back()向容器中加入一个右值元素(临时对象)时,首先会调用构造函数构造这个临时对象,然后需要调用拷贝构造函数将这个临时对象放入容器中。原来的临时变量释放。这样造成的问题就是临时变量申请资源的浪费。引入了右值引用,转移构造函数后,push_back()右值时就会调用构造函数和转移构造函数,如果可以在插入的时候直接构造,就只需要构造一次即可。这就是c++11 新加的emplace_back。emplace_back造成的引用失效​​​​​​实战c++中的vector系列--empl.

2021-12-12 19:08:44 637

原创 DBL_EPSILON和 FLT_EPSILON

DBL_EPSILON和 FLT_EPSILON主要用于双精度和单精度的比较当中,判断double或float变量的值趋0最小的判断值:double b = sin(M_PI / 6.0);if (fabs(b - 0.5) < DBL_EPSILON) return;float a,b;if (fabs(b - a) < FLT_EPSILON) x++;...

2021-12-12 18:54:47 2273

原创 ubuntu16系统环境配置+openMVS

1. ubuntu16系统安装和分区设置.1

2021-10-14 23:04:44 898

转载 显影剂分类

下面是对各类3d扫描仪显影剂的使用心得分享,希望能帮您在使用选择时提供到一定的参考,更好解决在扫描中遇到的问题。到目前为止,即使是的3d扫描仪,在几个应用的情况下也有必要先使用显影剂进行消光处理。a)透明零件正如我们处理光学技术,光线需要从表面反射回3d扫描仪的检测器里,但是如果是透明的表面,光线会直接穿过零件表面而不是反射到检测器里,因此3d扫描仪无法捕抓工件表面的三维数据。b)反光件如果是反光件,如:镜子,光束将以集中的方式反射,而不是以扩散的方式反射。这就意...

2021-07-08 17:30:05 951

原创 三维测量设备的参数指标含义

分辨率Resolution:单位尺寸中所包含的像素点数,其定义更趋近于分辨率本身的定义。线性度Linearity:是描述传感器静态特性的一个重要指标,以被测输入量处于稳定状态为前提。在规定条件下,传感器校准曲线与拟合直线间的最大偏差(ΔYmax)与满量程输出(Y)的百分比,称为线性度(线性度又称为“非线性误差”),该值越小,表明线性特性越好。准确性/相关性Accuracy:精确(性),准确(性)测量结果与目标值之间的差额小。重复性Repeatability:是用本方法在正常和正确操作情况下,由同一操作

2021-06-11 16:38:45 1057

原创 installshield2020项目部署打包详细教程

https://blog.csdn.net/songisgood/article/details/114693794

2021-05-06 11:45:50 2925

原创 windows 10上使用vscode编译运行和调试C/C++

https://zhuanlan.zhihu.com/p/77645306

2021-04-21 11:27:08 106

转载 opencv的Mat与Eigen的Matrix相互转换

https://humfrey.blog.csdn.net/article/details/107387479

2021-04-19 19:44:57 225

原创 Git本地回滚重新修改代码再push到远程问题

1.git reset --hard '版本id'回退到某个版本,清空暂存区,将已提交的内容的版本恢复到本地,本地的文件也将被恢复的版本替换。 2.回退版本后,未push到远程就修改了本地代码,修改完后再push到远程,提示先pull。问题是pull远程代码就覆盖掉本地修改的了。 3.回滚远程分支,git push -f origin master.但是由于gitlab对仓库启用了保护,报如下错误 remote:GitLab:Youarenotallowedtoforce...

2021-04-15 20:15:31 2328

原创 主函数里面调用了模板类的函数,出现无法解析外部符号问题

1.问题原因:https://blog.csdn.net/qq_41884002/article/details/99816073简而言之,在C++中由于模板类的自身不确定性,当一个模板没有被调用时,它就不会被具体化出来,也就是说在一个编译单元里,如果使用模板类的函数没有被其他函数调用的话,是没有生成二进制代码的,因为编译器并不知道这个函数是属于哪个类型(int,float,等等),所以无法给这个函数分配合适的内存空间,只有当其他函数调用模板类的函数时,才能确定类型,模板类才能被具现化。2.解决

2021-03-22 12:12:34 771

原创 【C++数据结构】复杂度分析

1.时间复杂度通过统计、监控,计算算法执行的时间和占用的内存大小,叫事后统计法。但是这种方法的测试结果非常依赖测试环境,而且测试结果受数据规模的影响很大。所以,我们需要一个不用具体的测试数据来测试,就可以粗略地估计算法的执行效率的方法。大 O 复杂度表示法,大 O 时间复杂度实际上并不具体表示代码真正的执行时间,而是表示代码执行时间随数据规模增长的变化趋势,所以,也叫作渐进时间复杂度,简称时间复杂度。只关注循环执行次数最多的一段代码,加法法则:总复杂度等于量级最大的那段代码的复杂度,乘法法则:嵌

2021-03-09 11:32:05 684 1

原创 【C++数据结构】学习重点

1.没必要深挖严格的定义,但是这并不等于不需要理解概念。数据结构是为算法服务的,算法要作用在特定的数据结构之上2.想要学习数据结构与算法,首先要掌握一个数据结构与算法中最重要的概念——复杂度分析。3.数据结构与算法的正文内容一共有20 个知识点,这里面有 10 个数据结构:数组、链表、栈、队列、散列表、二叉树、堆、跳表、图、Trie 树;10 个算法:递归、排序、二分查找、搜索、哈希算法、贪心算法、分治算法、回溯算法、动态规划、字符串匹配算法。在学习数据结构和算法的过程中,不...

2021-03-09 09:39:20 697

原创 【C++数据结构】单链表

参考1.https://blog.csdn.net/qq_34536551/article/details/91126712

2021-03-01 08:37:19 106

原创 为什么delete指针还能被赋值

将指针p删除了,但是在监视窗口中p仍然存在,只是*p所指向的值不再是原来的3了,而是一个随机数。这里就说明了一个非常重要的概念:我们在删除一个指针之后,编译器只会释放该指针所指向的内存空间,而不会删除这个指针本身。实际意思是删除了p所指的目标(变量或对象),释放了它所占的堆空间,而不是删除p本身(指针p本身并没有撤销,它自己仍然存在,该指针所占内存空间并未释放,指针p的真正释放是随着函数调用的结束而消失),释放堆空间后,p成了"空指针"。如果我们在delete p后没有进行指针p的制空(p=NULL)的话,

2021-02-25 16:28:15 895

原创 【CMake入门】多目录多源文件简单布局

1.工程目录结构main.cc的内容#include <stdio.h>#include <stdlib.h>#include "math/MathFunctions.h"int main(int argc, char *argv[]){ if (argc < 3){ printf("Usage: %s base exponent \n", argv[0]); return 1; } double

2021-02-22 16:43:41 402

原创 数组地址加一详解

int a[5]={1,2,3,4,5};//int *a=new int[5];int *ptr=(int*)(&a+1); //&a+1相当于加了数组的一个单位(也就是一行),即&a[5]printf("%d", *(p-1)) //指针p-1相当于前移一个元素,输出为5a是数组首地址a[0]的地址,&a是对象(数组)首地址;a+1,表示指针指向下一个元素a[1],这是因为系统在内存中为数组分配一个连续.

2021-01-29 10:03:01 7611 4

原创 VS的RelWithDebInfo模式

Visual Studio之RelWithDebInfo模式,“被忽视”的编译模式https://blog.csdn.net/inter_peng/article/details/53933206VS如何新建RelWithDebInfo模式https://blog.csdn.net/jacken123456/article/details/109645242

2021-01-26 16:17:38 689

原创 线程池还没运行完毕 main函数就结束了

例子:本应该执行30次,结果执行了9次就结束了#include <iostream>#include <chrono>#include "ThreadPool.hpp"class Test{public: void fun1() { std::cout <<"No paras "<< "working in thread " << std::this_thread::get_id() << std::endl;

2021-01-08 21:37:35 1215

原创 【C++11多线程】多线程之生产者与消费者

参考1.https://www.cnblogs.com/pandamohist/p/13852197.html

2020-12-31 19:27:45 300

原创 【C++11多线程】线程池原理与实践

索引目录

2020-12-31 18:35:19 390

空空如也

空空如也

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

TA关注的人

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