雙目測距測深度 科普 雙目測距原理

2021-10-16 10:37:00 字數 2084 閱讀 5064

【參考資料】

[1]深度相機原理揭秘——雙目立體視覺

[2]雙目測距原理

[3]相機標定原理及實現

1、雙目測距基本原理

如圖所示,p點是待測物體,camera r和camera l代表相機的光心位置,兩綠點為點p在兩個相機感光器上的成像點,f為相機焦距,b為兩相機中心距,z為所求深度資訊,兩綠點間距為d。d=b-xl+xf;根據相似三角形原理d/b=(z-f)/z可以得到z=fb/(xl-xf)

因此,發現如果要計算深度z,必須要知道:

1、相機焦距f,左右相機基線b。這些引數可以通過先驗資訊或者相機標定得到。

2、視差d。需要知道左相機的每個畫素點(xl, yl)和右相機中對應點(xr, yr)的對應關係。這是雙目視覺的核心問題。2、雙目測距實際操作雙目測距實際操作分4個步驟:相機標定——雙目校正——雙目匹配——計算深度資訊。

相機標定:攝像頭由於光學透鏡的特性使得成像存在著徑向畸變,可由三個引數k1,k2,k3確定;由於裝配方面的誤差,感測器與光學鏡頭之間並非完全平行,因此成像存在切向畸變,可由兩個引數p1,p2確定。單個攝像頭的定標主要是計算出攝像頭的內參(焦距f和成像原點cx,cy、五個畸變引數(一般只需要計算出k1,k2,p1,p2,對於魚眼鏡頭等徑向畸變特別大的才需要計算k3))以及外參(標定物的世界座標)。而雙目攝像頭定標不僅要得出每個攝像頭的內部引數,還需要通過標定來測量兩個攝像頭之間的相對位置(即右攝像頭相對於左攝像頭的旋轉矩陣r、平移向量t)。

雙目校正:雙目校正是根據攝像頭定標後獲得的單目內參資料(焦距、成像原點、畸變係數)和雙目相對位置關係(旋轉矩陣和平移向量),分別對左右檢視進行消除畸變和行對準,使得左右檢視的成像原點座標一致(cv_calib_zero_disparity標誌位設定時發生作用)、兩攝像頭光軸平行、左右成像平面共面、對極線行對齊。這樣一幅影象上任意一點與其在另一幅影象上的對應點就必然具有相同的行號,只需在該行進行一維搜尋即可匹配到對應點。

雙目匹配:雙目匹配的作用是把同一場景在左右檢視上對應的像點匹配起來,這樣做的目的是為了得到視差圖。雙目匹配被普遍認為是立體視覺中最困難也是最關鍵的問題。得到視差資料,通過上述原理中的公式就可以很容易的計算出深度資訊。

3、雙目匹配與視差

視差是同乙個空間點在兩個相機成像中對應的x座標的差值,它可以通過編碼成灰度圖來反映出距離的遠近,離鏡頭越近的灰度越亮。(前提是兩個攝像頭是水平,如果兩顆攝像頭是垂直的,則使用y座標的差值)

極線約束法

如上圖所示。c1、c2是兩個相機,p是空間中的乙個點,p和兩個相機中心點c1、c2形成了三維空間中的乙個平面pc1c2,稱為極平面(epipolar plane)。極平面和兩幅影象相交於兩條直線,這兩條直線稱為極線(epipolar line)。p在相機c1中的成像點是p1,在相機c2中的成像點是p2,但是p的位置事先是未知的。我們的目標是:對於左圖的p1點,尋找它在右圖中的對應點p2,這樣就能確定p點的空間位置,也就是我們想要的空間物體和相機的距離(深度)。所謂極線約束(epipolar constraint)就是指當同乙個空間點在兩幅影象上分別成像時,已知左圖投影點p1,那麼對應右圖投影點p2一定在相對於p1的極線上,這樣可以極大的縮小匹配範圍。根據極線約束的定義,我們可以在圖中直觀的看到p2一定在對極線上,所以我們只需要沿著極線搜尋一定可以找到和p1的對應點p2。這裡只是基於非常理想的情況討論雙目測距的原理,在實際中,因安裝誤差、光照條件的限制,會使問題變得更加複雜,在文首幾篇參考資料中有更加細緻的介紹。

opencv雙目測距實現

開篇之前,首先要感謝maxwellsdemon和wobject,沒有和你們的討論,也就沒有此篇的成文。說到雙攝像頭測距,首先要複習一下測距原理,把learning opencv翻到416和418頁,可以看到下面兩幅圖 圖1.雙攝像頭模型俯檢視 圖2,雙攝像頭模型立體檢視 圖1解釋了雙攝像頭測距的原理...

雙目測距的實現

說到雙攝像頭測距,首先要複習一下測距原理,把learning opencv翻到416和418頁,可以看到下面兩幅圖 圖1.雙攝像頭模型俯檢視 圖2,雙攝像頭模型立體檢視 圖1解釋了雙攝像頭測距的原理,書中z的公式如下 在opencv中,f的量綱是畫素點,tx的量綱由定標棋盤格的實際尺寸和使用者輸入值...

雙目測距原理 兩公式區別

我在學習上述兩個部落格時發現,兩者對於雙目視覺深度值計算公式的推導過程有些細微的出入。如圖1所示,其中xl與xr,分別為左右相機像平面上的成像點距主點的距離 x方向 可以理解為x1與xr,是在相機座標系測得的。如圖2所示,其中xr與xt分別為左右相機像平面上的成像點距像平面左邊緣的距離,可以理解為x...