ROS:视频、深度和点云
ROS 节点发布相机结果,RViz 连接节点显示。节点复用同一相机模型与配置,默认 auto;显示器不重复打开相机。
1. 离线安装 ROS 2 Jazzy 环境
当前预编译环境面向 Ubuntu 24.04 x86_64,不覆盖系统 ROS。完整包目录中运行:
bash setup.sh --ros默认路径 ~/ZhiMuStereo/envs/ros-0.2.6-jazzy。只在需要 ROS 时安装。无可用 GPU 直接 CPU,无 GPU 环境安装。
2. 启动节点
先关闭同一相机的 GUI / SDK。先仅发布普通视频:
"$HOME/ZhiMuStereo/envs/ros-0.2.6-jazzy/run-node.sh" serial:=YOUR_CAMERA_SERIAL depth_stream:=false连续深度需要标定。通过主程序导入或云端同步后,重新启动节点:
"$HOME/ZhiMuStereo/envs/ros-0.2.6-jazzy/run-node.sh" serial:=YOUR_CAMERA_SERIAL depth_stream:=true没有桌面也可以运行节点并发布消息。
3. 显示视频、深度和点云
保持节点运行,在另一个桌面终端启动显示器:
"$HOME/ZhiMuStereo/envs/ros-0.2.6-jazzy/run-visualization.sh"此命令只显示已有节点,不创建第二个相机节点。无桌面机器也可供其他 ROS 桌面订阅。
| 结果 | 默认话题 | 格式 |
|---|---|---|
| 左右视频 | /stereo/left/image_raw、/stereo/right/image_raw | Image / BGR8 |
| 校正图 | /stereo/left/image_rect、/stereo/right/image_rect | Image |
| 公制深度 | /stereo/depth/image | 32FC1 米,无效值 NaN |
| 深度显示 | /stereo/depth/image_color | 彩色 Image,仅显示 |
| 视差 | /stereo/disparity | DisparityImage / 像素 |
| 点云 | /stereo/points | PointCloud2 / 米 |
点云只在有订阅者时转换,缓存投影参数并按配置抽样。同组结果使用同一采集时间戳,标定按实际分辨率缩放。
拍照服务和其他版本
拍照服务含深度开关、档位、保存开关,返回状态、编号、目录及结果。见 ROS 接口参考。
Humble / Noetic 提供 C++ 适配源码和构建配方。本完整包的现成离线环境为 Jazzy;Ubuntu 22.04 / 20.04 实际系统验收另行进行。Noetic 已结束官方维护。