首页IT科技slam源代码(SLAM十四讲CH8代码)

slam源代码(SLAM十四讲CH8代码)

时间2025-04-30 13:26:27分类IT科技浏览3132
导读:在SLAM十四讲的代码编译过程中direct_method.cpp和optical_flow.cpp有CV_GRAY2BGR语句的报错...

在SLAM十四讲的代码编译过程中direct_method.cpp和optical_flow.cpp有CV_GRAY2BGR语句的报错

这是因为CV_GRAY2BGR是opencv2的用法          ,而slambook2的的cmakelist.txt中opencv的库用的是opencv4               ,

因此要将CV_GRAY2BGR改为cv::COLOR_BGR2GRAY      ,这是用来将彩色图转换灰度图的     ,之后就可以顺利编译

但是编译之后               ,在运行代码的时候会出现英文报错           ,意思是输入的图片通道数无效     ,(核心已转储)

这是因为在slambook2的ch8中提供的图片本身就是单通道的灰度图               ,不需要进行转换           ,因此只需要将相应的代码

注释,再修改一下就好了          。修改如下:

两个cpp文件中的有关彩色图转换的代码都需要修改               ,否则都会报错               。

// cv::cvtColor(img2, img2_CV, cv::COLOR_BGR2GRAY);注释掉这句

img2.copyTo(img2_CV); 直接将输入的图像拷贝给img2

另外图片路径问题                ,由于再编译的时候我们会习惯mkdir一个build文件夹,编译到这个文件夹里          ,因此再运行时

可以将direct_method和optical_flow复制到ch8文件里                ,然后运行      ,或者在代码里将图片路径的代码修改一下

例如:string left_file = "./left.png";改为string left_file = "../left.png";

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
seo网站流量计算公式(掌握SEO的基本步骤,轻松提升网站流量) yolov5 detect.py报错(YOLO v5 代码精读(1) detect模块以及非极大值抑制)