Open Source Robotics

高品質なオープンソースロボティクスプロジェクト、ツール、ソフトウェアの厳選コレクション。

NeRF2Real: Sim2real Transfer of Vision-guided Bipedal Motion Skills using Neural Radiance Fields

著者: Arunkumar Byravan, Jan Humplik, Leonard Hasenclever, Arthur Brussee, Francesco Nori, Tuomas Haarnoja, Ben Moran, Steven Bohez, Fereshteh Sadeghi, Bojan Vujatovic, Nicolas Heess · ICRA 2023

ライセンス

  • オープンアクセス
  • 論文: CC BY 4.0

以下の内容はすべて、論文のライセンス(CC BY 4.0)に従い論文全文に基づいています。図は著者のクレジットを付けて掲載しています。

要約

5-6 分のスマートフォン動画で学習した NeRF が、MuJoCo シミュレーションの映像と衝突メッシュを提供する。そこで学習した RGB のみのヒューマノイドのポリシーは、実ロボットへゼロショットで転移する。

重要な理由

このパイプラインは、一般的なスマートフォンの動画だけで、使える接触ジオメトリを持つ視覚的にリアルなシーンを再現でき、自己位置推定や別個の低レベル制御器なしに、RGB 画像のみから全身の二足歩行制御を学習する。ナビゲーションタスクでは、実ロボットでの成功率とゴール到達時間がシミュレーションとよく一致した。

課題

Sim2real の学習には、ロボットが実際のシーンをどう見て、どう触れるかに一致するシミュレーションが必要だが、非構造化シーンのジオメトリと外観のモデル化には時間がかかり、通常は屋外ではうまく機能しない専用の 3D スキャン装置に頼っている。RGB カメラは sim2real ギャップが大きいため、以前の視覚ナビゲーションの転移研究は、深度センサーや LiDAR、自己位置推定、既存の低レベル制御器に頼っていた。

提案手法

スマートフォンの短い動画を約 1000 枚のキーフレームに分割し、COLMAP で位置推定して NeRF の学習に用いる。NeRF はロボットのカメラ視点をレンダリングし、その占有情報はマーチングキューブ法で衝突メッシュに変換され、スケーリングしてシミュレータに位置合わせされ、床は平面に置き換えられる。MuJoCo がロボットと既知の動的物体(ボール)をシミュレーションし、それらのレンダリングを NeRF 画像に重ねる。DMPO が、非対称な critic、ドメインランダム化、画像拡張を用いて、視覚と固有受容感覚に基づく再帰型ポリシーを学習する。

主な知見

  • 1 つの NeRF が、物理シミュレーションのためのフォトリアルなレンダリングと静的な接触ジオメトリの両方を提供するため、スマートフォンの動画 1 本で学習用シーンを構築できる。
  • 既知の動的物体(ロボットの身体、ボール)のシミュレータによるレンダリングを NeRF 画像に重ねるだけで、試したタスクには十分だったが、その代わりに遮蔽は扱えない。
  • 正確なセンサーとアクチュエータのモデルに、限定的なドメインランダム化(押し、遅延、付加質量、IMU オフセット)を加えるだけで、歩容の転移には十分だった。
  • 画像拡張はカメラのキャリブレーションの代わりにはならない。ナビゲーションのポリシーはカメラのゲイン設定に非常に敏感だった。
  • エンドツーエンドで学習したポリシーは、シーンが変わったりカメラが遮られたりしても安定した歩容を保っており、ロコモーションとシーン理解がある程度分離していることを示唆している。

主な結果

  • ナビゲーション、60x80 入力:実ロボットでの成功率 87±5%(47/54 エピソード)、シミュレーションで 86±2%。所要時間の中央値は実機 11.2±0.4 s、シミュレーション 10.8±0.1 s。
  • ナビゲーション、30x40 入力:実ロボットでの成功率 69±6%(37/54 エピソード)、シミュレーションで 73±3%。所要時間の中央値は実機 10.3±0.4 s、シミュレーション 10.3±0.3 s。
  • ポリシーが持つ姿勢推定の自己位置誤差の中央値:実ロボットで 0.24±0.01 m と 0.27±0.04 m、シミュレーションで 0.17±0.01 m と 0.19±0.004 m(30x40 と 60x80)。
  • ボール押し、30x40 入力:ボールが中央から始まる場合の実機成功率は 78±7%、壁の近くから始まる場合は 43±14% で、シミュレーションではそれぞれ 99% と 100%。
  • カメラのゲインをデフォルトの 50(5 回中 4 回成功)から 90 または 128 に変えると、ナビゲーションのポリシーの試行での成功は 0/5 となり、小さな円を描いて歩いた。
  • 低解像度の NeRF レンダリング向けのぼかし拡張について、ホールドアウト画像での平均 PSNR は約 31.5 対約 35.4 と報告されている。ハッシュグリッド NeRF は V100 GPU 上で 1 フレームを 6 ms でレンダリングする。

制限事項

  • 動的物体は常に静的な NeRF シーンの手前にレンダリングされるため、遮蔽は扱えない。より複雑な動的シーンには合成型の NeRF レンダリングが必要になる。
  • 手作業の工程が残っている。Blender での床の点の選択、メッシュの位置合わせとスケーリング、テクスチャの乏しい床の平面への置き換えである。
  • 動画から学習済みポリシーを得るまでに 1-2 日かかる(COLMAP に約 3-4 時間、ポリシーの学習にナビゲーションで約 24 時間、ボール押しではその 2 倍)。
  • 接触の多いボール押しタスクでは、特にボールが壁の近くから始まる場合に sim2real ギャップが大きい。
  • 機上の計算資源(CPU 2 コア、GPU なし、1 ステップ 25 ms)によりポリシーは 30x40 と 60x80 の画像に制限され、また NeRF が天井をうまく捉えられないため、頭部のチルト範囲に上限が設けられた。

分野への影響

ICRA 2023 Outstanding Robot Learning Paper 賞のファイナリストで、被引用数は 80。論文は動画付きのプロジェクトサイトを公開しているが、コードの公開については記載がない。

概要

我々は、リアルな見た目を持つ「実環境の」シーンや、RGB カメラを用いた能動的知覚に依存するポリシーに sim2real の手法を適用するためのシステムを提示する。一般的なスマートフォンで撮影した静的シーンの短い動画が与えられると、ニューラル放射場(NeRF)を用いて、シーンの接触ジオメトリと新規視点合成のための関数を学習する。静的シーンの NeRF レンダリングに、他の動的物体(例えばロボット自身の身体、ボール)のレンダリングを重ねることで、NeRF レンダリングを拡張する。次に、物理シミュレータ内でこのレンダリングエンジンを用いてシミュレーションを構築する。物理シミュレータは、静的シーンのジオメトリ(NeRF の体積密度から推定)と、動的物体のジオメトリおよび物理特性(既知と仮定)から接触ダイナミクスを計算する。このシミュレーションを用いて、頭部に駆動可能な RGB カメラを搭載した 20 自由度のヒューマノイドロボットのための、視覚に基づく全身ナビゲーションとボール押しのポリシーを学習できることを示し、これらのポリシーを実ロボットへ転移することに成功した。プロジェクト動画は https://sites.google.com/view/nerf2real/home で公開されている。

リンク

  • arXiv 2210.04932: https://arxiv.org/abs/2210.04932
  • DOI 10.1109/ICRA48891.2023.10161544: https://doi.org/10.1109/ICRA48891.2023.10161544
  • PDF: https://arxiv.org/pdf/2210.04932v1
  • プロジェクトページ: https://sites.google.com/view/nerf2real/home

このウェブサイトにはJavaScriptが必要です。オープンソースロボティクスプロジェクトを閲覧するにはJavaScriptを有効にしてください。