完整跑出orb_slam2 with labelling记录

orb_slam2 with labelling遇到问题总结

1.前面基本按照作者大佬的git进行配置:
ubuntu18.04+CUDA-8.0+opencv2.4.8+pcl-1.8+Eigen3.2+g+±5.5

在配置之前,需要先将gcc-7.5降到gcc-5.5,这点最开始就用软连接的方式弄好,不然后面会很麻烦;

CUDA-8.0必须要gcc-6以前才能编译成功,没办法;;

建议用opencv2.4.8,先踩了opencv3.4的坑,后面装了2.x和3.x两个。。。
编译时最好将2.4.8单独再新建一个文件夹/usr/local/opencv2.4。。。
将CUDA和FFmpeg关掉。

源代码编译pcl-1.8,ubuntu自带1.7,但是个人感觉不太好用,安装之前,相关依赖要装好,还有VTK这些。

Eigen3.2就正常源代码编译就好。

2.然后工程编译成功之后,运行出现segmention fault;
在这里插入图片描述分析感觉是可视化的问题,pangolin和pcl库的原因

3.向作者大佬请教之后将pcl-1.8加上c++11之后重新编译了以下。
SET(CMAKE_C_COMPILER “/usr/bin/gcc-5”)
SET(CMAKE_CXX_COMPILER “/usr/bin/g+±5”)
set(CMAKE_C_STANDARD 11)
set(CMAKE_CXX_FLAGS “${CMAKE_CXX_FLAGS} -std=c++11”)
#add_definitions(-std=c++11)

3.将YOLO3.weights放入bin中,并新建img文件夹;
系统可以运行了,但是出现几帧之后退出的情况。
在这里插入图片描述中间也想了一些办法,但是好像YOLOv3SE与pcl有冲突。
后来发现应该是跟pangoline冲突了,而且这个库用起来不太友好,所以准备换个思路。

4.跟作者大大沟通之后,决定用torch版本的YOLOv3库来代替libYOLOv3SE,后续测试情况再来更新。。。

来更新啦。。。。
首先把相关环境更新了一下:CUDA10.1+cudnn7.5+OpenCV3.4
1)下载libtorch-yolov3库,git地址libtorch-yolov3
2)在pytorch官网下载libtorch
(这一步官网只有最新的1.5的链接,但是从1.5开始,编译需要使用c++ 14的标准,如果要用之前版本的可以参看libtorch不同版本
这个工程中我为了避免兼容性问题使用的是libtorch-1.4-cu101
一个重要的问题:
一定要写在带有-cxxabi的libtorch非预编译版本,不然后面编译orb_slam2 with labelling会出现未定义的引用

具体见libtorch与pangolin的冲突
3)编译libtorch-yolov3

mkdir build
cmake  -DCMAKE_PREFIX_PATH="your libtorch path" ..
make
./yolo-app ../imgs/dog.jpg

期间cmake可能会出现
在这里插入图片描述忽略就行,应该能出结果了。
4)测试完之后将libtorch-yolov3整合进工程中的PointcloudMapping::viewer中即可
5)编译过程中还遇到一个问题
usr/include/vtk-6.2/vtkAtomicInt.h:307:28: error: reference to ‘detail’ is ambiguous.
解决方法见VTK detail错误

完整配置下来就可以正常使用了,我的实际测试图。
实际运行图

  • 4
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 19
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 19
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值