萬炎炎,潘 勵,劉曉萌
(1.首都師范大學(xué) 資源環(huán)境與旅游學(xué)院,北京100048;2.武漢大學(xué) 遙感信息工程學(xué)院,湖北 武漢430079)
基于遙感影像的車輛檢測在民用和軍事領(lǐng)域有著重要的用途。在交通領(lǐng)域,車輛檢測是優(yōu)化智能交通系統(tǒng)和城市規(guī)劃的基本要求。目前交通上常用感應(yīng)線圈、壓電式檢測器、固定攝像機等地面?zhèn)鞲衅鱽韺崿F(xiàn)車輛檢測與計數(shù),這類設(shè)備不僅覆蓋范圍小,而且價格昂貴,安裝和檢修困難,只能用于城市主干道[1]。當(dāng)前遙感技術(shù)發(fā)展迅速,光學(xué)遙感影像的分辨率已經(jīng)達到1 m以內(nèi),因此基于高分辨率遙感影像的車輛檢測方法研究已經(jīng)成為新的熱點。
早期的遙感影像車輛檢測研究主要集中在高分辨率航空影像上,針對高分辨率衛(wèi)星影像進行車輛檢測的研究還很少,且主要針對稀疏的道路,沒有涉及停車場的車輛檢測,檢測效果也不理想[2]。目前針對衛(wèi)星影像的車輛檢測方法主要有閾值分割法、模板匹配法、神經(jīng)網(wǎng)絡(luò)識別等。Sharma[3]等根據(jù)車輛目標(biāo)與路面灰度值發(fā)生突變的特點,首先獲得一階差分梯度影像來確定候選車輛的位置,再根據(jù)梯度圖像的灰度共生矩陣計算的熵值確定閾值,對梯度圖像進行分割得到車輛目標(biāo)。韓國So HeeJeon,Kiwon Lee, Byung-Doo Kwon利用KOMPSATEOC圖像提出了模板匹配算法,這種算法可自動獲取遙感圖像中已知目標(biāo)的坐標(biāo)和數(shù)量,但是當(dāng)一個具體的目標(biāo)被檢測出來時會受到目標(biāo)背景的影響[4]。劉建鑫[5]比較了結(jié)合紋理分析的徑向基函數(shù)神經(jīng)網(wǎng)絡(luò)(RBFNN)和概率神經(jīng)網(wǎng)絡(luò)(PNN)的車輛檢測效果,通過實驗發(fā)現(xiàn)概率神經(jīng)網(wǎng)絡(luò)具有更好的檢測效果,但是當(dāng)兩車輛距離太近時,該方法不能把車與車分離開。閾值分割法較簡易,但僅對近似車輛計數(shù)有效,正確率75%左右[3]。模板匹配和人工神經(jīng)網(wǎng)絡(luò)的方法正確率相對較高,但需要綜合分析車輛的各種特征,算法比較復(fù)雜,不適合高速實時檢測[6]。
本文利用IKONOS高分辨率影像的灰度信息,分別采用邊緣檢測法、閾值分割法、區(qū)域生長法、點特征提取法等幾種快速算法,對常見的私家車、小型客車、小貨車、公交車等普通車輛進行自動檢測研究,分析比較這幾種方法用于車輛檢測的優(yōu)缺點,并針對閾值分割法的不足進行改進。
圖像分割和特征提取是目標(biāo)分類與識別的重要手段,邊緣檢測、閾值分割、區(qū)域生長和點特征提取是其中經(jīng)典的幾種方法。
邊緣檢測法中常用的算子包括Roberts算子、Prewitt算子、Sobel算子、Laplacian算子、馬爾算子等,考慮到利用邊緣點的二階導(dǎo)數(shù)為零進行邊緣檢測對噪聲比較敏感,且常常產(chǎn)生雙邊緣,本文采用Roberts算子、Prewitt算子和Sobel算子探討車輛自動檢測。
Roberts算子是一種利用局部差分尋找邊緣的算子,考慮圖像的2×2鄰域進行處理。Roberts模板如圖1所示。
圖1 Roberts模板示意圖
為了在檢測邊緣的同時有效減少噪聲等因素的影像,Prewitt算子加大了邊緣檢測算子模板的大小,將模板從2×2增加到3×3。由此來計算差分算子,在檢測圖像邊緣點的同時,還能抑制圖像中噪聲的影像。Prewitt算子共有兩個卷積核,如圖2所示,分別來計算x方向和y方向的Prewitt梯度,取值較大的作為該像素的灰度值,處理完畢后就得到一幅邊緣強度圖像。
圖2 Prewitt模板示意圖
Sobel算子應(yīng)用方法跟Prewitt算子相似,在Prewitt算子基礎(chǔ)上,對4-鄰域采用帶權(quán)的方法計算差分。Sobel算子模板見圖3。
圖3 Sobel模板示意圖
最大類間方差法又叫Otsu法,其基本思想是計算目標(biāo)區(qū)與背景區(qū)之間的方差,當(dāng)方差為最大時,就認(rèn)為此時為最優(yōu)分割,從而自動確定分割閾值[7]。
設(shè)一幅圖像的像素總數(shù)為S,灰度范圍為[0,K-1],灰度值為i的像素總個數(shù)為ni,于是有像素灰度值為i的概率為:
把圖像中的像素用閾值T按灰度級來分成2類,分別用C0和C1來表示。C0類表示灰度值為[0,T-1]之間的像素,C1類表示灰度值為[T,K-1]之間的像素。則C0和C1的概率分別為w0和w1:
C0和C1的像素灰度均值分別為u0和u1:
整幅圖像的灰度均值為:
類間方差可由式(7)計算:
讓閾值T分別取[0,K-1]之間的各個值,然后按照上述方法計算2類的類間方差。當(dāng)?shù)玫降念愰g方差σ2為最大時,就認(rèn)為此時的T為最佳閾值,用最佳閾值對圖像進行二值化,完成圖像分割。
區(qū)域生長是一種根據(jù)事前定義的相似性準(zhǔn)則將像素或子區(qū)域聚合成更大區(qū)域的過程?;舅枷胧窃趫D像上選取一組種子點,將與種子點性質(zhì)相似的像素附加到生長區(qū)域的每個種子上。這些性質(zhì)可以包括灰度、顏色、紋理和形狀等。區(qū)域生長在實際應(yīng)用中有以下3種原則需要注意:
1)種子點選取的原則:可以按照某種規(guī)則自動選取,也可以根據(jù)需要手動選取。
2)相似性準(zhǔn)則的確定:可根據(jù)不同原則制定,目的是確保有相似性質(zhì)的鄰域像素能合并到種子點的區(qū)域內(nèi)。
3)區(qū)域生長的終止原則:當(dāng)沒有像素滿足加入某個區(qū)域的條件時,區(qū)域生長就會停止。
提取點特征的算子稱為興趣算子或有利算子,即應(yīng)用某種算法從影像中提取我們所感興趣并有利于某種目的的點。比較知名的興趣算子有Moravec算子、Forstner算子與Harris算子等。
Moravec算子是一種利用灰度方差提取點特征的算子,主要是在4個方向上,選擇具有最大、最小灰度方差的點作為特征點。
Forstner算子通過計算各像素的Robert梯度和像素(c,r)為中心的一個窗口(如5×5)的灰度協(xié)方差矩陣,在影像中尋找具有盡可能小而接近圓的誤差橢圓的點作為特征點。
Harris角點提取算法是Chris Harris和Mike Stephens在H.Moravec算法的基礎(chǔ)上發(fā)展出的通過自相關(guān)矩陣的角點提取算法,又稱Plessey算法。這種算子受信號處理中自相關(guān)函數(shù)的啟發(fā),給出與自相關(guān)函數(shù)相聯(lián)系的矩陣M。M陣的特征值是自相關(guān)函數(shù)的一階曲率,如果2個曲率值都高,那么就認(rèn)為該點是角點特征。以上3種具體的算法可參考文獻 [8]。
本文采用由全色波段和多光譜波段合成的1 m分辨率的IKONOS影像,實驗區(qū)截取了美國博伊西州立大學(xué)的一個停車場的影像,大小為180×333。采用邊緣檢測、閾值分割、區(qū)域生長和點特征提取4種方法,分別進行車輛檢測實驗,實驗結(jié)果如圖4所示。
圖4a為邊緣檢測的實驗結(jié)果,三種算子基本都能正確檢測出車輛目標(biāo),Roberts算子檢測結(jié)果稍差,深色車輛檢測結(jié)果不明顯;Prewitt算子和Sobel算子檢測結(jié)果差別不大,這兩者對灰度漸變低噪聲的圖像有較好的檢測效果[9]。圖4b為最大類間方差閾值分割的結(jié)果,車輛誤檢率很高,檢測出來的車輛大概只有一半左右,而且基本上都是淺色車輛,效果很不理想。圖4c為區(qū)域生長的檢測結(jié)果,以45為閾值,檢測成功率較高,僅存在少量噪聲。圖4d為點特征提取的檢測結(jié)果,Moravec算子檢測正確率較高,但是漏檢率很高;Forstner算子正確率較低,很多非車輛目標(biāo)被誤檢為車輛目標(biāo),由于Forstner算法對角點更敏感,導(dǎo)致很多地面停車線也被提取為特征點;Harris算法提取的點數(shù)最少,而且基本沒有誤檢,僅有少量不明顯的目標(biāo)未被檢測出來。
圖4 車輛檢測結(jié)果
對以上4種方法從檢測率和正確率方面進行了定量統(tǒng)計,結(jié)果如表1和表2所示。從檢測率來看,邊緣檢測、區(qū)域生長以及Forstner點特征提取檢測率最高,即漏檢最少。就正確率而言,Roberts算子邊緣檢測和Moravec點特征提取算子最高。由于點特征提取算法提取得到的特征點數(shù)經(jīng)常會多于車輛數(shù),導(dǎo)致一輛車被提取到多個特征點而難以進行車輛計數(shù)與統(tǒng)計。由于閾值分割對深色車輛不敏感,使得檢測率較低。綜合考慮4種方法的檢測率和正確率,基于邊緣提取的車輛檢測效果最好,其次是區(qū)域生長法。
表1 邊緣檢測、閾值分割和區(qū)域生長的結(jié)果統(tǒng)計表
表2 點特征提取結(jié)果統(tǒng)計表
為了進一步分析4種方法的檢測效率,對4種方法的計算速度進行了統(tǒng)計,結(jié)果如表3所示。點特征提取算子算法比較復(fù)雜,運算相對較慢。閾值分割和區(qū)域生長是圖像分割領(lǐng)域的經(jīng)典算法,算法結(jié)構(gòu)簡單,耗時最短。邊緣檢測運行速度也較快,并且在多數(shù)情況下能獲得較好的結(jié)果。
表3 4種車輛檢測方法的耗時統(tǒng)計表
考慮到閾值分割法運行速度快、自動化程度高,若提高其分割效果,閾值分割法更適用于車輛實時自動檢測。由于深色車輛與路面顏色相差太小,使得閾值分割法檢測的車輛基本都為白色車輛。針對這一問題,本文采用影像灰度線性變換對算法進行改進,對原圖用1.7的系數(shù)進行灰度線性變換,再進行最大類間方差閾值分割得到的結(jié)果如圖5所示。
圖5a為原圖經(jīng)線性變換的結(jié)果,對其用最大類間方差法分割得到圖5b,線性變換后深色車輛與路面之間的對比度有明顯的提高,但白色車輛與路面的灰度差縮小,因此對線性變換前后的結(jié)果合并如圖5c。合并以后可同時檢測出淺色車輛和深色車輛,檢測率可達95%以上,但此方法在提高檢測率的同時也帶來了一些噪聲,正確率為90%左右,但與未進行線性變換改進前的閾值分割結(jié)果相比,檢測率由原來的50.5%提高到95%。
圖5 經(jīng)線性變換以后的閾值分割結(jié)果
本文基于高分辨率遙感影像的灰度信息,對邊緣檢測、閾值分割、區(qū)域生長和點特征提取4種方法的車輛檢測效果進行了探討,并針對閾值分割法的不足進行了改進。由實驗結(jié)果可知,邊緣檢測效果最好;區(qū)域生長法的檢測結(jié)果比邊緣檢測稍差,但是具有更快的檢測速度?;谟跋窕叶刃畔⑦M行車輛檢測會受到陰影、路面標(biāo)線、路旁非車輛目標(biāo)等的干擾,如何減少這些干擾需要進一步進行實驗探究。此外,如何在算法中減少人工干預(yù),提高自動化程度也是一個應(yīng)該考慮的問題。
[1]劉珠妹,劉亞嵐,譚衢霖,等.高分辨率衛(wèi)星影像車輛檢測研究進展[J].遙感技術(shù)與應(yīng)用,2012,27(1):8-9
[2]Jin X, Davis C H.Vector-guided Vehicle Detection from High-Resolution Satellite Imagery[C].Geoscience and Remote Sensing Symposium, 2004.
[3]Sharma G, Merry C J, Goel P, et al.Vehicle Detection in 1m Resolution Satellite and Airborne Imagery[J].International Journal of Remote Sensing, 2006, 27(4): 779-797
[4]Jeon S H, Lee K, Kwon B D.Application of Template Matching Method to Traffic Feature Detection using KOMPSAT EOC Imagery[C].Geoscience and Remote Sensing Symposium, 2005.
[5]劉建鑫.基于高分辨率衛(wèi)星影像的車輛檢測算法研究 [D].大連:大連海事大學(xué), 2008
[6]Zeng H, Hu X.An Antibody Networks Approach for Vehicle Detection from High Resolution Satellite Imagery[J].Journal of Remote Sensing, 2009, 13(5):913-927
[7]劉海波,沈晶,郭聳.VisualC++數(shù)字圖像處理技術(shù)詳解[M].北京:機械工業(yè)出版社,2010
[8]張劍清,潘勵,王樹根.攝影測量學(xué)[M].武漢:武漢大學(xué)出版社, 2003
[9]馬艷,張治輝.幾種邊緣檢測算子的比較[J].工礦自動化,2004,1(2):54-56