湯鴻劍 陳磊 陳云
摘 要:隨著人工智能的快速發(fā)展,計(jì)算機(jī)視覺作為其分支慢慢嶄露頭角,計(jì)算機(jī)視覺是指使用計(jì)算機(jī)來模擬人眼來進(jìn)行識(shí)別與測(cè)量。雙目測(cè)距是計(jì)算機(jī)視覺的一個(gè)重要組成部分,其操作簡(jiǎn)單、成本低廉,廣泛地適用與工地勘測(cè)、智能避障、流水線檢測(cè)和機(jī)器人運(yùn)動(dòng)控制等領(lǐng)域。本文研究基于計(jì)算機(jī)視覺的雙目攝像頭測(cè)距系統(tǒng)。該系統(tǒng)將擁有可靠的精確度,有廣泛的應(yīng)用前景,是遠(yuǎn)程駕駛智能控制的必要技術(shù)環(huán)節(jié)。
關(guān)鍵詞:相機(jī)標(biāo)定;圖像校正 ;立體匹配;測(cè)距
1 研究的背景和意義
近年來,人工智能火熱的發(fā)展必將成為第四次革命和科技創(chuàng)新的強(qiáng)大驅(qū)動(dòng)力。計(jì)算機(jī)視覺系統(tǒng)是人工智能的重要一環(huán),不完善性和多樣性是計(jì)算機(jī)視覺領(lǐng)域當(dāng)前的顯著特征。計(jì)算機(jī)視覺在20世紀(jì)70年代之前就被提出,但真正得到關(guān)注和發(fā)展是在那個(gè)年代之后,那時(shí)的計(jì)算機(jī)性能才提高到能處理類似圖片這種大容量的數(shù)據(jù)。但是那時(shí)處理圖像只是源于各種不同領(lǐng)域的需要(如:臉部特征、指紋、文字等),并沒有定義為計(jì)算機(jī)視覺的一部分,如何解決“計(jì)算機(jī)視覺問題”并沒有形成成型的公式,只能用部分解決具體計(jì)算機(jī)視覺問題的方法來解決非常有局限的領(lǐng)域的問題,無法廣泛推廣到各個(gè)不同的場(chǎng)合。
計(jì)算機(jī)視覺是門研究機(jī)器如何看世界的科學(xué),更具體的說,是用機(jī)器代替人眼對(duì)目標(biāo)進(jìn)行識(shí)別、測(cè)量和軌跡追蹤,然后經(jīng)過一系列的圖像處理,使計(jì)算機(jī)生成更便于人類使用的或者儀器能識(shí)別的圖像。從20世紀(jì)開始,人們就對(duì)各種動(dòng)物的眼睛、神經(jīng)元和視覺相關(guān)的腦部神經(jīng)進(jìn)行了大量研究,試圖描述視覺系統(tǒng)的構(gòu)成和運(yùn)作方式,這些研究后來成為了計(jì)算機(jī)視覺的子領(lǐng)域,人們用計(jì)算機(jī)創(chuàng)建模擬生物的人工系統(tǒng),在不同復(fù)雜程度上實(shí)現(xiàn)運(yùn)作。正如模擬生物雙目視覺,兩只眼睛能夠定性的感受到現(xiàn)實(shí)空間中的物體遠(yuǎn)近,由此衍生出雙目立體視覺技術(shù)。雙目立體視覺技術(shù)是通過計(jì)算機(jī)模擬人類視覺,使用兩個(gè)圖像采集設(shè)備從相鄰位置得到被測(cè)物在相機(jī)中的二維成像,將兩張二維圖像中被測(cè)點(diǎn)分別所在的像素坐標(biāo)進(jìn)行差值計(jì)算,相當(dāng)于將兩張圖片重疊成一張圖片,這是圖片上會(huì)有兩個(gè)被測(cè)點(diǎn),計(jì)算其像素差可以定量的算出被測(cè)點(diǎn)與攝像頭之間的現(xiàn)實(shí)距離。
遠(yuǎn)程測(cè)距是必不可少的工作流程,目前的測(cè)距手段如紅外線測(cè)距、超聲波測(cè)距和激光測(cè)距都有著一定的局限性,均會(huì)受到煙霧、灰塵和雨滴的干擾。在特殊環(huán)境下,測(cè)距激光會(huì)因?yàn)檎凵淦x原有路線,影響精度,另外棱鏡表面的雜物會(huì)將激光折射到不是棱鏡中心的位置;
基于圖像處理的雙目測(cè)距作為一個(gè)非接觸測(cè)距系統(tǒng),能在一定程度上改善環(huán)境因素對(duì)施工測(cè)量的影響。用攝像頭實(shí)現(xiàn)對(duì)距離的測(cè)量雖然成本低、使用方便,但其測(cè)量的精度方面仍有待提高。
2 測(cè)距系統(tǒng)總體設(shè)計(jì)
實(shí)現(xiàn)測(cè)距需要設(shè)計(jì)一種不依賴傳播介質(zhì)的測(cè)距方法,雙目立體測(cè)距可以實(shí)現(xiàn)這一要求。雙目測(cè)距第一步需要用雙目攝像頭采集圖片進(jìn)行標(biāo)定得到相機(jī)的內(nèi)外參數(shù),第二步使用得到的畸變系數(shù)矯正圖片并使用外部參數(shù)校正圖片使左右圖片相關(guān)點(diǎn)盡可能在一條水平線上。然后使用匹配算法做出視差圖,根據(jù)視差圖中特定點(diǎn)涵蓋的深度信息得到被測(cè)物體與攝像頭之間的距離,結(jié)構(gòu)圖如圖1所示。
3 雙目立體視覺匹配算法
3.1 SAD算法
1.算法原理
SAD(Sum of absolute differences)是一種圖像匹配算法?;舅枷耄翰畹慕^對(duì)值之和。此算法一般用來進(jìn)行圖像塊的匹配,求各個(gè)像素對(duì)應(yīng)數(shù)值差的絕對(duì)值之和,評(píng)估兩個(gè)圖像塊的匹配度。該算法快速、但并不可靠,只是用于后續(xù)處理的初步篩選。
2.基本流程
輸入兩幅圖像,一幅ImageL,一幅ImageR,對(duì)左圖,依次掃描,選定一個(gè)錨點(diǎn):
1)創(chuàng)建一個(gè)SAD窗口;
2)用SAD窗口覆蓋左圖,選擇覆蓋區(qū)域內(nèi)所有像素點(diǎn);
3)用SAD窗口覆蓋右圖,選擇覆蓋區(qū)域內(nèi)所有像素點(diǎn);
4)左邊覆蓋區(qū)域所有像素點(diǎn)灰度值分別減去右邊覆蓋區(qū)域?qū)?yīng)像素點(diǎn)灰度值,求出差的絕對(duì)值之和;
5)移動(dòng)右圖的覆蓋窗口,重復(fù)3,4的處理;
6)找到這個(gè)右圖移動(dòng)范圍內(nèi)SAD值最小的窗口,即找到了與左圖錨點(diǎn)的像素值最接近的最佳匹配的圖像塊。
算法示意圖如圖2所示。
3.2 半全局立體匹配算法原理
Semi-Global Block Matching(SGBM)半全局塊匹配算法。半全局立體匹配是動(dòng)態(tài)規(guī)劃匹配的改進(jìn),保留動(dòng)態(tài)規(guī)劃算法的簡(jiǎn)易性,將復(fù)雜的二維平面的信息簡(jiǎn)化為一維平面來進(jìn)行匹配。
SGBM選取每個(gè)像素點(diǎn)的視差值,組成一個(gè)視差圖,生成一個(gè)和視差圖成映射關(guān)系的全局能量函數(shù),當(dāng)這個(gè)能量函數(shù)最小時(shí),便能求解得每個(gè)像素最優(yōu)的視差,像素邊緣通過不同的懲罰系數(shù)來確保平滑約束。
利用能量函數(shù)在一個(gè)二維圖像中尋找最優(yōu)解是一個(gè)當(dāng)前技術(shù)無法解決的問題,它會(huì)隨著圖片分辨率的提升,難度成倍上升,因此該問題通常被近似分解為多個(gè)一維問題累加的線性問題。而且每個(gè)一維問題都可以用動(dòng)態(tài)規(guī)劃來解決。因?yàn)閷?duì)于8連通的像素點(diǎn)1個(gè)像素有8個(gè)相鄰像素,所以一般分解為8個(gè)一維問題。
3.3 ?SGBM算法在OpenCV中的參數(shù)含義及配置
在OpenCV中使用函數(shù)StereoSGBM ( ) 實(shí)現(xiàn)了SGBM算法。SGBM 算法核心步驟有3步:選取匹配基元?jiǎng)?chuàng)建SAD窗口;構(gòu)建能量函數(shù)求向多個(gè)方向的掃描的代價(jià)和;每個(gè)像素取能量代價(jià)和函數(shù)的最優(yōu)解鋪成視差圖。
StereoSGBM類的參數(shù)如下:
static Ptr
int ?numDisparities = 16,
int ?blockSize = 3,
int ?P1 = 0,
int ?P2 = 0,
int ?disp12MaxDiff = 0,
int ?preFilterCap = 0,
int ?uniquenessRatio = 0,
int ?speckleWindowSize = 0,
int ?speckleRange = 0,
int ?mode = StereoSGBM::MODE_SGBM )
minDisparity——最小的視差值;
numDisparity——視差范圍,即最大視差值和最小視差值之差,必須是16的倍數(shù);
blockSize——匹配塊大小(SADWindowSize),必須是大于等于1的奇數(shù),一般為3~11;
P1,P2——懲罰系數(shù),一般:P1=8*通道數(shù)*SADWindowSize*SADWindowSize,P2=4*P1;
disp12MaxDiff ——左右視差圖的最大容許差異,默認(rèn)為-1,不執(zhí)行左右視差檢查;
preFilterCap——預(yù)濾波圖像像素的截?cái)嘀?
uniquenessRatio——視差唯一性比率, 視差窗口范圍內(nèi)最低代價(jià)是次低代價(jià)的1 + uniquenessRatio/100倍時(shí),最低代價(jià)對(duì)應(yīng)的視差值才是該像素點(diǎn)的視差,即能顯示到圖像的視差,否則該像素點(diǎn)的視差為 0,通常為5~15;
speckleRange——視差變化閾值;
Mode——模式。
其中對(duì)視差生成影響最大參數(shù)有SADWindowSize、numDisparity和uniquenessRatio。其中SADWindowSize和numDisparity是代價(jià)計(jì)算的參數(shù),uniquenessRatio是后處理的參數(shù)。將其他參數(shù)設(shè)置為默認(rèn)值,分別將以上三個(gè)參數(shù)設(shè)置為能取到的最小值,得到的最原始的視差效果圖。
4 結(jié)論
雙目立體視覺技術(shù)作為當(dāng)前計(jì)算機(jī)視覺的前沿和熱點(diǎn),將來必然應(yīng)用在更廣泛的領(lǐng)域,目前雙目相關(guān)的算法還不夠強(qiáng)大,能處理的計(jì)算量具有一定的局限,隨著技術(shù)的發(fā)展,計(jì)算機(jī)視覺也將像人眼一樣明辨是非。本論文對(duì)計(jì)算機(jī)視覺的雙目立體視覺測(cè)距系統(tǒng)做了一定研究,主要包括了雙目立體測(cè)距系統(tǒng)的原理分析和實(shí)現(xiàn)流程,以及使用PC完成測(cè)距的一系列操作流程。最終得到了和預(yù)期相符的實(shí)驗(yàn)結(jié)果。
參考文獻(xiàn):
[1]張海波. 基于雙目立體視覺的工件識(shí)別定位與抓取系統(tǒng)研究[D].中國(guó)計(jì)量學(xué)院,2014.
[2]高如新,朱烜甫.基于ORB算法的雙目視覺定位[J].電子測(cè)量技術(shù),2017,40(04):142-145.
[3]李雙全,章國(guó)寶.基于ORB算法的雙目立體視覺測(cè)距系統(tǒng)[J].工業(yè)控制計(jì)算機(jī),2017,30(06):42-44.
[4]張家田,王飛,嚴(yán)正國(guó).非接觸式距離測(cè)量系統(tǒng)[J].電子測(cè)量技術(shù),2012,35(09):10-13.
[5]聶春鵬. 基于雙目立體視覺的工業(yè)機(jī)器人目標(biāo)識(shí)別及定位研究[D].長(zhǎng)安大學(xué),2015.
[6]陳玄真. 基于雙目立體視覺的三維重建方法研究[D].吉林大學(xué),2014.
[7] Liguori, C., Paolillo, A., Pietrosanto, A.. A discussion about stereo vision techniques for industrial image-based measurement systems[P]. Instrumentation and Measurement Technology Conference, 2003. IMTC '03. Proceedings of the 20th IEEE,2003.
[8]曹文祥,馮雪梅.工業(yè)機(jī)器人研究現(xiàn)狀及發(fā)展趨勢(shì)[J].機(jī)械制造,2011,49(02):41-43.
[9]Aoki, H.,F(xiàn)urukawa, R.,Aoyama, M.,Hiura, S.,Asada, N.,Sagawa, R.,Kawasaki, H.,Tanaka, S.,Yoshida, S.,Sanomura, Y.. Proposal on 3-D endoscope by using grid-based active stereo[P]. ,2013.
[10]R. Correal,G. Pajares,J.J. Ruz. Automatic expert system for 3D terrain reconstruction based on stereo vision and histogram matching[J]. Expert Systems With Applications,2014,41(4).
[11]Okada, K., Inaba, M., Inoue, H.. Integration of real-time binocular stereo vision and whole body information for dynamic walking navigation of humanoid robot[P]. Multisensor Fusion and Integration for Intelligent Systems, MFI2003. Proceedings of IEEE International Conference on,2003.
[12]黃佳. 基于OPENCV的計(jì)算機(jī)視覺技術(shù)研究[D].華東理工大學(xué),2013.
基金項(xiàng)目:徐州工程學(xué)院大學(xué)生創(chuàng)新創(chuàng)業(yè)訓(xùn)練計(jì)劃項(xiàng)目(xcx2019087)