1.点云示例
此示例演示如何启动相机节点并使其使用点云选项发布点云。
ros2 launch realsense2_camera rs_launch.py pointcloud.enable:=true
以下示例启动相机并同时打开 RViz GUI 以可视化发布的点云。它执行上面的 2 个示例。
ros2 launch realsense2_camera rs_pointcloud_launch.py
不同坐标系的点云
本示例打开rviz,显示不同坐标系的相机模型和点云,因此将点云和相机一起呈现。这里我使用的是intel realsense d405显示牙齿的点云
ros2 launch realsense2_camera rs_d405_pointcloud_launch.py
运行效果如下
d405 rviz2
2.从文件示例启动参数
以下示例从 YAML 文件获取 RealSense ROS2 节点参数。
ros2 launch realsense2_camera rs_launch_get_params_from_yaml.py
enable_color: true
rgb_camera.profile: 1280x720x15
enable_depth: true
align_depth.enable: true
enable_sync: true
publish_tf: true
tf_publish_rate: 1.0
默认情况下,“rs_launch_get_params_from_yaml.py”启动文件使用“/config/config.yaml”YAML 文件。用户可以通过命令行提供不同的 YAML 文件,如下所示:
ros2 launch realsense2_camera rs_launch_get_params_from_yaml.py config_file:="/full/path/to/config/file"
在 YAML 文件中定义参数的语法:
param1: value
param2: value
3.启动相机节点示例
此示例演示了如何使用启动文件在 ROS2 中启动摄像头节点rs_launch.py以及如何通过命令行覆盖启动文件的某些参数:
ros2 launch realsense2_camera rs_launch.py pointcloud.enable:=true align_depth.enable:=true
这将流式传输启动文件中启用的所有传感器(深度、颜色、陀螺仪、加速度)并发布到适当的 ROS2 主题
通过覆盖点云和align_depth启用参数,我们将启用这些后处理过滤器,尽管它们在启动文件中都已关闭。
来自深度 ROS2 主题的彩色 3D 点云的 RViz 可视化。
4.对齐深度示例
此示例演示如何启动相机节点并将深度流与其他可用流(例如颜色或红外)对齐。
在我们的启动文件 rs_align_depth_launch.py 中,我们将深度与颜色对齐。
ros2 launch realsense2_camera rs_align_depth_launch.py
还可以通过在命令行中覆盖其值来启用对齐深度:
ros2 launch realsense2_camera rs_launch.py align_depth.enable:=true
从下图可以看出,对齐主题现在可用
效果如下
5.设置参数
如设置自动曝光ref:
ros2 param set /camera/camera depth_module.enable_auto_exposure true
但是这种解决方法不优雅,需要启动节点后运行。于是在D405 how to turn auto exposure on while using ros2 launch realsense2_camera rs_launch.py · Issue #2598 · IntelRealSense/realsense-ros · GitHub
我进行了新的尝试