訂閱
糾錯
加入自媒體

雙目視覺是如何實現(xiàn)深度估計的?

2025-12-31 11:04
智駕最前沿
關注

自動駕駛的純視覺方案中,單目攝像頭因無法直接感知深度,在環(huán)境理解上存在根本局限,雙目視覺技術在此需求下應運而生。它通過模擬人眼,利用雙攝像頭的視差來推算距離,將二維圖像轉化為三維信息,從而為車輛決策提供關鍵的深度感知能力。

什么是雙目深度估計?

平時我們用眼睛看東西其實就是一種最自然的深度估計。人的兩只眼睛有一定的間距,大腦通過融合兩只眼睛看到的略有不同的圖像來判斷遠近。計算機視覺里“雙目深度估計”就是借鑒這個原理,將兩個相機并排排列,并拍下同一場景,然后分析兩幅圖像的差異來推算距離。

單目攝像頭拍攝的二維圖像,僅包含色彩與亮度信息,無法直接提供場景中物體的距離數(shù)據(jù)。要獲取“距離”這一關鍵的深度信息,關鍵在于利用視差,也就是在另一個位置放置第二個相機,同時對同一場景成像。此時,物體在兩個視角的圖像中會產(chǎn)生位置偏移,通過計算這一偏移量,便可以精確推算出物體的三維距離。

如果我們知道了兩個攝像頭之間的距離(基線)和攝像機的焦距,當我們找到兩個圖像里同一個物體對應點的位置差(視差)時,就能用一個非常簡單的公式計算出這個點的真實深度,即:

深度=焦距×基線/視差。

從公式中我們可以看到,視差越大,物體越近;視差越小,物體越遠。

雙目深度估計的主要步驟

既然說到了視差,那么關鍵問題來了,怎么從一對左右圖像里找到這些對應點?這中間其實涉及到多個流程。

兩個攝像頭從出廠到裝在一起時,會有一些位置和角度誤差,所以我們需要先做幾何標定,確定每個攝像頭的內部參數(shù)(比如焦距、主點位置)和它們之間的外部關系(位置和朝向)。只有這樣才能讓后面比較兩個圖像時的像素位置是準確對應的。

在完成雙目系統(tǒng)的校準后,接下來要做的就是立體矯正。這一過程的目的是把兩個圖像都調整成在同一條水平線上,這樣同一場景點在左右圖像里的對應關系只會在水平方向上變化,這極大簡化了后面的匹配難度。

立體匹配的核心任務,就是在左右兩幅圖像中為同一物體找到相互對應的像素點。由于之前已經(jīng)做了立體矯正,這個搜索被大大簡化了,只需要在右圖中沿著與左圖像素點對應的同一水平線去掃描,找出看起來最相似的那個區(qū)域即可。盡管如此,要為圖像中每一個像素找到對應點,計算量依然會非常龐大。因此可借助如經(jīng)典的塊匹配(Block Matching)或效果更優(yōu)的半全局匹配(Semi-Global Matching,SGM)來實現(xiàn)高效的匹配。

當我們找到每個像素的對應關系之后,就可以算出視差值。視差是同一個點在左右圖像中水平方向坐標差的數(shù)量,這個差值越大代表這個點離相機越近。最后,把視差值帶入我們前面提到的公式,就能得到每一個像素對應的深度值。這樣我們就生成了一張“深度圖”,每個像素不再只是顏色信息,還可以是一個距離值。

深度學習方法對雙目深度估計有何作用?

通過傳統(tǒng)計算機視覺方法完成上面的這些步驟,其實就可以做好雙目深度估計了,但是傳統(tǒng)方法主要依賴手工設計的特征和匹配算法,如比較左右圖像里像素塊的相似度,然后決定它們是不是對應的點。這樣一來在一些紋理稀少的區(qū)域、光照變化大的情況下,這種匹配就很容易出錯,而且計算量也不小。

近年來,深度學習也被引入雙目深度估計領域。其核心目標與傳統(tǒng)方法一致,仍是尋找左右圖像間的對應關系并計算視差,但實現(xiàn)方式發(fā)生了根本改變。深度學習不再依賴人工設計的匹配代價與規(guī)則,而是通過卷積神經(jīng)網(wǎng)絡自動從數(shù)據(jù)中學習匹配特征。

該網(wǎng)絡以左右視圖作為輸入,直接輸出視差圖或深度圖。在大量立體圖像數(shù)據(jù)訓練下,網(wǎng)絡能夠自主掌握哪些圖像特征利于匹配、哪些場景容易產(chǎn)生歧義,從而顯著提升匹配的魯棒性。因此,在遮擋區(qū)域、重復紋理或缺乏紋理的環(huán)境等傳統(tǒng)方法容易失效的場景下,基于深度學習的方法會表現(xiàn)出更高的準確度和穩(wěn)定性。

深度學習方法的處理流程是先用神經(jīng)網(wǎng)絡提取左右圖像的特征,然后構建一個“代價體”,表示在不同視差值下左右特征的匹配代價。接著再讓網(wǎng)絡學習從代價體里回歸出最終的視差值。整個過程可以端到端訓練,不需要手工調各種參數(shù)。

當然,端到端的深度學習系統(tǒng)需要大量帶真實深度標注的數(shù)據(jù)來訓練模型,而且在訓練數(shù)據(jù)和真實應用場景不一致時表現(xiàn)可能下降。這就需要一些自監(jiān)督、數(shù)據(jù)增強等策略來提升魯棒性。

雙目深度估計會遇到什么問題?

雙目深度估計一個常見的問題是像素匹配不準確。如果物體表面沒什么紋理,兩個視角的圖像看起來就會一模一樣,這就讓系統(tǒng)難以判斷哪個點是對應到哪個點。有些算法為了彌補這個問題,會用更復雜的特征或者上下文信息來輔助匹配,但仍不是萬無一失的。

我們講的匹配過程是假設兩個圖像在同一時間點拍的。如果場景里有如行人、車輛等移動的物體,而兩個攝像頭抓拍的時間有微小差異,這就會讓匹配變得更難。深度學習方法可以用時序信息來緩解,但這本質上還是一個復雜問題。

在雙目立體系統(tǒng)的設計中,基線長度的選取,本質上是在測量精度和工程落地之間做選擇;越長,同一物體在左右圖像中產(chǎn)生的視差就越大,這不僅使匹配更容易,也能有效提高深度估計的精度。過長的基線會帶來安裝空間、機械穩(wěn)定性以及視野重疊區(qū)域減少等問題。但基線過短,遠處物體的視差將變得極其微小,在像素級的計算中很容易被圖像噪聲、量化誤差等因素所淹沒,從而導致深度估計失效。

最后,還有像光照變化、遮擋、反射表面這些現(xiàn)實場景都會讓匹配變得不穩(wěn)定。這也是為什么在雙目系統(tǒng)設計中,需要花費大量精力在圖像預處理、匹配優(yōu)化、后處理濾波等步驟上。

最后的話

雙目深度估計的應用場景十分廣泛,除了自動駕駛,它在工業(yè)檢測、無人機測繪、實時三維建模等領域也發(fā)揮著重要作用。在需要快速感知和重建三維空間的場景中,雙目視覺結合點云生成等技術,能夠實現(xiàn)高效的實時環(huán)境建模。雖然激光雷達等主動式傳感器在精度上更具優(yōu)勢,但雙目方案以其顯著的成本優(yōu)勢,成為許多對成本敏感應用的理想選擇。

-- END --

       原文標題 : 雙目視覺是如何實現(xiàn)深度估計的?

聲明: 本文由入駐維科號的作者撰寫,觀點僅代表作者本人,不代表OFweek立場。如有侵權或其他問題,請聯(lián)系舉報。

發(fā)表評論

0條評論,0人參與

請輸入評論內容...

請輸入評論/評論長度6~500個字

您提交的評論過于頻繁,請輸入驗證碼繼續(xù)

暫無評論

暫無評論

    人工智能 獵頭職位 更多
    掃碼關注公眾號
    OFweek人工智能網(wǎng)
    獲取更多精彩內容
    文章糾錯
    x
    *文字標題:
    *糾錯內容:
    聯(lián)系郵箱:
    *驗 證 碼:

    粵公網(wǎng)安備 44030502002758號