搜尋意圖: 如果你在找「立體匹配 是什麼」或「立體匹配 和相近概念差在哪」,先看這頁的短定義、完整說明與延伸比較。
TL;DR: 利用立體影像對(左右視圖)的對應像素差異估計深度信息,是三維重建的基礎。
實用情境: 適合用在閱讀 AI 文章、產品文件或和同事討論時,先用一頁快速對齊概念。
下一步: 先讀完定義,再往下看延伸比較與對應工具,把概念轉成實際應用。
利用立體影像對(左右視圖)的對應像素差異估計深度信息,是三維重建的基礎。
立體匹配(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。
- 後處理:使用一致性檢驗(左右視差檢驗)、邊界保留濾波、視差填充等步驟改善結果。
- 光照環境:避免過度曝光或陰影,使用輔助光源改善無紋理區域。
常見問題
為什麼立體匹配在無紋理區域(如白牆)會失效?
無紋理區域內所有像素長相相似,無法通過相似度度量(如 SAD、NCC)唯一確定對應點。例如白牆上的 100 像素可能都是 (255, 255, 255),無法區別。解決方法有三:使用機構光投影已知紋理(但仗室內應用);採用較大的匹配窗口聚集邊界的紋理信息;或透過邊界保留的全局正則化(如 SGM 或深度學習)利用周邊紋理推斷。
立體匹配精度受什麼因素影響最大?
主要因素包括:(1)基線 B:基線越大,相同視差誤差導致的深度誤差越小,但基線過大視場角縮小;(2)焦距 f:焦距越大視差越大,深度精度越高;(3)相機標定精度:標定誤差直接傳播到視差與深度;(4)匹配正確率:誤匹配(尤其是重複紋理區域)造成離群值。實踐中,基線與焦距的選擇取決於應用範圍(近距離需短基線,遠距離需長基線)。
RAFT-Stereo 相比傳統 SGM 有什麼優勢?
RAFT-Stereo 的主要優勢是迭代精化機制與神經網路的強大表示能力。傳統 SGM 一次性計算成本卷積與聚合,難以處理複雜情況(如遮擋、邊界);RAFT-Stereo 逐步改善視差估計,類似變分方法但更高效。此外,RAFT-Stereo 可端到端學習,自動適應各種場景與相機,無需手工調參。實證上,RAFT-Stereo 在 KITTI 等基準上精度優於 SGM,且速度接近。