呂穎 李紅建 李駿 呂錚 董小瑜
(1.中國第一汽車股份有限公司智能網聯開發院,長春130013;2.中國第一汽車股份有限公司創新技術研究院,長春130013;3.汽車振動噪聲與安全控制綜合技術國家重點實驗室,長春130013;4.清華大學,車輛與運載學院,北京100083)
主題詞:車道線檢測 道路特征 道路模型 智能駕駛
智能駕駛技術的發展對交通運輸產生著深遠的影響。環境感知技術在汽車的智能駕駛專業領域里扮演了關鍵的角色,也是確保智能駕駛汽車在兼顧智能和安全的重要技術手段。其中,對道路中的道線進行劃分和追蹤是感知車輛周邊環境信息的重要步驟,能夠給安全駕駛和自動駕駛提供重要的基礎保障和依賴,也是當前智能駕駛技術研究的難點和核心。現如今車道線檢測技術通常用于智能駕駛輔助系統中的車道偏離預警功能[1-3]。當前我國道路具有規范的道路標志和交通法規,這樣的道路提供了清晰的車道線邊界特征來幫助我們進行智能駕駛技術的開發,此外交通道路上的標志均符合相應的國家標準,這些清晰且具體的特征和規范是車道線識別的一個優秀的先天條件。目前,對于車道線檢測技術國內外已經有了很多的研究,但真正應用在主流車型上的方法技術主要分為2種,即以道路特征和道路模型為基礎的車道線檢測方法[4-7]。
以道路特征為基礎的車道線檢測算法受圖像質量的影響較大,交通道路上復雜的環境因素無法讓圖像質量得到保證,這也是制約該方法的重要因素。以道路模型為基礎的車道線檢測算法雖然能夠應對復雜的道路環境導致的圖像質量問題,但是其運算量過大導致對車道線的檢測不能滿足實時性的要求。本文提出一種道路特征和道路模型的車道線檢測算法,模型能夠綜合道路模型和道路特征的車道線檢測優點,解決利用道路特征檢測車道線受光照以及環境因素影響。
車道線檢測中利用道路上的物理特征因素進行車道線分割識別建立的模型被稱為道路特征模型,主要是通過車道線和路面的顏色差異進行分割識別。
這種檢測方式主要是依賴攝像頭系統拍攝到的道路圖像,通過識別圖像中車道線和車道的不同特征從而進行對車道線精確的分割。在車道線匹配上主要選擇的一些擬合算法有:霍夫變換、邊緣算子、卡爾曼濾波、自適應邊界檢測。鞠乾翱等[8]基于攝像頭系統拍攝到道路圖像,主要針對圖像中的灰度信息進行了提取,通過圖中車道線和車道的像素值不同進行圖像分割。石林軍等[9]利用圖像灰度處理技術對攝像頭捕獲的RGB圖像進行處理,然后進行霍夫變換,最后提取出來車道線的線條。王鑫等[10]將經過灰度處理后的圖像,基于透視變換分割掃描線,對車道線和車道的結合處特征的差異進行了預先的檢測,然后設置了一個2層感興趣區域,又通過邊界算子對車道線的輪廓進行辨別,最后車道線模型的匹配采用的是霍夫變換的方法。程文冬等[11]通過對道路進行網格劃分排除了大量的非相關像素,增加提取車道線特征的正確性。在提取邊界信息后,經過霍夫變換得到匹配擬合后的車道線。李超等[12]將道路圖像轉換為灰度圖像并利用中值濾波降噪后,建立動態變化的感興趣區域,經過自適應邊界檢測,利用幀間的變化信息約束并更新車道線。該方法可同時降低計算量和提高算法的環境適應性。Li X等[13]在采集到的圖像中劃定感興趣區域,通過圖像灰度化和中值濾波處理消除噪聲后,采用尖峰神經網絡檢測車道線的邊界,應用霍夫變換的算法獲取車道線模型。
在減少運算時間和提高魯棒性方面也有許多學者做了研究。Madrid等[14]提出了適用于移動設備的車道偏離報警系統,通過應用霍夫變換和圖像的模糊技術,很大程度上減少了圖像識別需要的計算量,并能夠完成車道偏離預警功用的實時性。Gaikwad等[15]將圖像灰度化以后,為了提高圖像ROI的對比度采用了線性的分段拉伸函數進行處理,這樣由ROI分割出2個子區域,在這2個區域內分別進行霍夫變換處理,完成了車道線的分割和追蹤,這樣也大大提高圖像處理速度。Yeniaydin等[16]提出了一種利用機器視覺的具有較強魯棒性的車道線分割匹配的算法,利用灰度化的感興趣區域獲得2個二值化的圖像。將所得到的二值化圖像經過一個新的鄰域算子合并,通過逆透視變換得到鳥瞰圖,利用高斯概率密度函數對檢測到的車道線進行匹配。
由上述文獻分析可知,當前主流的車道線檢測方法是基于車道內特征的邊界信息,即不同像素值的區別來劃分不同特征。此種方法具有一定的缺陷,比如環境因素對圖像質量的影響很大,這樣的圖像檢測就會變得頗具挑戰。并且大量的學者在提升魯棒性和消除環境影響方面做了研究,如分割掃描線、劃分網格、濾波降噪、采用神經網絡。
由于僅憑圖像特征進行的檢測受環境影響較大,并且我國現有的道路上各種交通特征形狀具有嚴格的標準,所以考慮結合道路模型進行檢測。即把車道線在道路上的形狀用二次或者三次曲線模型表示,通過各種方法獲取模型中的固定參數,進一步來確定車道線的形狀,完成分割。韓浩等[17]提出了一種結合貝塞爾曲線的車道線劃分匹配方法,主要思想是在一個特定范圍內進行處理計算特征邊界,能夠提高車道線劃分匹配算法在光照變化場景下的魯棒性。段建民等[18]通過結合頂帽分割算法和曲線模型對三車道的識別進行了研究。高嵩等[19]利用邊界檢測算法對結構化道路的特征進行了識別和分割,利用霍夫變換的方法獲取離散的道路曲線,然后經過卡爾曼濾波對車道線進行追蹤和檢測,最后采用雙曲線模型對檢測到的2側車道線進行擬合,實現了車道線的檢測。Kumar等[20]提出了一種基于模板匹配的車道檢測方法,為了使算法對陰影區域的檢測更加精準,對陰影區域進行了修復,使用貝塞爾樣條曲線對車道線類型是曲線的部分進行匹配,最后使用Kalman濾波的方法對車道線進行擬合。Paula等[21]使用拋物線車道模型檢測車道邊界,采用高斯混合的貝葉斯分類器,對視頻序列中的車道線按照虛線、實線和虛實線進行分類。Chi等[22]提出了一種利用消失點估計的車道線檢測算法。Shin等[23]提出了基于生成的頂視圖圖像(Top-View image)的車道檢測算法,通過構建一個曲線道路模型,將ROI底部的車道線擴展出來。
以上方法對于特定的車道線類型具有精準的檢測效果,但存在運算量相對偏大、局限性較強、實時性不足的問題。
本文的車道線檢測與繪制的方法是綜合考慮道路特征和道路模型,將2者有機結合以克服環境因素的影響。首先,利用道路特征中車道線和車道的顏色不同進行區分和識別,將彩色圖灰度化和二值化處理,得到車道線部分區域和非車道線部分區域。然后,通過道路模型對分割出來的二值化圖像進行擬合匹配。最后,對利用識別結果對車道線的類型進行分類并標記繪制。
本文基于MATLAB軟件中提供的自動駕駛工具來實現車道線的檢測和擬合。攝像機選用的是針孔相機模型,針孔相機模型是用于表示相機將三維坐標轉化為平面坐標的最常用的模型。首先,創建了一個單目攝相機模型,模型中需要設置攝像頭的外參和內參,并進行校正。世界坐標系和相機坐標系的之間的聯系可以通過相機的外參矩陣來表示。
世界坐標系的詳細定義、相機的位置和姿態以及2者之間的相互關系通過外參矩陣中的參數進行描述。相機的內參比如焦距和畸變一般在相機出廠時已經標定完成,此時不需要考慮內參的標定。一般相機坐標系通過一定的轉換關系與像素坐標系關聯在一起,假設相機坐標系下有一個點P,該點在成像平面中的投影有如下關系,如式(1)。
其中,f為點P到成像平面的距離,X,Y,Z是相機坐標系下的坐標,(x,y)為點P在成像坐標系下的坐標點,z等于點P到成像平面的距離。
從成像坐標系轉換到像素坐標系需要平移和縮放。將坐標(x,y)在水平方向縮放α倍,垂直方向縮放β倍經過平移后得式(2)如下:

其中,(u,v)是對應點位于像素坐標系中的具體值,cx、cy為平移距離,轉換為矩陣形式如式(3):

該矩陣為內參矩陣。
將攝像頭采集的視頻按照幀導入,為了使圖像處理更為方便,首先要將原圖轉換為鳥瞰圖(圖1)。這里采用的是逆透視變換的方法。逆透視變換的原理也是坐標系的轉換,即將圖像坐標系轉換成世界坐標系。

圖1 原圖轉換為鳥瞰圖
將得到的鳥瞰圖進行閾值分割,即灰度化和二值化處置,以便依據道路特征進行車道線的分割和追蹤。特別注意在進行色彩變換前要設置好感興趣區域,這樣可以大大減少計算量,其次需要根據實際情況設置敏感度系數和車道線的寬度,這也是一個調參的過程。
經過上述一系列的圖像處理,獲得了只含有車道線的二值圖像,此時需要選擇道路模型對車道線進行建模表達,常用的方法是用多項式進行擬合,本文采用二次曲線的道路模型進行車道線的匹配擬合。比較常見的匹配方法是最小二乘法,針對圖像上已有的全部數據點進行適配和擬合,此方法容易產生較大的誤差,擬合的效果不是很理想。
RANSAC算法在擬合數據點的開始就假設數據是不需要全部適配模型的。即數據中包含正確數據和錯誤數據,一般錯誤數據也常常被稱為噪聲信息。最小二乘法則沒有將噪音信息剔除,所以擬合出來的道路模型與實際情況常常具有較大的偏差。RANSAC算法的宗旨就是根據一定的規則選擇樣本進行匹配模型,沒有選中的樣本當作測試集進行測試,最后得到誤差最小的模型。
因此,對于車道線的匹配方法挑選采用了RANSAC(Random Sample Consensus)算法,如圖2表示了最小二乘法和RANSAC法擬合數據的對比,明顯可以看岀RANSAC法對于車道線擬合的精度更滿足要求。

圖2 最小二乘算法與RANSAC算法對比
其算法流程圖如圖3所示。通過該算法得到圖像中車道線的匹配結果和類型識別結果,并用不同的表示方法繪制出不同類型的車道線。首先,隨機挑選了n個樣本作為內部集合,用內部集合中的樣本擬合一個模型用來測試外部集合。當外部集合的樣本與該模型的距離大于閾值,重新進行模型擬合,若小于閾值則將該點加入到內部集合中,一直當內部集合中點的個數大于設定的數值,將所有的內部集合的點擬合成曲線,得到最佳的道路模型。

圖3 RANSAC算法流程
通過上述方法,在MATLAB中搭建了車道線檢測算法的模型。通過實驗分析,根據設置的ROI區域的原始數據采集到的原始圖像(圖4)為輸入圖像。

圖4 輸入圖像數據
在圖像處理階段,將相機采集到圖像首先轉換為鳥瞰圖,再將鳥瞰圖處理為灰度圖,進而轉換為二值圖。將二值化的圖像中的車道線用RANSAC算法進行匹配,得到對車道線類型的判別,并用不同的表示方法繪制出不同類型的車道線,如圖5a所示。再將鳥瞰圖轉換為正常視野,圖5 b為車道線檢測實驗的結果。

圖5 車道線檢測過程
車道線檢測實驗的具體結果如圖6所示,圖中對于車道線的類型進行了標記,使用紅色線條標記虛線車道線,綠色線條標記為實線車道線,基本符合預期的實驗目標,即繪制出包含道路規則的車道線。

圖6 車道線檢測結果
本文提出的算法模型利用道路特征和道路模型的方法來進行車道線的檢測和跟蹤。能夠穩定并且快速的提取車道線并進行擬合,保證了準確性和實時性。對有技術難度的彎道以及陰影道路的檢測也有很好的適應性。但是該方法在路面車道線缺失的情況下也會出現車道線識別不穩定的現象,以后的研究也可以在車道線自動補全方面進行。未來的研究應該更加關注復雜道路條件和環境下的車道線檢測,增加算法的魯棒性,保證自動駕駛技術的安全性。