利用深度學習技術強化雙目視覺深度量測
概述(Overview)
雙目深度估測(Stereo Depth Estimation)是機器人、AR/VR 與工業檢測中的關鍵技術,能為料箱取物、自主導航與品質檢測等提供精確的 3D 環境感知。Teledyne IIS 雙目相機同時具備高精度與即時效能,可在1024 x 768的解析度下,以最高38FPS產生高品質的視差圖(disparity map)。
Bumblebee X 採用半全域方塊比對(Semi-Global Block Matching, SGBM)演算法,在紋理良好的場景中表現穩定可靠。然而,如同多數傳統雙目方法,在低紋理或具反射性的表面上(尤其是在未使用投影紋理光源的情況下),仍可能出現深度資料缺失或不完整的問題。
近年來,深度學習(Deep Learning)的快速發展,為提升視差準確度與完整性提供了可行解法。
在評估這些方法之前,必須先理解傳統雙目技術在實際應用中所面臨的挑戰。
雙目深度估測:挑戰與限制(Stereo Depth Estimation: Challenges and Limitations)
傳統雙目演算法(如相機內建的 SGBM)具備的特性,非常適合嵌入式與即時應用。這類方法在表面紋理充足的場景中表現良好,且不需要 GPU 加速或訓練資料。
然而,在較複雜的環境中,特別是低紋理或高反射表面,往往會產生不完整或不準確的深度圖。
以下倉儲場景清楚展現了這些挑戰:
- 長而重複的貨架結構降低了視差線索
- 具光澤的環氧樹脂地板反射環境光
- 天花板燈具的鏡面反射造成匹配錯誤
場景左右邊緣出現的空白區域,源自於 SGBM 的MinDisparity 設為 0。因此,系統無法量測超出該深度範圍的物體,特別是距離相機約 1.6 公尺以內的物體。若需擷取近距離物件,可提高最小視差值(Scan3D Coordinate Offset)。
從上述視差圖可明顯看出,相機內建 SGBM 視差引擎的限制相當明顯。
深度學習解決方案概述
為克服上述問題,實務上常見兩種互補的深度學習方法:
一、混合式深度學習方法(Hybrid DL Method)
此方法對 SGBM 產生的初始視差圖進行強化。
- 提升深度完整性
- 減少錯誤匹配與條紋雜訊
- 在準確度與運算效率間取得平衡
此方法非常適合即時或嵌入式系統。
二、端到端深度學習方法(End-to-End DL Method)
此方法直接從左右影像計算視差,完全不依賴 SGBM。即使在遮擋或高反射場景中,也能產生高密度且準確的視差圖。其代價是需要更高的 GPU 運算資源,較不適合資源受限或高即時性應用。
混合式 DL 方法(Neural Disparity Refinement Model)
方法說明
CVLAB-Unibo 的神經視差修正方法,主要用來改善傳統演算法(如 SGBM)產生的視差圖。可實現:
- 依據空間與色彩一致性填補視差空洞
- 透過學習到的上下文資訊強化邊緣
- 降低常見的立體匹配雜訊(如 streaking)
網路架構
兩個輸入源:
左相機的 RGB 影像Bumblebee X 內建 SGBM 產生的原始視差圖
- 左相機的 RGB 影像
- Bumblebee X 內建 SGBM 產生的原始視差圖
能將粗略的視差結果與高解析度影像細節有效融合,大幅提升深度圖完整度。
效能表現
在 NVIDIA RTX 3060 上推論速度約為 3 FPS,適合用於非同步即時強化。
在倉儲環境中,將 SGBM 視差圖與左影像輸入該模型後,可看到如下結果:
結果顯示,空洞明顯減少,地板錯誤也獲得修正。但由於仍依賴 SGBM 的事先資訊,在 SGBM 完全沒有資料的區域(如左右極端邊界),仍會殘留部分空洞。
端到端 DL 方法(Selective-Stereo)
方法說明
Selective-Stereo 與 Foundation-Stereo為先進的端到端深度學習框架,可直接由左右影像計算視差,無需傳統匹配演算法。其核心概念是:
- 高頻部份:強化邊緣與細節
- 低頻部份:維持平滑區域並避免過度擬合
網路架構
Selective-Stereo 基於 IGEV-Stereo,並加入integrating gated recurrent units(GRUs) 進行反覆修正(iterative refinement),依影像頻率特性動態調整計算。
效能表現
在 NVIDIA RTX 3060 上推論速度約 0.5 FPS,運算成本相對較高。
從結果可見,此方法提供最完整的視差覆蓋與極佳的結構保留能力,例如天花板燈具能清楚呈現,同時避免反射造成的斑點雜訊。
整體而言,端到端方法在品質上明顯優於原始 SGBM 與混合式方法,但需要更長的運算時間與更高階的 GPU。
實務應用建議(Practical Application Guidelines)
- 高速即時應用(≥30 FPS) 使用 Bumblebee X 內建 SGBM,必要時搭配條紋圖案
- 兼顧覆蓋率與延遲 採用 SGBM + 非同步神經修正
- 最高精度需求 選擇 Selective-Stereo,接受較低幀率
結論(Conclusion)
深度學習技術能大幅提升 Bumblebee X 在複雜場景下的深度估測能力。 適合即時與嵌入式系統,而則在精度與完整性上表現最佳。 Bumblebee X 同時支援這兩種策略,讓使用者能依應用需求,在之間靈活取捨。
