立體匹配 是什麼?
Stereo Matching:立體匹配 的完整解釋
利用立體影像對(左右視圖)的對應像素差異估計深度信息,是三維重建的基礎。
立體匹配(Stereo Matching)是三維視覺的基礎技術,基於人類兩眼視覺系統的原理。當左右眼看同一物體時,因視角不同,物體在左右視網膜上的位置略有差異,大腦透過這個差異(立體視差)推斷深度。
基本原理與幾何
給定一對標定後的立體相機,設左相機捕捉的像素點為 (x_l, y),其對應的右相機點為 (x_r, y)(假設影像行對齐,即 y 座標相同)。視差定義為: d = x_l - x_r
根據立體幾何,深度 Z 可由視差計算: Z = f × B / d 其中 f 是焦距,B 是基線(兩相機之間的距離)。
立體匹配的核心任務是在右影像中找到左影像點的對應點,或等價地,為每個左影像像素估計視差 d。
傳統立體匹配算法
塊匹配法(Block Matching)
- 取左影像中的小窗口,在右影像的對應區域內尋找最相似的塊。
- 相似度度量:SAD(Sum of Absolute Differences)、SSD(Sum of Squared Differences)、NCC(Normalized Cross Correlation)等。
- 優點:簡單、速度快。
- 缺點:邊界附近不準確、無紋理區域效果差、窗口大小固定。
半全局匹配(Semi-Global Matching, SGM)
- 由 Hirschmuller 提出(2005),結合局部與全局優化。
- 步驟:計算像素匹配成本 → 聚合多方向的成本 → 獲得視差圖。
- 優點:邊界保留好、填充缺失值、速度與精度平衡。
- 缺點:對光度失真敏感。
- 長期以來是商用立體相機(如 Intel RealSense)的標準算法。
圖割與信念傳播(Graph Cut & Belief Propagation)
- 將立體匹配建模為馬爾科夫隨機場(MRF)或條件隨機場(CRF)。
- 通過最小割或信念傳播求解。
- 優點:全局優化,邊界與紋理無區域效果好。
- 缺點:計算複雜,推論時間長,不適合實時應用。
平面 + 八叉樹法
- 假設深度在小區域內是分段平面。
- 用平面參數表示深度,減少搜索空間。
深度學習立體匹配
早期卷積方法(2014-2016)
- DispNet:輸入立體影像對,輸出視差圖。
- FlowNet 架構的立體版本。
- 優點:無需手工設計相似度。
- 缺點:對推廣、細節保留不足。
成本卷積與多尺度融合(2016-2019)
- GCNet:構造成本卷積(cost volume),再用 3D CNN 正則化。
- PSMNet(Pyramid Stereo Matching Network):多尺度金字塔特徵,改善細節與邊界。
- 思路類似 SGM 的成本聚合,但用深度學習替代傳統方法。
迭代精化(2020 年後)
- RAFT-Stereo:基於 RAFT 光流模型改進,迭代更新視差圖。
- 反复利用光學與幾何約束。
- 成為當前的高效標準方法。
自監督與無監督方法
- 利用視圖一致性(photometric consistency)、左右一致性(left-right consistency)作為無監督信號。
- 無需視差標註資料。
評估指標
- 視差誤差:估計視差與真實視差的絕對或相對誤差。
- 壞像素比例(Bad Pixel Ratio):誤差超過閾值的像素百分比(通常 1 或 3 像素)。
- 根均方誤差(RMSE):視差誤差的均方根。
- 深度誤差:由視差誤差換算的深度誤差。
常用基準資料集:KITTI Stereo、Middlebury、SceneFlow 等。
應用場景
- 自動駕駛:測距與障礙物檢測基礎。
- 三維重建:從多視圖立體對重建場景 3D 模型。
- 無人機與機器人視覺:導航與避障的深度感知。
- 動作捕捉:結合多角度立體對重建人體 3D 姿態。
- 立體視覺投影儀(如 Kinect v1 時期的結構光):雖然結構光另有機制,但立體匹配是後繼技術。
- 工業檢測:精密零件的 3D 測量與缺陷檢測。
主要挑戰
- 無紋理區域(Textureless Regions):光滑表面如白牆無法進行匹配。
- 反射與高光:鏡面反射違反朗伯反射模型(Lambertian model),造成匹配困難。
- 遮擋:物體邊界附近左右影像的內容差異大,容易誤匹配。
- 不連續邊界:邊界處深度梯度大,窗口匹配易跨越邊界。
- 立體對外部校準誤差:相機標定精度直接影響視差精度。
立體匹配 vs. 其他深度估計方法
- 立體匹配:需成對影像,精度相對高。
- 單目深度估計:只需單張影像,但無絕對尺度。
- ToF(Time of Flight)相機:直接測量光波往返時間,但分辨率低、噪聲大。
- 結構光:投影已知圖案,消除紋理問題,但成本高、不適戶外。
實務部署建議
立體匹配系統的部署需考量多方面因素:
- 相機選擇:基線越大深度精度越高,但視場角越小;焦距越大視差越大但視場角越小。
- 相機標定:定期標定相機內外參數,標定精度直接決定深度精度。
- 演算法選擇:實時應用選輕量化模型(如 RAFT-Stereo 量化版),高精度應用選完整 PSMNet。
- 後處理:使用一致性檢驗(左右視差檢驗)、邊界保留濾波、視差填充等步驟改善結果。
- 光照環境:避免過度曝光或陰影,使用輔助光源改善無紋理區域。