楊全琪 黃晉英
(中北大學 信息與通信工程學院,山西 太原 030051)
到目前為止,國內(nèi)外的智能車輛研究都把機器視覺作為其識別道路的重要感知方式,機器視覺是感知外部環(huán)境最有效的方式之一。道路識別是智能車輛視覺導航的最為關(guān)鍵技術(shù)的部分,由于其復雜性和困難度而備受廣大智能愛好者和研究者關(guān)注。
Hough變換的原理是利用圖像空間和參數(shù)空間的點與線的對偶性,把圖像空間中的檢測問題轉(zhuǎn)換到參數(shù)空間。在圖像空間X-Y中,所有共線的點的集合和可以用一個表達式描述:
其中,m為直線的斜率,n為截距。同時上式又可以寫成:
上式可以看成是參數(shù)空間M-N中的一條直線方程,其中直線的斜率為x,截距為y。
比較式(1)和式(2),可以看出,圖像空間中的一點(x,y)對應參數(shù)空間中的一條直線,而圖像空間中的一條直線又是由參數(shù)空間中的一個點(m,n)來決定的。然后通過在參數(shù)空間里進行簡單的累加統(tǒng)計,在參數(shù)空間尋找累加器峰值的方法檢測直線。
如果參數(shù)空間中使用直線方程,當圖像空間直線斜率為無窮大時,會使累加器變的很大,從而使計算復雜度過大。為解決這一問題,采用極坐標方程,:
其中ρ為直線到原點的距離,θ為ρ與x軸的夾角。
圖 1 (x,y)參數(shù)空間
圖 2 (ρ,θ)參數(shù)空間
Hough變換需要建立一個累加數(shù)組,數(shù)組的維數(shù)與所檢測的曲線方程中未知參數(shù)的個數(shù)相同。對于直線,它有兩個未知參數(shù),因而需要建立一個二維數(shù)組。具體計算時,需要對未知參數(shù)的可能取值進行量化。如果將參數(shù)(k,b)分別量化為m和n個數(shù),則定義一個累加數(shù)組A(m,n)并初始化為零。
假 設(shè) (k,b)量 化 之 后 的 可 能 取 值 分 別 為,k1,}和,b1,...bn-1}。對于圖空間中的每個目標點(x,y),讓a取遍所有可能的值,根據(jù) 計算出相應的b,并將結(jié)果取為最接近的可能取值。根據(jù)每一對計算結(jié)果,對數(shù)組進行累加。通過查找累加數(shù)組中的峰值,可以得知圖像中最優(yōu)可能的直線參數(shù)。
所以提取直線的Hough變換算法可以概括如下:
(1)在(ρ,θ)范圍區(qū)間,建立一個二位參數(shù)空間,并網(wǎng)格化;
(2)設(shè)置一個累加數(shù)組 A(ρ,θ),并把每個元素置 0;
(3)對圖像空間的每個點(x,y),做 Hough 變換,其對應參數(shù)空間的(ρ、θ)經(jīng)過每個網(wǎng)格,則累加數(shù)組加1;
(4)找出累加數(shù)組中的局部極大值,這個值(ρ,θ)得共線點所在直線就是要檢測的直線。
Hough變換檢測圖像中直線的一般步驟總結(jié)為:對色彩圖像進行灰度處理;其次對灰度圖像進行邊緣檢測,然后對邊緣檢測的結(jié)果作Hough變換,最后得到直線檢測結(jié)果。
提取高速路上視頻圖像的一幀,如圖3。首先對圖像進行灰度處理,為了抑制隨機噪聲又能很好的保護邊緣信息,給圖像做中值濾波平滑,如圖4。其數(shù)學表達式為:
式(4)中:f(x,y)、g(x,y)分別為原始圖像和濾波后圖像。 其次利用sobel算子對濾波后圖像邊緣檢測,如圖5。其數(shù)學表達式為:
最后我們對圖像做Hough變換,提取出車道線,如圖6。
圖3 高速路上的原圖
圖4 中值濾波平滑結(jié)果
圖5 Sobel邊緣檢測結(jié)果
圖6 Hough變換車道線提取結(jié)果
基于先驗知識和直線道路模型,高速路上的車道線是平行線,經(jīng)過透視投影后,在圖像平面中會交于一點。如圖7,點P為兩條車道線的匯交點,O點為車體中心部位,則OP為導航中心線。
圖7 道路模型與導航線
視覺導航是智能車輛研究中的關(guān)鍵之一,而道路識別又是視覺導航中最重要的一塊。本文利用Hough變換對道路圖像進行分析處理,獲取圖像中道路邊緣范圍,計算出導航中心線。為智能車輛的定位與控制提供實時、可靠的信息。
[1]趙保佑.基于視覺的車輛檢測與跟蹤技術(shù)研究[D].武漢理工大學,2009:23-25.
[2]王武宏,沈中杰.智能車輛[M].人民交通出版社,2002:54-56.
[3]馬曉璐.MATLAB圖像處理從入門到精通[M].中國鐵道出版社,2013:201-210.