泊車(chē)輔助系統中的車(chē)位線(xiàn)自動(dòng)檢測與識別
摘要 針對目前泊車(chē)輔助系統中的車(chē)位線(xiàn)識別問(wèn)題,建立了基于360°全景鳥(niǎo)瞰圖像的全自動(dòng)車(chē)位線(xiàn)檢測與識別模型,考慮到光照對圖像處理結果的影響,先對圖像進(jìn)行了預處理,然后采用一種基于中值的自適應Canny邊緣檢測技術(shù),并通過(guò)Hough變換,再根據車(chē)位線(xiàn)特征的先驗知識對Hough變換結果進(jìn)行限制和優(yōu)化,實(shí)現了車(chē)位線(xiàn)的識別。同時(shí)對實(shí)際采集到的圖像進(jìn)行驗證,結果識別率達到94.2%,證明了該方法的有效性和魯棒性。
本文引用地址:http://dyxdggzs.com/article/201809/388393.htm關(guān)鍵詞 泊車(chē)輔助;車(chē)位線(xiàn)識別;自適應Canny;Hough變換
近年來(lái)隨著(zhù)對泊車(chē)輔助系統需求的快速增長(cháng),提出了多種車(chē)位定位的方法,這些方法大致可分為4類(lèi):基于用戶(hù)界面的、基于設施的、基于空閑位的和基于車(chē)位線(xiàn)的方法。與其他方法相比,基于車(chē)位線(xiàn)的方法有以下優(yōu)勢:(1)可以與基于用戶(hù)界面的方法結合使用來(lái)減少由于司機重復操作帶來(lái)的不便,而這是基于用戶(hù)界面方法的主要缺陷。(2)不同于基于空閑位的方法,它能更準確地定位停車(chē)位,因為其定位過(guò)程不依賴(lài)于相鄰汽車(chē)的停放姿勢而僅依賴(lài)于車(chē)位線(xiàn)。(3)它也可以有效地應用于傾斜車(chē)位的情況。由于傳感器的局限性,運用超聲波傳感器基于空閑位的方法在傾斜車(chē)位的情況下會(huì )失效。(4)與應用雙目或者運動(dòng)聲波的基于空閑位的方法相比,它通?;ㄙM少量時(shí)間。(5)它不需要額外的傳感器,例如立體攝像頭、掃描激光雷達或者短波雷達,而是運用后視攝像頭。
基于車(chē)位線(xiàn)的方法可以分為半自動(dòng)和全自動(dòng)的方法。與全自動(dòng)的方法相比,半自動(dòng)的方法可能產(chǎn)生更可靠的結果,而且花費更少的計算資源,因為它有來(lái)自人的額外信息。Jung等人提出了一種方法,這種方法需要司機在預停車(chē)位內標記一個(gè)點(diǎn),然后利用方向梯度來(lái)進(jìn)行識別。實(shí)驗驗證這種方法只適用一種類(lèi)型的車(chē)位。為克服此缺陷,提出了另外一種方法,可以識別各種類(lèi)型的車(chē)位,但需要用戶(hù)更多的配合。這種方法需要用戶(hù)輸入車(chē)位兩端點(diǎn)的初始位置,構成了車(chē)位的入口?;谶@些初始位置,采用人工神經(jīng)網(wǎng)絡(luò )和遺傳算法進(jìn)行車(chē)位的識別。
另外,全自動(dòng)的方法也得到了發(fā)展。XU等人提出了一種基于顏色分割技術(shù)的的方法識別車(chē)位線(xiàn),這種方法只能識別紅色車(chē)位線(xiàn),而且基于顏色信息的方法已經(jīng)被證明對光照變化是敏感的。Tanaka等人提出了一種對邊緣片段運用RANSAC檢測一組直線(xiàn)來(lái)識別車(chē)位線(xiàn)。由于這種方法高度依賴(lài)于直線(xiàn)檢測,其性能會(huì )因為部分污損而下降。Jung等人提出的方法將各種類(lèi)型的車(chē)位線(xiàn)模型化為一種分層樹(shù)結構,基于這種結構完成自動(dòng)識別。
但是,以上提出的方法都涉及到閾值,所以都會(huì )存在圖像處理領(lǐng)域一個(gè)普遍的問(wèn)題,即閾值設置過(guò)高,重要信息就可能被遺漏;閾值設置過(guò)低,干擾信息又會(huì )被看的重要,因此一個(gè)適用于所有圖像的普適閾值難以給出,所以針對以上問(wèn)題,本文采用了自適應的思想,包括自適應直方圖均衡化、自適應二值化、自適應Canny邊緣檢測,以滿(mǎn)足應用的需要,實(shí)驗證明這些算法都是有效的。
本文提出的方法可分為以下幾個(gè)過(guò)程:對汽車(chē)前、后、左、右4個(gè)攝像頭采集到的圖像進(jìn)行重建形成全景圖像;圖像預處理,包括直方圖均衡化,二值化以及形態(tài)學(xué)處理;Canny邊緣檢測以及Hough變換,然后在參數空間中利用車(chē)位線(xiàn)特征的先驗信息對結果進(jìn)行優(yōu)化,最終得出識別結果。具體算法流程如圖1所示。

1 圖像預處理
通過(guò)加裝在汽車(chē)車(chē)身前、后、左、右的4個(gè)魚(yú)眼攝像頭,同時(shí)采集車(chē)輛四周的影像,經(jīng)過(guò)魚(yú)眼圖像矯正,鳥(niǎo)瞰變換和拼接后,形成一幅車(chē)輛4周的360°全景俯視圖,如圖2所示。

由此得到的原圖像不可避免地會(huì )受到光照、噪聲等的影響,因為前期處理的質(zhì)量直接影響到后期識別的效果,所以為消除圖像中無(wú)關(guān)的信息,恢復有用的真實(shí)信息,增強有關(guān)信息的可檢測性和最大限度地簡(jiǎn)化數據,從而改進(jìn)特征抽取、圖像分割、匹配和識別的可靠性,需要對圖像進(jìn)行預處理,主要分為以下幾個(gè)步驟。
1.1 自適應直方圖均衡化
首先將原彩色轉化為灰度圖像,考慮到光照影響導致灰度分布不均,需要對灰度圖像進(jìn)行直方圖均衡化。直方圖均衡化的基本思想是對原始圖像中的像素作某種映射變換,使變換后的圖像灰度概率密度是均勻分布的,即變換后圖像是一幅灰度級均勻分布的圖像,這意味著(zhù)圖像灰度的動(dòng)態(tài)范圍得到了增加,從而可提高圖像的對比度。但是傳統的直方圖均衡化中灰度變換函數運算與像素所處的位置無(wú)關(guān),這種全局性處理的算法,具有算法簡(jiǎn)單、計算速度快等優(yōu)點(diǎn),但由于其對所有像素點(diǎn)都做同樣的處理,忽略了圖像的局部特征,這就導致經(jīng)過(guò)直方圖均衡的圖像將丟失有用信息,給圖像的去噪處理及邊緣檢測帶來(lái)?yè)p失。因此本文采用對比度受限自適應直方圖均衡法(CLAHE),通過(guò)限制局部直方圖的高度來(lái)限制局部對比度的增強幅度,從而限制噪聲的放大及局部對比度的過(guò)增強。如圖3所示為分別對原灰度圖像進(jìn)行直方圖均衡化和CLAHE后的效果,可以看到CLAHE的效果明顯優(yōu)于傳統的直方圖均衡效果。

1.2 自適應二值化
對圖像進(jìn)行直方圖均衡化處理后,為便于后期處理,需要對圖像進(jìn)行分割操作,達到目標和背景分離的目的。圖像分割的關(guān)鍵是選取恰當的閾值,閾值選取的恰當與否直接影響到感興趣信息的提取。這里采用局部自適應閾值,它是根據像素鄰域塊的像素值分布來(lái)確定該像素位置上的二值化閾值。這樣做的優(yōu)點(diǎn)在于,每個(gè)像素位置處的二值化閾值不是固定不變的,而是由其周?chē)徲蛳袼氐姆植紒?lái)決定的。亮度較高圖像區域的二值化閾值通常會(huì )較高,而亮度較低的圖像區域的二值化閾值則會(huì )相適應地變小。不同亮度、對比度、紋理的局部圖像區域將會(huì )擁有相對應的局部二值化閾值。圖4顯示了采用該方法后的結果。

1.3 形態(tài)學(xué)處理
可以看到,在圖像分割完成后,不免存在著(zhù)一些二值噪點(diǎn),為此,考慮利用形態(tài)學(xué)對圖像進(jìn)行處理。對二值圖像進(jìn)行形態(tài)學(xué)處理的基本思想是運用一個(gè)預先定義好的簡(jiǎn)單結構元素去探測圖像,看這個(gè)結構元素能否填放在該圖像內部,并驗證填放結構元素方法的有效性。最基本的形態(tài)學(xué)運算是腐蝕和膨脹,二者互為對偶運算。腐蝕是將區域的內邊界點(diǎn)變?yōu)楸尘?,使邊界向內部收縮,在這個(gè)過(guò)程中,小且無(wú)意義的物體將被消除;而膨脹則是將區域的外邊界點(diǎn)變?yōu)閷ο簏c(diǎn),使邊界向外部擴張。

為利用結構元素B膨脹集合A,可將B相對原點(diǎn)旋轉180°,得到-B,再利用-B對AC進(jìn)行腐蝕,腐蝕結果的補集就是所求的結果。
對輸入圖像進(jìn)行先腐蝕后膨脹,具有平滑功能,通常用于消除小對象物、在纖細點(diǎn)處分離物體、平滑較大物體邊界的同時(shí)并不明顯改變其體積,且圖像細節得以保留。圖5是經(jīng)過(guò)先腐蝕后膨脹得到的結果,可以看到經(jīng)過(guò)形態(tài)學(xué)處理后的二值化圖像已經(jīng)濾掉了部分噪點(diǎn),便于下一步的識別處理。

2 Hough變換檢測車(chē)位線(xiàn)
2.1 基于中值的自適應Canny邊緣檢測
邊緣是圖像特征的一個(gè)重要屬性,蘊含了大量的信息,能勾勒出目標物體,因此邊緣檢測技術(shù)是圖像處理中一類(lèi)重要的分析方法。Can ny算子是最常用的邊緣檢測方法。Canny算法的步驟可歸納為:
(1)去噪。因為Canny邊緣檢測算子對于未經(jīng)處理的原始圖像中的噪聲是敏感的,所以它采用高斯模板與原始圖像作卷積,得到的結果與原始圖像相比,有輕微的模糊。這樣,單獨的一個(gè)噪聲像素在經(jīng)過(guò)高斯平滑的圖像上變得基本沒(méi)有影響。
(2)查找圖像的亮度梯度。圖像的一個(gè)邊緣可能指向不同的方向,所以Canny算法運用4個(gè)模板分別檢測去噪圖像中的垂直、水平、對角線(xiàn)邊緣。利用邊緣檢測算子(如Roberts,Prewitt,Sobel)分別計算出水平和垂直方向的一階導數Gx和Gy由此可以得到邊緣的梯度和方向

(3)跟蹤圖像邊緣,選擇滯后閾值。較大的亮度梯度更有可能被認為是邊緣,但在多種情況下,指定一個(gè)閾值來(lái)確定某個(gè)梯度是否為邊緣是不可能的,因此Canny采用了滯后閾值。
滯后閾值需要高低兩個(gè)閾值。假設圖像中的重要邊緣都是連續曲線(xiàn),這樣可以跟蹤給定曲線(xiàn)中模糊的部分,并丟掉一些雖然產(chǎn)生了大的梯度但沒(méi)有組成曲線(xiàn)的噪聲像素。所以從一個(gè)較大的閾值開(kāi)始,這將標識出那些確信的邊緣。從真正的邊緣開(kāi)始,并利用前面導出的方向信息,在圖像中跟蹤整個(gè)的邊緣。在邊緣跟蹤時(shí)采用低閾值,這樣就可以跟蹤曲線(xiàn)的模糊部分直至回到起點(diǎn)。
這個(gè)過(guò)程一旦完成,就可得到一個(gè)二值圖像,其中的每個(gè)點(diǎn)表示是否是一個(gè)邊緣點(diǎn)。
與使用一個(gè)閾值相比,Canny邊緣檢測算法使用兩個(gè)閾值使得操作更加靈活,但還是存在的普遍問(wèn)題,閾值設置過(guò)高,重要信息就可能被漏掉;閾值設置過(guò)低,干擾信息又會(huì )被看的重要。難以給出適用于所有圖像的通用閾值問(wèn)題。
采用的解決方法首先是計算圖像的中值median,然后根據以下公式為高閾值high_thresh和低閾值low_thresh賦值,調用Canny邊緣檢測算法對圖像進(jìn)行邊緣檢測。
high_thresh=0.66×median;
low_thresh=0.33×median; (4)
圖6和圖7分別顯示了經(jīng)典Canny邊緣檢測和基于中值的Canny邊緣檢測結果,其中圖6是經(jīng)過(guò)手動(dòng)調整到最佳結果產(chǎn)生的圖像,圖7是利用自動(dòng)設定閾值得到的結果,從中可以看出基于中值的Canny邊緣檢測算法可以實(shí)現自動(dòng)邊緣檢測的目的。

2.2 Hough變換
霍夫變換(Hough Transform)是一種檢測直線(xiàn)和解析曲線(xiàn)的有效方法。它把二值圖像變換到Hough參數空間,利用參數空間極值點(diǎn)的檢測來(lái)實(shí)現目標的檢測?;舴蜃儞Q不但可以用于檢測圖像中的直線(xiàn),還可以擴展到任意曲線(xiàn)的識別,多為圓和橢圓。
運用兩個(gè)坐標空間之間的變換,霍夫變換將在一個(gè)空間中具有相同形狀的曲線(xiàn)映射到另一個(gè)坐標空間的一個(gè)點(diǎn)上形成峰值,因此,霍夫變換把曲線(xiàn)的檢測問(wèn)題轉換到參數空間中對點(diǎn)的檢測問(wèn)題,通過(guò)在參數空間里進(jìn)行簡(jiǎn)單的累加統計完成檢測任務(wù)。
考慮直角坐標系中的一點(diǎn)(x0,y0),經(jīng)過(guò)該點(diǎn)直線(xiàn)的一般方程可以寫(xiě)為
ρ=x0cosθ+y0sinθ (5)
參數ρ和θ可以唯一地確定一條直線(xiàn),這在ρ-θ空間內是一條正弦曲線(xiàn)。若將x—y平面內同一條直線(xiàn)的點(diǎn)列變換到ρ-θ空間,則所以正弦曲線(xiàn)都經(jīng)過(guò)一點(diǎn)(ρ’,θ’),所以正弦曲線(xiàn)在ρ-θ空間其他各處都不相交。因此,X—Y平面內一條直線(xiàn)上的無(wú)數點(diǎn)變換到ρ—θ空間內時(shí),經(jīng)過(guò)(ρ’,θ’)的次數為無(wú)窮,經(jīng)過(guò)其他各處次數都為1。也就是說(shuō),Hough變換將X—Y平面內的一條直線(xiàn)映射到了ρ—θ空間中的一個(gè)點(diǎn)。因此,Hough變換把直線(xiàn)檢測問(wèn)題轉換到參數空間里對點(diǎn)的檢測問(wèn)題,通過(guò)在參數空間里進(jìn)行簡(jiǎn)單的累加統計完成檢測任務(wù)。
圖8為將Hough變換應用到邊緣檢測圖中得到的初始結果。

可以看到,由以上過(guò)程得到的結果存在偽車(chē)位線(xiàn),需要進(jìn)一步對結果進(jìn)行優(yōu)化。注意到,在進(jìn)行邊緣檢測后每條車(chē)位線(xiàn)都是雙邊緣的,另外,這兩個(gè)邊緣是相互平行的且具有固定的寬度和近似相等的長(cháng)度,而且它們都反應了同一條車(chē)位線(xiàn),因此為了減少計算量,可以計算一個(gè)邊緣,而非兩個(gè)邊緣,在這里取兩條邊緣線(xiàn)的平均值作為實(shí)際的車(chē)位線(xiàn)?;谝陨舷闰炋卣鲗Τ跏甲R別結果進(jìn)行條件限制及優(yōu)化,得到如圖9所示的最終識別結果。

3 實(shí)驗結果及分析
系統的硬件部分主要由魚(yú)眼攝像頭、圖像處理單元和顯示屏組成。由于車(chē)身內部空間有限,圖像處理單元無(wú)法由PC機完成,因此在本系統中,設計使用DSP來(lái)完成視頻圖像的處理。軟件部分,以Visual Studio 2008為開(kāi)發(fā)環(huán)境,并調用OpenCV庫來(lái)完成算法的實(shí)現。實(shí)驗選取了200張不同情況下的車(chē)位圖像對算法進(jìn)行了驗證,并在相同的情況下將本文的方法與傳統的Hough方法進(jìn)行了對比,實(shí)驗中采用召回率和識別率來(lái)對算法的效率進(jìn)行估計,其定義分別如下。

從實(shí)驗可以看出,本文提出的基于自適應思想的車(chē)位線(xiàn)檢測與識別方法具有較高的精確度和魯棒性。

4 結束語(yǔ)
隨著(zhù)停車(chē)難的問(wèn)題日益嚴峻,泊車(chē)輔助系統的應用越來(lái)越廣泛,本文提出了一種綜合運用自適應邊緣檢測和Hough變換等算法進(jìn)行自動(dòng)識別車(chē)位線(xiàn)的方法。通過(guò)實(shí)際采集到的圖像對算法進(jìn)行驗證,并與傳統方法進(jìn)行了對比,驗證了本文所提方法的高精度和高魯棒性。
評論