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:
1 | sudo apt-get install ros-melodic-imu-filter-madgwick |
rtabmap_ros:
1 | sudo apt-get install ros-melodic-rtabmap-ros |
ros-melodic-rtabmap-ros下载失败走不通的建议源码安装:
1 2 3 4 5 6 7 8 9 10 11 12 | 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:
1 | sudo apt-get install ros-melodic-robot-localization |
运行
握住相机并保持清晰的视野并运行以下命令:
1 | roslaunch realsense2_camera opensource_tracking.launch |
稍等片刻,系统自行修复。
个性化RViz
点云和一堆箭头或轴标记将出现在屏幕上。这些轴代表所涉及的所有不同坐标系。为清楚起见,您可以删除其中的大部分。
从显示面板:
TF -> Frames,然后留下标记为只有map和camera_link。第一个代表世界坐标系,第二个代表相机。
您可能还想观看在线视频:
从显示面板:图像-
>图像主题:重写为/camera/color/image_raw
开始四处移动并观察“camera_link”轴标记相对于“map”轴的相应移动。
注意:
内置 IMU 只能跟踪很短的时间。移动或转动过快会破坏点云匹配成功的顺序,并导致系统丢失轨道。如果停止移动,系统可能会立即恢复,但如果没有,自中断以来经过的时间越长,它偏离正确位置的距离就越远。恢复的几率非常小,非常快。 启动文件中设置的参数很可能并不理想,但这是校准的良好起点。
要保存 rosbag 文件,您可以使用以下命令:
1 | 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 文件:
1 | roscore > /dev/null 2>&1 & |
1 | rosparam set use_sim_time true |
rosbag 播放 my_bagfile_1.bag --clock
1 | roslaunch realsense2_camera opensource_tracking.launch offline:= true |
该过程如下所示:
系统启动时,您可以使用以下命令创建 2D 地图:
1 | rosrun map_server map_saver map:= /rtabmap/proj_map –f my_map_1 |
结果地图看起来像这样:
您可以使用以下方法保存点云:
1 | rosrun pcl_ros pointcloud_to_pcd input:= /rtabmap/cloud_map |
注意:该应用程序将继续保存点云。
在报告保存第一个文件后使用 ctrl-C 停止它。
该应用程序打印以筛选它保存的文件名。例如:1543906154413083.pcd
您可以稍后使用以下方法观看保存的点云:
1 | pcl_viewer 1543906154413083.pcd |
安装使用:
1 | sudo apt-get install pcl-tools |
参考
https://github.com/IntelRealSense/realsense-ros/wiki/SLAM-with-D435i
作者:kay 出处:https://www.cnblogs.com/kay2018/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 如果文中有什么错误,欢迎指出。以免更多的人被误导。 |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异