如何用Huggingface lerobot和so-arm100机械臂录制自定义数据集(含离线录制技巧)

张开发
2026/4/16 11:00:04 15 分钟阅读

分享文章

如何用Huggingface lerobot和so-arm100机械臂录制自定义数据集(含离线录制技巧)
如何用Huggingface lerobot和so-arm100机械臂录制自定义数据集含离线录制技巧在机器人学习领域高质量的数据集是训练出优秀模型的关键。对于使用so-arm100机械臂的研究人员和开发者来说掌握自定义数据集的录制方法尤为重要。本文将详细介绍如何利用Huggingface的lerobot项目在不依赖云端服务的情况下完成从硬件配置到离线录制的全流程。1. 环境搭建与硬件准备在开始录制数据集前确保你的开发环境配置正确至关重要。以下是关键步骤硬件清单so-arm100机械臂套件包括舵机控制板兼容的摄像头推荐Intel RealSense D435i/D455高性能计算设备建议配备NVIDIA GPU环境配置步骤# 创建conda环境 conda create -y -n lerobot python3.10 conda activate lerobot # 安装基础依赖 git clone https://github.com/huggingface/lerobot.git pip install -e . conda install -y -c conda-forge ffmpeg # 解决常见OpenCV依赖问题 pip uninstall -y opencv-python conda install -y -c conda-forge opencv4.10.0 jpeg libtiff注意如果遇到GLIBCXX_3.4.29 not found错误可通过以下命令解决export LD_LIBRARY_PATH$CONDA_PREFIX/lib:$LD_LIBRARY_PATH2. 机械臂配置与校准正确配置机械臂是确保数据采集准确性的基础。so-arm100机械臂需要完成以下设置舵机初始化流程查询可用串口python lerobot/scripts/find_motors_bus_port.py sudo chmod 666 /dev/ttyACM*配置单个舵机参数python lerobot/scripts/configure_motor.py \ --port /dev/ttyACM0 \ --brand feetech \ --model sts3215 \ --baudrate 1000000 \ --ID 1校准过程python lerobot/scripts/control_robot.py \ --robot.typeso100 \ --robot.cameras{} \ --control.typecalibrate \ --control.arms[main_follower]3. 摄像头集成与调试选择合适的摄像头并正确集成到系统中对数据质量有决定性影响。以下是常见摄像头配置对比摄像头型号分辨率帧率深度支持推荐指数RealSense D435i1280×72030fps是★★★★★RealSense D4551280×80030fps是★★★★★奥比中光相机640×48030fps是★★☆☆☆摄像头集成技巧修改configs/so100.yaml文件中的摄像头参数确保OpenCV能正确识别设备索引测试单摄像头独立工作后再集成多摄像头系统4. 离线数据集录制全流程这是本文的核心部分将详细介绍如何在不依赖Huggingface云端的情况下完成数据集录制。标准录制命令python lerobot/scripts/control_robot.py \ --robot.typeso100 \ --control.typerecord \ --control.fps30 \ --control.root/path/to/local/output \ --control.num_episodes30 \ --control.warmup_time_s5 \ --control.episode_time_s30 \ --control.reset_time_s10关键参数说明root: 指定本地存储路径替代云端仓库num_episodes: 设置录制片段数量warmup_time_s: 每次录制前的准备时间episode_time_s: 单次录制持续时间常见问题解决方案视频编码错误# 确保系统安装了正确的编码器 sudo apt-get install libx264-dev export PATH/usr/bin:$PATH数据存储结构/output/path/ ├── videos/ │ ├── chunk-000/ │ │ ├── observation.images.D435i/ │ │ │ ├── episode_000000.mp4 │ │ │ └── ... ├── metadata.json └── dataset_info.json多摄像头同步 在配置文件中设置sync: true参数并使用硬件同步信号线连接多个RealSense设备5. 高级技巧与优化建议提升数据质量的实用技巧使用--control.single_task参数明确记录每个动作的目标在光线稳定的环境中录制避免自动曝光导致的画面变化定期进行机械臂零点校准确保动作一致性性能优化配置# 在config文件中添加以下优化参数 video: compression: h264 quality: 23 preset: fast数据集标注建议为每个录制片段添加清晰的描述文件使用时间戳同步视频和机械臂动作数据保留原始传感器数据用于后期分析通过以上步骤你可以建立起完整的本地数据集录制工作流摆脱对云端服务的依赖更高效地进行机器人学习研究。

更多文章