Open Source Robotics

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

Open-Vocabulary Detection

  • 別名: open-vocabulary object detection, OVD
  • カテゴリ: Sensing › Perception outputs
  • タグ: object-detection, vision-language, computer-vision, perception, zero-shot

画像の領域を言語の埋め込みと照合することで、学習中に一度もラベル付けされなかったカテゴリも含め、任意のテキストクエリで記述された物体を見つける物体検出。

定義

固定されたラベル集合で学習した従来の検出器は、そのラベルしか出力できない。オープンボキャブラリ検出(Open-vocabulary detection)は、固定の分類器を、領域特徴とテキスト埋め込みの比較に置き換える。問い合わせ時に、ユーザーがクラス名やフレーズを与え、テキストエンコーダがそれらをベクトルに変換し、各候補領域は各クエリとの類似度でスコア付けされる。ラベル空間が固定の出力ユニットの集合ではなくテキストで定義されるので、再学習せずに新しいカテゴリを問い合わせることができ、テスト時に使うラベルが学習時に見たものと異なっていてもよい。

ボックスの注釈がないカテゴリを認識する能力は、大規模な画像・テキストの事前学習から来ている。CLIP などのモデルは、画像とキャプションのペアから整合した画像とテキストの埋め込みを学習し、オープンボキャブラリ検出器はその整合を領域のレベルにまで持ち込む。その方法には、CLIP の特徴を検出器に蒸留する(ViLD)、事前学習済みの視覚言語トランスフォーマーに検出ヘッドを付ける(OWL-ViT)、フレーズとボックスを結びつけるグラウンディングデータで学習する(GLIP、Grounding DINO)といったものがある。この意味での用語は、Zareian らの 2021 年の研究にさかのぼる。同じ考え方はセグメンテーションや 3D にも広がっている。オープンボキャブラリのアフォーダンス検出は、点ごとの特徴をテキスト埋め込みと比較することで、点群の点に自由な形式のアフォーダンス名のラベルを付ける。

オープンボキャブラリ検出は、関連する 2 つの設定とは異なる。ゼロショット検出は通常、既知のクラスの集合で学習し、それと重ならない未知のクラスの集合でテストするもので、大規模な画像・テキストの事前学習を伴わないことが多い。オープンセット検出は、既知のクラスに含まれない物体を、名前を付けずに未知として示すことを目的とする。ロボティクスでは、オープンボキャブラリ検出器によって、システムは任意の物体を名指しする指示に基づいて行動できる。たとえば VoxPoser は、3D 価値マップを構築する前に、言語モデルが生成したコードで言及された物体の位置を特定するために、オープンボキャブラリ検出器を使っている。

重要な理由

ロボットは、どの固定ラベル集合も想定していなかった物体を名指しする自然言語の指示を受け取る。オープンボキャブラリ検出を使えば、ロボットは物体ごとに新しい学習データを集めて注釈を付けなくてもそれらを見つけられる。これが、固定された物体の集合の外で言語駆動のマニピュレーションを実用的にしている。

主な用途

  • 自然言語の指示による言語条件付きマニピュレーション
  • 非構造化空間での移動ロボットによる物体探索
  • テキストで問い合わせられるセマンティックマップの構築
  • 3D 点群へのアフォーダンスのラベル付け
  • ロボットのデータセットの自動ラベル付け

実際の使われ方

モバイルマニピュレータが、青いスポンジをシンクに入れるよう指示される。パーサーが「blue sponge」(青いスポンジ)と「sink」(シンク)というフレーズを取り出し、オープンボキャブラリ検出器がそれらのクエリで現在の RGB 画像に対して実行される。返されたボックスはセグメンテーションモデルに渡され、マスクは深度画像を使って 3D に投影され、把持計画と配置のための点群になる。類似度スコアは言い回しによって変わるので、チームは 1 つの全体的なしきい値ではなくクエリごとにスコアのしきい値を設定し、行動する前に複数のフレームで検出を確認する。

よくある誤解

  • オープンボキャブラリとはどんな物体でも確実に検出できることである — まれなカテゴリ、小さなカテゴリ、変わった表現のカテゴリでは精度がやはり下がり、結果はクエリの言い回しに左右される
  • オープンボキャブラリ検出はオープンセット検出と同じである — オープンセットの手法は見慣れない物体を未知として示し、オープンボキャブラリの手法はテキストクエリからそれらに名前を付ける
  • スコアはクエリ間で比較できる — 類似度スコアはフレーズ間で較正されていないので、すべてのクエリに 1 つのしきい値を使うとうまくいかないことが多い

知っておくべき人

  • ロボット向けの検出パイプラインを構築する知覚エンジニア
  • 言語条件付きポリシーに取り組むロボット学習の研究者
  • モバイルマニピュレーションの開発者
  • セマンティックマップを構築する研究者

関連技術

  • CLIP
  • OWL-ViT
  • Grounding DINO
  • GLIP
  • ViLD
  • Segment Anything(SAM)

関連用語

  • VLM
  • Foundation Model
  • Affordance
  • Task-Oriented Grasping
  • Point Cloud
  • RGB Camera

関連プロジェクト

  • Open3D: Modern library for 3D point cloud processing, mesh operations, and 3D machine learning
  • PCL: Industry-standard C++ library for point cloud processing in robotics perception
  • pySLAM: Hybrid Python/C++ visual SLAM pipeline with classic and deep-learning front-ends
  • OpenMind OM1: AI-native operating system for robots with modular perception, cognition, and action
  • DreamZero: NVIDIA World Action Model that jointly predicts future video and robot actions
  • AprilTag: The standard visual fiducial marker system for robot localization and pose estimation

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