Learnに戻る

レロボット互換性データセットを記録する方法

レロボット記録 CLI を使用してエピソードベースのパケット + ビデオショットを撮影します コンピューターのセットをクリーンにします ハグジングフェイスハブで準備ができています ロボットセットアップを含む約2時間です

LeRobotはハグジングフェイスのオープンソースのロボット学習スタックです.そのデータセットフォーマットは,腕規模の模倣学習のデフォルトになっています.エピソードベースの,パケット + ビデオショード,自定義メタデータ,ハグジングフェイスハブネイティブ.このチュートリアルでは,CLI T6を使用して,ゼロからクリーンな50エピソードデータセットを記録し,公開します.

データの収集 総時間:約2時間 困難:初心者 アップデート 2026年4月

達成する事

このチュートリアルの終わりには,ディスク上の50話のレロボットデータセット,視覚検査パス,正常化統計,およびHuggingFace Hubに公開された公的または私的なデータセットがあります.そのデータセットは,レロボット政策訓練 (ACT,拡散政策,VLAヘッド),参照実装,およびコミュニティ評価とすぐに互換性があります.

LeRobot データセットのフォーマットは,各エピソードを,パーケットファイルに並べられた状態,アクション,および MP4 ショートに保存されたビデオフレームへの参照を含む行範囲として保存します.このフォーマットは,ハブから効率的にストリーミングし,PyTorch DataLoadersにきれいにロードし,JSON メタデータファイルを通じて自定義するように設計されています.

必須条件

  • LeRobotがサポートするロボット腕. SO-100 / SO-101,OpenArm,Koch v1.1,Moss,Aloha,WidowX,URシリーズ サポートされているリストは定期的に増加しています.オプションを検索するには [ロボットストア]T25) を閲覧してください.
  • 少なくとも1台のカメラ USBウェブカメラやインテルRealSense 腕+上下は理想的です.
  • Ubuntu 22.04 パイthon 3.10+と ffmpegのワークステーション.
  • HuggingFaceアカウント 出版 (オプション)
  • 双手通用 (T26) のための [ALOHA teleop tutorial]や,単腕通用 (T27) の [アカデミー]のリーダーフォロワーガイドを参照してください.

ステップ

  1. レロボットをインストール

パーツタイプごとにオプションの追加機能があります

```
conda create -n lerobot python=3.10 -y
conda activate lerobot
pip install --upgrade pip
pip install lerobot

# hardware-specific extras (pick yours)
pip install 'lerobot[feetech]'    # SO-100, Koch
pip install 'lerobot[dynamixel]'  # Aloha, WidowX
pip install 'lerobot[intelrealsense]'  # for RealSense cameras
```

インストールを確認: T7. github.com/huggingface/lerobot で現在のサポートされたハードウェアマトリックスを確認してください プロジェクトが急速に動いています.

  1. ###腕を調整する

された腕には カリブラーションのサブコマンドがあります

```
lerobot-calibrate \
  --robot.type=so100 \
  --robot.port=/dev/ttyACM0
```

動力 IDを検出し,関節ゼロの位置を設定し,校正を T8に保存します. 腕を再設置したり,ケーブル交換したりしたら再起動します.

  1. カメラとテレオップをチェック

視線を直視して 精神をチェックする

```
lerobot-teleoperate \
  --robot.type=so100 \
  --robot.port=/dev/ttyACM0 \
  --robot.cameras='{"top": {"type":"opencv","index":0}, "wrist": {"type":"opencv","index":2}}' \
  --display_data=true
```

腕を動かす場合は,まずUSBケーブル品質を確認してください. 腕は,スライドバスで状ケーブルに敏感です.

  1. 任務と指示を定義する

"赤いキューブを拾って青い鉢に放す"は"キューブで何かをする"を打つ.自然言語の指示は,すべてのエピソードで文字どおり保存され,下流ポリシーが見る唯一のテキストになります.

Tip: 作業の成功基準をバイナリーにしてデータから観察できます. "キューブはボウル内にある"は鮮明です. "キューブは柔らかく置かれている"は違います.

  1. 50話録画する

T9 CLIで50話を記録する. リリース間の旗の名前は少し移動します.

```
lerobot-record \
  --robot.type=so100 \
  --robot.port=/dev/ttyACM0 \
  --robot.cameras='{"top": {"type":"opencv","index":0}, "wrist": {"type":"opencv","index":2}}' \
  --dataset.repo_id=<your-username>/red_cube_blue_bowl \
  --dataset.num_episodes=50 \
  --dataset.single_task="Pick the red cube and place it in the blue bowl." \
  --dataset.fps=30 \
  --dataset.episode_time_s=20
```

ステージの間のシーンを少し異なる初期設定にリセットします キューブ位置,ボウル位置,照明角度が異なります. 訓練された方針がどの程度一般化するか,これは最大の要因です. 休憩してください. ~30話後にオペレーター疲労は現実です. 最後の20回のデモの品質はあなたが思っているよりも重要です.

  1. データセットをチェック

組み込みのビジュアルライザーでエピソードをスクロールする

```
lerobot-dataset-visualize --repo-id=<your-username>/red_cube_blue_bowl
```

監視:カメラの停止,関節の断絶,作業を逃したエピソード,フレームレートの変動.一般的な常識チェック:時間の経過とともにプロットアクションの標準 ピークは通常,テレオップのアーテファクトを意味します.

  1. 悪いエピソードを落として 統計を計算する

データのセットのメタデータから失敗または混乱したエピソードを削除します.LeRobotはエピソードインデックスによるフィルタリングをサポートします.クリアした後,正常化統計 (アクションと状態次元ごとに平均/STD) を再計算します.したがって下流トレーニングは正しい値を使用します. T10 CLI には,このために T11 コマンドが含まれます.

  1. ハグ・フェイスハブに押す

T12で一度認証し,後押しします. T13 CLI は自動アップロードをサポートします.

```
huggingface-cli upload <your-username>/red_cube_blue_bowl \
  ~/.cache/huggingface/lerobot/<your-username>/red_cube_blue_bowl \
  --repo-type=dataset
```

データベースは公開 (またはプライベート) になっています. T14でどこにでも読み込みます. 標準的な ACTポリシーを1つのコマンドで実行して,認証します. ACTが1時間以内に50個のデモを収納できれば,データセットは健康です.

次にどうする?

リーロボットデータセットがクリーンになったら,次の2つのフォローアップが重要になります. (1) ポリシーを訓練する際には,ACTは最も簡単な最初のベースラインであり, (2) OpenVLA は ACTベースラインと比較するデータセットで使用されます. 深刻なデータ収集に拡大している場合は, ALOHA双手テレビ はハードウェアの次のステップです. 人体体では, [Unitree G1 カメラ校正](T31から始めます.

常識の故障モード

エピソードは長さが異なる: 訓練中にレロボットパッドを預かります. 固定目標期間で記録を続け,フレームワークが長さの変動を処理できるようにします.

** 巨大なデータセットサイズ:** LeRobot の ビデオ ショット は H.264 で 暗号化 さ れ て い ます.サイズ が 問題 で ある 場合,より 解像度 が 必要 な な カメラ の 場合, 15 FPS または 480p に 降っ て ください.

** 政策の過失は即時:** 収集中に十分なシーン変異はありません.初期条件をより攻撃的にランダム化します.

Hub アップロード失敗: 通常, repo-exists または許可エラー. T15 で repo を最初に作成します.

深層ダイビング: レロボットデータセットの形式

レロボットデータセットのレイアウトは,ディスク上のトップレベルのディレクトリで,パケットショート (通常1話あたり1枚) のフォルダ,MP4ショート付きのフォルダ,T16,T17,T18,FPSのフォルダ,T20が表示されています. パークレット列は,毎時間スケラーと参照である. MP4は,フレームインデックスによって参照される画像観測を保持する.

この設計は意図的:パルケットのスケーラーは,パッチデータロードに高速な柱状アクセスを提供し,MP4は,ランダムアクセスを犠牲にせずにフレーム画像ファイルに比べてディスク上の大幅圧縮を改善します.CRF 18でコードされたH.264は操作にはほとんど損失がありません.CRF 23は,ほとんどのタスクのポリシートレーニングに目に見える質の影響のない約3倍もの小さなファイルを提供します.

深い潜水: シーンの変化が唯一の最大の品質レバー

撮影に2時間時間があれば,最初の30分間のシーン・変更を計画して,最初の90分間のベースラインエピソードを記録する代わりに.

  • オブジェクトポーズ. 作業場全体で格子で少なくとも10つのスタートポジション.
  • 照明. オーバーヘッド・フローレスセント対暖かいランプ対自然窓 最低3条件
  • ディストリੈਕਟਰ* 半分の時間には2〜3つの無関係な物体をテーブルに追加します ディストリੈਕਟਰなしで訓練された政策は,エンジニアリングデスクにコーヒーカップが付いている瞬間に壊れます
  • 背景 2~3つのテーブル表面やテーブルカバーを回す.
  • "赤いキューブを拾ってボウルに入れて" / "赤いキューブを青いボウルに入れて" / "赤いキューブをボウルに移動する"

深い潜水: 録音から訓練まで 一日の午後

レロボットデータセットの記録の目的は,その上でポリシーを訓練することです. 録音完了するとベースラインレシピは: T22.単一のGPUでは,ACTポリシーは約45分から2時間間で50話に収まる. 損失とアクションスペースエラーが徐々に減少しているのが見えます. T23で訓練されたチェックポイントを実行することによって実際のロボットを評価します. 訓練された作業の成功率は50話で70%以上で 100話で85%以上で

深層ダイビング: 録音を止めて訓練を始める時

チームでは頻繁にオーバーレコーディングをする.正しいヒューリスティック:25回のACT政策を25回ごとに練習し,成功を測定し,成功曲線が平滑するときに停止する.あなたはしばしば単一のタスクに対して80〜150回の減少率を記録する. _different_タスクで追加的な記録時間を費やすると,より良い多タスク政策が生まれる.

よく聞かれる質問

ローボット T24 インターフェースに一致する Python クラスを実装する 接続,断絶,関節位置を読み取,アクションを送信,カメラフレームを読み取.通常は数百行.

**典型的な50エピソードデータセットはどのくらいの大きさですか? ** カメラ数と解像度に応じて約1~5GBです. ハブフリーレベルでホストできます.

** シミュレーションデータを記録できますか?** はい LeRobot は sim envs (ALOHA, PushT, Xarm) をサポートします.

関節角を超えたプロピオセプションはどうでしょうか LeRobot は任意の状態次元をサポートします.データセットの情報にそれらを宣言し,ロードーは残りの部分を処理します.

関連チュートリアルとリソース