SLAM with D435i
使用 ROS 上的 RealSense™ D435i 摄像头进行 SLAM
RealSense™ D435i 配备了内置 IMU。结合一些强大的开源工具,可以实现地图和本地化的任务。
该过程有4个主要节点:
- realsense2_camera
- imu_filter_madgwick
- rtabmap_ros
- robot_localization
安装
首先要做的是安装组件:
realsense2_camera:按照https://github.com/intel-ros/realsense中的安装指南进行操作。
imu_filter_madgwick:
sudo apt-get install ros-melodic-imu-filter-madgwick
rtabmap_ros:
sudo apt-get install ros-melodic-rtabmap-ros
ros-melodic-rtabmap-ros下载失败走不通的建议源码安装:
mkdir -p ~/rtabmap_ws/src cd ~/rtabmap_ws/src git clone https://github.com/introlab/rtabmap_ros.git cd ~/rtabmap_ws catkin_make git clone https://gitee.com/kay2020/rtabmap.git rtabmap cd rtabmap/build cmake -DCMAKE_INSTALL_PREFIX=~/rtabmap_ws/devel .. make -j4 make install
*以上是源码安装ros-melodic-rtabmap-ros*
robot_localization:
sudo apt-get install ros-melodic-robot-localization
运行
握住相机并保持清晰的视野并运行以下命令:
roslaunch realsense2_camera opensource_tracking.launch
稍等片刻,系统自行修复。
个性化RViz
点云和一堆箭头或轴标记将出现在屏幕上。这些轴代表所涉及的所有不同坐标系。为清楚起见,您可以删除其中的大部分。
从显示面板:
TF -> Frames,然后留下标记为只有map和camera_link。第一个代表世界坐标系,第二个代表相机。
您可能还想观看在线视频:
从显示面板:图像-
>图像主题:重写为/camera/color/image_raw
开始四处移动并观察“camera_link”轴标记相对于“map”轴的相应移动。
注意:
内置 IMU 只能跟踪很短的时间。移动或转动过快会破坏点云匹配成功的顺序,并导致系统丢失轨道。如果停止移动,系统可能会立即恢复,但如果没有,自中断以来经过的时间越长,它偏离正确位置的距离就越远。恢复的几率非常小,非常快。 启动文件中设置的参数很可能并不理想,但这是校准的良好起点。
要保存 rosbag 文件,您可以使用以下命令:
rosbag record -O my_bagfile_1.bag /camera/aligned_depth_to_color/camera_info camera/aligned_depth_to_color/image_raw /camera/color/camera_info /camera/color/image_raw /camera/imu /camera/imu_info /tf_static
要重放保存的 rosbag 文件:
roscore > /dev/null 2>&1 &
rosparam set use_sim_time true
rosbag 播放 my_bagfile_1.bag --clock
roslaunch realsense2_camera opensource_tracking.launch offline:=true
该过程如下所示:
系统启动时,您可以使用以下命令创建 2D 地图:
rosrun map_server map_saver map:=/rtabmap/proj_map –f my_map_1
结果地图看起来像这样:
您可以使用以下方法保存点云:
rosrun pcl_ros pointcloud_to_pcd input:=/rtabmap/cloud_map
注意:该应用程序将继续保存点云。
在报告保存第一个文件后使用 ctrl-C 停止它。
该应用程序打印以筛选它保存的文件名。例如:1543906154413083.pcd
您可以稍后使用以下方法观看保存的点云:
pcl_viewer 1543906154413083.pcd
安装使用:
sudo apt-get install pcl-tools
参考
https://github.com/IntelRealSense/realsense-ros/wiki/SLAM-with-D435i
作者:kay 出处:https://www.cnblogs.com/kay2018/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 如果文中有什么错误,欢迎指出。以免更多的人被误导。 |