目前,基于視覺感知車道線的車輛橫向控制是自動駕駛系統(tǒng)實現(xiàn)包含從L2-L5整個車道保持的基本前提。車道線識別技術(shù)主要分為視頻幀圖像獲取、圖像邊緣提取、車道線提取和曲線擬合三個部分。本文將針對主流的車道線提取算法、圖像增強算法和曲線擬合算法的角度詳細剖析復(fù)雜環(huán)境下的車道線識別算法和改進策略。
1、視頻圖像幀捕獲
在圖像幀獲取中,其圖像幀的捕獲增益和偏移參數(shù)必須根據(jù)不同的對比度條件進行調(diào)整,因此應(yīng)提高視覺感知系統(tǒng)對外部環(huán)境變化的適應(yīng)性和魯棒性。為了更好的跟蹤,基于馬爾可夫鏈蒙特卡羅(MCMC)粒子濾波器的方法是行業(yè)內(nèi)普遍推崇的方法。與傳統(tǒng)的粒子濾波器或卡爾曼濾波器相比,其跟蹤失敗率較低,但無法處理光線變化和識別線不完整等問題。另外,基于松弛約束支持向量機(SVM)分類器和核函數(shù)的光自適應(yīng)圖像分割方法,可以區(qū)分道路圖像的原始顏色特征和光偽影,則可以很好的彌補這樣的缺陷,并取得良好的效果。但這這種形式并沒有關(guān)注標志帶顏色接近地面的情況,也沒有考慮地面上可能出現(xiàn)的亂線干擾。
2、車道線識別技術(shù)
目前,目前車道線識別的方法有很多,廣泛使用的邊緣提取技術(shù)包括Sobel算子、Prewitt算子、Roberts算子和Canny算子。其中,前三種算法具有實現(xiàn)簡單、運算速度快的優(yōu)點,但易受噪聲影響,邊緣定位精度較差,具有一定的局限性。Canny算法是在原有一階微分的基礎(chǔ)上進行擴展的算子,增加了兩個改進:非極大值抑制和雙閾值。采用非極大值抑制不僅可以有效抑制多響應(yīng)邊緣,而且可以提高邊緣的定位精度。采用雙閾值可以有效降低邊緣漏檢率。因此,Canny算法近年來被學(xué)者們應(yīng)用和優(yōu)化,其中基于Otsu自適應(yīng)閾值的Canny算法應(yīng)用最為廣泛,該方法解決了傳統(tǒng)Canny算法閾值難以確定的問題。
但是,由于圖像以車道線為研究對象,具有光照變化大、變化范圍不均勻的特點,同時還需要考慮實時性問題,因此邊緣提取方法仍需改進。車道線提取主要是提取車道線上的邊緣點,排除干擾點對后續(xù)處理的影響。這部分的研究相對于圖像邊緣提取來說還比較少,并且大多數(shù)學(xué)者忽略了車道寬度標準化這一有用信息,導(dǎo)致算法設(shè)計過于復(fù)雜。
由于,復(fù)雜光照下車道線的提取是一個頗具挑戰(zhàn)性的問題,圖像校正是解決該問題的關(guān)鍵。照明分量通常是低頻分量,可以通過高斯濾波來提取,但高斯濾波的邊緣保持能力較差。此外,也有學(xué)者采用雙邊濾波算法來提取光成分,但該方法在實際應(yīng)用中耗時過長。另一種Guided Filtering算法利用引導(dǎo)圖像與濾波輸出圖像之間的局部線性關(guān)系(保證輸出圖像保留引導(dǎo)圖像的局部紋理特征),計算出的輸出圖像與原始圖像通過最小二乘法計算使輸出圖像的邊緣盡可能接近原始圖像。這種算法的時間復(fù)雜度僅為O(n),n為圖像像素總數(shù),與濾波半徑無關(guān),大大提高了運算速度。如果選擇原始圖像作為引導(dǎo)圖像,則可以在保留原始圖像局部特征的基礎(chǔ)上實現(xiàn)對原始圖像的光照提取。光照提取后,仍然需要設(shè)計合理的圖像增強函數(shù),使暗部區(qū)域更亮,亮部高光區(qū)域更暗,從而使整個畫面恢復(fù)到接近正常均勻光線的狀態(tài)。
3、車道線擬合技術(shù)
目前,最廣泛使用的曲線擬合方法是霍夫變換、最小二乘法和隨機樣本一致性(RANSAC)。很少有研究將車道線寬度特征應(yīng)用于車道線識別和擬合算法中。大多數(shù)研究采用一些復(fù)雜且耗時的算法來提取車道線,同時放棄了最具特征的信息。霍夫變換算法的特點導(dǎo)致其時間復(fù)雜度和空間復(fù)雜度較高,且在檢測過程中只能確定線的方向而丟失線段的長度信息,因此不適合車道線檢測。最小二乘法只適用于噪聲較小的數(shù)據(jù),但很多情況下,一些明顯偏離曲線的點需要丟棄,因此不適合車道線擬合。RANSAC曲線擬合方法是對最小二乘法的改進。通過隨機采樣并增加一定的迭代次數(shù),可以明顯減少噪聲點對結(jié)果的干擾。如何在復(fù)雜多變的環(huán)境中提取有用的邊緣點并盡可能減少干擾點成為車道線識別的關(guān)鍵問題。
因此,綜合考慮在復(fù)雜環(huán)境下,邊緣提取算法需要被改進和優(yōu)化。基于RANSAC曲線擬合車道線的算法用來作為加強車道線擬合更為合適。
改進的Canny 算法說明
車道線提取主要是提取車道線上的邊緣點,排除干擾點對后續(xù)處理的影響。目前,車道線識別的方法有很多,廣泛使用的邊緣提取技術(shù)包括Sobel算子、Prewitt算子、Roberts算子和Canny算子。其中,前三種算法具有實現(xiàn)簡單、運算速度快的優(yōu)點,但易受噪聲影響,邊緣定位精度較差,具有一定的局限性。Canny算法是在原有一階微分的基礎(chǔ)上進行擴展的算子,增加了兩個改進:非極大值抑制和雙閾值。采用非極大值抑制不僅可以有效抑制多響應(yīng)邊緣,而且可以提高邊緣的定位精度。采用雙閾值可以有效降低邊緣漏檢率。因此,Canny算法近年來被學(xué)者們應(yīng)用和優(yōu)化,其中基于Otsu自適應(yīng)閾值的Canny算法應(yīng)用最為廣泛,該方法解決了傳統(tǒng)Canny算法閾值難以確定的問題。
這里我們將詳細介紹Canny算法底層邏輯。
Canny算法具有三個嚴格的邊緣檢測標準:信噪比(SNR)、定位精度和單邊緣響應(yīng)。canny邊緣檢測器是信噪比與位置乘積的最佳逼近算子,其表達式近似于高斯函數(shù)的一階導(dǎo)數(shù)。通過結(jié)合Canny邊緣檢測的三個準則,可以獲得最優(yōu)的檢測算子。Canny邊緣檢測算法主要包括以下四個步驟:
1、高斯濾波器平滑圖像
普通高斯濾波器表示如下:
i和j表示像素點的坐標,f(i,j)表示該點在原始圖像中的值。
隨后,通過一階偏導(dǎo)數(shù)有限差分法計算平滑圖像中各點的梯度幅值和方向,并記錄在梯度幅值圖和梯度方向圖中。利用2*2鄰域的一階偏導(dǎo)數(shù),根據(jù)以下公式計算平滑圖像G(i,j)的i,j方向偏導(dǎo)數(shù)。
找出x、y方向的偏差后,按以下公式計算幅度和方向:
3、梯度幅度被非最大值抑制
僅獲得全局梯度不足以確定邊緣,為了確定邊緣,必須保留局部梯度最大的點。抑制非極大值就是將非局部極大值點置零,得到細化邊緣,最終得到一系列候選邊緣點。
4、使用雙閾值算法來檢測和連接邊緣
隨后,使用兩個閾值TL和TH(TL < TH)對上一步獲得的一系列候選邊緣點進行進一步處理。梯度值大于TH的點保留為邊緣點,梯度值小于TL的點被淘汰,梯度值在兩個閾值之間且與邊緣點相鄰的點被保留。最后判斷保留點的8個方向上是否存在大于高閾值的邊緣像素,合格的像素將被保留。簡而言之,高閾值用于尋找每條線段上的邊緣散點,而低閾值則在這些線的兩個方向上延伸,以找到邊緣斷裂并連接這些邊緣。
5、基于大津算法Otsu的自適應(yīng)閾值計算
根據(jù)上面的Canny算法可以看出,高低閾值的選擇對于最終的車道邊緣提取非常重要。目前廣泛采用 Otsu 算法可以自動確定閾值。基本思想是將圖像像素分為背景和目標,通過搜索和計算類間最大方差得到最優(yōu)閾值。閾值應(yīng)該是兩類之間的最佳分離,而類間分離的最佳判斷是基于數(shù)理統(tǒng)計意義上的類間方差的最大值或類內(nèi)方差的最小值。
傳統(tǒng) Canny 算法閾值的選擇,Otsu 算法可以結(jié)合梯度幅值得到 Canny 算法中的高閾值TH和低閾值TL。
設(shè)灰度級為i的圖像中像素總數(shù)為ni,灰度級范圍為[0,L-1],則像素總數(shù)為:
L的大小取決于圖像的實際灰度值范圍。每個灰度值的概率為:
且Pi滿足以下特征:
通過閾值將圖像中的像素分為兩類C0和C1,背景類別C0由灰度值為[0,T-1]的像素組成,目標類別C1由灰度值為[T,L-1]的像素組成。那么區(qū)域C0和C1的概率為:
背景類C0和目標類C1的平均灰度級分別為:
其中μ是整個圖像的平均灰度級:
背景區(qū)域和目標區(qū)域的總方差為:
基于引導(dǎo)濾波器的圖像增強校正
由于圖像以車道線為研究對象,具有光照變化大、變化范圍不均勻的特點,同時還需要考慮實時性問題,因此邊緣提取方法仍需改進。而對于這項頗具挑戰(zhàn)性的問題,圖像校正是解決該問題的關(guān)鍵。這里我們介紹一種自適應(yīng)權(quán)重濾波器--“引導(dǎo)濾波器”,可以平滑圖像,同時保持邊界的清晰度。由于其視覺質(zhì)量好、速度快且易于實現(xiàn),引導(dǎo)濾波器已廣泛應(yīng)用于實際產(chǎn)品中。
綜合來說,這種方法是對濾波輸入圖像和引導(dǎo)圖像進行二次采樣,從而計算局部線性系數(shù),并對這些系數(shù)進行上采樣,上采樣系數(shù)用于生成原始引導(dǎo)圖像上的輸出。由于HSV模型中的亮度V仍然與顏色有關(guān),而YCbCr空間中的Y表示亮度信息,且與顏色完全無關(guān),因此選擇YCbCr空間中的亮度Y進行調(diào)整。根據(jù)圖像的亮度,實時調(diào)整二維伽瑪函數(shù)中索引的底數(shù)α,以更合理地調(diào)整過亮和過暗區(qū)域,最終實現(xiàn)圖像的自適應(yīng)增強照明不均勻區(qū)域的圖像。因此,這種通過代替通常的高斯提取圖像中的照明分量函數(shù),然后構(gòu)造一個具有可變參數(shù)的二維伽瑪函數(shù)的方法在圖像增強校正中非常管用。
本文將介紹這種基于快速引導(dǎo)濾波器(Fast Guided Filtering,F(xiàn)GF)的增強校正算法。相應(yīng)的處理流程如下:
作為線性濾波器,引導(dǎo)濾波器可以簡單定義如下:
其中I是引導(dǎo)圖像,q是要濾波的輸入圖像,q是濾波后的輸出圖像,i是像素的索引,ωk是指濾波窗口,輸出圖像q是輸入引導(dǎo)圖像I的線性變換,由ak和bk系數(shù)進行確定。K為局部方窗ω的索引,半徑為r。這里設(shè)置懲罰值ε是為了防止ak過大而引入的正則化參數(shù)。為了對原始圖像進行濾波,在滿足上述局部線性的基礎(chǔ)上,需要使輸出圖像盡可能逼近原始圖像,并采用最小二乘法來最小化輸出圖像和原始圖像之間的重構(gòu)誤差:
這種Guided Filtering算法由于利用了引導(dǎo)圖像與濾波輸出圖像之間的局部線性關(guān)系(保證輸出圖像保留引導(dǎo)圖像的局部紋理特征),計算出的輸出圖像與原始圖像通過最小二乘法計算使輸出圖像的邊緣盡可能接近原始圖像。因此,這種算法的時間復(fù)雜度僅為O(n),n為圖像像素總數(shù),該方法將二次采樣比例s的時間復(fù)雜度從O(n)降低到O(n2),實際加速為*10。且與濾波半徑無關(guān),大大提高了運算速度。
同時,如果選擇原始圖像作為引導(dǎo)圖像,則可以在保留原始圖像局部特征的基礎(chǔ)上實現(xiàn)對原始圖像的光照提取。亮度信息提取后,仍然需要設(shè)計合理的圖像增強函數(shù),使暗部區(qū)域更亮,亮部高光區(qū)域更暗,從而使整個畫面恢復(fù)到接近正常均勻光線的狀態(tài)。
除此之外,使用快速引導(dǎo)濾波器代替高斯濾波或雙邊濾波可以有效提取圖像的亮度信息。與其他濾波方法相比,快速引導(dǎo)濾波器能夠更好地保留邊緣細節(jié)和局部特征,并且還具有非常高的運算速度。
基于亮度的Fuzzy-Canny算法
如上通過引導(dǎo)濾波器實現(xiàn)了圖像的區(qū)分和校正光照不均勻區(qū)域,由于亮度分量Y不僅可以表示同一圖像中兩個區(qū)域之間的亮度差,而且與色度分量相比,可以最大化不同圖像之間的對比度,后續(xù)的圖像分割算法則需要利用光照分量實現(xiàn)圖像分割。而由于照明分量通常是低頻分量,可以通過高斯濾波來提取,但高斯濾波的邊緣保持能力較差。也有采用雙邊濾波算法來提取光成分的,但在實際應(yīng)用中這種方法耗時過長。
上述算法雖然已經(jīng)得到廣泛應(yīng)用,但直接應(yīng)用于車道識別時主要存在兩個缺點,一是該方法無法處理光線不均勻等復(fù)雜環(huán)境;二是該方法無法處理光線不均勻等復(fù)雜環(huán)境。同時,由于傳統(tǒng)的方法確定canny高低閾值耗時較長,難以滿足車輛的實時性要求。為了解決這個問題,本文介紹一種考慮基于亮度的Fuzzy-Canny算法來調(diào)整閾值。
如下圖所示表示了改進的Fuzzy-Canny算法的整體軟件架構(gòu):
由于同一圖像中Y變化不大,因此采用平均亮度值Y作為微分不同圖像的索引。針對ROI區(qū)域的光照不均勻性(如樹木的陰影、高光等),經(jīng)過圖像校正后可以得到很大改善。同時,考慮到高閾值TH可以區(qū)分輪廓物體與背景,以ROI區(qū)域的亮度Y為輸入,采用模糊邏輯算法自適應(yīng)地調(diào)整高閾值TH,使得高閾值為更適合車道線檢測,可以提取更多有用的信息。當圖像Y值為128時,TH的基本值由如上Otsu方法確定,而低閾值TL的值由0.4*TH確定。局部圖像處理后,將ROI區(qū)域中Y的平均值作為模糊輸入,ΔTH作為輸出可以很好的解決由于光線不均勻?qū)е碌淖R別問題。
(a) 陰影區(qū)域邊緣檢測算法比較
(b) 突出顯示區(qū)域的邊緣檢測算法的比較
小結(jié)
本文對復(fù)雜光照環(huán)境下的車道線識別進行了介紹。為了在實時的前提下區(qū)分和校正光照不均勻區(qū)域,文采用基于FGF和改進的2-D gamma函數(shù)的方法對光照不均勻區(qū)域的圖像進行快速校正。然后設(shè)計Fuzzy-Canny分割算法,以標準亮度值Y下的閾值為基準,通過判斷當前Y的值來自適應(yīng)調(diào)整閾值。與傳統(tǒng)算法相比,將引導(dǎo)濾波器進行圖像校正后與Fuzzy-Canny的分割算法相結(jié)合可以明以適應(yīng)更多變化劇烈的環(huán)境條件下的車道線要素提取。
轉(zhuǎn)自焉知汽車


