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

?

基于YOLOv2-Tiny的環(huán)視實時車位線識別算法

2020-09-30 02:03何俏君郭繼舜關(guān)倩儀
汽車電器 2020年9期
關(guān)鍵詞:像素點空閑標(biāo)定

何俏君,郭繼舜,關(guān)倩儀,鐘 斌,付 穎,谷 俊

(廣州汽車集團股份有限公司 汽車工程研究院,廣東 廣州 511434)

隨著近年來人工智能技術(shù)的蓬勃發(fā)展,關(guān)于智能駕駛技術(shù)的研究在汽車行業(yè)快速興起。其中,自動泊車輔助系統(tǒng)(Automatic Parking Assist,APA)受到眾多新興人工智能領(lǐng)域企業(yè)以及傳統(tǒng)汽車制造企業(yè)的廣泛關(guān)注并展開了相關(guān)技術(shù)研究。車位識別作為自動泊車系統(tǒng)中的感知環(huán)節(jié),其準(zhǔn)確性和快速性對后續(xù)車輛泊車路徑規(guī)劃與控制至關(guān)重要。

目前已有的空閑車位識別技術(shù)可以分為基于超聲波雷達探測,基于視覺的空閑車位識別以及超聲波與視覺相融合3種基本模式。得益于360°環(huán)視成像技術(shù)的成熟發(fā)展,本文提出一種基于環(huán)視圖像的全視覺空閑車位線識別方法。在其他學(xué)者既已提出的眾多研究車位線自動識別方法中,可劃分為依據(jù)線檢測與依據(jù)角點檢測定位車位兩種基本思路。

文獻[1,2]中結(jié)合環(huán)視圖像邊緣提取與Hough變換檢測直線實現(xiàn)車位線定位,除了Hough變換外,文獻[3]使用Line Segment Detector(LSD)檢測識別車位線?;谥本€檢測的車位定位對部分僅畫出角點附近車位線的車位適用性不高,且直線檢測對圖像噪聲點較為敏感,環(huán)境復(fù)雜的情況下對檢測準(zhǔn)確度影響較大?;诮屈c檢測的思路,Suhr等人[4]提出分層樹模型以自下而上、自上而下兩種模式搜索定位車位角點完成車位線識別,但難以滿足實時性要求。Lin[5]等提出訓(xùn)練分類器檢測角點并結(jié)合先驗邏輯約束重構(gòu)車位,但僅能用于檢測角點為直角的車位線。而文獻[6]中提出基于深度學(xué)習(xí)的車位檢測方法,分別用目標(biāo)檢測網(wǎng)絡(luò)檢測角點,并訓(xùn)練另一個網(wǎng)絡(luò)匹配角點對模式,結(jié)合模板匹配確定車位擺向。該方法利用了深度學(xué)習(xí)強大的非線性擬合能力,但對運算所需硬件設(shè)備要求較高且角點中心定位準(zhǔn)確程度對車位擺向影響較大。

以自動泊車系統(tǒng)所要求的運算資源成本低且實時性要求高為出發(fā)點,本文提出一種基于輕量化深度學(xué)習(xí)目標(biāo)檢測網(wǎng)絡(luò)YOLOv2-Tiny的角點檢測方法,結(jié)合車位線骨架信息提取,對網(wǎng)絡(luò)定位角點不精確的問題進行校正,并進一步將概率霍夫變換直線檢測應(yīng)用于角點區(qū)域骨架上,減少全局噪聲對直線檢測精度的影響,最終確定重構(gòu)的車位線,算法流程圖如圖1所示。

1 魚眼矯正拼接環(huán)視圖像

魚眼攝像頭成像角度廣,可收集近距離內(nèi)較多視場信息,但魚眼相機拍攝圖像時存在嚴(yán)重畸變,故需預(yù)先對魚眼攝像頭進行標(biāo)定校正。

圖1 本文車位線識別算法流程圖

1.1 魚眼攝像機模型中的坐標(biāo)系統(tǒng)

世界坐標(biāo)系 (world coordinate system):用戶定義的三維世界的坐標(biāo)系,為了描述目標(biāo)物體在真實世界里的位置而被引入。

相機坐標(biāo)系 (camera coordinate system):在相機上建立的坐標(biāo)系,為了從相機的角度描述物體位置而定義,作為溝通世界坐標(biāo)系和圖像/像素坐標(biāo)系的中間一環(huán)。

像素坐標(biāo)系 (pixel coordinate system):描述物體成像后的像點在數(shù)字圖像上的坐標(biāo),是從相機內(nèi)真正讀取到的信息所在的坐標(biāo)系。

圖像坐標(biāo)系 (image coordinate system):描述成像過程中物體從相機坐標(biāo)系到圖像坐標(biāo)系的投影透射關(guān)系,可進一步得到像素坐標(biāo)系下的坐標(biāo)。

標(biāo)定過程分為兩部分。

第1部分為世界坐標(biāo)系轉(zhuǎn)換為相機坐標(biāo)系,這一步是三維點到三維點的轉(zhuǎn)換,轉(zhuǎn)換關(guān)系為:

式中:R——3×3的旋轉(zhuǎn)矩陣;t——3×1的平移矢量;(xc,yc,zc,1)T——相機坐標(biāo)系的齊次坐標(biāo); (xw,yw,zw,1)T——世界坐標(biāo)系的齊次坐標(biāo)。

第2部分是相機坐標(biāo)系轉(zhuǎn)換為像素坐標(biāo)系,是三維點轉(zhuǎn)為二維點的過程。但因像素坐標(biāo)系不利于坐標(biāo)轉(zhuǎn)換,需先建立圖像坐標(biāo)系,由像素坐標(biāo)系轉(zhuǎn)換為圖像坐標(biāo)系:

式中:1/dx,1/dy——分別為沿x軸與y軸方向單位物理尺寸上的像素個數(shù);(u,v)——圖像中心點的像素坐標(biāo)。

由相機針孔成像原理可知,相機坐標(biāo)系轉(zhuǎn)換為圖像坐標(biāo)系即為透視投影過程。轉(zhuǎn)換關(guān)系如下:

式中:s——比例因子 (s不為0);f——有效焦距 (光心到圖像平面的距離); (x,y,z,1)T——空間點P在相機坐標(biāo)系OXYZ中的齊次坐標(biāo); (x,y,1)T——像素點p在圖像坐標(biāo)系OXY中的齊次坐標(biāo)。

通過將世界坐標(biāo)系上的坐標(biāo)值投影到對應(yīng)的像素坐標(biāo)系上的像素點,在此過程中可求解出相機的內(nèi)外參數(shù)。轉(zhuǎn)換關(guān)系可表示為:

式中,R——3行3列矩陣,稱為旋轉(zhuǎn)矩陣;t——三維列向量,稱為平移向量;M1——相機內(nèi)部參數(shù)矩陣;M2——相機外部參數(shù)矩陣。

1.2 魚眼攝像機標(biāo)定技術(shù)

為了矯正魚眼相機產(chǎn)生的畸變,需先標(biāo)定相機求出內(nèi)外參數(shù)。相機標(biāo)定技術(shù)主要分為兩種:相機的自標(biāo)定法和攝影標(biāo)定法。張正友棋盤格標(biāo)定法是介于二者之間,接受度較高的方法,既克服了攝影標(biāo)定法需要的高精度三維標(biāo)定物的缺點,又解決了自標(biāo)定法魯棒性差的難題。

張氏標(biāo)定法[7]是一種基于平面棋盤格的標(biāo)定法,通過圖像平面與標(biāo)定物棋盤格平面的坐標(biāo)系映射關(guān)系確定單應(yīng)性矩陣,利用約束條件求解相機的內(nèi)參數(shù)矩陣并由其估算出相應(yīng)的外參數(shù)矩陣,從而達到標(biāo)定相機并矯正的目的。具體流程如下。

1)打印一張棋盤格,貼在一個平面上以作為標(biāo)定物。

2)通過調(diào)整標(biāo)定物或攝像機的方向,為標(biāo)定物拍攝一些不同方向的照片。

3)從照片中提取棋盤格角點。

4)估算理想無畸變的情況下,5個內(nèi)參和6個外參。

5)應(yīng)用最小二乘法估算實際存在徑向畸變下的畸變系數(shù)。

6)極大似然法對畸變系數(shù)進行優(yōu)化估計,提升估計精度。

1.3 環(huán)視圖像拼接

多個魚眼攝像頭收集到圖像數(shù)據(jù)后需要將其拼接成一幅完整畫面。本文使用尺度不變特征轉(zhuǎn)換 (SIFT,Scale-invariant Feature Transform)方法匹配2幅圖像相同的特征點,通過隨機一致性采樣 (RANSAC,Random Sample Consensus)篩選正確的特征匹配并輸出透視矩陣,利用透視變換完成圖像的拼接,循環(huán)這個流程迭代所有圖像就可以完成多張圖像的全景圖拼接。

SIFT特征提取分為檢測特征點,確定特征點的尺度方向,生成特征向量,最后進行匹配。首先掃描圖片所有尺度下的所有位置,計算2個相鄰的高斯尺度空間差值得到高斯差分空間,高斯差分空間的眾多極值點即為特征點;利用直方圖統(tǒng)計方法,求出鄰域內(nèi)所有像素點的梯度方向以及幅值,直方圖的峰值所代表的方向即為特征點的主方向;通過求得特征點的鄰域梯度信息來計算特征向量;采用最近鄰方法計算特征向量的歐氏距離從而匹配特征點。

隨機一致性采樣算法 (RANSAC)是隨機采用部分特征匹配坐標(biāo)計算得到一個透視矩陣,利用此透視矩陣測試所有的匹配點,若匹配結(jié)果良好則輸出該透視矩陣,否則換用其他特征匹配坐標(biāo)。該方法的作用是剔除掉不正確的特征匹配結(jié)果,獲得正確的透視矩陣。

透視變換就是將圖像投影到一個新的視平面上。在全景圖拼接時,很多圖像會由于拍攝角度等問題出現(xiàn)一些方向上的不同步,需要旋轉(zhuǎn)圖像到相同視角再拼接。而控制旋轉(zhuǎn)變換的方式即是通過透視矩陣與原圖像的矩陣形式進行相乘得到新的圖像矩陣方可進行拼接。原視頻與拼接后的圖像對比如圖2所示。

圖2 原視頻與拼接后的圖像對比

表1 YOLOv2-Tiny結(jié)構(gòu)組成

2 基于YOLOv2-Tiny的空閑車位與角點檢測

2.1 YOLOv2-Tiny目標(biāo)識別

基于darknet框架的YOLO目標(biāo)檢測模型最早于2016年由Redmon等提出,YOLO通過網(wǎng)格化分割方式回歸目標(biāo)邊界框同時預(yù)測類別,相較于當(dāng)時表現(xiàn)出色的Faster-RCNN目標(biāo)檢測模型,YOLO檢測效率大幅提升,對實時性要求高的目標(biāo)檢測任務(wù)適用性更好。隨后YOLO模型進一步發(fā)展至YOLOv2,其特征提取基于darknet-19實現(xiàn),通過在網(wǎng)絡(luò)中加入了批歸一化,多尺度特征提取,引入固定框 (anchor boxes)取代全連接層進行邊界框回歸等改進從而優(yōu)化YOLO分類與定位效果,并進一步提升檢測效率。

然而,盡管基于深度網(wǎng)絡(luò)的YOLOv2模型對運算資源硬件要求較SSD、Faster-RCNN等目標(biāo)檢測模型有所降低,仍難以滿足其在車載嵌入式ECU得以廣泛應(yīng)用所期待的低成本與高效率二者相平衡的要求。因此,針對全自動泊車系統(tǒng)中基于視覺的空閑車位檢測任務(wù)的應(yīng)用場景,使用輕量化的YOLOv2-Tiny模型適應(yīng)車載嵌入式ECU算力低且檢測任務(wù)實時性要求高的特點。YOLOv2-Tiny的網(wǎng)絡(luò)結(jié)構(gòu)共包含9個卷積層,6個池化層,具體每層卷積核大小和數(shù)量如表1所示。

2.2 空閑車位區(qū)域與車位線角點識別

本文基于YOLOv2-Tiny模型對空閑車位區(qū)域以及角點進行識別,其中角點類型分為T型角點 (圖3a)與L型角點兩種(圖3b),共3種目標(biāo)類型。

圖3 兩種角點類型

2.3 網(wǎng)絡(luò)訓(xùn)練

實驗中網(wǎng)絡(luò)訓(xùn)練部分基于Darknet框架在Ubuntu 16.04 LTS系統(tǒng),中央處理器為主頻2.10GHz的Intel Xeon E5-2683 v4,GPU為TITAN X配置下實現(xiàn)。采用文獻[6]中提供的不同天氣狀況,不同室內(nèi)外環(huán)境,不同光照方向與光照強度下采集的公開數(shù)據(jù)集進行訓(xùn)練與測試。數(shù)據(jù)集包含共10000張環(huán)視車位圖像,其中8000張作為訓(xùn)練樣本,其余作為測試樣本。YOLOv2-Tiny網(wǎng)絡(luò)訓(xùn)練超參數(shù)設(shè)置如下:批次大小為16,迭代次數(shù)為10000,學(xué)習(xí)率為0.001。

2.4 識別精度與效果

利用訓(xùn)練好的網(wǎng)絡(luò)權(quán)重在Ubuntu 16.04 LTS系統(tǒng),中央處理器為主頻2.80GHz的Intel Core i7-7700HQ,GPU為NVIDIA Quadro M1200配置下實現(xiàn)對2000張測試樣本圖進行測試,得到空閑車位區(qū)域與兩種角點識別準(zhǔn)確率如表2所示。從表中可以看出,訓(xùn)練后的YOLOv2網(wǎng)絡(luò)對空閑車位檢測效果十分理想,兩種類型角點的檢測精度較高,其輕量化結(jié)構(gòu)使其檢測效率大大提高,能滿足自動泊車系統(tǒng)的實時性要求。

表2 YOLOv2-Tiny識別精度

訓(xùn)練好的網(wǎng)絡(luò)對測試圖片檢測結(jié)果如圖4所示,從圖4可看出網(wǎng)絡(luò)能正確定位空閑車位區(qū)域,并識別出角點類型與位置,根據(jù)角點塊中心與車位區(qū)域間的相對位置可篩選出每個車位區(qū)域內(nèi)的角點,后續(xù)根據(jù)角點位置重構(gòu)實際車位線。

圖4 空閑車位與角點識別效果

3 基于角點塊骨架提取的角點中心校正

第2章中訓(xùn)練好的YOLOv2-Tiny網(wǎng)絡(luò)能基本定位角點塊區(qū)域,理想狀態(tài)下角點塊區(qū)域中心像素點坐標(biāo)為實際角點坐標(biāo),但由于YOLOv2-Tiny較于其他深度網(wǎng)絡(luò)輕量化的特性,其對角點中心的定位精度有所降低。環(huán)視圖像中具有一定寬度的車位線在圖像上往往對應(yīng)覆蓋多個像素點范圍,準(zhǔn)確意義上的角點中心為2條線各自覆蓋的像素點區(qū)域中心軸相交的交點。圖像骨架提取指的正是相連通的像素點區(qū)域細(xì)化至單位像素寬度的過程,對于線狀輪廓而言,經(jīng)過骨架提取后可得到單位寬度的中軸線,2條中軸線的交點即為實際角點中心。

3.1 角點校正預(yù)處理

對圖像進行骨架提取前需要對原始角點區(qū)域圖像進行灰度化和自適應(yīng)閾值二值化。各步驟處理角點圖像效果如圖5所示。

圖5 各步驟處理角點圖像效果

3.2 角點骨架提取

本文使用Zhang[8]提出的經(jīng)典快速并行圖像細(xì)化算法對識別出的車位角點塊進行骨架提取,該算法迭代逐次消除角點框內(nèi)直線的邊緣像素點,將每個像素點的相鄰像素點分布編號為如圖6所示順序,每輪消除滿足以下 1)~3)3個條件的像素點,直到?jīng)]有新的像素點被消除停止迭代。

快速并行細(xì)化算法刪除點條件如下所述。

1)與中心像素點相鄰的8個像素點之和滿足式 (5)。

圖6 相鄰像素點編號序列

2)順時針遍歷P2~P9,像素點從0變成1的總次數(shù)等于1,即滿足式 (6)。

3)奇數(shù)輪迭代滿足:

偶數(shù)輪迭代滿足:

使用快速并行細(xì)化算法對角點提取骨架后的結(jié)果如圖5e所示。

3.3 概率霍夫變換檢測直線得到交點坐標(biāo)

標(biāo)準(zhǔn)霍夫變換建立了二維空間(x,y)與參數(shù)空間(ρ,θ)間的投影變換,二維空間中的直線對應(yīng)參數(shù)空間中的某個點(ρ0,θ0),因此二維空間直線上的所有點變換后都對應(yīng)經(jīng)過該點 (ρ0,θ0),由此可將直線檢測轉(zhuǎn)化為參數(shù)空間的高頻點檢測,霍夫變換中兩個空間的關(guān)系滿足式 (9):

標(biāo)準(zhǔn)霍夫變換可用于直線檢測,在此基礎(chǔ)上,概率霍夫變換把圖像邊緣點投影至參數(shù)空間并累積至滿足設(shè)定閾值后終止,較標(biāo)準(zhǔn)霍夫變換效率更高,可有效檢測線段,對本文識別任務(wù)更為適用。利用概率霍夫變換可以得到角點骨架線段,并進一步通過線段起始點和終點相對位置確定不完整顯示車位的擺向。

基于細(xì)化后的角點骨架,利用概率霍夫變換檢測線段的結(jié)果如圖5f所示。通過篩選可以得到通過2條有效線段的2個端點 (xs,ys), (xd,yd),根據(jù)2個端點相對位置可以確定2條車位線的斜率k1,k2(式 (10)) 以及式 (11) 所示直線表達式,進一步聯(lián)立兩個表達式可以求得式 (12)所示交點c=(xc,yc),即校正后的角點中心坐標(biāo)。圖7為經(jīng)過角點校正后識別出的環(huán)視圖像車位角點標(biāo)記。

圖7 角點中心校正前后對比

4 車位線重構(gòu)

由3.3節(jié)中計算的校正后角點位置和斜率可分不同情況對實際車位線進行重構(gòu),對于不完整顯示的車位需要識別出2個有效角點方可進行實際車位重構(gòu),具體可劃分為如下3種情況。

1)識別出的角點個數(shù)等于4。根據(jù)4個角點中心位置,兩兩計算其連線的斜率,與每個角點對應(yīng)2條車位線的斜率k1,k2相比較,將在誤差允許范圍內(nèi)連線斜率與k1,k2二者之一相等的2個角點相連,4點相連可得實際車位。

2)識別出的角點個數(shù)等于3。根據(jù)車位線對邊平行的特性可以計算出第4個車位角點坐標(biāo),得到4點坐標(biāo)后對應(yīng)情況1)實現(xiàn)車位線重構(gòu)。

3)識別出的角點個數(shù)等于2。此時為車位不完整顯示于環(huán)視圖像中的情況,識別出的2個角點為同側(cè)角點,計算2個角點中心連線的斜率km與檢測得到的各自對應(yīng)的車位線斜率k1,k2相比較,相差較大者分別為2個角點另一端不完整車位線的斜率ks。以單條車位線為例,沿其斜率方向延伸可以與環(huán)視圖像邊界交于兩點p1,p2,以角點中心c為起點,與圖像邊界角點為終點可以得到2個向量,。該角點骨架經(jīng)過概率霍夫變換后可以得到的對應(yīng)斜率kn的線段2個端點sn,dn,以離角點中心c較接近的端點為起始點s,較遠點為終點d,可得到車位擺向向量,分別對計算與的內(nèi)積,滿足式 (13)的向量c為同向,對應(yīng)點p*為有效交點。

車位線重構(gòu)效果如圖8所示,藍色線段為重構(gòu)的車位線。

5 結(jié)束語

圖8 車位線重構(gòu)效果圖

針對自動泊車系統(tǒng)中實時檢測空閑車位這一實際任務(wù),本文提出了一種使用輕量網(wǎng)絡(luò)YOLOv2-Tiny進行角點檢測的算法,并基于角點檢測結(jié)果結(jié)合骨架提取與概率霍夫變換進行角點中心校正。角點校正一方面可以彌補使用輕量化網(wǎng)絡(luò)帶來的角點定位偏差問題,另一方面基于角點塊區(qū)域檢測直線可以減輕全局環(huán)境噪聲對直線檢測精度的影響,且可檢測角度多變的不同類型車位。通過實驗結(jié)果證明本文所提出的車位線識別算法效果良好,且輕量化網(wǎng)絡(luò)檢測效率高,可滿足自動泊車系統(tǒng)實時性要求。

猜你喜歡
像素點空閑標(biāo)定
輕卡前視攝像頭的售后標(biāo)定
一種輕卡前視單目攝像頭下線標(biāo)定方法
基于局部相似性的特征匹配篩選算法
使用朗仁H6 Pro標(biāo)定北汽紳寶轉(zhuǎn)向角傳感器
“鳥”字謎
CT系統(tǒng)參數(shù)標(biāo)定及成像—2
CT系統(tǒng)參數(shù)標(biāo)定及成像—2
西灣村采風(fēng)
一種X射線圖像白點噪聲去除算法
基于canvas的前端數(shù)據(jù)加密
德兴市| 巨野县| 金沙县| 汝阳县| 太保市| 平邑县| 蒙自县| 沭阳县| 莱芜市| 安阳县| 涟源市| 普宁市| 随州市| 弋阳县| 太仆寺旗| 瑞昌市| 象山县| 靖宇县| 四平市| 通州区| 同心县| 大埔县| 望都县| 渝北区| 绍兴市| 延安市| 宜黄县| 林芝县| 临汾市| 汉寿县| 万山特区| 嘉定区| 秭归县| 石渠县| 香格里拉县| 蒙城县| 宜春市| 修水县| 阿合奇县| 丹巴县| 桂林市|