0
点赞
收藏
分享

微信扫一扫

深度学习500问——Chapter02:机器学习基础(3)

云卷云舒xj 2024-03-05 阅读 16
3dubuntu

ORB-SLAM2编译运行

源码地址

源码链接:git clone https://github.com/raulmur/ORB_SLAM2.git

电脑配置

Ubuntu 18.04 + ROS Melodic + GTSAM 4.0.2 + CERES 1.14.0
pcl1.8+vtk8.2.0+opencv3.2.0

环境配置

之前已经配置过VINS-MOON的环境(可参考之前的博客)

编译

 cd ~/catkin_ws/src
git clone https://github.com/raulmur/ORB_SLAM2.git ORB_SLAM2
 cd ORB_SLAM2
chmod +x build.sh

将build.sh文件和build_ros.sh中的make -j改为make
ORB_SLAM2文件夹下的下列文件加入头文件代码

#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
Examples/Monocular/mono_euroc.cc
Examples/Monocular/mono_kitti.cc
Examples/Monocular/mono_tum.cc
Examples/RGB-D/rgbd_tum.cc
Examples/Stereo/stereo_euroc.cc
Examples/Stereo/stereo_kitti.cc
Examples/Stereo/ORB_SLAM2/src/AR/ViewerAR.cc
Examples/Ros/stereo_kitti.cc
Examples/ROS/ORB_SLAM2/src/AR/ViewerAR.cc
src/Converter.cc
src/Frame.cc
src/FrameDrawer.cc
src/Initializer.cc
src/KeyFrame.cc
src/KeyFrameDatabase.cc
src/LocalMapping.cc
src/LoopClosing.cc
src/Map.cc
src/MapDrawer.cc
src/MapPoint.cc
src/Optimizer.cc
src/ORBextractor.cc
src/ORBmatcher.cc
src/PnPsolver.cc
src/Sim3Solver.cc
src/System.cc
src/Tracking.cc
src/Viewer.cc

添加原因:
(遇到同样的错误,可以添加头文件)
在这里插入图片描述

参考链接:https://blog.csdn.net/Robert_Q/article/details/121592896
修改ORB_SLAM2/Examples/ROS/ORB_SLAM2/文件夹下的CMakeLists.txt文件,在set(LIBS xxxxx 的后面加上

-lboost_system

/ORB_SLAM2/CMakeLists.txt文件,将find_package(OpenCV …)中的opencv版本号改成自己安装的opencv版本号
版本号查看:

pkg-config --modversion opencv

参考链接:https://blog.csdn.net/qin_liang/article/details/127419612

./build.sh

删除build文件夹,再次编译

mkdir build
cd build
cmake ..
make -j2

编译ROS

 cd ~/catkin_ws2/src/ORB_SLAM2/Examples/ROS/ORB_SLAM2/
 mkdir build
 cd build
 cmake ..
 make -j2

修改.bashrc文件

sudo  gedit ~/.bashrc

在文件尾添加

export ROS_PACKAGE_PATH=${ROS_PACKAGE_PATH}:~/catkin_ws2/src/ORB_SLAM2/Examples/ROS

修改后在终端输入

source ~/.bashrc

适配Kitti数据集

运行结果

tum数据集

下载地址:https://cvg.cit.tum.de/data/datasets/rgbd-dataset/download
运行
在ORB_SLAM2文件夹下

./Examples/Monocular/mono_tum Vocabulary/ORBvoc.txt Examples/Monocular/TUM1.yaml /path/to/dataset/rgbd_dataset_freiburg1_xyz

在这里插入图片描述对保存在ORB_SLAM2文件夹下的KeyFrameTrajectory.txt通过evo绘制

evo_traj tum KeyFrameTrajectory.txt -p --plot_mode=xyz

在这里插入图片描述

kitti数据集生成

参考之前的VINSMOON运行博客

kitti数据集

3个终端

roscore
 rosrun ORB_SLAM2 Mono Vocabulary/ORBvoc.txt Examples/Monocular/KITTI00-02.yaml

ORB_SLAM2用于接受相机数据的topic话题为 /camera/image_raw

rosbag play kitti_2011_10_03_drive_0034_synced.bag /kitti/camera_gray_left/image_raw:=/camera/image_raw

在这里插入图片描述对保存在ORB_SLAM2文件夹下的KeyFrameTrajectory.txt通过evo绘制(单目无法恢复尺度)

evo_traj tum KeyFrameTrajectory.txt -p --plot_mode=xyz

在这里插入图片描述

evo_traj tum KeyFrameTrajectory.txt 02_gt_tum.txt --ref=02_gt_tum.txt -a -p --plot_mode=xyz

在这里插入图片描述

参考链接:
1.https://blog.csdn.net/qq_37417682/article/details/104130666?spm=1001.2101.3001.6650.16&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-16-104130666-blog-128161032.235%5Ev43%5Econtrol&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-16-104130666-blog-128161032.235%5Ev43%5Econtrol&utm_relevant_index=17
2.https://blog.csdn.net/weixin_56337147/article/details/130344059?spm=1001.2101.3001.6650.12&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-12-130344059-blog-128161032.235%5Ev43%5Econtrol&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-12-130344059-blog-128161032.235%5Ev43%5Econtrol&utm_relevant_index=13

举报

相关推荐

0 条评论