私は立体視の研究をしていますが、この質問の深度推定の精度に興味があります。それは次のようないくつかの要因に依存します:
低価格のカメラやレンズがない(安価なウェブカメラなどがない)としましょう。
私の質問は、この分野で達成できる深度推定の精度はどれくらいかということです。ある程度の精度で動作する実際のステレオビジョンシステムを知っている人はいますか? 1mmの深さ推定精度を達成できますか?
私の質問は、opencvに実装されているシステムも対象としています。どのくらいの精度を達成できましたか?
高価なカメラでも色を使用するのは悪い考えだと付け加えます。グレーの強度のグラデーションを使用するだけです。ハイエンドステレオカメラ(Point Greyなど)の一部のプロデューサーは、以前はカラーに依存していましたが、その後グレーに切り替えました。また、バイアスと分散をステレオマッチングエラーの2つの要素と見なします。これは重要です。たとえば、相関ウィンドウが大きい相関ステレオを使用すると、深度が平均化され(つまり、世界を正面平行パッチの束としてモデル化)、分散が増加する一方でバイアスが減少し、その逆も同様です。したがって、常にトレードオフがあります。
あなたが上で述べた要因よりも、あなたのステレオの精度はアルゴリズムの詳細に依存します。深さを検証し(ステレオ推定後の重要なステップ)、テクスチャのない領域の穴に適切にパッチを適用するのはアルゴリズム次第です。たとえば、前後の検証(RからLへのマッチングはLからRへのマッチングと同じ候補を生成する必要があります)、ブロブノイズ除去(ステレオマッチングに典型的な非ガウスノイズは 連結成分アルゴリズム で除去されます)を検討してください。 )、テクスチャ検証(テクスチャが弱い領域の深さを無効にする)、一意性検証(2番目と3番目の強力な候補がないユニモーダルマッチングスコアを持つ。これは通常、前後の検証へのショートカットです)など。精度センサーのノイズとセンサーの動的範囲にも依存します。
最後に、d = f * B/zであるため、深度の関数としての精度について質問する必要があります。ここで、Bはカメラ間のベースライン、fはピクセル単位の焦点距離、zは光軸に沿った距離です。したがって、精度はベースラインと距離に強く依存します。
Kinectは、1m程度までの非常に大きな変動で、1mmの精度(バイアス)を提供します。それからそれは急激に下がります。 Kinectには、近距離で2台のカメラの重なりが十分にないため、最大50cmの不感帯があります。そしてそうです-Kinectは、カメラの1つがIRプロジェクターによってシミュレートされるステレオカメラです。
マルコフ確率場での確率伝搬法などの確率的ステレオを使用すると、より高い精度を達成できると確信しています。しかし、これらの方法は、オブジェクトの表面の滑らかさや特定の表面の向きについて、いくつかの強い事前条件を前提としています。 これは、たとえば、14ページ を参照してください。
Q。ある程度の精度で動作する実際のステレオビジョンシステムを知っている人はいますか? 1mmの深さ推定精度を達成できますか?
はい、ステレオリグを使用すると、間違いなく1mm(およびはるかに優れた)深度推定精度を達成できます(つまり、顕微鏡のペアを使用してステレオ偵察を行うことができます)。 0.1 mmの範囲の精度を備えたステレオベースの産業用検査システムが日常的に使用されており、少なくとも1990年代初頭から使用されています。明確にするために、「ステレオベース」とは、2つ以上の幾何学的に分離されたセンサーを使用する3D再構成システムを意味します。ここで、ポイントの3D位置は、センサー内の3Dポイントの一致した画像を三角測量することによって推測されます。このようなシステムは、構造化光プロジェクターを使用して画像のマッチングを支援する場合がありますが、適切な「構造化光ベースの3D再構成システム」とは異なり、光プロジェクター自体のキャリブレーションされたジオメトリに依存しません。
ただし、高精度のために設計されたそのようなステレオシステムのほとんど(おそらくすべて)は、構造化照明の形式、または再構築された形状のジオメトリに関する事前情報(または両方の組み合わせ)のいずれかを使用して、厳密に)三角形分割するポイントのマッチングを制約します。その理由は、一般的に言えば、一致するよりも正確に三角測量できるため、一致精度が再構成精度の制限要因になるためです。
これが当てはまる理由を理解するための直感的な方法の1つは、ステレオ再構成方程式の単純な形式z = f b/dを調べることです。ここで、「f」(焦点距離)と「b」(ベースライン)はリグのプロパティを要約し、キャリブレーションによって推定されます。一方、「d」(視差)は同じ3Dポイントの2つの画像の一致を表します。
現在、決定的に重要なのは、キャリブレーションパラメータが「グローバル」なものであり、視野と対象深度範囲で行われた多くの測定に基づいて推定されていることです。したがって、キャリブレーション手順に偏りがなく、システムがほぼ時不変であると仮定すると、各測定値の誤差はパラメーター推定値で平均化されます。したがって、多くの測定を行い、リグの光学系、形状、環境(振動、温度と湿度の変化などを含む)を厳密に制御することで、キャリブレーションパラメータを非常に正確に推定できます。つまり、偏りのない推定値が影響を受けます。センサーの解像度の次数の不確実性、またはそれ以上であるため、リグが動作する既知の空間内で、残留する不正確さの影響を無視できます。
ただし、視差は点ごとの推定値です。左側の画像の点pは、右側の画像の点qと一致すると述べています。 、および視差d =(q --p)のエラーは、zにでスケーリングされて表示されます。 fb。それは一発のことです。さらに悪いことに、視差の推定は、すべての重要なケースで、分析対象のオブジェクトの(事前に不明な)ジオメトリと表面特性、およびそれらの照明との相互作用の影響を受けます。これらは、使用するマッチングアルゴリズムを介して、達成できる再構成の実際的な精度を低下させるために共謀します。構造化照明は、このようなマッチングの不確実性を低減するため、ここで役立ちます。基本的な考え方は、画像内で見つけてマッチングできる(多くの場合、サブピクセル精度で)オブジェクトにシャープで焦点の合ったエッジを投影することです。構造化照明の方法はたくさんあるので、ここでは詳しく説明しません。しかし、これは色を使用すると多くのに役立つ領域であることに注意してください。
したがって、実際に達成できることは、いつものように、どれだけのお金を費やしても構わないと思っているか(より良い光学系、低ノイズセンサー、剛性のある材料とリグのメカニズムの設計、制御された照明)、およびあなたがどれだけよく理解しているかによって異なりますそしてあなたの特定の再建問題を制約することができます。
アプローチの正確さについてもう少し知りたくない場合は、 このサイト を見てください。ただし、あまりアクティブではなくなっていますが、結果はほとんど最先端のものです。そこで発表されたいくつかの論文が会社を設立するために行ったことを考慮に入れてください。実際のステレオビジョンシステムとはどういう意味ですか?商用を意味する場合、多くはありませんが、商用再構築システムのほとんどは、構造化光または直接スキャナーで動作します。これは、(リスト内の1つの重要な要素を見逃した)ため、テクスチャが正確さの重要な要素であるためです(またはその正確さの前でも)。テクスチャまたは構造化光が追加されない限り、白い壁をステレオシステムで再構築することはできません。それにもかかわらず、私自身の経験では、変分マッチングを含むシステムは非常に正確である可能性があり(画像空間のサブピクセル精度)、これは一般に確率論的アプローチでは達成されません。最後に、カメラ間の距離も精度にとって重要です。非常に近いカメラは多くの正しい一致をすばやく検出しますが、精度は低くなり、離れたカメラは一致が少なくなり、おそらく時間がかかりますが、結果は次のようになります。より正確な; 多くの本 で定義されている最適な円錐領域があります。このすべてのブラブラの後、opencvを使用してできる最善のことの1つは、最初のカメラキャリブレーションを実行し、Broxのオプティカルフローを使用して一致を見つけて再構築することです。