シングルカメラビジョンおよびマッピングシステム


17

少し前に、1台のカメラが取り付けられた小さな「おもちゃの戦車」のデモを見ました。この戦車は床を駆け回って物体を検出し、移動/操縦してそれらを回避することができました。おもしろいのは、単一のカメラビジョンシステムを使用していることで、覚えている限りでは、床が平らであることを利用していました。そして、モーターと移動方向に関連してシーン内でフィーチャが移動している速度を使用して、シーンを評価し、それによってマップします。

誰も私にこれに関するいくつかの情報を得るために検索するもの、またはこれを行うことができるコードベースへのポインタを私に送ることができますか?

私が尋ねる理由は、これは何年も前の単一のカメラシステム(5+)であり、したがって(覚えていることから)比較的低い計算負荷であったためです。Raspberry PIでこれを試して、部屋または部屋のセットをマップする車/タンクを構築するつもりでした。


2
Robotics Ben へようこそ。あなたが直面している実際の問題に基づいて、実用的で回答可能な質問を書く方法についてのいくつかのヒントについては、尋ねる方法ツアーをチェックしてください。おかげで、
マーク・ブース

回答:


4

彼らが何をしていたかを正確に言うのは難しいですが、ここであなたが望むかもしれない用語は「オプティカルフロー」と「エゴモーション」です。何らかの機能の検出とマッチング(SURFやSIFTなど)や前景/背景のセグメンテーションもスローされた可能性があります。

OpenCVはおそらくコンピュータービジョンで最も広く使用されているコードベースであり、モーション解析のための多くの機能を備えています。OpenCVはRaspberry Piで実行する必要がありますが、アルゴリズムは計算能力によって制限される場合があります。


4

WildCrustceanの応答に基づいて、別の可能性はステレオビジョンになります。ステレオビジョンは2台のカメラを使用するものと考えることがよくありますが、実際には、空間で変位した画像と変位のモデルのみが必要です。言い換えれば、私は画像を撮って、動き、そして別の画像を撮ることができます。これら2つの画像間の変換がわかっている限り、ステレオビジョン技術を使用して画像内のポイントまでの距離を計算できます。


2
あなたが話しているテクニックは「動きからの構造」と呼ばれていると思います。
コズチ

1

Parellel Tracking and Mapping PTAMを使用していた可能性があります。PTAMは、単一のカメラを使用して世界の3Dマップを構築し、視覚的特徴を追跡することでローカライズする同時ローカリゼーションとマッピング(SLAM)問題の実装です。

私のチームはかつてROSでPTAMパッケージを使用して実験しました

Intel AtomでUbuntuを実行していましたが、思い出したように、プロセッサーの粒度はあまり高くありませんでした。しかし、主にロボットが実行される環境で十分な機能を見つけることができなかったため、私たちは結局使用しませんでした。


0

一般に、世界に関する追加情報がない限り、1つの画像から距離測定値を抽出することはできません。たとえば、世界が平面であることがわかっている場合(または平面領域である床を検出できる場合)、ホモグラフィを推定できます。

ホモグラフィは、平面間の射影変換です(3x3マトリックス)。カメラ固有のキャリブレーションがあれば、この平面誘導ホモグラフィを回転と平行移動に分解できます。翻訳はスケールアップされています。このスケールのあいまいさは、カメラから床(平面)までの距離を知ることで解決できます。

ホモグラフィを取得したら、平面上にないオブジェクトを検出できます。ホモグラフィでは、最初の画像を2番目の画像にワープできます。平面上のオブジェクトは整列し、わずかな誤差が生じます。平面上にないオブジェクトは整列しません。これは視差と呼ばれます。

これを実装する1つの方法は

  1. 両方の画像から特徴を抽出します。
  2. 機能を一致させるか、追跡します。
  3. RANSACを使用してホモグラフィを推定します。
  4. キャリブレーションを使用して、ホモグラフィを回転と平行移動に分解します。
  5. 最初の画像を
    2番目の画像にワープします。大きなエラーのあるピクセルは床になく、
    障害物になる可能性があります。

ほとんどのビルディングブロックはopencvで実装されています(http://docs.opencv.org/modules/calib3d/doc/camera_calibration_and_3d_reconstruction.htmlを参照)。

幸運を。

PSホモグラフィ分解により、平面の法線も得られます。ただし、これはグランドプレーンであると想定しているため、上方向を指す法線があります。キャリブレーション手順で、より正確なソリューションを実現できます。チェッカーボードターゲットを使用して、そのポーズを推定できます。ポーズには平面法線とカメラまでの距離があります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.