陳 庚,李 擎,時(shí)佳斌,王超杰
(北京信息科技大學(xué) 高動(dòng)態(tài)導(dǎo)航技術(shù)北京市重點(diǎn)實(shí)驗(yàn)室,北京100101)
基于機(jī)器視覺的無人車路徑識(shí)別是指通過圖像攝取裝置將車前場(chǎng)景轉(zhuǎn)換成圖像信號(hào),根據(jù)像素分布和亮度、顏色等信息將道路分割出來,進(jìn)而實(shí)現(xiàn)路徑識(shí)別。
圖像分割技術(shù)是將圖像分為若干個(gè)特定的、具有獨(dú)特性質(zhì)、互相不重疊的區(qū)域,一個(gè)區(qū)域內(nèi)的像素都具有某一個(gè)相同的屬性,它是由圖像處理到圖像分析的關(guān)鍵步驟。圖像分割一直是圖像處理中的難點(diǎn)。近年來,隨著各學(xué)科許多新理論和新方法的提出,人們也提出了許多與一些特定理論、方法和工具相結(jié)合的分割技術(shù)。
現(xiàn)有的圖像分割方法主要分為以下幾類[1]:1)基于閾值的分割方法,常用的有直方圖閾值法最大熵法等;2)基于區(qū)域的分割方法,如區(qū)域生長(zhǎng)和區(qū)域分裂合并;3)基于邊緣的分割方法,成熟的算子有Roberts 算子、Sobel 算子和Canny 算子等;4)基于聚類的分割方法,常用的聚類方法有K 均值聚類、模糊C 均值聚類和分層聚類。
由Vincent L 等人[2]提出的分水嶺分割算法具有計(jì)算負(fù)擔(dān)輕、分割精度高等優(yōu)點(diǎn),在圖像分割領(lǐng)域引起了廣泛的關(guān)注。Canny 邊緣算子是基于最優(yōu)化思想推導(dǎo)出來的,該算子采用高斯函數(shù)對(duì)圖像作平滑處理,因此,具有較強(qiáng)的抑制噪聲的能力。基于圖論的方法已經(jīng)應(yīng)用到圖像分割領(lǐng)域,將一幅采集到的圖像建立一個(gè)帶權(quán)的無向圖,每一個(gè)像素代表圖中的一個(gè)節(jié)點(diǎn),像素之間的某種近似關(guān)系為邊上的權(quán)值,然后應(yīng)用聚類或者分組的方法對(duì)這些點(diǎn)進(jìn)行劃分,進(jìn)而可以完成對(duì)圖像的分割[3]。
本文將分水嶺算法、中值濾波、邊緣檢測(cè)、圖論、區(qū)域生長(zhǎng)等方法結(jié)合起來進(jìn)行圖像分割:1)分水嶺算法將圖像劃分為內(nèi)部相似的小區(qū)域;2)提取圖像邊緣;3)根據(jù)邊緣信息進(jìn)行初合并;4)使用改進(jìn)的區(qū)域生長(zhǎng)算法將相似的區(qū)域進(jìn)一步合并。
1)分水嶺算法
分水嶺算法是基于數(shù)學(xué)形態(tài)學(xué)的一種圖像分割方法,該方法在滿足圖像的一致性和峰值信噪比的情況下具有較好的分割效果,不然將產(chǎn)生過分割現(xiàn)象[4,5]。近年來,基于形態(tài)學(xué)的分水嶺分割算法因其計(jì)算速度快,能精確定位圖像的邊緣而受到極大關(guān)注。
分水嶺算法基本思想是把圖像看作是測(cè)地學(xué)上的拓?fù)涞孛?,圖像中每一點(diǎn)像素的灰度值表示該點(diǎn)的海拔高度,每一個(gè)局部極小值及其影響區(qū)域稱為集水盆,而集水盆的邊界則形成分水嶺。
分水嶺變換有多種實(shí)現(xiàn)方法,本文采用Vincent L 等人給出的實(shí)現(xiàn)方法,此方法速度快、結(jié)果準(zhǔn)確,具有實(shí)用價(jià)值。
2)Canny 算子
Canny 算子邊緣檢測(cè)的基本原理是[6]:采用二維高斯函數(shù)的任一方向上的一階方向?qū)?shù)為噪聲濾波器,通過與圖像卷積進(jìn)行濾波,然后對(duì)濾波后的圖像尋找圖像梯度的局部極大值,以確定圖像邊緣。Canny 邊緣檢測(cè)算子是一種最優(yōu)邊緣檢測(cè)算子。
由于分水嶺算法對(duì)噪聲比較敏感,很容易出現(xiàn)過分割的問題,并不能將圖像分割為預(yù)計(jì)的結(jié)果,所以,需要將過分割的區(qū)域合并。在使用Canny 算子提取圖像邊緣之前首先采用中值濾波方法平滑圖像,中值濾波可以去除圖像中的隨機(jī)噪聲,并且不會(huì)使邊緣模糊。它的效果取決于兩個(gè)要素:鄰域的空間范圍和中值計(jì)算中涉及的像素?cái)?shù)。
使用分水嶺算法分割圖像,得到一個(gè)過分割的二值圖像。原圖中很多相對(duì)平滑的區(qū)域也存在著過分割的現(xiàn)象,這些區(qū)域是一個(gè)整體,并且基本沒有邊緣信息,可以將所有沒有包含邊緣信息的相鄰區(qū)域合并。圖1(a)中一共有14 個(gè)區(qū)域,有一條邊緣,除了區(qū)域2,3,4 和8,將其余區(qū)域合并為一個(gè)大區(qū)域,如圖1(b)所示,這樣已經(jīng)合并了大部分區(qū)域。
圖1 基于邊緣信息區(qū)域合并示意圖Fig 1 Region merging diagram based on edge information
區(qū)域生長(zhǎng)是指將成組的像素或區(qū)域發(fā)展成更大區(qū)域的過程[7],具體是先對(duì)每個(gè)需要分割的區(qū)域找一個(gè)種子像素作為生長(zhǎng)的起點(diǎn)[8],然后將種子像素周圍領(lǐng)域中與種子像素有相同或相似性質(zhì)的像素合并到種子像素所在區(qū)域中[9]。將這些新像素當(dāng)作新的種子像素繼續(xù)進(jìn)行上面的過程,直到再?zèng)]有滿足條件的像素可被包括進(jìn)來。本文的圖像分割算法應(yīng)用于路徑識(shí)別,為了節(jié)省運(yùn)算時(shí)間,只需要把無人車可行區(qū)域分割出來。
2.2.1 HSI 顏色空間
HSI(hue-saturation-intensity)顏色模型用H,S,I 三參數(shù)描述顏色特性,其中,H 定義顏色的波長(zhǎng),稱為色調(diào);S 表示顏色的深淺程度,稱為飽和度;I 表示強(qiáng)度或亮度。HSI 空間模型中的H 屬性可以較準(zhǔn)確地反映顏色種類,對(duì)外界光照變化的影響敏感度低,并且這3 個(gè)屬性互不關(guān)聯(lián),與人眼感知的顏色特征一一對(duì)應(yīng),比較適合用來表達(dá)不同色彩間的差異。
2.2.2 區(qū)域鄰接圖
區(qū)域鄰接圖(region adjacency graph,RAG)是一種表示圖像中各個(gè)區(qū)域關(guān)系的數(shù)據(jù)結(jié)構(gòu)[10]。合并過程以圖G 為基礎(chǔ),各條邊代表權(quán)重,權(quán)重e(i,j)由方程(1)計(jì)算得出,第一項(xiàng)表示相鄰區(qū)域間色調(diào)的差值,第二項(xiàng)表示相鄰區(qū)域間灰度的差值
其中,ε1和ε2為系數(shù),且
2.2.3 基于最小生成樹的區(qū)域合并
1)基于最小生成樹的合并順序
本文的圖像分割算法應(yīng)用于路徑識(shí)別,只需要把無人車可行區(qū)域分割出來。一般路面總會(huì)有些區(qū)域相對(duì)平整,這部分區(qū)域沒有邊緣信息,在基于邊緣的初始合并后,分割結(jié)果中會(huì)有大面積的空白區(qū)域。合并順序借鑒最小生成樹的思想[11],以空白區(qū)域?yàn)槠鹗键c(diǎn)。
2)停止條件
合并的順序有了一套完整的方案,但是這個(gè)合并的過程需要有一個(gè)停止的條件。在合并過程中,通過相鄰區(qū)域的亮度值(I)確定停止條件。)是Ri第m 次合并后I的平均值,I(x,y)是點(diǎn)(x,y)的I 值,令
第m 次合并后的變化定義為
其中,a 為常數(shù)。
為了檢驗(yàn)本文算法,采集了2 個(gè)實(shí)際路面圖像作為輸入圖像,如圖2(a)、圖3(a)所示。其中圖2(a)是教學(xué)樓的樓道,樓道中存在一個(gè)障礙物;圖3(a)是實(shí)際道路圖片。由于各個(gè)圖像之間的差別,采用分水嶺算法后將圖片分別分為6 300 和3 070 個(gè)區(qū)域,如圖2(b)、圖3(b)所示。結(jié)合邊緣信息得到圖像的初始合并結(jié)果,如圖2(c)、圖3(c)所示,可以看出大部分過分割的區(qū)域已經(jīng)合并在了一起,形成了比較大的空白區(qū)域。進(jìn)一步區(qū)域合并,得到圖2(d)、圖3(d),圖中已經(jīng)把道路和道路中的障礙物分割出來。從結(jié)果看,道路和道路中的障礙物邊界清晰,雖然存在一些誤差,但是不會(huì)影響無人車的行駛。邊界以外的區(qū)域相對(duì)復(fù)雜,為了提高運(yùn)算速度,不能合并至道路的邊界區(qū)域不再進(jìn)行處理,全部當(dāng)作障礙物處理。對(duì)原圖采用Mean Shift 分割算法與本文算法比較,如圖2(e)、圖3(e)所示,從圖中可以看出:整體分割效果完好,但實(shí)際路面中有誤分割的情況。
表1 為兩種分割算法的運(yùn)行時(shí)間。實(shí)驗(yàn)所用的計(jì)算機(jī)為主頻2.5 GHz,內(nèi)存大小4 GB。從表中可以看出本文算法在邊界處雖然有誤分割現(xiàn)象,但是不影響無人車的正常行駛;其優(yōu)點(diǎn)為大大縮短了分割時(shí)間,基本可以滿足無人車的應(yīng)用。
表1 不同算法分割時(shí)間對(duì)比Tab 1 Comparison of segmentation time of different algorithms
圖2 實(shí)驗(yàn)結(jié)果1Fig 2 Experimental results 1
圖3 實(shí)驗(yàn)結(jié)果2Fig 3 Experimental results 2
本文設(shè)計(jì)的圖像分割算法應(yīng)用于無人車的路徑導(dǎo)航,結(jié)合了分水嶺算法、Canny 算子提取邊緣、圖論、區(qū)域合并等眾多經(jīng)典的算法,最終實(shí)現(xiàn)了道路和障礙物的分割,并且輪廓清晰,處理時(shí)間短,可以滿足無人車對(duì)路徑的識(shí)別。但是,本文還存在一些問題,如圖3(d)中存在誤分割的情況,行駛線被識(shí)別為障礙物;當(dāng)無人車在特別復(fù)雜的環(huán)境中行駛時(shí),最大空白區(qū)域不一定是實(shí)際路徑。要解決上述問題并且增加無人車路徑導(dǎo)航的可靠性,還需要紅外、激光、聲吶等傳感器的輔助。
[1] 林開顏,吳軍輝,徐立鴻.彩色圖像分割方法綜述[J].中國圖象圖形學(xué)報(bào),2005,10(1):1-10.
[2] Vincent L,Soille P.Watersheds in digital spaces:An efficient algorithm based on immersion simulations[J].IEEE Trans,PAMI,1991,13(6):583-598.
[3] 馮 林,孫 燾,吳振宇.基于分水嶺變換和圖論的圖像分割方法[J].儀器儀表學(xué)報(bào),2008,29(3):649-653.
[4] 王小鵬,黨建武,王陽萍.一種參數(shù)化的形態(tài)學(xué)分水嶺圖像分割方法[J].鐵道學(xué)報(bào),2013,35(1):66-70.
[5] No?l Richard,Christine Fernandez-Maloigne,Cristian Bonanomi.Fuzzy color image segmentation using watershed transform[J].Journal of Image and Graphics,2013,1(3):157-160.
[6] 張德豐.Matlab 數(shù)字圖像處理[M].2 版.北京:機(jī)械工業(yè)出版社,2012:285-286.
[7] Ning Jifeng,Zhang Lei.Interactive image segmentation by maximal similarity based region merging[J].Pattern Recognition,2010(43):445-456.
[8] 姜慧研,馮銳杰.基于改進(jìn)的變分水平集和區(qū)域生長(zhǎng)的圖像分割方法的研究[J].電子學(xué)報(bào),2012,40(8):1659-1664.
[9] Yu P,Qin A K,Clausi D A.Unsupervised polarimetric SAR image segmentation and classification using region growing with edge penalty[J].IEEE Transactions on Geoscience and Remote Sensing,2012,50(4):1302-1317.
[10]李蘇祺,張廣軍.基于鄰接表的分水嶺變換快速區(qū)域合并算法[J].北京航空航天大學(xué)學(xué)報(bào),2008,34(11):1327-1330.
[11]Navon E,Miller O,Averbuch A.Color image segmentation based on adaptive local thresholds[J].Image and Vision Computing,2005(23):69-85.