# data_recorder **Repository Path**: nics-robot/data_recorder ## Basic Information - **Project Name**: data_recorder - **Description**: 数据采集-数据收集和保存 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-05-29 - **Last Updated**: 2025-11-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 数据采集 > 适用于NICS-ROBOT自研采集设备,设备硬件安装详见[project page](https://nics-efc.feishu.cn/wiki/YNT6wJPcbijjc3kGQSUcwvPLnYS)。本仓库包含相机驱动及时间同步。 ## 依赖 本项目依赖ROS noetic环境,请参考[ROS 官网](https://wiki.ros.org/noetic/Installation/Ubuntu)安装。 安装d435i相机驱动 [\[官方教程\]](https://github.com/IntelRealSense/realsense-ros/tree/ros1-legacy )、usb-cam驱动,cv_bridge及yaml库 ``` sudo apt-get install ros-noetic-realsense2-camera ros-noetic-usb-cam ros-noetic-cv-bridge python3-yaml ``` ## 配置参数 ### d435i ```xml ``` - serial_no_camera:序列号。可通过realsense-viewer查看; - color_width, color_height:分辨率。受限于usb带宽,目前测试三相机以30Hz正常运行的最大分辨率为640*480; - color_fps:帧率。根据实际需求设定,只能为60,30,15,10,8,6; - depth_width,depth_height,depth_fps:深度图设定。与RGB保持一致; - enable_pointcloud:点云开关。根据需求选择,打开后会增加带宽负担; - align_depth:设定为true,可将深度图对齐到RGB相机坐标系; - 其他默认即可。 ### usb-cam ```xml ``` - video_device:设备名。根据实际情况修改,通常为偶数,按插入顺序从小到大排,可通过插拔设备比较```ls /dev```命令输出判断。 ## 编译 ``` cd catkin_ws/src git clone https://gitee.com/nics-robot/data_recorder.git cd .. catkin build data_recorder ``` ## 采集 ### 运行驱动 开启头部的d435i相机并加载外参;同时开启腕部gopro相机 ``` roslaunch data_recorder camera_driver.launch ``` 可在rqt_gui界面观察图像,在rviz观察头部三相机的tf,本项目以中间的相机(camera2)的baselink坐标系为世界系(坐标轴方向x向前,z向上)。 假如某个头部相机启动失败,通常为带宽或电压不足,在确保使用的usb线及电脑usb接口均支持usb3.0的情况下,重启一下即可。 假如腕部gopro相机启动失败,则检查launch文件中"video_device"是否设置正确。 ### 录制话题 根据实际情况修改```./scripts/record_raw_data.sh```中数据保存目录```output_dir``` ``` cd data_recorder ./scripts/record_raw_data.sh ``` ### 时间同步 播放录制的rosbag,运行时间同步脚本 ``` rosbag play xxx.bag roslaunch data_recorder synchronizer.launch ```