王楊 王祎帆 孟俊峰 陳曉愚 孫連明
(中國第一汽車股份有限公司 智能網(wǎng)聯(lián)開發(fā)院,汽車振動噪聲與安全控制綜合技術(shù)國家重點實驗室,長春130013)
主題詞:前視攝像頭 RGB 頂帽算法 Canny算子 邊緣檢測
如今,汽車產(chǎn)業(yè)的發(fā)展正顯現(xiàn)出電動化、智能化、網(wǎng)聯(lián)化和共享化四大趨勢[1]。隨著傳感器技術(shù)、人工智能技術(shù)的快速發(fā)展,自動駕駛技術(shù)已經(jīng)成為各大車企、學(xué)校、研究院等單位研究的熱點。自動駕駛汽車通過多傳感器協(xié)同作用來全方位進行環(huán)境感知,超聲波雷達、毫米波雷達和前視攝像頭傳感器都扮演著重要角色[2]。其中,前視攝像頭在結(jié)構(gòu)和功能方面與人眼最為接近,因此也成為自動駕駛技術(shù)不可或缺的元素,發(fā)揮著至關(guān)重要的作用[3]。伴隨自動駕駛的演進,前視攝像頭技術(shù)也在不斷進化[4]。目前,常用的攝像頭包括:單目前視攝像頭和雙目前視攝像頭。未來,隨自動駕駛技術(shù)的演進,前視攝像頭技術(shù)也會不斷進化,為自動駕駛提供更強大的功能。前視攝像頭通常安裝在前風(fēng)擋玻璃后面,通過前視攝像頭即可獲取前方車輛、會車車輛、前方行人、交通標志、車道線等多種交通目標信息。前視攝像頭系統(tǒng)使用專用圖像處理芯片,對車輛前方圖像進行識別和處理。該系統(tǒng)可以識別車輛前方的目標并計算相關(guān)信息,以實現(xiàn)多種主動安全以及舒適功能,使車輛駕駛更加安全舒適。前視攝像頭進行前方目標識別流程圖如圖1所示。
圖1 前視攝像頭目標識別流程
在前視攝像頭目標識別中,圖像的邊緣信息是前方目標最基本的特征之一,攜帶著一幅圖像的大量信息[5]。圖像的背景與目標圖像的邊界叫做圖像邊緣[6],圖像邊緣檢測一是為了產(chǎn)生更適合人眼觀察的目標識別圖像;二是為了通過攝像頭的處理器自動識別前方目標。因此對于自動駕駛汽車來說,研究前視攝像頭圖像邊緣檢測問題尤為重要。圖像邊緣檢測具體的流程如圖2所示。
圖2 圖像邊緣檢測流程
通常在前視攝像頭圖像采集過程中,由于受到攝像頭本身電子元器,電子線路的影響,會使采集的圖片帶有噪聲,影響檢測與識別的結(jié)果。另外,在各種各樣的道路場景中,由于環(huán)境光照條件多變因素,會導(dǎo)致前方目標的光照不均勻,影響前視攝像頭的識別效果和應(yīng)用價值,嚴重時還可能引發(fā)交通事故。因此對光照不均勻圖像的預(yù)處理,降低光照對圖像的影響,逐漸成為圖像邊緣檢測領(lǐng)域的一個研究熱點,也是在視覺輔助駕駛技術(shù)中不可忽視的痛點。
本文針對圖片噪聲及光照不均勻問題,提出基于Top-Hat-Canny多重邊緣檢測方法,改善圖像質(zhì)量,削弱光線不均勻問題對識別帶來的影響。將Top-Hat和Canny算子相結(jié)合,建立Top-Hat-Canny多重邊緣檢測模型。采用小波閾值算法分別對彩色圖像三個空間進行濾波,對濾波后的三個分量進行重組生成新的R、G、B分量,較大程度地保留了原始圖像信息,同時達到了噪聲濾除的效果。然后,經(jīng)加權(quán)平均法對R、G、B分量灰度化處理,降低圖像維數(shù)。最后,采用Top-Hat-Canny多重邊緣檢測方法對圖像進行邊緣提取。實驗結(jié)果表明:該方法可以有效地提對道路上的行人、前方車輛及障礙物的邊緣檢測精度邊緣檢測。
大量學(xué)者將小波變換(Wavelet Transform,WT)引入到信號分析中,尤其是在圖像處理、模式識別等領(lǐng)域,小波變換已經(jīng)成為了重要工具。
小波應(yīng)滿足以下不等式[7]:
其中 ψ(ω )為小波母函數(shù),只有符合式子(1)的約束條件,同時是與時間相關(guān)的單值函數(shù)才可稱之為小波。
設(shè)信號如下[8]:
公式(2)中,f(k)表示含噪的信號;s(k)表示原始信號;n(k)表示高斯白噪聲,并且服從N(0 , δ2)分布。因為小波變換為線性變換,故對信號f(k)=s(k)+n(k)作小波變換會得到由兩部分組成的小波系數(shù)Wj,k。其中真實信號s(k)對應(yīng)小波系數(shù)為Uj,k,噪聲信號n(k)對應(yīng)小波系數(shù)為Vj,k。
Donoho提出小波變換可以在小波定義域內(nèi)將能量集中在某些較大的小波系數(shù)上,同時使噪聲布滿整個小波域[9]。這樣通過小波處理后的小波系數(shù)的幅值會大于噪聲的幅值。尋找一個適當(dāng)?shù)臄?shù)λ作為閾值,當(dāng)Wj,k>λ時,Wj,k由噪聲引起;Wj,k>λ時,Wj,k由信號引起。這樣就可與通過設(shè)定閾值的方法對信號進行去噪。小波閾值法又分為軟閾值和硬閾值,這兩種閾值函數(shù)如下所示[10]。
軟閾值:
本文采用小波軟閾值方法對圖像進行濾波去噪。
采用硬閾值法,圖像信號通常會產(chǎn)生附加震蕩,產(chǎn)生跳躍點,不具有原圖像的平滑性;采用軟閾值法得到的小波系數(shù)整體連續(xù)性較好,也不會引起圖像產(chǎn)生震蕩。本文針對前視攝像頭拍攝的圖片特性,采用小波軟閾值去噪方法對RGB彩色圖片的3個空間分量分別進行濾波去噪。具體圖像去噪過程如下:
(1)將原始圖像G分成y、u、v3個空間分量,表示為 Gy、Gu、Gv。
(2)對Gy、Gu、Gv的3個分量進行小波軟閾值濾波去噪,得到新的分量Gy、Gu、Gv。
(3)將新的3個空間分量Gy、Gu、Gv重組,構(gòu)成新的去噪后圖像G′。
頂帽變換(Top-Hat)是原始圖像與其開運算和閉運算之間的一種差值運算。為了提取出新的目標,選取合適的結(jié)構(gòu)元素進行灰度開運算,具體方法有以下2種:
(1)讓圖像中只保留對圖像背景的估計;
(2)將小于結(jié)構(gòu)元素的噪聲消除,從原圖中減去對背景的估計,提取出目標。
頂帽變換定義如下[11]:
其中,f是縮小后的灰度圖;b是頂帽變換中的模板,b越大對計算時間影響就越大,通常b選取的面積比目標的面積略大即可。
Top-Hat分為白頂帽變換和黑頂帽變換[12]。白頂帽變換為圖像f減去其開運算結(jié)果的差值,即[11]:
其中,γ(f)為圖像f的開運算,對f進行開運算,可以通過像元在某一窗口中先腐蝕后生長來獲得。圖像f的白頂帽運算后的值大于0或等于0[13]。
黑頂帽變換是圖像閉運算減去圖像f的差值,即[13]
其中,δ(f)為閉運算,其與開運算正好相反,是像元在某窗口內(nèi)先生長后侵蝕運算得到的。黑頂帽變換后的值也總是大于0或等于0的[14]。
Canny邊緣檢測方法需要在各種視覺目標中,提取出其中對實驗有用的結(jié)構(gòu)信息,極大減少了目標的數(shù)據(jù)量,目前該方法已普及到各種計算機視覺中。驗證邊緣檢測效果好與壞的標準有[15]:
(1)是否按低錯誤率進行邊緣檢測;
(2)實際檢測到的邊緣應(yīng)精準定位在真實邊緣的中心處;
(3)圖像不會受到噪聲影響產(chǎn)生假的邊緣,且圖像中給定的邊緣只可被標記一次。
相關(guān)計算指標如下[16]。
(1)信噪比準則:
圖像信噪比SNR越大,表明所提取的邊緣質(zhì)量越好,具體計算公示如下[16]:
式中,G(x)代表邊緣函數(shù);σ為高斯噪聲均方差;h(x)代表寬度為W的濾波脈沖響應(yīng)。
(2)定位精度準則:
邊緣定位精度L定義如下[16]:
其中,G′(x) 和 h′(x)代表G(x)和h(x)的導(dǎo)數(shù);L越小定位精度越差,L越大定位精度越高。
(3)單邊緣響應(yīng)準則:
為了保證單邊緣只有一個準確響應(yīng),檢測算子脈沖響應(yīng)導(dǎo)數(shù)零交叉點的平均距離應(yīng)為[16]:
在各種邊緣檢測方法中,Canny邊緣檢測算法是一種檢測效果良好且可靠的方法。它能滿足上文提到的3個標準,且檢測過程也較為簡單,已成為最流行的邊緣檢測算法之一。
Canny算法由以下5個步驟實現(xiàn)[17]:
(1)使用Gauss濾波器平滑圖像,降低由噪聲引起的錯誤檢測概率,具體公式如下[17]:
(2)計算圖像中像素點的方向及梯度強度。通常,使用Canny算子的圖像邊緣可以指向任意方向。把x軸上的信息記作Gx,y軸記作Gy,則每個像素點方向和梯度G公式如下[17]:
(3)用非極大值抑制來消除邊緣檢測帶來的雜散響應(yīng)。非極大值抑制是一種邊緣稀疏方法,作用在于“瘦”邊緣。上文中標準3提到的對邊緣有且應(yīng)當(dāng)只有一個準確的響應(yīng),而非極大值抑制可以將除局部最大值以外的梯度值抑制為0。
(4)用雙閾值方法對真實和潛在的邊緣進行判定。
(5)最終的邊緣檢測是通過抑制孤立的弱邊緣來實現(xiàn)的。因為強邊緣的像素是從圖像的真實邊緣中提取的,因此可將其定義為邊緣。而弱邊緣像素既能從真實邊緣提取也可能是由噪聲或顏色變化造成的。抑制由噪聲或顏色變化引起的弱邊緣對結(jié)果的準確性有很大的影響。
由于彩色圖片信息量大,特征量和計算量成指數(shù)增加,將去噪后的RGB圖像灰度化處理,降低維度,提高運算速度。
彩色圖像單個像素由(R,G,B)合成,轉(zhuǎn)換成灰度圖就是(L)。由于人眼對Blue敏感最低而對Green的敏感最高,故按公式(13)對Red、Green、Blue 3分量進行加權(quán)平均計算,得到較合理的灰度圖像[18]。經(jīng)灰度處理后的圖像僅是丟失了圖片的顏色信息,而其他的信息仍保留在圖片中。
為了克服直接使用Canny方法對具有亮度不均勻背景的目標圖像進行準確的邊緣提取的不足,提出一種Top-Hat-Canny圖像邊緣檢方法。Canny在有噪聲的情況下表現(xiàn)好壞,取決于前面的降噪過程,這也是為什么在做邊緣檢測之前進行單獨的圖像降噪的原因,流程如圖3所示。
具體過程如下:
(1)將原始圖像G分成y、u、v3個空間分量,表示為 Gy、Gu、Gv。
(2)對Gy、Gu、Gv3個分量進行小波軟閾值濾波去噪,得到3個新的空間分量
(4)對灰度圖像g(i,j)做頂帽變換得到WTH(g)。
(5)再對WTH(g)圖像做Canny邊緣提取,最終得到邊緣特征。
圖3 Top-Hat-Canny邊緣檢測流程
本文的實驗數(shù)據(jù)采用Karlsruher Institut für Technologie和Toyota Research Institute聯(lián)合創(chuàng)辦的KITTI數(shù)據(jù)集,該數(shù)據(jù)集是自動駕駛場景中最大的數(shù)據(jù)集。KITTI數(shù)據(jù)集包含市區(qū)、鄉(xiāng)村和高速公路等各種場景的真實圖像數(shù)據(jù),常用于識別檢測圖像、光流和視覺測距等[19]。
以KITTI數(shù)據(jù)集內(nèi)市區(qū)車輛為例,為了使去噪效果更明顯的體現(xiàn)在圖片上,先在原始圖4(a)上添加椒鹽噪聲,得到加噪后圖像如圖4(b)所示。之后將原始RGB圖像分成R、G、B 3個空間分量,分別對3個分量進行小波軟閾值去噪處理,得到濾波去噪后圖像。
實驗結(jié)果如圖4(d)所示。從圖中可以明顯看出,基于WT的RBG圖像空間濾波去噪方法可以有效的濾除噪聲同時保留原始圖像信息。將基于WT的RBG圖像空間濾波去噪方法與直接將原始圖像通過小波閾值去噪的方法進行對比實驗。從圖4(c)和圖4(d)的對比中可以明顯看出,先分解再濾波的去噪效果要明顯優(yōu)于直接對原始圖像去噪的效果。
圖4WT空間濾波去噪圖像
分別從KITTI數(shù)據(jù)庫中隨機選擇2幅圖像進行仿真實驗,分別對加入椒鹽噪聲和高斯噪聲的圖像進行濾波去噪仿真實驗。計算圖像的信噪比(SNR)和峰值信噪比(PSNR)來評價去噪效果,實驗結(jié)果見表1和表2。PSNR值越大,代表失真越少;SNR值越大,表示圖像質(zhì)量越高。從表1和表2中可以看出,本文的算法明顯優(yōu)于直接對圖像進行小波去噪的方法。
表1 PSNR評估表
表2 SNR評估表
原圖像去噪后將圖像進行灰度化處理,得到的灰度圖像如圖5所示?;叶忍幚碇皇菍D像彩色信息去掉,但是圖像的其他信息仍被保留。
從原始圖像圖4(a)中可以明顯看出,圖像右側(cè)部分光線很亮對該圖像內(nèi)的車輛目標有一定的影響,本文采用基于Top-Hat-Canny多重邊緣檢測方法,對灰度化后的圖像進行Top-Hat處理,削弱光線對目標的影響,結(jié)果如圖6所示。這里可以看到Top-Hat處理后的圖像刪除了大部分非均勻背景,最后閾值處理后,車輛目標被分割出來,雖然有少量殘缺,但是影響不大。
圖5圖像灰度化處理
圖6 Top-Hat去除光照影響
經(jīng)Top-Hat處理后,對圖像進行Canny邊緣檢測,加強圖像邊緣信息,實驗結(jié)果如圖7所示。從圖中可以直觀的看出,采用Top-Hat-Canny聯(lián)合邊緣檢測后,目標的邊緣信息更加的清晰、連續(xù),并且保留下的背景信息也相對更少。
圖7 Top-Hat-Canny提取邊緣信息
在圖像邊緣檢測中,定位精度越小,表明邊緣檢測的定位精度越好,圖像的連續(xù)性強,邊緣的斷裂較少;單邊緣響應(yīng)值越大,表明邊緣檢測方法的效果越差。將傳統(tǒng)的Canny算法分別與Sobel算法、自適應(yīng)Canny算法以及本文提出的Top-Hat-Canny算法進行對比實驗,結(jié)果如表3所示。從表3中可以看出傳統(tǒng)的Canny算法定位精度和單邊緣響應(yīng)都要優(yōu)于傳統(tǒng)的Sobel算法,而改進的自適應(yīng)Canny算法的邊緣檢測結(jié)果要優(yōu)于前兩種算法。將本文提出的Top-Hat-Canny算法與其他3種算法進行對比分析,定位精度及單邊緣響應(yīng)都要優(yōu)于以上3種算法,邊緣檢測效果更好。本文提出的Top-Hat-Canny算法不僅解決了光線不均的問題,同時還提高了圖像邊緣檢測的效果。
表3 邊緣圖像的評價指標
本文提出一種基于Top-Hat-Canny的汽車前視攝像頭圖像邊緣檢測方法。實驗證明:該方法可以高效率、高精度的對道路上的行人、車輛等目標進行邊緣檢測,提取邊緣特征,為后續(xù)前視攝像頭前方目標識別做充足的預(yù)處理工作,這對于自動駕駛技術(shù)的發(fā)展具有重要的意義。