国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

智能駕駛中雙目視覺關(guān)鍵技術(shù)與應(yīng)用算法

2021-07-22 02:43朱子陽
關(guān)鍵詞:視差雙目標(biāo)定

朱子陽,陳 雙

智能駕駛中雙目視覺關(guān)鍵技術(shù)與應(yīng)用算法

朱子陽,陳 雙

(遼寧工業(yè)大學(xué) 汽車與交通工程學(xué)院,遼寧 錦州 121001)

為解決智能駕駛道路感知中最優(yōu)立體匹配算法問題,以雙目視覺感知系統(tǒng)為例,首先利用OpenCv標(biāo)定法對(duì)雙目攝像頭進(jìn)行標(biāo)定,其次對(duì)現(xiàn)有的SAD、SGBM、GC 3種立體匹配算法進(jìn)行編程模擬,得到各自算法的視差圖,最后將算法運(yùn)行時(shí)間和視差圖進(jìn)行對(duì)比。結(jié)果表明OpenCv標(biāo)定法能夠?qū)﹄p目攝像頭進(jìn)行簡(jiǎn)單快捷的標(biāo)定,同時(shí)3種立體匹配算法中SAD算法運(yùn)行速度最快,但匹配效果差,SGBM算法適中,GC算法運(yùn)行速度最慢,但匹配效果最好。

雙目視覺;OpenCv;標(biāo)定;立體匹配

隨著全球智能駕駛進(jìn)入產(chǎn)業(yè)化與商業(yè)化的準(zhǔn)備期,智能駕駛技術(shù)的迅速發(fā)展極大地推動(dòng)了各類環(huán)境感知傳感器的研究[1]。其中雙目視覺系統(tǒng)(Binocular visual system)能夠?qū)μ囟繕?biāo)進(jìn)行信息提取,具有工作量小、處理速度快、實(shí)時(shí)性強(qiáng)等優(yōu)點(diǎn),使得它在動(dòng)態(tài)目標(biāo)識(shí)別跟蹤等領(lǐng)域具有較高應(yīng)用價(jià)值[2]。例如J等[3]使用攝像頭拍攝車輛前方信息,利用卡爾曼濾波估計(jì)前方車輛的速度、位置和預(yù)計(jì)碰撞時(shí)間,提高了前向碰撞警告(FCW)和自動(dòng)緊急制動(dòng)(AEB)的性能。熊勇良等[4]利用雙目視覺系統(tǒng)獲取完成電力巡檢工作中的無人機(jī)姿態(tài)信息,提升了無人機(jī)的定位精度。南京郵電大學(xué)張競(jìng)藝[5]利用雙目視覺系統(tǒng)并通過核相關(guān)濾波(KCF)追蹤算法,對(duì)運(yùn)動(dòng)中的目標(biāo)實(shí)現(xiàn)了實(shí)時(shí)追蹤,該算法在88~300 cm范圍內(nèi)的測(cè)量精度可達(dá)到95%以上。雙目視覺系統(tǒng)大致可分為圖像獲取、攝像機(jī)標(biāo)定、特征提取、立體匹配、三維重建、數(shù)據(jù)處理6大部分,其中攝像機(jī)標(biāo)定是雙目立體視覺系統(tǒng)的基礎(chǔ),標(biāo)定結(jié)果的好壞決定了雙目立體視覺系統(tǒng)中立體匹配的精度與速度,同時(shí)也決定了立體視覺系統(tǒng)最終目標(biāo)——三維重建的效果。因此對(duì)攝像機(jī)標(biāo)定進(jìn)行研究、實(shí)現(xiàn)具有極大的意義[6]。

本文將圍繞雙目視覺系統(tǒng)關(guān)鍵技術(shù),從攝像頭的標(biāo)定方法入手,總結(jié)現(xiàn)有標(biāo)定方法的原理及特點(diǎn),同時(shí)對(duì)現(xiàn)有的幾種立體匹配應(yīng)用算法進(jìn)行編程模擬并對(duì)比其運(yùn)行速度和視差圖效果,為后續(xù)雙目視覺感知在各領(lǐng)域中的應(yīng)用打下良好基礎(chǔ)。

1 雙目視覺系統(tǒng)關(guān)鍵技術(shù)

雙目視覺系統(tǒng)是由2臺(tái)平行或者成一定角度擺放的攝像機(jī)組成,同一個(gè)物體在兩臺(tái)攝像機(jī)中都會(huì)得到圖片,根據(jù)物體在兩張圖片中的位置差異即視差值(disparity),就可能得知物體在真實(shí)世界中的位置。

應(yīng)用在智能駕駛的車載雙目視覺系統(tǒng)主要是利用得到的視差值,再經(jīng)過立體匹配、三維重構(gòu)等一系列算法后,最終實(shí)現(xiàn)對(duì)目標(biāo)物體的定位及跟蹤。北京建筑大學(xué)的楊幸彬[7]利用雙目視差原理,針對(duì)半全局匹配獲取立體影像視差圖時(shí)存在的計(jì)算時(shí)間和內(nèi)存開銷較大、視差邊緣保持欠佳的問題,研究了一種光流與特征點(diǎn)法結(jié)合的序列影像匹配算法,從而提升了影像位姿結(jié)果的精度。長(zhǎng)春理工大學(xué)郭偉[8]在視差圖上使用一種基于自適應(yīng)閾值分割方法獲得感興趣區(qū)域,并結(jié)合區(qū)域約束方法得到頭肩部模型的待檢測(cè)區(qū)域,有效的去除了視差圖的背景信息,提高了檢測(cè)效率。

攝像機(jī)標(biāo)定的方法有很多,通??梢苑譃閭鹘y(tǒng)的攝像機(jī)標(biāo)定和攝像機(jī)自標(biāo)定。

傳統(tǒng)的攝像機(jī)標(biāo)定技術(shù)需要有特定的定標(biāo)參照物,根據(jù)攝影集合方面的理論直接計(jì)算攝像機(jī)參數(shù)[9]。傳統(tǒng)的標(biāo)定方法可分為線性模型和非線性模型兩類,線性模型攝像機(jī)標(biāo)定方法用線性方程求解,簡(jiǎn)單快速,已成為計(jì)算機(jī)視覺領(lǐng)域的研究熱點(diǎn)之一,但線性模型不考慮鏡頭的畸變,標(biāo)定結(jié)果準(zhǔn)確性欠佳,對(duì)后期的三維重構(gòu)精度影響較大。非線性模型的攝像頭標(biāo)定方法在考慮畸變參數(shù)的同時(shí)還引入了非線性優(yōu)化,但方法繁瑣,速度慢,對(duì)初值選擇和噪聲比較敏感,而且不能保證參數(shù)收斂到全局最優(yōu)解。自標(biāo)定法雖然靈活度很高,不需要標(biāo)定塊就能進(jìn)行標(biāo)定,但標(biāo)定結(jié)果不準(zhǔn)確。

OpenCv標(biāo)定法是介于傳統(tǒng)標(biāo)定法和自標(biāo)定法之間的一種方法,由張正友提出,稱作張氏平面模版標(biāo)定法[9]。此方法克服了傳統(tǒng)標(biāo)定法需要的高精度標(biāo)定參照物的缺點(diǎn),而且僅需使用一個(gè)打印出來的的棋盤格就可以實(shí)現(xiàn)。同時(shí)相對(duì)于自標(biāo)定而言,提高了精度,便于操作。OpenCv標(biāo)定法實(shí)際是求解三維世界坐標(biāo)系中的坐標(biāo)[X,Y,Z,1]T到二維像素平面[u,v,1]T的對(duì)應(yīng)關(guān)系,具體變換流程如圖1所示,雙目攝像頭標(biāo)定流程如圖2所示。

圖1 坐標(biāo)轉(zhuǎn)換流程圖

圖2 雙目攝像頭標(biāo)定流程圖

本文的雙目攝像頭標(biāo)定是在配置OpenCv3.4.1環(huán)境下的VS2015編程軟件中所實(shí)現(xiàn)的,具體標(biāo)定過程如下:

(1)利用Matlab工具箱標(biāo)定出左右攝像頭的內(nèi)參數(shù),為標(biāo)定雙目攝像頭外參數(shù)奠定基礎(chǔ)。圖3為單目攝像機(jī)標(biāo)定結(jié)果,表1和表2分別為左右攝像頭的內(nèi)參標(biāo)定結(jié)果。

圖3 單目攝像機(jī)標(biāo)定圖

表1 左攝像頭參數(shù)表

參數(shù)名稱結(jié)果 內(nèi)參數(shù)矩陣 畸變系數(shù)(-0.2821 0.0408 0.0012 -0.0001 0.1141)

表2 右攝像頭參數(shù)

參數(shù)名稱結(jié)果 內(nèi)參數(shù)矩陣 畸變系數(shù)(-0.2961 0.1389 -0.0005 9.4724 -0.049)

(2)編寫c++程序,調(diào)取OpenCv標(biāo)定頭文件,代碼片段如下。

(3)設(shè)置攝像機(jī)分辨率及標(biāo)定板橫縱角點(diǎn)數(shù)目等參數(shù),將之前獲得的攝像機(jī)內(nèi)參數(shù)輸入到程序中,代碼片段如下。

(4)將OpenCv中自帶的標(biāo)定板圖片放入指定文件夾下,并在程序中寫入讀取圖片的絕對(duì)路徑,代碼如下。

(5)運(yùn)行程序輸出左右相機(jī)標(biāo)定板棋盤格角點(diǎn)識(shí)別結(jié)果如圖4和圖5所示。

(6)對(duì)標(biāo)定過的圖像進(jìn)行校正。利用OpenCv中的StereoRectify函數(shù)計(jì)算投影矩陣,通過投影矩陣使兩幅圖像進(jìn)行共面且平行對(duì)準(zhǔn),校正結(jié)果如圖6所示。輸出的雙目攝像頭外參數(shù),即平移矩陣和旋轉(zhuǎn)矩陣如表3所示。

圖4 左側(cè)相機(jī)棋盤格角點(diǎn)識(shí)別圖

圖5 右側(cè)相機(jī)棋盤格角點(diǎn)識(shí)別圖

圖6 雙目攝像頭校正結(jié)果

表3 雙目攝像頭外參數(shù)

參數(shù)名稱結(jié)果 旋轉(zhuǎn)矩陣R 平移矩陣T

(7)對(duì)標(biāo)定結(jié)果進(jìn)行評(píng)價(jià)

對(duì)標(biāo)定的結(jié)果進(jìn)行評(píng)價(jià)的方法是通過攝像機(jī)得到的內(nèi)外參數(shù),對(duì)空間的三維點(diǎn)進(jìn)行重新投影計(jì)算,得到空間三維點(diǎn)圖像上新的投影點(diǎn)坐標(biāo),計(jì)算投影坐標(biāo)和亞像素角點(diǎn)坐標(biāo)之間的偏差,偏差越小,標(biāo)定結(jié)果越好。如圖7所示,其中Pl為投影矩陣,Q為重投影矩陣。同時(shí)可知立體標(biāo)定的誤差均方根值RMS為0.215 783,且圖片合格已保存,所以符合標(biāo)定要求,這說明此方法是可行的。

圖7 誤差數(shù)據(jù)圖

2 立體匹配算法研究

2.1 SAD算法

灰度差累積(sum of absolute differences,SAD)算法是基于灰度的模板匹配算法。具有運(yùn)算速度快、實(shí)時(shí)性好等優(yōu)點(diǎn),可以較好地滿足多數(shù)雙目立體視覺系統(tǒng)的需求[10]。該算法通過把雙目視覺系統(tǒng)所拍攝的兩個(gè)圖像中匹配點(diǎn)對(duì)應(yīng)灰度值的差取絕對(duì)值再進(jìn)行累積求和,計(jì)算得到的結(jié)果可對(duì)兩個(gè)圖像塊的相似度進(jìn)行評(píng)估。

基本流程如下:

(1)構(gòu)造一個(gè)類似于卷積核的窗口。

(2)用窗口覆蓋雙目視覺中左攝像頭拍攝的圖像,選擇出該窗口覆蓋圖像下的所有像素點(diǎn)。

(3)用同樣的方法覆蓋右攝像頭拍攝圖片的像素點(diǎn)。

(4)利用左右圖像區(qū)域相減得到差值,并求出所有像素點(diǎn)灰度差的絕對(duì)值之和。

(5)移動(dòng)右邊圖像的窗口,重復(fù)(3)、(4)步的處理,超過設(shè)定好查找的范圍自動(dòng)跳出。

(6)找到這個(gè)范圍內(nèi)SAD值最小的窗口,即找到了最佳匹配像素塊。

(7)編寫程序運(yùn)行代碼,得到如圖8所示的視差圖。

圖8 SAD算法下的視差圖

通過匹配所有的圖片對(duì)并對(duì)所得到的視差圖觀察可知,SAD算法運(yùn)行速度不是很快,而且得到的匹配效果不佳,甚至還出現(xiàn)了重疊的部分,不能為雙目視覺系統(tǒng)帶來很好的測(cè)距目的,對(duì)后期的智能駕駛需求影響較大,因此不建議采取該方法。

2.2 SGBM算法

SGBM(semi-global block matching)算法是由Hirschmuller等人提出的半全局匹配方法,該算法算法核心步驟有匹配成本計(jì)算、成本合計(jì)、視差計(jì)算、多基線匹配和視差優(yōu)化[11]。

SGBM算法大致可分為以下4個(gè)步驟。

(1)匹配代價(jià)計(jì)算。這一部分需要計(jì)算兩個(gè)代價(jià),一個(gè)是經(jīng)過處理的圖像使用基于采樣的方法得到的梯度代價(jià),另一個(gè)是原圖像使用基于采樣的方法得到的SAD(Sum of Absolute Differences)代價(jià)。

(2)成本計(jì)算。SGBM算法試圖通過圖像上多個(gè)方向上一維路徑的約束,建立一個(gè)全局Markov energy equation。每個(gè)像素最終的匹配代價(jià)是所有路徑信息的疊加,每個(gè)像素路徑的選擇由最大的一方?jīng)Q定。

(3)多基線匹配。通過計(jì)算基礎(chǔ)圖像和匹配圖像之間所有對(duì)應(yīng)關(guān)系的組合像素匹配成本來完成多基線匹配。

(4)后處理步驟。對(duì)匹配后的圖像進(jìn)行視差的優(yōu)化。

參考SGBM算法編寫程序得到如圖9的標(biāo)定板視差圖,圖中越白的位置代表距離拍攝點(diǎn)越近,越黑的位置代表離拍攝點(diǎn)越遠(yuǎn),純黑的位置代表距離拍攝點(diǎn)無限遠(yuǎn)或者是因?yàn)槠ヅ溴e(cuò)誤導(dǎo)致匹配程序在該點(diǎn)沒有數(shù)據(jù)輸出??梢钥吹絊GBM程序?qū)⑺嘘P(guān)鍵結(jié)構(gòu)的視差都很好的表現(xiàn)了出來,每對(duì)圖片對(duì)的識(shí)別時(shí)間在6500-7000 ms范圍內(nèi),可以實(shí)時(shí)為車輛提供信息。所以該方法應(yīng)用到智能駕駛識(shí)別中是可行的。

圖9 SGBM算法下的視差圖

2.3 GC算法

GC(Graph Cut)算法是一種全局匹配算法,其處理效果最好[12-14],一般流程如下。

(1)應(yīng)用分割法分割來自雙目視覺系統(tǒng)拍攝的圖片。

(2)利用立體匹配較快的算法事先求解圖片各個(gè)點(diǎn)的視差值,為后續(xù)全局匹配做準(zhǔn)備。

(3)根據(jù)第二步所得到的視差信息,對(duì)每一區(qū)域開展平面化建模,將各個(gè)區(qū)域組合獲得一個(gè)平面集合。

(4)修正平面幾何并以區(qū)域?yàn)閱挝蝗制ヅ?,得到每一區(qū)域的視差,最終獲得視差圖。

采用上述原理并參考GC算法編寫程序得到如圖10所示的GC算法視差圖。該算法相對(duì)于SAD和SGBM算法而言效果最好,但運(yùn)行速度最慢,在智能駕駛應(yīng)用中無法實(shí)時(shí)為車輛提供路況信息,只適用于靜態(tài)物體識(shí)別的立體匹配操作。3種算法運(yùn)行時(shí)間對(duì)比結(jié)果如表4所示。

圖10 GC算法下的視差圖

表4 3種算法運(yùn)算時(shí)間

立體匹配算法運(yùn)算時(shí)間/ms SAD3310 SGBM6960 GC250000

3 結(jié)論

以雙目視覺感知系統(tǒng)為例,介紹了傳統(tǒng)標(biāo)定法和OpenCv標(biāo)定法的原理和特點(diǎn),重點(diǎn)對(duì)OpenCv標(biāo)定法進(jìn)行了編程模擬;以智能駕駛目的為導(dǎo)向分別研究了現(xiàn)有的SAD、SGBM、GC三種立體匹配算法并依次編寫程序模擬獲得了相應(yīng)的視差圖,得到結(jié)論如下。

(1)利用OpenCv標(biāo)定的方法較傳統(tǒng)標(biāo)定法更為簡(jiǎn)便,得到的結(jié)果也更為準(zhǔn)確,為后續(xù)的視覺匹配提供了基礎(chǔ)。

(2)采用SAD算法得到的視差圖雖然運(yùn)行速度最快,但得到的視差圖整體精度較差,不利于智能駕駛汽車控制系統(tǒng)的信息的提取,容易造成誤差引起控制失誤。

(3) SGBM算法下的視差圖運(yùn)行速度一般,但得到的視差圖效果很好,能夠清晰地表達(dá)出目標(biāo)距駕駛汽車的位置信息,可以實(shí)時(shí)的為控制系統(tǒng)提供數(shù)據(jù),有利于智能駕駛汽車視覺行業(yè)的發(fā)展。

(4) GC算法所得到的視差圖效果最好,但運(yùn)行速度較慢,無法實(shí)時(shí)對(duì)智能駕駛汽車前方路況的信息進(jìn)行動(dòng)態(tài)提取,更適用于簡(jiǎn)單的靜態(tài)物體識(shí)別操作。

[1] 陳曉冬, 張佳琛, 龐偉凇, 等. 智能駕駛車載激光雷達(dá)關(guān)鍵技術(shù)與應(yīng)用算法 [J]. 光電工程, 2019, 46(7): 28-40.

[2] 張東清, 羅友, 孫艷玲, 等. 一種簡(jiǎn)單的攝像機(jī)標(biāo)定技術(shù)在視覺定位中的應(yīng)用[J]. 生命科學(xué)儀器, 2012, 10(6): 47-51.

[3] HAN J, HEO O, PARK M, et al. Vehicle distance estimation using a mono-camera for FCW/AEB systems. International Journal of Automotive Technology, 2016, 17(3): 483-491.

[4] 熊勇良, 羅志勇, 郭寶明.雙目視覺定位在無人機(jī)電力巡檢中的應(yīng)用[J]. 集成電路應(yīng)用, 2020, 37(4): 88-89.

[5] 張競(jìng)藝. 基于雙目視覺的運(yùn)動(dòng)目標(biāo)實(shí)時(shí)追蹤與測(cè)距[D]. 南京: 南京郵電大學(xué), 2020: 41-48.

[6] 王漢, 殷宏. 基于OpenCV的雙目攝像頭標(biāo)定研究及實(shí)現(xiàn)[J]. 福建電腦, 2018, 34(8): 121-122,129.

[7] 楊幸彬. 雙目視覺生成道路稠密點(diǎn)云地圖的關(guān)鍵算法研究[D]. 北京: 北京建筑大學(xué), 2019: 1-68.

[8] 郭偉. 基于雙目視覺的行人檢測(cè)與識(shí)別技術(shù)研究[D]. 長(zhǎng)春: 長(zhǎng)春理工大學(xué), 2019: 1-59.

[9] 王長(zhǎng)元, 邢世蒙, 基于OpenCv的雙目攝像機(jī)標(biāo)定技術(shù)[J]. 計(jì)算機(jī)與數(shù)字工程, 2004, 12: 2392-2395.

[10] 五源. 串聯(lián)機(jī)器人實(shí)時(shí)雙目視覺定位及跟蹤技術(shù)研究[D]. 武漢: 湖北工業(yè)大學(xué), 2017: 1-74.

[11] 李先祥, 陳思琪, 肖紅軍, 等. 基于SGBM算法與BM算法的三維重建分析[J]. 自動(dòng)化與信息工程, 2019(5): 6-12.

[12] 周瓊. 基于計(jì)算機(jī)的視覺立體匹配算法探究[J]. 數(shù)字通信世界, 2018(8): 108-109.

[13] HUAN Z , LI A N , QIANG Z. SGBM Algorithm and BM Algorithm Analysis and Research[J]. Geomatics & Spatial Information Technology, 2016: 495-498.

[14] 吳恩慈. 基于JAVA大規(guī)模應(yīng)用中GC算法和調(diào)優(yōu)技術(shù)研究[J]. 電子技術(shù)與軟件工程, 2019(4): 1-249.

Key Technology and Application Algorithm of Binocular Vision in Intelligent Driving

ZHU Zi-yang, CHEN shuang

(School of Automobile and Traffic Engineering, Liaoning University of Technology, Jinzhou 121001, China)

In order to solve the optimal stereo matching algorithm problem in intelligent driving road perception, the binocular visual perception system is taken as an example, the calibration of binocular camera is completed firstly based on OpenCv calibration method. Then three programming including SAD, SGBM, GC are simulated and the parallax figures are achieved. Finally the running time and parallax figure of three algorithm are compared and analyzed. The results show that the OpenCV calibration method can perform calibration for binocular cameras simply and quickly. Among three stereo matching algorithms,the running speed of SAD algorithm is fastest but the matching effect is poorer, the running speed of SGBM algorithm is moderate, the running speed of GC algorithm is slowest but the matching effect is best.

binocular vision; OpenCv; demarcation; stereo matching

TP181

A

1674-3261(2021)04-0236-05

10.15916/j.issn1674-3261.2021.04.006

2020-09-03

國家自然科學(xué)基金面上項(xiàng)目(51605213)

朱子陽(1996-),男,遼寧盤錦人,碩士生。

陳 雙(1979-),女,遼寧錦州人,副教授,博士。

責(zé)任編校:陳 明

猜你喜歡
視差雙目標(biāo)定
采用雙目視覺和自適應(yīng)Kalman濾波的作物行識(shí)別與跟蹤
霜 降 蘇美玲
基于雙目視覺的機(jī)器人定位與導(dǎo)航算法
基于歸一化互相關(guān)的半透明遮擋視差估計(jì)
基于自適應(yīng)窗的立體相機(jī)視差圖優(yōu)化方法研究
輕卡前視攝像頭的售后標(biāo)定
一種輕卡前視單目攝像頭下線標(biāo)定方法
使用朗仁H6 Pro標(biāo)定北汽紳寶轉(zhuǎn)向角傳感器
機(jī)械手的雙目視覺定位抓取研究
CT系統(tǒng)參數(shù)標(biāo)定及成像—2