Skip to content

kaileliu/videoTrain

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 

Repository files navigation

Sim-to-Real Calibration for Robot Manipulation

项目概述

解决机械臂在现实世界执行中的小概率跳变问题,通过对比仿真(sim)和现实(real)环境中的执行轨迹,学习一个校正模型来补偿偏差。

问题背景

  • 问题:电机执行存在小概率跳变,导致实际角度 ≠ 理想角度
  • 目标:学习映射 delta(dx, dy, dz),预测两个轨迹之间的偏差

🎯 两种使用方式

方式1: 超简化 - 直接从MP4视频训练(推荐)

数据格式: MP4视频 + Parquet位姿文件

# 1. 准备数据(只需按规范组织文件)
your_data/
├── mp4/
│   ├── sample_000_video1.mp4
│   ├── sample_000_video2.mp4
│   └── ...
└── episode/
    ├── sample_000_data1.parquet
    ├── sample_000_data2.parquet
    └── ...


# 2. 训练
python train_video.py --data-root your_data

# 3. 完成!

方式2: 完整版 - LeRobot格式

数据格式: 完整LeRobot目录结构(包含episodes、metadata等)

python train.py --config configs/default.yaml

数据格式

输入数据结构

data/
├── real/          # 现实场景数据
│   ├── data/
│   ├── meta/
│   └── videos/
│       ├── observation.images.above/
│       └── observation.images.front/
└── sim/           # 仿真场景数据
    ├── data/
    ├── meta/
    └── videos/

Label格式

  • 机械臂位姿:(x, y, z) 或末端位姿四元数

输入/输出

  • Input: sim视频流 + real视频流(初始状态相同)
  • Output: delta(dx, dy, dz)

快速开始

1. 安装依赖

pip install -r requirements.txt

2. 准备数据

将数据按照上述结构放置在 data/ 目录下

3. 训练模型

python train.py --config configs/default.yaml

4. 评估模型

python evaluate.py --checkpoint checkpoints/best_model.pt

模型架构

  • 视觉编码器:提取双视角视频特征(顶部+腕部相机)
  • 时序编码器:捕获轨迹的时序依赖
  • 校准头:预测位姿偏差 delta(dx, dy, dz)

项目结构

.
├── src/
│   ├── data/           # 数据加载和预处理
│   ├── models/         # 模型定义
│   ├── training/       # 训练逻辑
│   └── utils/          # 工具函数
├── configs/            # 配置文件
├── scripts/            # 辅助脚本
├── train.py           # 训练入口
├── evaluate.py        # 评估入口
└── requirements.txt   # 依赖项

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors