吳迪
摘要:為了解決在單目視覺車輛系統(tǒng)中存在的虛假干擾對(duì)象和可靠性低的問題,本文提出了將車道線和多特征結(jié)合的前方車輛檢測(cè)的研究方法。本文中將采用基于hough變換的道路區(qū)域分割算法,通過進(jìn)一步篩選,排除大部分干擾。接著提出將車底陰影暗影和多特征結(jié)合的檢測(cè)算法。實(shí)驗(yàn)結(jié)果表明,在不同交通情況情況下,車輛檢測(cè)目標(biāo)的正確率大幅提高,能夠有效檢測(cè)前方車輛。
關(guān)鍵詞:車輛檢測(cè);hough變換;陰影篩選
中圖分類號(hào):TP391 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2018)12-0206-03
Abstract:In order to solve the problem of false interference objects and low reliability in monocular vision vehicle systems,This paper presents a method for the front vehicle detection : combine lane line and multi-feature.In this paper, I will use road segmentation algorithm based on hough transform.Use further screening to eliminate most of the interference.Then I will propose a detection algorithm that combines shadow shadow and multi-feature.Experimental results show that the correct rate of vehicle detection target is greatly improved in the case of different traffic conditions,and it can effectively detect the front of the vehicle.
Key words:vehicle detection;hough transform;shadow screening
在智能汽車技術(shù)中,高級(jí)駕駛輔助系統(tǒng)是環(huán)境感知的重要組成部分。而作為高級(jí)駕駛輔助系統(tǒng)中的研究重點(diǎn),前車檢測(cè)是本文要主要研究的部分[1]。目前,對(duì)前方車輛的檢測(cè)方法常用的有以下三種:模型[2]、光流[3]和特征[4]?;谀P偷臋z測(cè)由于受到車型的多樣性和車輛行駛過程中不同姿態(tài)的影響,很難建立統(tǒng)一的模型。基于光流的檢測(cè)容易在其他車輛和本車相對(duì)速度過小的情景下發(fā)生誤檢。因此本文采取基于特征的檢測(cè)方法?;谲囕v特征的檢測(cè)一般利用車輛邊界或者車輛形狀特征。但是直接利用上述一種特征檢測(cè),容易受到天氣、樹木或者路邊障礙物的影響,產(chǎn)生漏檢或誤檢。因此,本文將采取結(jié)合車輛多特征的檢測(cè)方式。本文通過先檢測(cè)車道線,確定車輛所在的大致范圍,對(duì)圖形進(jìn)行分割,去除背景干擾。再利用均值方差檢測(cè)出前方車輛的陰影,對(duì)車輛進(jìn)行粗定位,然后結(jié)合車輛左右邊緣特征實(shí)現(xiàn)對(duì)車輛的進(jìn)一步定位,最后利用車輛的車輪灰度特征精確定位車輛所在位置。
1 車道線檢測(cè)
1.1 圖像預(yù)處理
一般情況下,我們所獲取的圖像是彩色圖像,不對(duì)圖像進(jìn)行處理而直接進(jìn)行檢測(cè),會(huì)加大算法的復(fù)雜度和工作量,且由于圖像在成像的過程中會(huì)產(chǎn)生噪聲干擾,降低圖像質(zhì)量,影響車輛檢測(cè)。因此,在車輛檢測(cè)前,要先處理原圖像。
(1)圖像灰度化:圖像灰度化通常有最大值法、平均法和加權(quán)平均法[5],本文采取加權(quán)平均法,根據(jù)人眼對(duì)紅、綠、藍(lán)三色的不同敏感,將權(quán)重分別設(shè)為0.3,0.59,0.11,如公式(1)所示:
(2)圖像去噪:本文采取中值濾波的方法,對(duì)圖像進(jìn)行去噪處理,數(shù)學(xué)表達(dá)式為公式(2)所示:
1.2 感興趣區(qū)域提取
感興趣區(qū)域是根據(jù)實(shí)驗(yàn)所需來粗略估測(cè)要跟蹤目標(biāo)的區(qū)域,從而能夠減小搜索范圍,減小算法計(jì)算量。由于拍攝的圖像上方大多數(shù)為天空、建筑或者其他多余背景,因此本文中設(shè)置圖像2/3及以下區(qū)域?yàn)楦信d趣區(qū)域。
1.3 圖像邊緣檢測(cè)
圖像的邊緣信息是圖像的分析和人類視覺區(qū)分不同物體或者區(qū)分不同區(qū)域的重要特征屬性。通過對(duì)圖像的邊緣檢測(cè),圖像中的非邊緣處的像素點(diǎn)可被排除,這樣一來,降低了Hough變換的運(yùn)算量,增加了直線檢測(cè)的準(zhǔn)確性。邊緣檢測(cè)常用的算子有Roberts算子、Sobel算子和Canny算子[6]。Roberts算子原理上是利用對(duì)角方向的像素差來檢測(cè)邊緣,數(shù)學(xué)表達(dá)式為公式(3)所示:
式中,需要為公式選擇合適的閾值T,當(dāng)結(jié)果大于閾值時(shí),那么此時(shí)的點(diǎn)(x,y)即為所求點(diǎn)。Sobel算子原理是通過對(duì)圖像中每個(gè)像素點(diǎn)周圍的灰度值進(jìn)行加權(quán)運(yùn)算,然后求導(dǎo)得到的結(jié)果。數(shù)學(xué)表達(dá)式為(4)所示:
Canny算子通過高斯濾波做平滑運(yùn)算,再求出像素點(diǎn)的梯度值,通過比較梯度值和閾值的大小來確定邊緣點(diǎn)。梯度值公式如公式(5)所示:
通過直方圖來確定高閾值T1和低閾值T2的大小,如果梯度值大于T1,則判定為邊緣點(diǎn),如果梯度值低于T2,則判定不是邊緣點(diǎn),如果梯度值介于T1和T2之間的話,則通過考察這個(gè)點(diǎn)3*3領(lǐng)域內(nèi)的其他8個(gè)點(diǎn)的梯度值,如果這8個(gè)梯度值中有大于T1的話,則判定此點(diǎn)為邊緣點(diǎn),如果沒有,則不是。
圖1是三種算子的邊緣檢測(cè)結(jié)果。經(jīng)過分析,三種算子都能檢測(cè)出圖像邊緣,然而Canny算子檢測(cè)出的邊緣線清晰且斷點(diǎn)較少,因此本文采取Canny算子來檢測(cè)邊緣。
1.4 Hough直線檢測(cè)和區(qū)域分割
Hough變換的基本思想是將圖像映射到參數(shù)空間,這樣一來,可以將圖像空間中對(duì)線的檢測(cè)轉(zhuǎn)換為在參數(shù)空間中對(duì)點(diǎn)的檢測(cè)[7]。將檢測(cè)到的白色像素點(diǎn)轉(zhuǎn)換到極坐標(biāo)空間中,坐標(biāo)方程:[ρ=xcosθ+ysinθ],在極坐標(biāo)空間中,對(duì)[ρ,θ]進(jìn)行投票疊加,即[Hρ,θ=Hρ,θ+1],找到[Hρ,θ]的局部最大值,并對(duì)其進(jìn)行標(biāo)注。圖2是圖像空間和參數(shù)空間的映射關(guān)系。
本文對(duì)圖像中的車道線進(jìn)行檢測(cè),并用顏色鮮艷的直線標(biāo)出車道線所在位置,由于車輛行駛的范圍在兩條車道線交點(diǎn)以下,因此本文將在檢測(cè)出車道線以后,將圖像區(qū)分為道路區(qū)域和非道路區(qū)域兩個(gè)部分,通過區(qū)域分割,可以減少算法運(yùn)算量,提高運(yùn)算速度。
本文將車道線交點(diǎn)以下判定為道路區(qū)域,保留此部分,將圖像其余部分判定為非道路區(qū)域,對(duì)此部分的區(qū)域賦白進(jìn)行剔除。
車道線檢測(cè)的結(jié)果和區(qū)域分割如圖3所示。
2 前方車輛檢測(cè)
2.1 基于車輛陰影的粗定位
2.1.1陰影的檢測(cè)
在晴天時(shí),車底陰影將暗于路面其他區(qū)域,本文利用車底陰影亮度值低的條件,檢測(cè)陰影,將前車大致范圍確定下來,然后再利用車輛具有良好的對(duì)稱左右邊緣的條件,進(jìn)一步檢測(cè)出前方車輛。
本文采用二值化分割將車底陰影和路面其他區(qū)域分割出來,二值化分割是將選定的閾值(threshold)與圖像中像素點(diǎn)相比較,高于閾值的部分賦白,低于閾值的部分賦黑[8]。定義公式如公式(6)所示:
由公式(6)可看出,二值化分割主要取決于閾值(threshold)的大小,因此閾值的選取會(huì)影響陰影檢測(cè)的正確率。閾值過大,圖像中會(huì)有很多虛假陰影;閾值過小,車底陰影會(huì)被分割出去。因此,本文中采取自適應(yīng)的閾值分割。根據(jù)實(shí)驗(yàn)要求,本文將圖像分成目標(biāo)和非目標(biāo)兩個(gè)部分。目標(biāo)和非目標(biāo)之間方差越大,說明圖像中的這兩個(gè)部分相差越大[7]。因此,使目標(biāo)和非目標(biāo)之間方差相差最大的分割意味著能使出錯(cuò)概率控制到最小。對(duì)于圖像I(i,j),目標(biāo)和非目標(biāo)的分割閾值記作t,將目標(biāo)的像素點(diǎn)數(shù)占圖像的比例記為x0,平均灰度記為y0;非目標(biāo)像素點(diǎn)數(shù)占圖像的比例為x1,平均灰度為y1。圖像的總平均灰度記為y,類間方差記為g。假設(shè)圖像的大小為M×N,圖像中像素的灰度值小于閾值t的像素個(gè)數(shù)記作T1,像素灰度大于閾值T的像素個(gè)數(shù)記作T2[9],則有:
采用遍歷的方法得到方差最大的閾值t,即為所求。
2.1.2 陰影長(zhǎng)度計(jì)算
由于本文是利用車底陰影對(duì)車輛進(jìn)行粗定位,因此車底陰影長(zhǎng)度將直接決定車輛定位的準(zhǔn)確性。在理想情況下,車底陰影是一條水平的直線,但是由于光照、拍攝角度和路面不平導(dǎo)致的誤差,陰影邊緣線一般情況下將存在像素點(diǎn)的誤差[10]。因此,為了獲取正確的陰影長(zhǎng)度,本文將對(duì)車底陰影進(jìn)行修正。假設(shè)最右且最上點(diǎn)為起始點(diǎn)和終點(diǎn),從右到左,從上到下依次檢測(cè)邊緣線,如果檢測(cè)到白點(diǎn),則重新假設(shè)起始點(diǎn),否則繼續(xù)檢測(cè)。如果檢測(cè)結(jié)果邊緣線未斷,則假設(shè)這條邊緣線為車底陰影,邊緣線的長(zhǎng)度即陰影的長(zhǎng)度。因?yàn)楣庹盏脑颍嚨钻幱皶?huì)存在左右的偏移,所以本文將在檢測(cè)到的長(zhǎng)度基礎(chǔ)上,在邊緣線左右各加三個(gè)像素的寬度,形成粗定位的一條邊長(zhǎng),然后根據(jù)這條邊長(zhǎng),向上截取一個(gè)正方形的區(qū)域,形成車輛的粗定位。
2.1.3 車輛存在判定
在現(xiàn)實(shí)道路中,道路存在路面損壞,污漬或者道路兩旁樹木建筑形成的陰影,這些陰影中有部分陰影灰度與車底陰影相近,因此使用上節(jié)檢測(cè)方法容易將干擾陰影判定為車底陰影,從而影響算法的準(zhǔn)確度和運(yùn)算效率,因此本節(jié)將對(duì)檢測(cè)到的陰影進(jìn)行判定,保留車底陰影,去除干擾陰影。
根據(jù)攝像機(jī)的透視投影原則,前方車輛與本車的距離的遠(yuǎn)近影響車底陰影在圖像中大小。距離越遠(yuǎn),陰影越窄。本節(jié)將根據(jù)陰影寬度公式來判定車底陰影,公式如公式(7)所示:
其中,X代表陰影在圖像中的寬度,Y代表陰影在圖像中的縱坐標(biāo),L代表陰影在實(shí)際道路中的寬度,H代表攝像機(jī)高度,本文中攝像機(jī)高度固定,為1.2米,[Sx]為圖像中水平像素點(diǎn),[Sy]為圖像中豎直像素點(diǎn)。
中國(guó)高速公路車道標(biāo)準(zhǔn)寬度為3米,因此實(shí)際道路中的陰影寬度范圍在1.5米到6米之間,因此公式(7)可以改寫為公式(8)所示:
符合公式(8)的陰影即可判定為車底陰影,否則判定為干擾陰影。
2.2 基于左右邊緣的進(jìn)一步定位
車底陰影中可能包含其他干擾陰影,所以上節(jié)對(duì)車輛的定位僅是粗定位,缺乏準(zhǔn)確性,因此為了準(zhǔn)確檢測(cè)出圖像中車輛所在的位置,文章將針對(duì)車輛的左右邊緣特征和車輪特征,對(duì)車輛進(jìn)行進(jìn)一步精確定位。
因?yàn)檐囕v左右邊緣始終垂直于路面水平方向,所以本文利用車輛良好的垂直性,找到車輛的左右邊界,對(duì)車輛有進(jìn)一步的定位。
(1)對(duì)粗定位中的車輛進(jìn)行Canny邊緣檢測(cè)。
(2)對(duì)車輛邊緣進(jìn)行豎直方向的求和,求和公式如公式(9)所示:[g(x)=y=1mf(x-1,y)+y=1mf(x,y)+y=1mf(x+1,y)] (9)
其中,g(x)代表x處的豎直方向求和,m代表豎直方向像素點(diǎn)總數(shù)。
(3)計(jì)算g(x)的極大值點(diǎn),將g(x)中最大兩個(gè)點(diǎn)所在的位置作為邊緣處。
(4)以兩個(gè)邊緣處的長(zhǎng)度作為底邊,截取一個(gè)正方形的定位,形成進(jìn)一步的精確定位。
2.3 基于車輪灰度特征的精確定位
由于車輛的左右車輪具有很好的對(duì)稱性,且其灰度低于路面灰度,并且不受光照等影響,因此本文在先驗(yàn)統(tǒng)計(jì)的基礎(chǔ)上,將檢驗(yàn)車輛車輪灰度,對(duì)車輛區(qū)域進(jìn)一步定位,如圖4。
(1)比較[W1]和[W2]的平均灰度值大小,如果兩者相差過大,則判定非目標(biāo),對(duì)其進(jìn)行剔除;如果兩者相差不大,則對(duì)其進(jìn)行保留,進(jìn)行下一步驗(yàn)證。
(2)將[W1]和[W2]的值分別與[s1]、[s2]和[s3]進(jìn)行比較,如果[W1]和[W2]的值至少小于其中兩個(gè),則判定該位置為車輛所在位置,否則判定為偽目標(biāo),對(duì)其進(jìn)行剔除[8]。
至此,本文在陰影粗定位的基礎(chǔ)上,對(duì)車輛左右邊緣和車輪灰度進(jìn)行分析,進(jìn)一步確定了車輛所在位置,提高了檢測(cè)的準(zhǔn)確性。
3 前車檢測(cè)試驗(yàn)
為了驗(yàn)證本文算法的準(zhǔn)確性,本文在VS2013和開源計(jì)算機(jī)視覺庫(kù)OPENCV上運(yùn)行此算法,并分別在晴天和陰天情況下進(jìn)行檢測(cè),本文將對(duì)近距離的車輛和遠(yuǎn)距離的車輛分別進(jìn)行檢測(cè)。檢測(cè)結(jié)果如表1所示。圖(a)是陰天情況下的近距檢測(cè),距離在20米到30米之間,從圖(a)中可以看出,成功檢測(cè)出了兩輛車。圖(b)是陰天情況下的遠(yuǎn)距檢測(cè),距離在80米到120米之間,雖然比較模糊,但是利用本文的算法,還是成功的檢測(cè)了出來。
因此可以得出本文算法能夠檢測(cè)出陰天下距離在20米到120米之間的車輛。圖(c)和圖(d)是陽(yáng)光較充足情況下的近距和遠(yuǎn)距檢測(cè),圖(c)可以看出準(zhǔn)確的檢測(cè)出了前方4輛車,距離在20到60米之間。圖(d)中遠(yuǎn)距的兩輛距離在100米之間的車輛也成功的檢測(cè)了出來。
由此可以得出,本文算法能夠有效地檢測(cè)出不同天氣下的近距和遠(yuǎn)距車輛,具有一定的準(zhǔn)確性。
經(jīng)過大量數(shù)據(jù)表明,本文算法可以有效地檢測(cè)出前方車輛,正確率能夠達(dá)到95%,其中,晴天情況下正確率高于陰天情況下的檢測(cè)。同一天氣下,近距檢測(cè)正確率高于遠(yuǎn)距檢測(cè)正確率。錯(cuò)檢和漏檢的主要原因是陰天情況下,車底陰影不明顯導(dǎo)致錯(cuò)檢以及提取感興趣區(qū)域時(shí),區(qū)域分割過多,導(dǎo)致遠(yuǎn)距車輛漏檢。
4 結(jié)束語(yǔ)
本文提出了一種基于車道線和多特征的前車檢測(cè)。利用Hough變換檢測(cè)車道線,分割出前車行駛區(qū)域,減小算法運(yùn)算量。通過自適應(yīng)的閾值提取出車底陰影,再利用均值和方差來約束,排除陰影中其他路面干擾因素。最后對(duì)車輛進(jìn)行邊緣對(duì)稱性和車輪灰度的驗(yàn)證,進(jìn)一步確定車輛所在位置。此方法簡(jiǎn)單迅速,能夠有效檢測(cè)前方車輛,具有較高的準(zhǔn)確性。
參考文獻(xiàn):
[1] 林廣宇,魏朗.嵌入式汽車縱向碰撞預(yù)警系統(tǒng)研究[J].現(xiàn)代電子術(shù),2010(11):175-178.
[2] 麥新晨,基于多傳感器融合的車輛檢測(cè)與跟蹤[D].上海,上海交通大學(xué),2011.
[3] 胡銦,基于單目視覺的運(yùn)動(dòng)目標(biāo)檢測(cè)與跟蹤算法[D],南京,南京理工大學(xué),2008.
[4] 張建明,張玲增,劉志強(qiáng).一種結(jié)合多特征的前方車輛檢測(cè)與跟蹤方法[J].計(jì)算機(jī)工程與應(yīng)用,2011(5):220-223.
[5] 張全法,楊海彬,任朝棟等.彩色圖像的快速高保真灰度化方法研究[J].鄭州大學(xué)學(xué)報(bào):理學(xué)版,2011(3):66-69.
[6] 賀桂嬌.幾種經(jīng)典的圖像邊緣檢測(cè)算子分析比較[J].計(jì)算機(jī)光盤軟件與應(yīng)用,2014(9):182-183.
[7] 劉春閣.基于Hough變換的直線提取與匹配[D].遼寧:遼寧工程技術(shù)大學(xué),2009.
[8] 毛世榕.基于機(jī)器視覺的前方車輛檢測(cè)技術(shù)的研究[D].廣西:廣西大學(xué),2011.
[9] 吳曉陽(yáng).基于OpenCV的運(yùn)動(dòng)目標(biāo)檢測(cè)與跟蹤[D].浙江:浙江大學(xué).2008.
[10] 譚琦.融合多特征的前方車輛檢測(cè)技術(shù)研究及DSP實(shí)現(xiàn)[D].天津:天津工業(yè)大學(xué),2012.