Unityが「Object Pose Estimation」で示したロボット開発の可能性とは
2D・3Dの両方に対応しているゲームエンジンであるUnityは、ロボット開発など最先端のテクノロジー研究においても活躍しているプラットフォームです。この度同社が発表した「Object Pose Estimation」は、そんなUnityのさらなる可能性とロボット産業の発展を予感させる技術です。
今回は、Object Pose Estimationの仕組みや運用メリット、そしてロボット開発がどのように変化していくのかについて、解説します。
①Object Pose Estimationとは
②Object Pose Estimationを運用するメリット
③Object Pose Estimationの導入でロボット開発はどう変わるのか
Object Pose Estimationとは
Object Pose Estimationは、多関節を持ったロボットのて姿勢推定を実行できるデモンストレーションで、高度なロボット開発を支援してくれるシステムです。
コンピュータビジョンとROSの統合を実現
Object Pose Estimationが強みとしているのは、コンピュータビジョンとROS(Robot Operating System)の統合を実現したことにあります。コンピュータビジョンとは、コンピュータが動画や画像を、どれくらい理解できるか、あるいは理解力の向上を研究する目的で誕生した研究分野です。
いわゆるアームなどが装着された現実世界におけるロボットは、タスクを完了するために高いレベルの立体空間認識や、画像認識能力が求められます。ロボットのタスク処理に関する精度は、そんな視覚的な認識能力に左右されるところも大きいのですが、コンピュータビジョンの発展により、大きな改善が進んでいます。
一方のROSですが、これはロボットのソフトウェアを開発するためのフレームワークとして、広く普及が進んでいるオーブンソースです。ROSパッケージのダウンロード数は全世界で3,800万回を超えており、ロボティクス分野においてはポピュラーなフレームワークであることがわかります*1。
Object Pose EstimationはそんなコンピュータビジョンとROSを統合し、ロボット開発をステップアップさせる技術として、注目が集まっています。
デモ運用で実証されたこと
Unityは、そんなObject Pose Estimationのデモンストレーションを一般に公開しており、そのパフォーマンスの高さを改めて証明しています。ロボットが物体を持ち上げて運ぶという動作には、姿勢推定と呼ばれる処理が発生します。Object Pose Estimationはそんな処理を効果的に実行する働きを持っており、効率的にロボットの挙動を完成させることに成功している様子がデモからうかがえます。
GitHub上に公開されたデモでは、Universal Robots製ロボットアーム「UR3」の姿勢推定をUnity上で行うというシナリオのチュートリアルとなっていました。URDFモデルのインポートからデータ収集、深層学習モデルのトレーニングまでをカバーしており、チュートリアルを完了すれば自動的にコンピュータービジョンを使って物体を認識できるようになったロボットが、そこにあるというシナリオに作られています*2。
複雑な手続きなく、一つのシナリオを達成するだけで高度な姿勢制御が行えるようになった点は、Object Pose Estimationの功績と言えるでしょう。
Object Pose Estimationを運用するメリット
Object Pose Estimationを運用するメリットとしては、以下の2点が検討できます。
ロボットのトレーニング効果を向上できる
一つめのメリットは、ロボットのトレーニング効果の向上です。Object Pose Estimationの特徴は、ロボットに対して姿勢制御のプログラムを実施するのではなく、厳密に言うと姿勢制御の学習方法をインプットするものです。
そのため、ロボットは高い効率で適切な制御方法を学習し、効率よく実践的なロボット開発を進められるというわけです。従来では実践的な制御については人間が手動で対応することも多かったのですが、Object Pose Estimation活用することで、自発的にロボットが制御方法を習得できます。
コスト削減効果を期待できる
二つめのメリットが、コストの削減です。Object Pose Estimationを導入したロボットは、高い精度と優れたスピードで制御方法を習得するため、開発効率は大幅に向上します。一つのロボットを開発するのに必要な人手が少なくなることはもちろんのこと、開発のスピードも向上し、さらなるロボット産業の発展や、企業の実践的な運用に貢献します。
Object Pose Estimationの導入でロボット開発はどう変わるのか
Object Pose Estimationが登場したことで、ロボット開発の最前線はどのように変化していくのでしょうか。主なポイントを確認しておきましょう。
高度なシミュレーションの実現
一つめのポイントは、従来よりも高度なシミュレーションの実現です。上記でご紹介したデモンストレーションでも証明された通り、Object Pose Estimationを運用することで、ロボットに関するシミュレーション効果は非常に効率化することができます。
実機を用いずとも、3Dシミュレーションを使って再現性の高いシミュレーションを実現できるため、わざわざテストモデルを構築する必要はありません。仮想空間でのシミュレーションがそのまま現実に応用できるため、ハイレベルなシミュレーションを何度も試行錯誤できます。
その結果、従来よりも優れたロボットを、これまでにないコストパフォーマンスとスピードで実現できるでしょう。
手動では実現できない学習パターンの構築
Object Pose Estimationが優れているのは、人間のエンジニアでは実現が難しい学習を実践できる点です。機械学習による高度な学習パターンを採用し、人工知能によってロボットを制御できるようになるため、人間が実施するよりも、高度で、尚且つ高い精度のパフォーマンスを期待できます。
おわりに
Unityは高いレベルのロボティクス技術を実装しており、Object Pose EstimationはそんなUnityの技術レベルを示すシステムの一部です。今後社会実装が進むことで、さらに高度なプログラムを、より身近に扱えるよう進化していくでしょう。
▼キャパの公式Twitter・FacebookではITに関する情報を随時更新しています!
*1 MONOist「ロボット開発プラットフォーム「ROS」はどのように進化してきたのか」
https://japan.zdnet.com/release/30525271/
*2 fabcross「Unity、産業用ロボットの姿勢推定を実行できる「Object Pose Estimation」のデモを公開」
https://fabcross.jp/news/2021/20210327_unity_objectposeestimation.html