Rtabmap+ORB_SLAM2+D435i(稠密地图)
- 安装ROS
参考:http://wiki.ros.org/kinetic/Installation/Ubuntu
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
sudo apt-get update
sudo apt-get install ros-kinetic-desktop-full
apt-cache search ros-kinetic
sudo rosdep init
rosdep update
echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc
source ~/.bashrc
sudo apt install python-rosinstall python-rosinstall-generator python-wstool build-essential
创建一个ROS Workspace :
mkdir -p ~/catkin_ws/srccd ~/catkin_ws/srccatkin_init_workspacecd ~/catkin_ws/catkin_make
安装realsense
参考:
https://github.com/IntelRealSense/librealsense/blob/master/doc/distribution_linux.mdhttps://blog.csdn.net/qq_41839222/article/details/86503113https://blog.csdn.net/jiangchuanhu/article/details/92795791
sudo apt-key adv --keyserver keys.gnupg.net --recv-key F6E65AC044F831AC80A06380C8B3A55A6F3EFCDE || sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-key
sudo add-apt-repository "deb http://realsense-hw-public.s3.amazonaws.com/Debian/apt-repo xenial main" -u
sudo apt-get install librealsense2-dkms
sudo apt-get install librealsense2-utils
sudo apt-get install librealsense2-dev
sudo apt-get install librealsense2-dbg
安装stereo_image_pro(非必要可选)
参考:
http://wiki.ros.org/stereo_image_proc
安装:
sudo apt-get install ros-kinetic-stereo-image-proc
- 安装ORB_SLAM2
1.安装好要用到的工具
sudo apt-get install cmake
sudo apt-get install git
2.安装Eigen
sudo apt-get install libeigen3-dev(版本问题可能存在大坑)
3.安装Pangolin
依赖:
sudo apt-get install cmake
sudo apt-get install libpython2.7-dev
安装:
git clone https://github.com/stevenlovegrove/Pangolin.gitcd Pangolinmkdir build
cd build
cmake ..
make –j4
sudo make install
4.安装ORBSLAM2
git clone https://github.com/raulmur/ORB_SLAM2.git
cd ORB_SLAM2分别删除以下文件中的“-march=native”
ORB_SLAM2/Thirdparty/g2o/CMakeLists.txt 第57、58行
ORB_SLAM2/CMakeLists.txt 第10、11行
ORB_SLAM2/Thirdparty/DBoW2/CMakeLists.txt 第4、5行chmod +x build.sh
./build.sh
cd
sudo vim ./.bashrc
在最后一行添加如下:export ORB_SLAM2_ROOT_DIR=/home/luo/source/ORB_SLAM2 (非常重要)
跑一下ORB_SLAM2验证安装是否成功,如:(跑数据集)
ORB_SLAM根目录下运行:
./Examples/Monocular/mono_tum Vocabulary/ORBvoc.txt Examples/Monocular/TUM1.yaml /home/luo/rgbd_dataset_freiburg1_desk
- 安装rtabmap源码
参考:
https://github.com/introlab/rtabmap/wiki/Installation
1.安装依赖
sudo apt-get update
sudo apt-get install libsqlite3-dev libpcl-dev libopencv-dev git cmake libproj-dev libqt5svg5-dev
2.安装
参考:https://github.com/introlab/rtabmap/wiki/Installation
git clone https://github.com/introlab/rtabmap.git rtabmap
打开:rtabmap/corelib/include/rtabmap/core/StereoCameraModel.h第104行(修改双目基线)
将 double baseline() const {return right_.fx()!=0.0 && left_.fx() != 0.0 ? left_.Tx() / left_.fx() - right_.Tx()/right_.fx():0.0;}
改为 double baseline() const {return 0.05;} //right_.fx()!=0.0 && left_.fx() != 0.0 ? left_.Tx() / left_.fx() - right_.Tx()/right_.fx():0.0;}
cd rtabmap/build
cmake -DWITH_G2O=OFF -DCMAKE_INSTALL_PREFIX=/home/luo/catkin_ws/devel .. (非常重要 如果把GTSAM库也OFF可能会没有回环)
make -j4
sudo make install
sudo ldconfig
测试源码安装是否成功:插上D435i
参考:https://github.com/introlab/rtabmap/wiki/Kinect-mapping
cd ../bin
./rtabmap
步骤:
->OK
->OK
->New database
->Select source ->RGB-D camera ->Realsense D435 ->Realsense 2
->start
界面能显示建图效果,则源码安装成功
若运行start以后界面闪退(天坑),则安装失败 具体情况根据error而定
(若编译的时候报大量Eigen的警告,可能是Eigen的原因,跟换Eigen版本)
编译rtabmap_ros(修改双目基线)
cd ~/catkin_ws
git clone https://github.com/IntelRealSense/realsense-ros
vim realsense-ros/realsense2_camera/src/base_realsense_node.cpp
将第1646行 _camera_info[stream_index].P.at(3) = 0;
更改为: if(stream_index.second == 2){_camera_info[stream_index].P.at(3) = -0.05;}git clone https://github.com/introlab/rtabmap_ros.git src/rtabmap_ros
catkin_make
3.运行rtabmap
3.1 rtabmap+orb_slam2(双目)+realsense2
//启动realsense
1. roslaunch realsense2_camera rs_camera.launch //双目矫正(可选)
2. ROS_NAMESPACE=camera rosrun stereo_image_proc stereo_image_proc left/image_raw:=/camera/infra1/image_rect_raw right/image_raw:=/camera/infra2/image_rect_raw left/camera_info:=/camera/infra1/camera_info right/camera_info:=/camera/infra2/camera_info _approximate_sync:=true//启动rtabmap
3. roslaunch rtabmap_ros stereo_mapping.launch stereo_namespace:="/camera" rtabmap_args:="--delete_db_on_start --Odom/Strategy 5 --OdomORBSLAM2/VocPath "/home/luo/source/ORB_SLAM2/Vocabulary/ORBvoc.txt"" left_image_topic:=/camera/left/image_rect right_image_topic:=/camera/right/image_rect left_camera_info_topic:=/camera/infra1/camera_info right_camera_info_topic:=/camera/infra2/camera_info /rtabmap/odom_info:=/camera/infra1/camera_info stereo:=true frame_id:=camera_link approx_sync:=false
3.2 rtabmap+orb_slam2(RGB-D)+realsense2
//启动realsense
1. roslaunch realsense2_camera rs_rgbd.launch
//启动rtabmap
2. roslaunch rtabmap_ros rtabmap.launch rtabmap_args:="--delete_db_on_start --Odom/Strategy 5 --OdomORBSLAM2/VocPath "/home/luo/source/ORB_SLAM2/Vocabulary/ORBvoc.txt"" depth_topic:=/camera/depth/image_rect_raw rgb_topic:=/camera/color/image_raw camera_info_topic:=/camera/color/camera_info approx_sync:=false
3.3 rtabmap+F2M(RGB-D)+realsense2
//启动相机
1. roslaunch realsense2_camera rs_rgbd.launch
//启动realsense
2. roslaunch rtabmap_ros rtabmap.launch rtabmap_args:="--delete_db_on_start" depth_topic:=/camera/depth/image_rect_raw rgb_topic:=/camera/color/image_raw camera_info_topic:=/camera/color/camera_info approx_sync:=false
Rtabmap+ORB_SLAM2+D435i(稠密地图)相关推荐
- ORB_SLAM2新增稠密建图代码笔记
接上一篇博客"ORB_SLAM2+kinect稠密建图实战项目总结" ORB_SLAM2+kinect稠密建图实战项目总结_好好仔仔的博客-CSDN博客 本篇在此基础上对整个项目的 ...
- orbslam2稠密地图转octomap
orbslam2稠密地图 对于稠密地图的建立,已经有了两个大神的代码 参考如下 高博(未加回环): https://github.com/gaoxiang12/ORBSLAM2_with_pointc ...
- ORB-SLAM2构建稠密地图 ros-kinetic 深度相机
ORB-SLAM2构建稠密地图 参考如下链接: orbslam2详细 编译过程问题: 1.orbslam2 编译1 build.sh 将j1改为j2可以避免卡死 make -j2 2.build_ro ...
- SLAM算法知识荟萃
文章目录 SLAM 自动驾驶八股 四元数在表示空间旋转时的优势是什么? 介绍自动驾驶系统 介绍回环检测 介绍词袋模型 手撕对极约束 使用OpenCV找到四边形的边界 介绍卡尔曼滤波 推导卡尔曼增益 介 ...
- ORB_SLAM2稠密建图(ORBSLAM2_with_pointcloud_map),并保存地图
本文基于高翔博士的ORB_SLAM2稠密建图代码改进,并且添加了稠密地图保存功能. 本文的代码已上传github,可用以下代码下载: git clone https://github.com/FAST ...
- Orbslam2 稠密点云 +D435i实现(Ubuntu18.04)
系统:Ubuntu18.04 设备:Realsense D435i 一.安装相关依赖库 毕设后写的一篇通俗一些的,适合没接触过或不太会ubuntu的同学,前半部分都是一样的, tips:需要安装一个[ ...
- ORB_SLAM2+realsense运行稠密建图
具体的环境及其细节:Ubuntu18.04 realsenseD435i ROS orbslam2_echo_gou的博客-CSDN博客 下载代码:https://github.com/gaoxian ...
- SLAM之小觅相机跑开源方案(ORB_SLAM2,VINS MONO,VINS FUSION,RTAB-Map)
传感器: 小觅相机标准版 开源SLAM方案: ORB_SLAM2,VINS MONO,VINS FUSION,RTAB-Map 测试地点: 室内大厅(光线不均)/ 露天阳台 实现形式: 小觅相机 / ...
- 实测 (四)NVIDIA Xavier NX + D435i / 奥比中光Astrapro 相机+ ORB-SLAM 2 + 3 稠密回环建图
来了!接着上篇,开始orb-slam3 的稠密回环建图实测(奥比中光Astrapro 相机) 老样子,先上效果图: 开发环境:NX+Ubuntu18.04+ROS-melodic 四.NX + Ast ...
最新文章
- 只需三分钟!只需创建一个vuex.js文件,让你马上学会使用Vuex,尽管Vuex是个鸡肋!(扔掉store文件夹和里面的index、getters、actions、mutations等js文件吧!)
- 量子计算,后摩尔时代计算能力提升的解决方案
- Java基础 Day04(个人复习整理)
- chrome webdriver_(最新版)如何正确移除Selenium中的 window.navigator.webdriver
- php fast cgi nginx,通过fast-cgi连接php-fpm和nginx之间的连接是持久的(保持活动)连接吗?...
- android程序 幻灯片,Android:ViewPager制作幻灯片
- entity framework不查数据库修改或排除指定字段集合通用方法
- ASP.NET操作Excel(终极方法NPOI)
- android action bar 风格,自定义ActionBar的风格
- tcpdump实战详解
- IoT技术架构与安全威胁
- 全网首发:LINUX编译JNA:编译产生jna.jar
- 根据银行卡号码获取银行卡归属行以及logo图标
- 打造面向时代的“云中广科”,广科牵手华为探索校企合作新范式
- JavaWeb项目--【在线音乐播放器】onlineMusicPlayer
- c语言编写温度监测界面,基于51单片机的温度检测系统_单片机C语言课题设计报告.doc...
- MeGui原滤镜使用心得
- 地图实时定位我的位置
- p2p与反p2p的激战--资料搜集
- Skip List——跳表,一个高效的索引技术