基于攝像頭的AD黑線(xiàn)提取算法
基于A(yíng)D采樣的算法
基于A(yíng)D的黑線(xiàn)提取算法能夠反映圖像上的每個(gè)點(diǎn)的黑白程度,提取出來(lái)的黑線(xiàn)準確度比較高,但是后續的黑線(xiàn)提取算法比較復雜?;陔妷禾儽容^方法軟件黑線(xiàn)提取非常簡(jiǎn)單,但是硬件調試比較困難,而且不能反映每個(gè)點(diǎn)的真實(shí)黑白程度。對賽道環(huán)境要求很高,易受干擾。
基于A(yíng)D的黑線(xiàn)提取有以下幾種方法:
1) 找出每一行的黑線(xiàn)的左右邊界點(diǎn),把中間點(diǎn)作為道路;
2) 利用若干行相加,取最黑點(diǎn);
3) 找出每行的最黑點(diǎn),把它作為道路。
第一種做法:找出每一行的黑線(xiàn)的左右邊界點(diǎn),把中間點(diǎn)作為道路。
圖1 斜看十字交叉道示意圖
它是最容易想到的方法,在無(wú)交叉道以及攝像頭的黑白AD值分明的情況下,它可以達到非常理想的效果。但是若出現了斜看交叉道或者黑白AD不是很分明的情況下,該方法的濾波顯得十分復雜。在實(shí)際中由于攝像頭對于遠處的黑線(xiàn)不是很敏感,這使得黑點(diǎn)的閾值很難以確定,選大了會(huì )使遠方道路提取出錯,選小了會(huì )丟失遠方的道路信息。也許采用動(dòng)態(tài)閾值是一個(gè)好方法,但是它也不是十分管用。在實(shí)驗中我們發(fā)現黑點(diǎn)的閾值不是隨著(zhù)距離的變化成線(xiàn)性變化的,它的變化多少帶有點(diǎn)突變的味道,因此很難確定黑點(diǎn)閾值的變化規律,自然動(dòng)態(tài)閾值也很難設定。斜看十字道會(huì )帶來(lái)更大的麻煩,由于在實(shí)際的控制中很難做到每次都嚴格地貼線(xiàn)走,因此小車(chē)在從彎道出來(lái)的時(shí)候若彎道前方有個(gè)十字道,很容易造成斜看的情況發(fā)生。這時(shí)從AD采集的圖像上看來(lái)十字交叉道會(huì )像一個(gè)分叉的樹(shù)枝一樣從前方道路上出來(lái),更糟糕的情況是在前方正確道路消失的地方恰好被斜的十字道路的一邊給補上了。若采用這種方法,則很容易誤將道路確定到十字叉的一邊上,使得小車(chē)的轉向錯誤。為了濾除這種情況,我們根據它的特點(diǎn)采用了很多的濾波方法。
首先,在前方道路與十字叉的交界點(diǎn),黑點(diǎn)的個(gè)數會(huì )突然增加很多。在一般情況下,隨著(zhù)距離的增加黑點(diǎn)的個(gè)數會(huì )慢慢減少,不會(huì )出現突然增多的情況。因此我們可以用上一行的黑點(diǎn)數,估計出下一行的黑點(diǎn)數,如果超出了我們的估計值,我們就認為它是不合理的。
其次可以根據賽道不突變的原則,來(lái)濾除雜點(diǎn)。我們可以根據前面兩行的變化情況預測出下一行的賽道變化范圍,利用它來(lái)濾除雜點(diǎn)。但是在實(shí)際的應用中下一行的變化范圍預測總是不是很理想。因此當賽車(chē)經(jīng)過(guò)90度彎時(shí),賽道的變化在小車(chē)看來(lái)變化是十分巨大的幾乎和斜看十字交叉道沒(méi)有多大的區別。有時(shí)會(huì )將90度彎濾除,造成小車(chē)直接沖出跑道。
最后,我們還可以通過(guò)分別從左至右與從右至左的方法來(lái)所搜賽道的左右邊界點(diǎn),若發(fā)現兩者不一致,則可以采取取變化較小的點(diǎn)作為賽道來(lái)處理。

評論