王 杰 陳黎卿 黃莉莉 馬曉晴 王敏敏 韋 溟
(安徽農(nóng)業(yè)大學(xué)工學(xué)院 合肥 230036)
汽車(chē)領(lǐng)域正處于一個(gè)飛速發(fā)展的時(shí)期,作為現(xiàn)代社會(huì)的主要交通工具,正朝著舒適化、智能化和自動(dòng)化的方向發(fā)展。但隨之也帶來(lái)了越來(lái)越多的安全問(wèn)題[1]。汽車(chē)輔助駕駛系統(tǒng)的設(shè)計(jì)可以在車(chē)輛偏離正常行駛車(chē)道時(shí)提醒駕駛員,減少事故的發(fā)生。而車(chē)道線的準(zhǔn)確識(shí)別則是實(shí)現(xiàn)這一技術(shù)的關(guān)鍵。目前,該領(lǐng)域內(nèi)的研究人員已經(jīng)提出了很多基于視覺(jué)的車(chē)道線識(shí)別方法。早期的算法主要利用車(chē)道線明顯的灰度值特征將車(chē)道與路面進(jìn)行分割?,F(xiàn)今主流算法是通過(guò)Hough變換識(shí)別圖像中最符合車(chē)道線特征的直線,從而進(jìn)行標(biāo)定[2]。然而這些路徑識(shí)別方法多是對(duì)理想光照條件下的圖像進(jìn)行處理,再提取路徑車(chē)道線特征,忽略了弱光環(huán)境下因路徑車(chē)道線與周?chē)h(huán)境物體特征區(qū)分不明顯可能導(dǎo)致的誤識(shí)別等問(wèn)題。Li[3]等提出的基于動(dòng)態(tài)圖像閾值的智能車(chē)輛路徑導(dǎo)航方法,能夠在多種光照條件下識(shí)別路徑,但此種方法主要針對(duì)于強(qiáng)光照環(huán)境下的路徑識(shí)別,在弱光環(huán)境下的識(shí)別效果仍不理想。
為解決弱光環(huán)境下路徑車(chē)道線難以識(shí)別的問(wèn)題,本文提出了基于Retinex的弱光條件下車(chē)道線識(shí)別方法。首先,對(duì)采集到的RGB圖像進(jìn)行圖像增強(qiáng),獲取類似光照條件較理想情況下的RGB圖像,再對(duì)其進(jìn)行預(yù)處理獲取車(chē)道線特征,從而識(shí)別圖像中的車(chē)道線。
利用本文算法流程對(duì)弱光環(huán)境下的車(chē)道線圖像進(jìn)行增強(qiáng)和預(yù)處理,算法的整體流程如圖1所示。算法處理過(guò)程為首先對(duì)弱光環(huán)境下的車(chē)道線RGB圖像進(jìn)行增強(qiáng),突出圖像中的車(chē)道線;然后對(duì)圖像進(jìn)行灰度化處理,以減少圖像中不必要的信息,提高圖像處理速度[4~5];接著對(duì)灰度化后的圖像進(jìn)行Otsu全局閾值分割去除背景圖像;再對(duì)去背景后的二值圖像進(jìn)行感興趣區(qū)域提取,進(jìn)一步剔除無(wú)用信息,以滿足實(shí)時(shí)性的要求;最后利用Hough變換提取圖像中的車(chē)道線并在原圖像中顯示。
圖1 車(chē)道線圖像處理流程圖
在自然條件下,天氣狀況、光照變化和周邊樹(shù)木建筑物陰影的影響,均可能致使采集到的車(chē)道圖像過(guò)于灰暗[6],使原本在圖像中像素點(diǎn)占比(即車(chē)道線面積占整幅圖像面積的比例)不高的車(chē)道線圖像與背景圖像特征區(qū)分不明顯,灰度化后灰度值接近,無(wú)法進(jìn)行有效的閾值分割,容易出現(xiàn)誤識(shí)別的情況。
基于以上分析,本文對(duì)弱光條件下的車(chē)道圖像采用基于雙邊濾波的Retinex圖像增強(qiáng)處理方法,減小弱光環(huán)境對(duì)車(chē)道線圖像的影響,使目標(biāo)圖像與背景圖像區(qū)分明顯,最終實(shí)現(xiàn)對(duì)弱光環(huán)境下車(chē)道線圖像的有效識(shí)別。
3.2.1 Retinex概述
Retinex這個(gè)詞是由Retina(視網(wǎng)膜)和Cortex(大腦皮層)兩個(gè)詞組合而成的,是一種自適應(yīng)的模擬人類視覺(jué)系統(tǒng)調(diào)節(jié)圖像顏色和亮度的圖像增強(qiáng)算,該理論將原始圖像S(x,y)假設(shè)為是光照?qǐng)D像L(x,y)和反射率圖像R(x,y)的乘積[7],如下式的形式:
式(1)中:光照?qǐng)D像L(x,y)對(duì)應(yīng)原圖中的低頻信息,反射率圖像R(x,y)對(duì)應(yīng)原圖的高頻信息,原圖中的噪聲部分基本上都在分解L圖和R圖的過(guò)程中轉(zhuǎn)移到了反射圖像R中,由于人眼的視覺(jué)模型與對(duì)數(shù)域模型更加符合,將其轉(zhuǎn)換到對(duì)數(shù)域得到:
實(shí)際應(yīng)用過(guò)程中,物體的反射分量R難以直接獲得,通常情況下先估測(cè)光照分量L,然后通過(guò)式(2)得到R,見(jiàn)式(3):
3.2.2 Retinex算法
當(dāng)前Retinex算法的類別眾多,其中使用最多的為中心環(huán)繞Retinex算法,其包括單尺度Retinex(SSR)算法和多尺度Retinex(MSR)算法,經(jīng)典的單尺度算法(SSR)可簡(jiǎn)述如下:
其中,log Si(x,y)是第i個(gè)顏色通道的輸入圖像;Ri(x,y)是第i個(gè)顏色通道的反射圖像,若為單通道圖像則i=1,*表示卷積運(yùn)算;G(x,y)為標(biāo)準(zhǔn)高斯環(huán)繞函數(shù),其表達(dá)式為
σ是控制領(lǐng)域范圍的尺度參數(shù),λ越大圖像灰度動(dòng)態(tài)范圍壓縮的越多,λ越小圖像銳化的越多,λ為歸一化常數(shù),滿足函數(shù)[8]:
雙邊濾波(Bilateral filter)是一種非線性的二維濾波方法,是結(jié)合圖像的空間鄰近度和像素值相似度的一種折衷處理,同時(shí)考慮空域信息和灰度相似性,達(dá)到較好的邊緣保存效果。雙邊濾波定義如下:
歸一化參數(shù)為
式中,f(x)和h(x)分別表示輸入和輸出圖像在中心點(diǎn)x的亮度值;c(ξ,x),s(f(ξ),f(x))分別表示臨近點(diǎn)ξ與中心點(diǎn)x之間的距離和亮度相似度[9]。
雙邊濾波擴(kuò)展到高斯核,具體為
式中,d(ξ,x)表示的歐式距離:
本文采用基于雙邊濾波的Retinex圖像增強(qiáng)算法,該方法在有效增強(qiáng)圖像的同時(shí),較好地保持了圖像的邊緣細(xì)節(jié)[10]。算法實(shí)現(xiàn)過(guò)程為:?jiǎn)纬叨萊etinex算法對(duì)車(chē)道圖像取對(duì)數(shù),對(duì)取對(duì)數(shù)后的圖像做對(duì)比度增強(qiáng)處理,提高圖像整體細(xì)節(jié)表現(xiàn),同時(shí)對(duì)取對(duì)數(shù)后的圖像采用雙邊濾波的方法估計(jì)圖像的亮度,以達(dá)到更好的控制圖像亮度的效果?;陔p邊濾波的Retinex算法工作流程如圖2所示。
圖2 改進(jìn)Retinex算法的工作原理
利用上述算法,對(duì)獲取的弱光環(huán)境下的車(chē)道線圖像進(jìn)行圖像增強(qiáng)處理,如圖2所示,本文采用上述增強(qiáng)方法與直接對(duì)比度增強(qiáng)方法的效果進(jìn)行對(duì)比,由圖2可知:對(duì)于弱光環(huán)境下的車(chē)道線圖像,直接對(duì)比度增強(qiáng)方法并不能明顯改善車(chē)道線的顯示效果,車(chē)道線圖像與背景區(qū)域區(qū)分仍不明顯,這將直接影響后面對(duì)圖像的預(yù)處理效果。
圖3 RGB圖像對(duì)比
RGB圖像含有大量信息,直接處理會(huì)消耗較多時(shí)間,因此先將原始圖像轉(zhuǎn)化為灰度圖以提高運(yùn)算速度。本文采用一個(gè)較為簡(jiǎn)便的圖像灰度化方法[11],設(shè)原圖中像素點(diǎn)顏色為RGB,處理后的像素點(diǎn)灰度值為Gray,則可對(duì)其進(jìn)行灰度化:
其中,0.299、0.587和0.144為真彩色圖轉(zhuǎn)換為灰度圖時(shí)各顏色分量的轉(zhuǎn)化系數(shù)。這樣,只需要開(kāi)辟一個(gè)跟原圖像的像素區(qū)一樣大小的空間,將對(duì)應(yīng)像素的RGB值設(shè)置為上式的Gray值即可。如圖4所示,本文算法增強(qiáng)后的RGB圖像灰度化圖中車(chē)道線與背景圖像的區(qū)別更大,干擾區(qū)域更小。
圖4 增強(qiáng)后的RGB圖像灰度化
本文采用OTSU算法將圖像分割成兩部分。OTSU算法是一種全局化的動(dòng)態(tài)二值化方法,又叫最大類間方差法,該方法是在灰度直方圖的基礎(chǔ)上采用最小二乘法原理推導(dǎo)出來(lái)的,具有統(tǒng)計(jì)意義上的最佳分割。該算法的基本原理[12]如下:
設(shè)f(x,y)為圖像IM×N的位置(x,y)處的灰度值,灰度級(jí)為L(zhǎng),則f(x,y)∈[ ]0,L-1。若灰度級(jí)i的所有像素個(gè)數(shù)為fi,則第i級(jí)灰度出現(xiàn)的概率為
其中i=0,1,…,L-1,并且L∑i=-01p(i)=1。
將圖像中的像素按灰度級(jí)用閾值t劃分為兩類,即背景C0和目標(biāo)C1。背景C0的灰度級(jí)為0~t-1,目標(biāo)C1的灰度級(jí)為t~L-1。背景C0、目標(biāo)C1對(duì)應(yīng)的像素分別為{ f(x,y)<t} 和{ f(x,y)≥t}。
則圖像中背景和目標(biāo)的類間方差為
其中,ω0、ω1分別為背景C0和目標(biāo)C1出現(xiàn)的概率,μ0、μ1分別為背景C0和目標(biāo)C1的平均灰度值,μ為圖像的總平均灰度值。令k的取值從0~L-1變化,計(jì)算不同的k值下的類間方差δ2(k),使得δ2(k)最大時(shí)的那個(gè)k值就是所要求的最優(yōu)閾值。二值化后車(chē)道線圖像特征明顯,易于邊緣檢測(cè),如圖5所示。
圖5 二值圖像
車(chē)道線的監(jiān)測(cè)算法中一般對(duì)實(shí)時(shí)性有較高的要求,合理地提取圖像中的感興趣區(qū)域,可以在一定程度上減少圖像的處理時(shí)間,進(jìn)一步提高系統(tǒng)的實(shí)時(shí)性[13]。通過(guò)對(duì)采集到的大量車(chē)道線圖像觀察發(fā)現(xiàn),車(chē)道線圖像主要集中在原圖像中最下方的2/3區(qū)域內(nèi),上方1/3的區(qū)域主要為天空和道路兩旁的樹(shù)木等干擾背景,因此提取原始圖像中下方2/3的區(qū)域?yàn)楦信d趣區(qū)域。
圖6 提取感興趣區(qū)域
Sobel算子是利用像素的上下左右領(lǐng)域的灰度加權(quán)算法,根據(jù)在邊緣點(diǎn)達(dá)到極值的原理進(jìn)行圖像的邊緣檢測(cè)。該算子不但檢測(cè)效果較好,并且具有很好的噪聲平滑作用,同時(shí)也包含比較精確的邊緣方向信息[14]。
Sobel算子的模板如下:
對(duì)整幅圖片進(jìn)行模板運(yùn)算,從而得到每個(gè)像素點(diǎn)與橫向、縱向梯度模板算子運(yùn)算的結(jié)果Hx,Hy設(shè)閾值為k,當(dāng)滿足 ||Hx+ ||Hy>k時(shí),即認(rèn)為該點(diǎn)為邊緣點(diǎn)。如圖6所示為利用Sobel算子進(jìn)行的邊緣檢測(cè),可以看出Sobel算子提取的邊緣較粗,噪聲較少,有利于進(jìn)行Hough變換。
圖7 Sobel算子邊緣檢測(cè)
Hough變換的車(chē)道線檢測(cè)是應(yīng)用最為廣泛的車(chē)道線識(shí)別方法之一[15]。其基本原理在于利用點(diǎn)與線的對(duì)偶性,將原始圖像空間的給定的曲線通過(guò)曲線表達(dá)形式變?yōu)閰?shù)空間的一個(gè)點(diǎn)[16]。把原始圖像中給定曲線的檢測(cè)問(wèn)題轉(zhuǎn)化為尋找參數(shù)空間中的峰值問(wèn)題。也即把檢測(cè)整體特性轉(zhuǎn)化為檢測(cè)局部特性。
Hough變換基本公式如下:
圖8 參數(shù)空間曲線圖像
圖9 感興趣區(qū)域中的車(chē)道線提取
圖10 增強(qiáng)后RGB圖像中車(chē)道線的提取
利用本文中的算法對(duì)不同程度弱光環(huán)境下的車(chē)道線進(jìn)行提取,提取結(jié)果如下:
圖11 車(chē)道線圖像識(shí)別圖組
本文將采集到的車(chē)道線圖像按光照環(huán)境分為較弱光照,弱光照和非常弱光照三種情況,采集時(shí)間為凌晨和傍晚,采集地點(diǎn)為校園各干道,共采集90幅圖像,每情況各30張。利用本文算法對(duì)采集到的圖像進(jìn)行車(chē)道線提取,其中共有10幅圖像因建筑物陰影、天空和路面反光等原因,提取出的車(chē)道線與實(shí)際車(chē)道線相差較大,提取效果不理想,認(rèn)為提取失敗。試驗(yàn)統(tǒng)計(jì)結(jié)果如表1所示。
表1 弱光環(huán)境下車(chē)道線識(shí)別統(tǒng)計(jì)結(jié)果
根據(jù)表1的試驗(yàn)統(tǒng)計(jì)結(jié)果分析可知:利用本文的圖像增強(qiáng)處理方法,可以凸顯弱光環(huán)境下的車(chē)道線,改善因光照不足導(dǎo)致的車(chē)道線與背景區(qū)域區(qū)分不明顯的情況,減小背景區(qū)域?qū)μ崛≤?chē)道線的影響;不同光照條件下的準(zhǔn)確識(shí)別率表明本文中的方法能較好地提取弱光環(huán)境下的車(chē)道線,但仍存在一些問(wèn)題,主要原因?yàn)椋汗庹蛰^弱時(shí)對(duì)圖像增強(qiáng)過(guò)度,導(dǎo)致圖像失真嚴(yán)重,光照非常弱時(shí)對(duì)圖像增強(qiáng)不足,車(chē)道線圖像與背景區(qū)域區(qū)分不明顯,均導(dǎo)致車(chē)道線無(wú)法正確識(shí)別,以及因路面反光導(dǎo)致的圖像光照分布不均等,都會(huì)對(duì)車(chē)道線的準(zhǔn)確識(shí)別產(chǎn)生影響。
本文以取自凌晨和傍晚時(shí)的校園干道圖像為例,涉及到的所有算法均在MatlabR2015b平臺(tái)下調(diào)試通過(guò),從最終的試驗(yàn)統(tǒng)計(jì)結(jié)果中可以看出,文中實(shí)現(xiàn)的基于雙邊濾波的Retinex圖像增強(qiáng)算法,有效改善了在弱光環(huán)境下車(chē)道線圖像特征不明顯的情況,提高了圖像二值化時(shí)閾值選取的合理性和準(zhǔn)確性,從而更加精確地分割圖像,有助于最終利用Hough變換提取車(chē)道線。本文中的方法在較弱光照,弱光照和非常弱光照三種光照環(huán)境下對(duì)車(chē)道線的識(shí)別率分別為87.5%、97.5%和92.5%,具有較好的識(shí)別率,對(duì)于汽車(chē)駕駛輔助系統(tǒng)中車(chē)道線的識(shí)別領(lǐng)域具有一定的實(shí)用價(jià)值和參考意義。