賈會群,魏仲慧,何 昕,李沐雨
基于視覺的人工智能導航是計算機視覺領域的一項重要應用[1],因其方法簡單、可適應復雜的道路環境被廣泛應用到自主車輛的道路識別系統中[2-3]。目前基于視覺的車道線檢測算法包括基于特征[4-6]和基于模型[7-8]兩類。基于特征的算法主要是利用顏色、紋理和形狀等信息來提取車道線[5],但路面光照發生變化,標志線磨損,路面出現水漬和陰影等情況都將會影響檢測效果[6]。基于模型的算法首先估計道路模型,然后利用圖像信息確定模型參數,常用的道路模型有直線模型、拋物線模型和三次樣條曲線模型[7-10]。大量研究發現:直線模型雖算法簡單運行速度快,但不適合彎曲的車道線檢測,應用范圍窄;拋物線模型易受復雜道路環境的影響,魯棒性不好;三次樣條曲線模型雖然檢測效果較好,但算法復雜,計算量大。
為解決上述問題,本文中通過建立一種新的道路模型提出了一種基于BPNN與最小二乘法曲線模型的車道線檢測算法,首先運用具有方向性的掩模對檢測圖像進行空域濾波,也即用圖像濾波模板對圖像的像素進行處理,檢測出車道線的邊緣點;其次運用BP神經網絡進行道路模型參數估計,擬合出復雜的函數曲線;然后利用復雜曲線的函數上凸性在最大值處將曲線分為左右兩部分即將左右車道線劃分開,從而檢測出左右車道線;最后運用最小二乘法對檢測出的左右車道線進行擬合重構。該方法克服了直線模型和拋物線模型的缺點,適合不同的道路情況,具有較好的檢測性能。
在道路圖像中,車道線和灰色的路面連接處灰度值不連續,存在較大的變化量。利用這一性質通過對圖像求導提取出灰度值突變的像素點,從而檢測出車道線的邊緣。常用的邊緣檢測器有sobel檢測器、prewitt檢測器、canny檢測器和方向性線檢測器等[7-11]。由于在道路圖中車道線和水平線存在一定的夾角,因此本文中采用具有方向性的線檢測器如圖1所示,圖2示出不同檢測器的檢測效果。

圖1 方向性線檢測器

圖2 不同檢測器檢測效果
實際道路狀況千差萬別,不利于車道線的檢測,因此可根據先驗知識采用適當的假設來簡化道路模型[12],本文中根據常用的道路假設提出一種新的道路模型:
(1)道路部分一般位于圖像的下半部分;
(2)道路的左右車道線整體的幾何模型可視為一復雜的曲線函數;
(3)左右兩側的車道線看作復雜曲線模型的左右兩部分,且該曲線為上凸曲線存在最大值點,最大值點的左側為左車道線,右側為右車道線。
根據以上假設構建道路模型,如圖3所示。

圖3 道路模型
BPNN是一種按誤差逆傳播算法訓練權值的多層神經網絡,由數據流的正向傳播和誤差信號的反向傳播兩個過程構成。正向傳播時,傳播方向為輸入層(input layer)→隱層(hide layer)→輸出層(output layer),如圖4所示。當數據流正向從輸出層輸出的結果不是期望的結果時,則將兩者之間的誤差信號反向傳播,不斷更新權值直至誤差信號達到最小[13]。

圖4 BP神經網絡結構示意圖
1.3.1BP神經元
圖5示出最基本的BP神經元模型,具有加權、求和與轉移功能[13]。 其中 x1,x2,…,xi,…,xn分別代表來自神經元 1,2,…,i,…,n 的輸入;wj1,wj2,…,wji,…,wjn則分別表示神經元 1,2,…,i,…,n 與第 j個神經元的連接強度,即權值;bj為閾值;f(·)為傳遞函數;yj為第j個神經元的輸出。

圖5 BP神經元模型
神經元的凈輸入為

式中:X=[x1,x2,…,xn]T;Wj=[wj1,wj2,…,wjn]。 神經元的凈輸入Sj通過傳遞函數f(·)可得神經元的輸出yj:

式中f(·)是單調有界函數,由生物細胞信號傳遞的性質定義。常用的f(·)函數曲線圖如圖6所示。其中,Log-sigmoid型函數為

式中:s∈(-∞,+∞);f(s)∈(0,1)。 tan-sigmoid 型傳遞函數為

式中:s∈(-∞,+∞);f(s)∈(-1,1)。

圖6 BP神經元常用的傳遞函數
1.3.2BP神經元正向傳播
圖7示出一3層BPNN拓撲結構,其隱層的輸出為

式中:k=1,…,q;x0為閾值;vk0為閾值和隱層節點的連接權值。輸出層節點的輸出為

圖7 3層神經網絡拓撲結構

式中:j=1,2,…,m;z0為閾值;wj0為閾值和輸出層節點的連接權值。至此BPNN就得到了n維數據向量和m維數據向量的近似映射關系,因此一個3層的BPNN即可描述任意復雜的數學模型。
2.3.3BP神經網絡反向傳播
(1)定義誤差函數
輸入 P 個學習樣本,用 x1,x2,…,xp,…,xP來表示。第p個樣本輸入到網絡后得到輸出(j= 1,2,…,m)。于是定義第p個樣本的誤差Ep:

式中tpi為期望輸出。對于P個樣本,全局誤差為

(2)輸出層權值的變化
采用梯度下降法,更新權值wjk,使全局誤差E最小,即

式中η為學習率。定義誤差信號為

式中第1項為


第2項是輸出層傳遞函數的偏微分。于是:

由鏈定理得

將式(14)代入式(9)整理后,得到隱層和輸出層各神經元之間的連接權值更新公式為

(3)隱層權值的變化

定義誤差信號為

式中第1項為

由鏈定理得

第2項

是隱層傳遞函數的偏微分。于是:

由鏈定理得

將式(22)代入式(16)整理后,得到輸入層和隱層各神經元之間的連接權值更新公式為

存在一組數據(x0,y0),(x1,y1),…,(xn,yn),滿足某一函數原型g(x)。找到滿足各個觀測值yi與g(xi)的偏差平方和最小的曲線是最小二乘法的目標。通過對偏差平方和分別求取其對參數a0,a1,…,ai,…,an的偏導數,并令各偏導數為0,得到n+1個方程,以式(26)矩陣方程表示,據此解出所需的n次曲線參數。

為驗證算法的有效性和穩定性,將本文中提出的算法在MATLAB2014a軟件平臺上使用真實的道路圖片(可見光相機圖片和彩色相機圖片)進行測試。這些道路圖片中包含直線道路、曲線道路、有陰影道路圖片和無陰影道路圖片。實驗結果表明,本算法的檢測精度在90%以上,對于含有陰影的道路狀況該算法依然可以很好地提取車道線,部分實驗結果如圖8和圖9所示。其中圖8是BP神經網絡利用所提道路模型對車道線進行檢測和重構的結果,圖中的小圓圈表示所擬合曲線的最大值,也是左右車道線的分界點。圖9是最小二乘法對BP神經網絡所檢測出的左右車道線進行重構的結果,包含直線道路、彎曲道路、有陰影道路和無陰影道路的檢測結果。

圖8 BP神經網絡道路檢測

圖9 最小二乘法左右車道線檢測
以上所述驗證了所提出的方法對靜態車道圖像有較好的檢測性能,而實際行車得到的是動態序列圖像且道路環境要復雜得多,為進一步驗證該算法對車道線動態序列圖像檢測的有效性,本文中以DSP為硬件平臺,使用大眾轎車,在吉林省長春市東南湖大路進行實驗。平臺處理速度達25幀/s,滿足了實時性的要求,部分實驗結果如圖10和圖11所示。由圖可見,在路口這樣復雜的道路環境如人行道、行人、車輛和存在其它道路標志線的情況下,所提方法依然可以有效地對車道線進行檢測和重構。
針對采用直線模型、拋物線模型和三次樣條曲線模型檢測車道線時所存在的缺點,本文中通過建立自己的道路模型提出了一種基于BP神經網絡與最小二乘法曲線模型的車道線檢測算法。算法利用所提取的道路邊界點,進行神經網絡曲線模型擬合,檢測出左右車道線,最后利用最小二乘法對左右車道線進行檢測和重構。不同相機所拍圖像和不同道路狀況下的車道線檢測結果表明,所提出的算法能有效地對不同類型的車道線進行檢測。動態序列圖像的車道線檢測結果表明,所提算法滿足了實際行車的實時性要求。

圖10 神經網絡車道線序列圖像檢測

圖11 最小二乘法車道線序列圖像檢測
[1] KHALIFA O O, KHAN I M,ASSIDIQAA M.A hyperbola-pair based lane detectionsystem for vehicle guidance[C].Proceedings of the World Congress on Engineering Computer Science,2010:20-22.
[2] YU B,JAIN A K.Lane boundary detection using a multiresolution Hough transform[C].Proceedings of International Conference on Image Processing,2010:748-751.
[3] CHENG H Y,JENG B S.Lane detection with moving vehicles in the traffic scense[J].IEEE Transactions on Intelligent Transportation Systems,2006,7(4):571-582.
[4] GAOS,QIN L,CHEN CB.Structured road lane marking identification algorithm[J].Journal of Xi'an Technological University,2013,33(1):14-19.
[5] LI Q,ZHENG N N.A prototype autonomous vehicle and its algorithms for lane detection[J].IEEE Transactions on Intelligent Transportation Systems,2004,5(4):300-308.
[6] SHARMA U K,DAVISL S.Road boundary detection in range imagery for an autonomous robot[J].IEEE Transactions on Robotics and Automation,2009,4(5):515-523.
[7] LUTZELER M,DICKMANNSE D.Recognition of intersections on unmarked road networks[C].Proceedings of the IEEE Intelligent Vehicles Symposium,2009:302-307.
[8] WANGY.Lane detection using spline model[J].Pattern Recognition Letters,2004,21(3):677-689.
[9] 魏新國,徐佳,張廣軍.星敏感器質心定位的s曲線誤差補償[J].光學精密工程,2013,21(4):849-857.
[10] 陳洪波,王強,徐曉蓉,等.用改進的Hough變換檢測交通標志圖像的直線特征[J].光學精密工程2009,17(15):1112-1118.
[11] YOO Hunjae,YANG Ukil.Gradient-enhancing conversion for illumination-robust lane dtection[J].IEEE Transactions on Intelligent Transportation Systems,2013,14(13):1192-1202.
[12] 徐春友.智能車輛視覺與GPS綜合導航方法的研究[D].長春:吉林大學,2001.
[13] 魏海坤.神經網絡設計的理論與方法[M].北京:國防工業出版社,2005.2.