Intel RealSense D435i 深度相机的拍摄脚本,支持深度照片、3D点云、IMU数据、RGBD视频。
opencv-python / opencv-python-headless、 numpy、 pyrealsense2ffmpeg(用于视频编码)、 rs-enumerate-devices(可选)安装依赖:
bash
pip install opencv-python-headless numpy pyrealsense2
bash
# 深度拍照
python3 scripts/realsense_capture.py --mode depth
# 3D 点云
python3 scripts/realsense_capture.py --mode pointcloud
# IMU 数据(5秒)
python3 scripts/realsense_capture.py --mode imu --duration 5
# RGBD 视频(5秒)
python3 scripts/realsense_capture.py --mode rgbd --duration 5
数据默认保存到 data/(脚本同目录下),按内容类型和日期分目录:
text
data/
├── photos/
│ └── YYYY-MM-DD/
│ ├── rgb/ RGB 照片
│ └── depth/ 深度照片(伪彩色 + 原始 PNG)
├── videos/
│ └── YYYY-MM-DD/
│ ├── rgb/ RGB 视频
│ └── depth/ 深度视频(伪彩色)
├── pointcloud/
│ └── YYYY-MM-DD/ 3D 点云(PLY)
└── imu/
└── YYYY-MM-DD/ IMU 数据(CSV)
指定其他路径:
bash
python3 scripts/realsense_capture.py --mode depth --output /path/to/storage/
模式文件说明depthdepth_colorized_*.jpg伪彩色深度图(近=红,远=蓝)depthrgb_*.jpg对齐后的 RGB 照片depthdepth_raw_*.png原始 16 位深度数据(需专门工具查看)rgbdrgb_*.mp4RGB 彩色视频rgbddepth_*.mp4伪彩色深度视频pointcloudpointcloud_*.ply3D 点云(可用 MeshLab / CloudCompare 打开)imuimu_*.csv加速度计 + 陀螺仪原始数据
USB 设备节点在拔插后可能变化,可通过以下方式确认:
bash
rs-enumerate-devices
# 或
ffmpeg -f v4l2 -list_formats all -i /dev/video0
当前测试节点(参考):
/dev/video0 → Depth(gray16le)/dev/video2 → Infrared/dev/video4 → RGB(yuyv422)D435i 使用 USB 2.1,同时启用 Depth + RGB 时建议:
1080p RGB 建议单独录制(无 Depth 同时)。
PLY 文件需要专门工具:
#!/usr/bin/env python3,系统会自动找到ModuleNotFoundError,确认依赖已安装: pip install opencv-python-headless numpy pyrealsense2ffmpeg,确保已安装