敖宏偉 陳學(xué)文 宋雨俏
摘 要:本文首先采集車輛數(shù)據(jù)進(jìn)行標(biāo)注訓(xùn)練,利用YOLOV3識(shí)別框選出前方車輛,并采用單幀靜態(tài)圖像的測(cè)距模型來實(shí)現(xiàn)前方車輛距離的測(cè)量,即通過CCD攝像機(jī)幀存坐標(biāo)和像平面坐標(biāo)系統(tǒng)的轉(zhuǎn)換,并根據(jù)車道線兩點(diǎn)實(shí)時(shí)測(cè)量攝像機(jī)高度,結(jié)合小孔成像模型原理與車道線前后兩點(diǎn)來實(shí)現(xiàn)單目視覺測(cè)距。
關(guān)鍵詞:視覺信號(hào);YOLOV3;小孔成像;單目視覺測(cè)距
隨著人工智能的發(fā)展,汽車安全輔助駕駛技術(shù)的研究受到各國(guó)的普遍關(guān)注,汽車在給人們的生活提供無限便利的同時(shí),也帶來了交通出行的安全性問題[1],其中安全車距預(yù)警系統(tǒng)作為重要組成部分,長(zhǎng)期以來一直受到高度重視,目標(biāo)的識(shí)別和測(cè)距作為在視覺研究領(lǐng)域中的前方車輛安全車距預(yù)警的核心課題,在智能交通、視頻監(jiān)控、機(jī)器人導(dǎo)航及人機(jī)交互等諸多領(lǐng)域都受到了廣泛的關(guān)注。
1 前方車輛的識(shí)別
1.1 圖像標(biāo)注
在計(jì)算機(jī)視覺中,圖像標(biāo)注作為最重要的工作之一,在現(xiàn)如今大量應(yīng)用程序當(dāng)中,計(jì)算機(jī)視覺本質(zhì)上是擁有一雙基于視覺信號(hào)的眼睛,去看見世界和解讀世界。當(dāng)下機(jī)器學(xué)習(xí)已經(jīng)應(yīng)用到各個(gè)領(lǐng)域,例如增強(qiáng)現(xiàn)實(shí)技術(shù)、神經(jīng)網(wǎng)絡(luò)翻譯與語(yǔ)音自動(dòng)識(shí)別技術(shù)等。同時(shí),計(jì)算機(jī)視覺在技術(shù)層面也給人們帶來了諸多體驗(yàn),例如面部識(shí)別、無人機(jī)、無人駕駛汽車等。labelme可對(duì)圖像進(jìn)行多邊形,矩形,圓形,多段線,線段,點(diǎn)形式的標(biāo)注,可用于目標(biāo)檢測(cè),圖像分割,等任務(wù)。COCO數(shù)據(jù)集中一共有80種常見的物種類別,但本文只需精確的識(shí)別出前方車輛,因此需要重新在darknet框架下訓(xùn)練出只識(shí)別車輛的數(shù)據(jù)集,我們首先實(shí)地獲取車輛圖片數(shù)據(jù)之后,對(duì)其進(jìn)行分割標(biāo)注,總共采集了三千張車輛圖片,來為后續(xù)的訓(xùn)練作準(zhǔn)備。
1.2 訓(xùn)練樣本
訓(xùn)練數(shù)據(jù)是個(gè)漫長(zhǎng)又復(fù)雜的操作過程,首先進(jìn)行圖像采集,然后對(duì)應(yīng)特征點(diǎn)打好標(biāo)簽,即人工標(biāo)注,待操作完成后,即可獲得訓(xùn)練之前所必需的關(guān)于圖像特征描述的數(shù)據(jù)集,以“樣本”形式參與后續(xù)的訓(xùn)練工作,為了使樣本不容易出現(xiàn)過度擬合的情況,需令樣本足夠大,重復(fù)率低,樣本越大,得到準(zhǔn)確結(jié)果的概率也就越大,同時(shí)也要能代表需求領(lǐng)域??偟膩碚f,網(wǎng)絡(luò)訓(xùn)練是一個(gè)優(yōu)化問題,在高維參數(shù)空間中尋找使得損失函數(shù)取值最小的點(diǎn)作為網(wǎng)絡(luò)的最優(yōu)解,在得到標(biāo)注后的圖像數(shù)據(jù)后,我們?cè)赿arknet框架下進(jìn)行訓(xùn)練生成權(quán)重。
1.3 車輛識(shí)別
YOLO算法作為兼具性能和準(zhǔn)確性的檢測(cè)算法,近年來得到了廣泛應(yīng)用[2],速度可達(dá)20fps,可以進(jìn)行實(shí)時(shí)檢測(cè),因此本文選擇YOLOV3網(wǎng)絡(luò)作為車輛檢測(cè)網(wǎng)絡(luò)。YOLO網(wǎng)絡(luò)經(jīng)過三個(gè)版本的迭代,不僅對(duì)小目標(biāo)的檢測(cè)越來越好,其檢測(cè)精度和系統(tǒng)反應(yīng)速率也上升到了一個(gè)新的層次,對(duì)目標(biāo)直接進(jìn)行回歸是其基本思想,YOLOV3不僅能很好的識(shí)別出前方車輛,且實(shí)時(shí)性較好。
2 單目視覺測(cè)距模型
所謂基于單目視覺的圖像采集,是將三維空間的物體投影到攝相機(jī)的二維光感平面上,即CCD光敏矩陣表面,在單目視覺測(cè)距算法中,我們通常把攝像機(jī)參數(shù)分為內(nèi)部參數(shù)和外部參數(shù),攝像機(jī)內(nèi)部的幾何特征和光學(xué)特征我們稱之為內(nèi)部參數(shù),該參數(shù)不隨攝像機(jī)的移動(dòng)而改變,攝像機(jī)像平面相對(duì)于世界坐標(biāo)系的三維位置和朝向我們稱之為外部參數(shù),該參數(shù)隨著攝像機(jī)移動(dòng)而變化,需要重新進(jìn)行標(biāo)定,傳統(tǒng)的單目測(cè)距算法,基于小孔成像原理的測(cè)距模型,往往需要待測(cè)物體的實(shí)際尺寸,這樣的條件太過理想且現(xiàn)實(shí)無法滿足,因此本文采用基于單幀靜態(tài)圖像的測(cè)距模型來對(duì)前方車輛進(jìn)行實(shí)時(shí)距離估計(jì)。由于計(jì)算機(jī)所需要的參數(shù)均為內(nèi)部參數(shù),因此只要在離線狀態(tài)下標(biāo)定出攝像機(jī)的內(nèi)部參數(shù),就可以在車輛運(yùn)動(dòng)過程中進(jìn)行前方車距的實(shí)時(shí)測(cè)量[3]。
3 前方車輛距離的測(cè)量
建立數(shù)學(xué)模型:
(1)
(2)
式中,u,v由圖像處理得到,O1(u0,v0)是CCD攝像機(jī)光軸與像平面交點(diǎn)(x0,y0)的幀存坐標(biāo):
x0=y0=0 (3)
將三式聯(lián)立代入得距離:
(4)
通常我們將車道線檢測(cè)的方法主要分為兩類:基于特征的車道線檢測(cè)方法和基于模型的車道線檢測(cè)方法。我們根據(jù)圖像處理得到前后兩點(diǎn)d1、d2,p1、p2的計(jì)算公式如下:
(5)
(6)
(7)
由此可得攝像機(jī)高度:
(8)
(9)
當(dāng)通過攝像機(jī)標(biāo)定得到內(nèi)部參數(shù)ay=667和后,經(jīng)過圖像處理像素的大小為410像素*378像素,通過相似三角形轉(zhuǎn)換公式便可求出三維空間內(nèi)物體在圖像平面上任意一像素點(diǎn),對(duì)應(yīng)的三維空間內(nèi)一點(diǎn)到攝像機(jī)的縱向距離。其中通過相機(jī)標(biāo)定得到CCD攝像機(jī)的鏡頭焦距為676 mm,根據(jù)給出的攝像機(jī)內(nèi)部參數(shù)及相似三角形測(cè)距模型所需參數(shù),對(duì)前方車輛進(jìn)行實(shí)時(shí)距離估計(jì),路試試驗(yàn)如下圖所示:
4 總結(jié)與展望
本文在YOLOV3框架下對(duì)前方車輛進(jìn)行識(shí)別,框選出識(shí)別車輛,并提取單幀靜態(tài)圖像,通過CCD攝像機(jī)幀存坐標(biāo)和像平面坐標(biāo)系統(tǒng)的轉(zhuǎn)換,結(jié)合小孔成像原理對(duì)前方車輛距離估計(jì),基本滿足實(shí)時(shí)性和精度的要求,機(jī)器視覺測(cè)距雖然有不可代替的優(yōu)勢(shì),但是在自身仍有很多問題需要克服,例如光照條件的不足、相機(jī)自身抖動(dòng)等問題,因此在未來幾年,機(jī)器視覺測(cè)距依然面臨著很大的挑戰(zhàn)。
參考文獻(xiàn):
[1]黃同愿,楊雪姣,向國(guó)徽,等.基于單目視覺的小目標(biāo)行人檢測(cè)與測(cè)距研究[J].計(jì)算機(jī)科學(xué),2020,47(11):205-211.
[2]張玉鵬.基于卷積神經(jīng)網(wǎng)絡(luò)的車輛檢測(cè)與測(cè)距[D].北京郵電大學(xué),2019.
[3]田傲霜,陳華清,陳學(xué)文.車道偏離預(yù)警系統(tǒng)研究綜述[J].汽車實(shí)用技術(shù),2020,45(23):30-32.