opencv matlab测距,基于MATLAB和OpenCV的双目视觉测距系统的实现
基于計(jì)算機(jī)視覺理論的雙目視覺測距技術(shù)在板料成形動(dòng)態(tài)測量、極限曲線檢測、零部件檢測等上具有較大的應(yīng)用前景并將成為今后研究中的重點(diǎn)和難點(diǎn)。目前的測距方法主要有主動(dòng)測距和被動(dòng)測距2種方法。本研究采用被動(dòng)測距法。被動(dòng)測距法是在自然光照條件下,根據(jù)被測物體本身發(fā)出的信號(如光信號等)來測量距離[1]。平行雙目視覺測距系統(tǒng)是由2個(gè)攝像頭參數(shù)相同且光心平行的攝像機(jī)放在一條直線構(gòu)成,采用2臺攝像機(jī)同時(shí)從2個(gè)不同視點(diǎn)獲取同一目標(biāo)物的2幅圖像。通過測量目標(biāo)物在左右相機(jī)圖像對中的視差,利用平行雙目視覺成像原理可以獲取目標(biāo)物到平行雙目相機(jī)的距離信息[2-3]。平行雙目視覺測距系統(tǒng)通過模擬人的雙眼來處理客觀世界的物體,比較直觀,容易被人接受。新發(fā)展的匹配算法包括BM(Boyer-Moore Algorithm)和SGBM(Semi-Global Matching)等算法。其中,在運(yùn)行速度方面,BM匹配算法速度相對較快,SGBM匹配算法速度相對較慢;在精度方面,SGBM匹配算法精度相對較好,BM匹配算法精度相對較差。本文通過MATLAB工具箱對攝像機(jī)標(biāo)定獲得攝像機(jī)的相關(guān)參數(shù),利用Open CV的BM和SGBM算法計(jì)算出深度圖,從而獲得目標(biāo)物到攝像機(jī)的距離信息。1平行雙目視覺模型平行雙目視覺模型如圖1所示。由圖1可知,Ol和Or分別為左、右相機(jī)的光心,其光軸與各自的成像平面關(guān)系見圖1。假設(shè)2相機(jī)的內(nèi)參數(shù)和外參數(shù)完全相同,焦距用f表示,Ol和Or之間的距離(基線)用T表示,并且2臺相機(jī)在同一平面上,通過式(1)和(2)可以求得Z,也就獲得了距離信息[4-5]。根據(jù)相似三角形原理,有:T-(Xl-Xr)T=(Z-f)Z(1)可得:Z=f TXl-Xr(2)式中:Xl、Xr分別為空間點(diǎn)P在左相機(jī)圖像平面的投影點(diǎn)p1、p2的橫坐標(biāo)值。式(2)中,焦距f和攝像頭中心距T可通過相機(jī)標(biāo)定得到。因此,只要獲得了視差d=Xl-Xr就可以求得距離信息。2平行雙目測距系統(tǒng)組成為實(shí)現(xiàn)平行雙目測距,搭建的平行雙目視覺測距系統(tǒng)硬件框架圖如圖2所示。本文使用了KS1A-528同步雙目攝像頭,如圖3所示。KS1A-528雙目攝像頭模組的基本參數(shù):基線為63 mm、像素為720 P、分辨率為2 560×720。首先通過MATLAB工具箱對雙目相機(jī)標(biāo)定,獲得相機(jī)的內(nèi)參數(shù)、外參數(shù)和畸變參數(shù);然后對雙目相機(jī)的左右視圖進(jìn)行校正,以使左右相機(jī)的圖像對在數(shù)學(xué)上共面行對準(zhǔn);之后應(yīng)用BM和SGBM等匹配算法計(jì)算出深度圖,最終通過重投影矩陣獲得目標(biāo)物到攝像機(jī)的距離信息。3平行雙目視覺測距系統(tǒng)的應(yīng)用3.1相機(jī)標(biāo)定雙目視覺所涉及的4個(gè)坐標(biāo)系分別為:像素坐標(biāo)系、圖像坐標(biāo)系、相機(jī)坐標(biāo)系和世界坐標(biāo)系[6]。4個(gè)坐標(biāo)系之間關(guān)系如圖4所示。由上述4個(gè)坐標(biāo)系之間的關(guān)系可得世界坐標(biāo)系與像素坐標(biāo)系之間的關(guān)系表達(dá)式為:Zcuvwwwwwwwwwwwwwwwwwwww1=f/Sxγu0 00 f/Syv0 00 0 1 0w wR3×3T3×10 1wXwYwZwwwwwwwwwwwwwwwwwwwwwwwwwwwww1=A3×4R3×3T3×10 1w wXwYwZwwwwwwwwwwwwwwwwwwwwwwwwwwwww1(3)圖4坐標(biāo)系關(guān)系圖像素坐標(biāo)(u,v)圖像坐標(biāo)(x,y)攝像機(jī)坐標(biāo)(Xc,Yc,Zc)世界坐標(biāo)(Xw,Yw,Zw)二次轉(zhuǎn)換透視投影剛體變換圖3同步雙目攝像頭圖1平行雙目視覺模型PZTXlOlp1fOrfXrp2圖2平行雙目視覺測距系統(tǒng)硬件框架圖目標(biāo)物圖像采集A/D轉(zhuǎn)換計(jì)算機(jī)左相機(jī)右相機(jī)整理可得:Suvwwwwwwwwwwwww
總結(jié)
以上是生活随笔為你收集整理的opencv matlab测距,基于MATLAB和OpenCV的双目视觉测距系统的实现的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: apache 不解释php,apache
- 下一篇: 高德经纬度距离计算php,计算两个经纬度