ディープラーニング技法によるステレオ深度推定の強化
概要
ステレオ深度推定は、ロボティクス、AR/VR、工業検査に不可欠であり、ビンピッキング、自律航法、品質管理などの業務のための3D認識を実現します。Teledyne IISのBumblebee Xステレオカメラは、1024×768の解像度で最大38 FPSの詳細な視差マップを生成し、高精度とリアルタイム性能の両方を備えています。
Semi-Global Block Matching(SGBM)アルゴリズムに基づいて構築されたBumblebee Xは、テクスチャーが明確なシーンで確実に機能します。ただし、多くの古典的なステレオ手法と同様に、テクスチャーの乏しい領域または反射面のある領域では十分に機能できない場合があり、特にパターンプロジェクターがない場合、ギャップまたは不完全な深度データとなる場合があります。
最近のディープラーニング(DL)の進歩により、視差、精度、完全性を高める有望なソリューションが登場しています。本書では、実際の試験を通じてこれらの手法を考察し、その長所、トレードオフ、組み込みシステムへの適合性に焦点を当てます。
これらの手法を評価する前に、古典的なステレオ技法が直面する実際の課題を理解することが重要となります。
ステレオ深度推定:課題と制約事項
オンボードSGBMのような古典的なステレオアルゴリズムでは、高速で効率的な視差推定を行えるため、組み込み用途やリアルタイム用途に適しています。これらの手法は、表面テクスチャーが良好なシーンで確実に機能し、GPUアクセラレーションもトレーニングデータも必要としません。
ただし、より複雑な環境、特に反射表面やテクスチャーの乏しい表面では、不完全または不正確な深度マップが生成されることがあります。
下の倉庫のシーンは、これらの課題のいくつかを示しています。距離が長く、同様の情景が繰り返される棚では視差の手がかりが少なくなり、光沢のあるエポキシの床面が周囲の光を反射し、頭上の照明器具からの鏡面ハイライトによりマッチングエラーが生じます。
シーンの左端と右端に沿った空白領域は、SGBMアルゴリズムのMinDisparityが0に設定されるとともに、256レベルの視差範囲が固定されるために生じます。その結果、システムは、測定可能な深度ウィンドウの外にある物体、つまり約1.6メートルより近くにあるいかなる物体も測定できません。これらの近距離にある物体をキャプチャーするには、Minimum disparity値(Scan3D座標オフセット)を大きくするか、1/4解像度モードに切り替えます。

上の視差画像で示されるとおり、SGBMオンボード視差エンジンの欠点は明らかです。
このような課題に対処するため、ステレオビジョン用途では、以下の2つのディープラーニングベースの補完的手法が一般的に使用されています。
ハイブリッドDL法:
この手法は、軽量ニューラル・モデルを用いて、SGBMにより生成される初期視差マップを拡張します。CVLAB-Uniboのneural disparity refinementモデルのような技法は、空間と色の手がかりを活用することで、深度の完全性を向上させ、マッチングアーチファクトを低減できます。複合的手法として、精度の向上と計算効率のバランスが取れており、リアルタイムシステムまたは組み込みシステムに適しています。
エンドトゥーエンドDL法:
この手法では、Selective-StereoやFoundationStereoなどのエンドトゥーエンドのディープラーニングモデルを使用し、オンボードSGBMに頼ることなく、ステレオ画像ペアから直接視差を計算します。これらのネットワークは、大規模なデータセットからセマンティックとコンテクストの特徴を学習することで、オクルージョンや反射面を含む複雑なシーンでも高密度で正確な視差マップを提供できます。トレードオフとして、GPUに対する要件が高くなり、リアルタイム環境またはリソースが制約される環境における使用が制限されることがあります。
次のセクションでは、各手法をより深く掘り下げ、実際のシーンにおけるそれらの精度、実行時間、カバレッジ性能を評価します。
ハイブリッドDL法 (neural-disparity-refinement model)
手法の説明
CVLAB-Uniboのneural disparity refinement手法では、古典的な手法(たとえばSGBM)によって生成される既存の視差マップが拡張されます。この手法では、2つの軽量な畳み込みエンコーダーと1つのスキップ接続デコーダーを採用し、以下を行います。
- 空間と色の一貫性に基づいて視差ギャップを埋める
- 学習された空間的コンテキスト情報によりエッジをシャープにする
- ストリーキングなどの一般的なステレオマッチングアーチファクトを低減する
ネットワークアーキテクチャー
neural refinementネットワークは、以下の2つの入力を処理します。
- ステレオカメラから見て左のRGB画像
- Bumblebee Xがオンボードで生成した未加工の視差マップ
スキップ接続が行われるU-Netスタイルのアーキテクチャーは、粗い視差推定とRGB入力からの細かいディテールを効果的に融合し、深度マップの完全性を大幅に向上させます。
性能
neural disparity refinementの推論速度は、NVIDIA RTX 3060 GPUで約3 FPSであり、非同期のリアルタイム拡張に適しています。
同じ倉庫シーンで、オンボード視差エンジンから得られる出力を左の歪み補正画像とともにneural-disparity-refinement modelに渡すことにより、視差を微調整します。結果は以下のとおりです。

視差画像に見られるように、このネットワークを倉庫のシーンに適用すると、視差情報の抜けが減り、床のミスマッチも修正されます。ただし、この微調整は従来のSGBMに依存しているため、SGBMがデータを持たない領域(左右の端)では、依然として抜けがみられます。
これらの結果を再現するには、GitHubのDeep Learning examplesをご参照ください。
エンドトゥーエンドDL方式(Selective-Stereo)
手法の説明
Selective-StereoとFoundation-Stereoは、SGBMのような従来型のマッチングアルゴリズムに頼ることなく、ステレオ画像ペアから直接視差マップを計算する高度なディープラーニングフレームワークの例です。これらは、そのアーキテクチャー内で適応周波数選択を採用しており、高周波のエッジと低周波の滑らかな領域を区別することで、画像のさまざまな領域に合わせて最適化された処理を実現します。
ネットワークアーキテクチャー
Selective-Stereoは、IGEV-Stereoアーキテクチャーを基盤としており、反復的微調整のための選択的再帰ユニット(SRU)を組み込んでいます。この手法では、以下のとおり、検出された画像周波数特性に基づいて計算の焦点を動的に調整します。
- 高周波ブランチはエッジと細かいディテールを強調する
- 低周波ブランチは滑らかな領域を維持し、過学習を避ける
性能
Selective-Stereoは、高い精度と完全性を実現する一方で、計算量が多く、フレームレートはNVIDIA RTX 3060 GPUで約0.5 FPSとなります。
以下に示すようにエンドトゥーエンドのディープラーニング手法では、最も広い視差有効範囲が確保され、微細な構造的ディテールが維持されます。たとえば、天井の照明器具からの反射によって生じるスペックルアーチファクトを回避しながら、天井の照明器具が鮮明にレンダリングされます。
全体として、完全エンドトゥーエンドの視差推定ネットワークの性能は、より長い実行時間と強力なGPUが必要になるものの、未加工のオンボードSGBM出力とneural-refinementパイプラインの両方を上回ります。

これらの結果を再現するには、GitHubのDeep Learning examplesをご参照ください。
追加の考慮事項
オンボード視差の結果と同様に、1.6 mより近い面(0~256の視差ウィンドウの外側)は正確に処理されません。右下の収納ビンから、この問題がわかります。カメラに非常に近いため、最も赤い範囲に表示されるはずですが、ネットワークはより小さな視差を割り当てて、実際よりも遠くにこれを配置しています。この局所的な誤差によって深度マップが破損し、その領域にだけ欠陥のある点群が生成されます。
ディープラーニングモデルによっては、より近い物体を正しくキャプチャーするためにminimum disparityを調整することができるものもあれば、それができないものもあります。選択したディープラーニングモデルがminimum disparityを許容しない場合、右の画像を希望する最小視差ピクセル分だけ左にずらしてから、その値を各出力視差にあらためて足すことができます。
同様に、一部のディープラーニングモデルでは、動作する視差の範囲も制限されます。このような場合、同じ測定可能な深度範囲を得るために、入力された歪み補正画像のサイズを変更する必要がありますが、これは深度精度を犠牲にすることになります。
SGBMとSGBMベースのハイブリッドモデルはチューニングの必要がなく、どのようなシーンでも信頼性が高く、すぐにその効果を発揮しますが、多くのモデルでは、シーンごとのファインチューニングも必要です(高度な「Foundation-Stereo」ネットワークではゼロショットが一般化されるにもかかわらず)。
比較実験分析
既知の5メートルの距離に配置されたランダムパターンを使用して、実験的ベンチマークを実施しました。カメラは、1024×768(クォーターモード)の解像度で動作しました。 精度試験では、パターンのうちテクスチャーが認められる部分全体において関心領域(ROI)を定義し、適切に定義されたフィーチャーのみが深度統計に寄与するようにしています。カバレッジは、同じ壁上で、テクスチャーのある領域と、テクスチャーの無い滑らかな白い壁面上の、2段階に分けて評価しています。以下に示す画像は、その結果得られた視差マップです。

これらのテストの結果は以下のとおりです。
|
|
テクスチャーが認められる領域のカバレッジ(%) |
テクスチャーのない領域のカバレッジ(%) |
深度の中央値(m) |
誤差の中央値(m) |
誤差の中央値(%) |
フレームレート(FPS |
SGBM (On-board) |
100.00 |
18.48 |
5.052 |
0.052 |
1.03 |
38 |
SGBM + Neural Refinement |
100.00 |
100.00 |
5.058 |
0.058 |
1.17 |
3 |
Selective-Stereo |
100.00 |
100.00 |
4.988 |
-0.012 |
-0.24 |
0.5 |
所見
- Neural refinement により、視差の完全性が大幅に改善したが、誤差の中央値はわずかに増加
- Selective-Stereoは、より優れた完全性と最小限のバイアスを保証し、精度が要求される用途に対し有効
実用ガイドライン
具体的な実用シナリオに関する推奨事項:
- 高速リアルタイム用途(30 FPS以上):Bumblebee XのオンボードSGBMを、オプションでパターンプロジェクターと組み合わせて活用することで、完全性を向上できます。
- カバレッジとレイテンシーのバランス:オンボードSGBMと非同期でニューラル視差微調整を実施し、カバレッジを拡張できます。
- 最高の精度と完全性:低フレームレートが許容可能で、高い精度が不可欠な場合は、Selective-Stereoをお選びください。
結論
ディープラーニング手法は、複雑な環境におけるBumblebee XのオンボードSGBM性能を大幅に向上させます。処理が軽量な微調整機能により、適度なハードウェアでも処理が軽量な微調整機能により、適度なハードウェアでもリアルタイムの改善を実現し、エンドトゥーエンドのネットワークは、速度がそれほど重要でない場合に優れた品質を確保します。固定パイプラインやオンボード処理の欠如による制約を受ける多くのステレオカメラとは異なり、Bumblebee Xは両方の方式に対応しているため、ユーザーは多様な用途で精度、速度、コンピューティングを柔軟に最適化できます。