学习SLAM14讲出现的一些问题

在学习高翔视觉SLAM14讲上出现的一些小问题,给自己做个笔记,顺序不固定,哪里出的毛病随手就记上了。代码可能有些表达不规范,但意思没错,都是已经解决过的问题,做个参考吧。

1.ch5

terminate called after throwing an instance of  ' cv::Exception ' what ()  : opencv(3.4.15) / home / xxx /opencv 3.4.15 / modules / highgui /src / window.cpp:658:error:( -2:unspecified error ) The function is not implemented.(xxx→用户名)

配置库出现问题,opencv库安装依赖没有安装在3.4.15文件下

2.PCL点云和SLAM问题

官网下载PCL后,提示C++14报错,C++ no match

在CMAKE文件中将以下代码加入

ADD_COMPIE_OPTIONS(-std==c++11)

ADD_COMPIE_OPTIONS(-std==c++14)

set (CMAKE_CXX_FLAGS "-std = c++11-03")

提示PCL写入错误,需观察所测试文件(包含深度文件和彩色文件)是否放入build文件夹中

3.ceres编译问题

2022年的时候自己下载的ceres使用c++17运行,之后版本不保证能运行成功。只针对c++17情况

在CMAKE中修改

ADD_COMPILE_OPTIONS (-std = c++17)

set (CMAKE_CXX_FLAGS "-std = c++17")

4.Sophus编译问题(参考大佬:《视觉slam十四讲》ch4学习笔记——sophus库使用的问题及解决方法_slam十四讲ch4代码中的sophus报错连接-CSDN博客

4.1.找不到eigen等

在CMAKE.txt文件中加

include_directories ("usr/include/eigen3/")

4.2.找不到Sophus/so

在CMAKE.txt文件中加

include_directories ("home/xxx/sophus")

(xxx→sophus库位置)

5.error: missing template arguments before "SO3_R" 

由于用的是模板类的sophus库,因此要修改usesophus.cpp文件夹中的头文件。

将头文件.h 改为 

#include "sophus/so3.hpp"

#include "sophus/se3.hpp"

6.出现fmt问题

将CMAKE.text文件中添加

tarrget_link_libraries(usesophus $ {sophus_LIBRARIES} fmt)

7.对于乌班图系统出现缓存锁的问题,主要表现在双系统中分配的磁盘空间占用完了,无法进一步操作时,先不要急着做挂载操作,新人(菜比如我)容易对改到系统盘

建议操作台

sudo rm / var / lib / dpkg / lock-frontend

sudo rm / var / eache / apt / archives / lock

sudo rm / var / lib / dpkg / lock

8.Opencv 相关问题

8.1依赖项 (参考大佬:《视觉SLAM十四讲》第五讲ch5实验错误总结_slam14 ch5 undistortimage-CSDN博客

8.2编译成功,没有图像结果和数据

进入“运行”→“匹配启动”→“参数”→将文件读取地址导入

也可以

在 cv::imread("xxxx")

处xxxx中填写文件绝对路径

9.g2o配置问题

如果你是自己下的官网新的库,那确实痛苦如我

书上给的g2o库的构架太早,导致main.cpp代码错误

9.1.先移除g2o库

(1)删除g2o头文件,位于/usr/local/include/g2o下

sudo rm -r/usr/local/include/g2o

(2)删除g2o库文件,位于/usr/local/lib下

sudo rm -r/usr/local/lib/libg2o

(3)删除g2o可执行文件,位于/usr/local/bin下

sudo rm -r/usr/local/bin/g2o

9.2.在安装书中给的g2o库(上b站找找,没有估计得上github)

9.3.最后要用新库的话需要将老库移除后再重新安装(微笑)

10运行ch7时

在终端打开ch7,输入build/xxxx1 xxxx2 xxxx3 ....

xxxx1:cpp运行的文件,不是.cpp

xxxx2:文件

xxxx3:文件

11.ch8,光流,LKflow

11.1 Python3 associate.py rgb.txt depth.txt > associate.txt   出现 no module named numpy

→pip install numpy

→在执行最开始命令

11.2 directMethod

(1) CMAKE,c++11改c++14

(2) CMAKE,python改python3

11.3 .cpp文件→可编译无法运行

poseEstimationDirect函数后加return ture

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值