rosbag 相机 雷达 录制
时间: 2025-05-13 10:36:15 浏览: 22
### 使用 `rosbag` 同时录制相机和激光雷达数据
在 ROS 中,`rosbag` 是一种非常强大的工具,用于记录和回放 ROS 主题消息。为了同时录制来自相机和激光雷达的数据流,可以按照以下方法操作。
#### 配置主题订阅
确保相机和激光雷达的主题已经发布并正常运行。通常情况下,相机可能通过 `/camera/image_raw` 或其他类似主题发布图像数据[^1],而激光雷达则可能通过 `/scan` 或者点云形式的 `/velodyne_points` 发布数据。可以通过命令查看当前活动主题及其类型:
```bash
rostopic list
```
以及检查特定主题的消息频率和结构:
```bash
rostopic info /topic_name
rostopic hz /topic_name
rostopic echo /topic_name
```
#### 开始录制多个主题
要同时录制这些不同传感器产生的数据,需指定所有希望保存到 bag 文件中的主题列表。例如,如果目标是从名为 `/camera/image_raw` 的摄像头获取视频帧,并从 LIDAR 设备捕获点云 (`/velodyne_points`) ,那么启动 rosabg 录制会话的方式如下所示:
```bash
rosbag record /camera/image_raw /velodyne_points -O sensor_data.bag
```
这里 `-O` 参数指定了输出文件的名字为 `sensor_data.bag` 。如果没有提供该选项,默认生成的时间戳命名文件将会被创建。
#### 压缩存储空间 (可选)
对于大数据量的传感器比如高分辨率摄像机或者密集型 Lidar 扫描仪来说,压缩是非常重要的一步来减少磁盘占用情况。可以在上述基础上增加 `--compress` 参数实现这一点:
```bash
rosbag record --lz4 -b 2048 /camera/image_raw /velodyne_points -O compressed_sensor_data.bag
```
其中 `--lz4` 表示采用 LZ4 算法进行快速但轻度的压缩;`-b 2048` 设置缓存大小为 2GB 来适应大流量输入场景下的性能需求.
#### 结束录制过程
当完成采集之后,按下 Ctrl+C 组合键即可停止正在执行的任务并将结果写入硬盘当中去形成最终版本 .bag 格式的档案文档.
---
阅读全文
相关推荐


















