hi 小夥伴們,人啊,很容易有惰性,好久不跟新了,不作筆記了,現在「良心發現」,畢業以後第一次更新博客。固然仍是學習,整合分享給更多的人!ios
相信關注我博客和微信公衆號的人不少都是作點雲處理,那麼使用的傳感器不是激光就是相機,這裏將介紹一下雙目立體視覺微信
雙目立體視覺,在百度百科裏的解釋是這樣解釋的:雙目立體視覺(Binocular Stereo Vision)是機器視覺的一種重要形式,它是基於視差原理並利用成像設備從不一樣的位置獲取被測物體的兩幅圖像,經過計算圖像對應點間的位置誤差,來獲取物體三維幾何信息的方法。app
我相信將來的世界必定是三維感知的世界,畢竟二維世界不少狀況下不能知足要求的,學習
一 視差 Disparity與深度圖spa
那麼提到雙目視覺就不得不提視差圖:雙目立體視覺融合兩隻眼睛得到的圖像並觀察它們之間的差異,使咱們能夠得到明顯的深度感,創建特徵間的對應關係,將同一空間物理點在不一樣圖像中的映像點對應起來,這個差異,咱們稱做視差(Disparity)圖像。3d
對於視差的理解本身能夠體驗一下:將手指頭放在離眼睛不一樣距離的位置,並輪換睜、閉左右眼,能夠發現手指在不一樣距離的位置,視覺差也不一樣,且距離越近,視差越大。blog
那麼提到視差圖,就有深度圖,深度圖像也叫距離影像,是指將從圖像採集器到場景中各點的距離(深度)值做爲像素值的圖像。獲取方法有:激光雷達深度成像法、計算機立體視覺成像、座標測量機法、莫爾條紋法、結構光法。ip
那麼這裏引伸一下深度圖與點雲的區別,點雲:當一束激光照射到物體表面時,所反射的激光會攜帶方位、距離等信息。若將激光束按照某種軌跡進行掃描,便會邊掃描邊記錄到反射的激光點信息,因爲掃描極爲精細,則可以獲得大量的激光點,於是就可造成激光點雲。ci
深度圖像通過座標轉換能夠計算爲點雲數據;有規則及必要信息的點雲數據能夠反算爲深度圖像。 二者在必定條件下是能夠相互轉化的,以前的博客裏,有使用PCL庫實現過點雲提取深度圖,固然給出相機參數也是能夠由深度圖轉爲點雲的。截圖一個深度圖:博客
因此深度與視差的關係以下
好比絕對差值法 絕對差值圖的計算方法以下:
D=|L-R|
式中,L、R和D分別表明左視圖、右視圖和對應的絕對差值圖的亮度值。絕對差值圖並非嚴格意義上的視差圖,可是它的計算方法最爲簡單,速度快,它給出的結果能夠做爲參考
那麼咱們知道視差又有另一個概念就是UV-disparity mapping,簡單的給個圖表示:
是怎麼獲得這個結果的呢?原來是統計統計視差的個數,好比V-disparity Map中的第一行分別統計視差爲0,1,2,3,4,5的個數,因此獲得了V-disparity Map的第一行分別爲
0,2,0,1,1,1,那麼在真實的圖喜好那個中獲得的結果以下:
那麼利用視差能夠作不少有用的功能,好比列舉一篇文章 UV disparity based obstacle detection and pedestrian classification in urban traffic scenarios
二 Rays
ray就是鏈接圖像上一點到光心造成的一條射線。這個也是以後的對極約束的基礎。
那麼創建世界座標系,咱們的兩條rays是相交的。如I下圖所示,接下來就是利用rays的相交關係,來解釋対極幾何(Epipolar geometry )了。
以上的圖文說明明瞭對極幾何(Epipolar Geometry)描述的是兩幅視圖之間的內在射影關係,與外部場景無關,只依賴於攝像機內參數和這兩幅試圖之間的的相對姿態。
有如下幾種概念
1. 基線(baseline):直線Oc-Oc'爲基線。
2. 對極平面束(epipolar pencil):以基線爲軸的平面束。
3. 對極平面(epipolar plane):任何包含基線的平面都稱爲對極平面。
4. 對極點(epipole):攝像機的基線與每幅圖像的交點。好比,上圖中的點e和e'。
5. 對極線(epipolar line):對極平面與圖像的交線。好比,上圖中的直線l和l'。
6. 5點共面:點x,x',攝像機中心Oc Oc',空間點X是5點共面的。
7. 極線約束:兩極線上點的對應關係。
說明:直線l是對應於點x'的極線,直線l'是對應於點x的極線。極線約束是指點x'必定在對應於x的極線l'上,點x必定在對應於x'的極線l上。
根據以上原理就得出了基礎矩陣F和本質矩陣E等,網上有不少資料的
這裏直接將推導公式貼出來就行了
本質矩陣E的基本性質:秩爲2,且僅依賴於外部參數R和T。其中,P表示世界座標點矢量,p表示像素點矢量
那麼基礎矩陣求法:因爲本質矩陣E並不包含相機內參信息,且E是面向相機座標系的。實際上,咱們更感興趣的是在像素座標系上去研究一個像素點在另外一視圖上的對極線,這就須要用到相機內參信息將相機座標系和像素座標系聯繫起來。假設和是世界座標值,其對應的像素座標值爲和,相機內參矩陣爲M,那麼。根據,那麼。令基礎矩陣,那麼
也就是咱們在下圖的第一幅圖找到一個特徵點,經過以上対極幾何的知識推導出,該點在第二幅圖位於圖喜的哪一個位置
舉個例子,好比kinect
不管是雙目仍是kinect都是相似的原理
f=Focal length
b=Baseline
d=Disparity value
ps=Pixel size
D=Depth
Focal length Baseline
Pixel size Disparity value
備註:(Pixel size)像素大小是圖像傳感器中單個像素的大小。像素大小用微米表示。因爲立體視覺系統使用兩個攝像機,圖像傳感器的像素大小必須相同。隨着像素尺寸的減少,系統的深度範圍增大。
(Disparity value)視差是指在兩個攝像機圖像之間的像素位置的差別。假設立體視覺相機中的左圖像在位置(1,30)具備像素,而且相同的像素在右圖像中的位置(4,30)存在,視差值或差值爲(4-1)=3。視差值與上述公式的深度成反比。
好了,就這樣了
有興趣的小夥伴能夠關注微信公衆號,加入QQ或者微信羣,和你們一塊兒交流分享吧