• 欢迎访问开心洋葱网站,在线教程,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入开心洋葱 QQ群
  • 为方便开心洋葱网用户,开心洋葱官网已经开启复制功能!
  • 欢迎访问开心洋葱网站,手机也能访问哦~欢迎加入开心洋葱多维思维学习平台 QQ群
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏开心洋葱吧~~~~~~~~~~~~~!
  • 由于近期流量激增,小站的ECS没能经的起亲们的访问,本站依然没有盈利,如果各位看如果觉着文字不错,还请看官给小站打个赏~~~~~~~~~~~~~!

ROS与深度相机入门教程-在ROS使用Intel D435i深度相机跑ORB_SLAM2生成稀疏点阵

人工智能 很不专业 2290次浏览 0个评论

效果

ROS与深度相机入门教程-在ROS使用Intel D435i深度相机跑ORB_SLAM2生成稀疏点阵 ROS与深度相机入门教程-在ROS使用Intel D435i深度相机跑ORB_SLAM2生成稀疏点阵  

说明

  • 介绍如何在ROS中安装和使用Intel D435i相机
  • 测试环境: Ubuntu 16.04 + ROS Kinetic

 

安装sdk和驱动

  • 安装sdk
$ sudo apt-key adv --keyserver keys.gnupg.net --recv-key C8B3A55A6F3EFCDE || sudo apt-key adv --keyserver 
$ sudo add-apt-repository "deb http://realsense-hw-public.s3.amazonaws.com/Debian/apt-repo xenial main" -u
$ sudo apt-get update
$ sudo apt-get install librealsense2-dkms
$ sudo apt-get install librealsense2-utils
$ sudo apt-get install librealsense2-dev

 

  • 下载源码及编译
$ mkdir -p ~/catkin_ws/src && cd ~/catkin_ws/src/
$ git clone https://github.com/intel-ros/realsense.git 
$ git clone https://github.com/pal-robotics/ddynamic_reconfigure.git
$ cd ~/catkin_ws/ && catkin_make

 

  • 配置环境
$ echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc
$ source ~/.bashrc

 

测试使用

  • 新终端,启动相机
$ roslaunch realsense2_camera rs_rgbd.launch

 

  • 新终端,查看发布的话题
$ rostopic list
/camera/accel/imu_info
/camera/accel/sample
/camera/aligned_depth_to_color/camera_info
/camera/aligned_depth_to_color/image_raw
/camera/aligned_depth_to_color/image_raw/compressed
/camera/aligned_depth_to_color/image_raw/compressed/parameter_descriptions
/camera/aligned_depth_to_color/image_raw/compressed/parameter_updates
/camera/aligned_depth_to_color/image_raw/compressedDepth
/camera/aligned_depth_to_color/image_raw/compressedDepth/parameter_descriptions
/camera/aligned_depth_to_color/image_raw/compressedDepth/parameter_updates
/camera/aligned_depth_to_color/image_raw/theora
/camera/aligned_depth_to_color/image_raw/theora/parameter_descriptions
/camera/aligned_depth_to_color/image_raw/theora/parameter_updates
/camera/aligned_depth_to_infra1/camera_info
/camera/aligned_depth_to_infra1/image_raw
/camera/aligned_depth_to_infra1/image_raw/compressed
/camera/aligned_depth_to_infra1/image_raw/compressed/parameter_descriptions
/camera/aligned_depth_to_infra1/image_raw/compressed/parameter_updates
/camera/aligned_depth_to_infra1/image_raw/compressedDepth
/camera/aligned_depth_to_infra1/image_raw/compressedDepth/parameter_descriptions
/camera/aligned_depth_to_infra1/image_raw/compressedDepth/parameter_updates
/camera/aligned_depth_to_infra1/image_raw/theora
/camera/aligned_depth_to_infra1/image_raw/theora/parameter_descriptions
/camera/aligned_depth_to_infra1/image_raw/theora/parameter_updates
/camera/color/camera_info
/camera/color/image_raw
/camera/color/image_raw/compressed
/camera/color/image_raw/compressed/parameter_descriptions
/camera/color/image_raw/compressed/parameter_updates
/camera/color/image_raw/compressedDepth
/camera/color/image_raw/compressedDepth/parameter_descriptions
/camera/color/image_raw/compressedDepth/parameter_updates
/camera/color/image_raw/theora
/camera/color/image_raw/theora/parameter_descriptions
/camera/color/image_raw/theora/parameter_updates
/camera/color/image_rect_color
/camera/color/image_rect_color/compressed
/camera/color/image_rect_color/compressed/parameter_descriptions
/camera/color/image_rect_color/compressed/parameter_updates
/camera/color/image_rect_color/compressedDepth
/camera/color/image_rect_color/compressedDepth/parameter_descriptions
/camera/color/image_rect_color/compressedDepth/parameter_updates
/camera/color/image_rect_color/theora
/camera/color/image_rect_color/theora/parameter_descriptions
/camera/color/image_rect_color/theora/parameter_updates
/camera/color_rectify_color/parameter_descriptions
/camera/color_rectify_color/parameter_updates
/camera/depth/camera_info
/camera/depth/image_rect_raw
/camera/depth/image_rect_raw/compressed
/camera/depth/image_rect_raw/compressed/parameter_descriptions
/camera/depth/image_rect_raw/compressed/parameter_updates
/camera/depth/image_rect_raw/compressedDepth
/camera/depth/image_rect_raw/compressedDepth/parameter_descriptions
/camera/depth/image_rect_raw/compressedDepth/parameter_updates
/camera/depth/image_rect_raw/theora
/camera/depth/image_rect_raw/theora/parameter_descriptions
/camera/depth/image_rect_raw/theora/parameter_updates
/camera/depth_registered/points
/camera/extrinsics/depth_to_color
/camera/extrinsics/depth_to_infra1
/camera/extrinsics/depth_to_infra2
/camera/gyro/imu_info
/camera/gyro/sample
/camera/infra1/camera_info
/camera/infra1/image_rect_raw
/camera/infra1/image_rect_raw/compressed
/camera/infra1/image_rect_raw/compressed/parameter_descriptions
/camera/infra1/image_rect_raw/compressed/parameter_updates
/camera/infra1/image_rect_raw/compressedDepth
/camera/infra1/image_rect_raw/compressedDepth/parameter_descriptions
/camera/infra1/image_rect_raw/compressedDepth/parameter_updates
/camera/infra1/image_rect_raw/theora
/camera/infra1/image_rect_raw/theora/parameter_descriptions
/camera/infra1/image_rect_raw/theora/parameter_updates
/camera/infra2/camera_info
/camera/infra2/image_rect_raw
/camera/infra2/image_rect_raw/compressed
/camera/infra2/image_rect_raw/compressed/parameter_descriptions
/camera/infra2/image_rect_raw/compressed/parameter_updates
/camera/infra2/image_rect_raw/compressedDepth
/camera/infra2/image_rect_raw/compressedDepth/parameter_descriptions
/camera/infra2/image_rect_raw/compressedDepth/parameter_updates
/camera/infra2/image_rect_raw/theora
/camera/infra2/image_rect_raw/theora/parameter_descriptions
/camera/infra2/image_rect_raw/theora/parameter_updates
/camera/motion_module/parameter_descriptions
/camera/motion_module/parameter_updates
/camera/realsense2_camera_manager/bond
/camera/rgb_camera/auto_exposure_roi/parameter_descriptions
/camera/rgb_camera/auto_exposure_roi/parameter_updates
/camera/rgb_camera/parameter_descriptions
/camera/rgb_camera/parameter_updates
/camera/stereo_module/auto_exposure_roi/parameter_descriptions
/camera/stereo_module/auto_exposure_roi/parameter_updates
/camera/stereo_module/parameter_descriptions
/camera/stereo_module/parameter_updates
/diagnostics
/rosout
/rosout_agg
/tf
/tf_static

 

  • 新终端,通过rqt_image_view查看,选择camera_color_frame作为Fixed Frame和添加PointCloud2参数项
$ rviz

  ROS与深度相机入门教程-在ROS使用Intel D435i深度相机跑ORB_SLAM2生成稀疏点阵  

安装运行ORB_SLAM2

  cd到catkin_ws/下,克隆ORBSLAM2代码到本地仓库并编译:

cd catkin_ws
git clone https://github.com/raulmur/ORB_SLAM2

  cd到catkin_ws/ORBSLAM2下,克隆Pangolin代码到本地仓库并编译:

git clone https://github.com/stevenlovegrove/Pangolin.git
cd Pangolin
mkdir build
cd build
cmake -DCPP11_NO_BOOST=1 ..
make -j

  修改订阅topic话题:进入catkin_ws/ORB_SLAM2/Examples/ROS/ORB_SLAM2/src路径下,找到ros_rgbd.cc,找到以下语句: message_filters::Subscriber<sensor_msgs::Image> rgb_sub(nh, “/camera/rgb/image_raw”, 1); message_filters::Subscriber<sensor_msgs::Image> depth_sub(nh, “camera/depth_registered/image_raw”, 1); 将其修改为:message_filters::Subscriber<sensor_msgs::Image> rgb_sub(nh, “/camera/color/image_raw”, 1); message_filters::Subscriber<sensor_msgs::Image> depth_sub(nh, “/camera/aligned_depth_to_color/image_raw”, 1);   如下图:   ROS与深度相机入门教程-在ROS使用Intel D435i深度相机跑ORB_SLAM2生成稀疏点阵   在bashrc下添加ORB_SLAM2的工作路径:

用gedit或vim打开后在里面自行添加:
export ROS_PACKAGE_PATH=${ROS_PACKAGE_PATH}:/home/(用户名)/catkin_ws/ORB_SLAM2/Examples/ROS

 

开始编译,回到catkin_ws/ORB_SLAM2下

  你会发现有两个可运行脚本,一个是build.sh,一个是build_ros.sh,但是都处于不能运行状态。 赋予编译权限:

chmod +x build.sh
chmod +x build_ros.sh

  运行第一个脚本:

./build.sh

  如果你的电脑因为运行内存不足而溢出报错,请在gedit或者vim中修改build.sh的最后一行代码将make -j改为make -j2或make;你也可以释放更多的虚拟内存来防止溢出。后面的build_ros.sh同理。   编译完后继续编译ros版本脚本:

./build_ros.sh

  如果编译出错(在/Examples/ROS/ORB-SLAM2/CMakeLists.txt文件下修改 加-lboost_system(没加这个的时候会有关于stl的错误))

set(LIBS
${OpenCV_LIBS}
${EIGEN3_LIBS}
${Pangolin_LIBRARIES}
${PROJECT_SOURCE_DIR}/…/…/…/Thirdparty/DBoW2/lib/libDBoW2.so
${PROJECT_SOURCE_DIR}/…/…/…/Thirdparty/g2o/lib/libg2o.so
${PROJECT_SOURCE_DIR}/…/…/…/lib/libORB_SLAM2.so
-lboost_system #此处
)

  编译结束后启动相机节点:

roslaunch realsense2_camera rs_rgbd.launch

  Ctrl + Alt + T 新建一个命令行: 我们先用一个yaml文件试一下能不能运行

cd catkin_ws/ORB_SLAM2
rosrun ORB_SLAM2 RGBD Vocabulary/ORBvoc.txt Examples/RGB-D/TUM1.yaml

  ROS与深度相机入门教程-在ROS使用Intel D435i深度相机跑ORB_SLAM2生成稀疏点阵  


开心洋葱 , 版权所有丨如未注明 , 均为原创丨未经授权请勿修改 , 转载请注明ROS与深度相机入门教程-在ROS使用Intel D435i深度相机跑ORB_SLAM2生成稀疏点阵
喜欢 (0)

您必须 登录 才能发表评论!

加载中……