胡鵬博,劉曉利,白宏陽
(1.南京理工大學瞬態(tài)物理國家重點實驗室,江蘇 南京 210094;2.南京理工大學能源與動力工程學院,江蘇 南京 210094)
對自然背景中人造目標的分割,閾值分割方法很難取得良好的效果。閾值法的缺陷在于它僅僅考慮了圖像的灰度信息,忽略了圖像中的空間信息。在自然背景中,人造目標會出現(xiàn)光照不均,或者由于自身遮擋造成明顯的亮面和暗面;當背景灰度位于目標亮面、暗面灰度之間時,閾值法幾乎不能分割出完整目標。
Mandelbrot[1]提出的分形理論突破了傳統(tǒng)幾何整數(shù)維的限制,可以從不同尺度來刻畫集合的幾何特性,因此分形模型適合描述具有復雜和不規(guī)則形狀的研究對象。目前,國內(nèi)對這一問題已開展了較多的研究[2-4],提取圖像分形維來區(qū)分自然背景和人造目標,主要方法有:1)基于分數(shù)布朗運動模型的分形維提取方法[5],該方法具有較好的檢測效果,但計算時間太長;2)基于毯子法的分形維提取方法[6],該方法要求逐級計算不同尺度下的上下毯子,才能求出該尺度下的分形維,因此也需要較長的計算時間;3)微分計盒算法[7](DBC),計算速度快,但分形結果不精確。
為克服上述方法在逐點掃描、計算分形維效率低的缺點,本文提出基于分形理論和改進梯度向量流(GVF)動態(tài)輪廓(Snake)模型的人造目標檢測算法。
分形可用于刻畫對象的不規(guī)則性和自相似性。它突破了傳統(tǒng)拓撲整數(shù)維的限制,從測量的角度重新定義了對象的維數(shù),即分形維。這種維數(shù)可以是非整數(shù),在效果上彌補了待觀測對象中小于觀測尺度的細節(jié)的損失。計算圖像分形維的方法中微分計盒維數(shù)是廣泛應用的一種。
微分計盒維數(shù)的思想是:設一幅灰度圖像為f,取圖像f中大小為M×M的圖像區(qū)域,將其分割成e×e的子塊(M/2≥e,e為整數(shù)),令r=M/e,表示分形的尺度。將圖像想像成三維空間{x,y,z}中的曲面,x,y表示平面的坐標,z表示(x,y)處圖像的灰度f(x,y)。在空間中,曲面向xy平面投影出許多e×e的網(wǎng)格,在每一個網(wǎng)格上,假想相應的曲面處于e×e×m的盒子中,其中m=256/r。
不斷改變網(wǎng)格e的大小,可以得到一系列相應的盒子數(shù) N(e),利用最小二乘法對log[N(e)]-log(e)進行擬合,所得直線的斜率即為該圖像M×M區(qū)域的分形維。
分形維表達了一種特征,即具有以下性質[8]:1)具有精細的結構;2)不規(guī)則紋理,無論它的局部或整體都不能用傳統(tǒng)幾何語言描述;3)具有某種自相似或統(tǒng)計特性。因此,自然背景如天空白云、草地、樹木、河流、沙漠等滿足分形維的性質,而人造目標則不具備上述性質。
Snake模型是定義在圖像域內(nèi)的參數(shù)化曲線,以及能量函數(shù),以最小化能量函數(shù)為目標,控制參數(shù)曲線變形,具有最小能量的閉合曲線就是目標輪廓。定義曲線為V(s)= [x(s),y(s)],其中:s是曲線的弧長,在長度歸一化條件下s∈[0,1],構造以目標輪廓線V(s)為變量的能量函數(shù):
式中:Eint(V(s))為曲線的內(nèi)部能量,定義如下:
式(2)用來表征輪廓的固有特性。其中輪廓對弧長的一階和二階導數(shù)項表示其彈性勢能和彎曲勢能。Eext(V(s))為外部能量,一般定義為圖像f的灰度梯度函數(shù),目的是引導曲線演化到梯度較大的目標邊緣處。
上述Snake模型有兩個主要的問題[9]:輪廓的初始位置必須在目標輪廓線附近;難以逼近凹陷的邊界。
GVF Snake模型是一種改進的Snake模型[10],有效彌補了傳統(tǒng)Snake的不足,該方法引入了一個新的靜態(tài)外力場:
稱為梯度向量流(GVF),替代傳統(tǒng)Snake的外力場。u,v表示圖像灰度在x,y兩個方向上的變化,V(x,y)是在滿足如下最小化條件下獲得的,即
初始輪廓在V(x,y)作用下,向真實邊緣逼近,當輪廓的總能量達到最小值時停止逼近,得到的輪廓即為真實輪廓。
如圖1所示,圖1(a)為自然背景下輪船目標原始圖像;圖1(b)為其Canny算子檢測結果,顯然大量背景被檢測出來;圖1(c)為Ostu閾值分割結果,由于背景灰度處于輪船灰度亮暗之間,因此靠閾值分割無法將目標分割出來;圖1(d)為據(jù)上述1.1節(jié)對原圖分塊運用微分計盒算法后得到的分形維圖??梢?,人造目標與背景有明顯的灰度差別。
對分形后的圖像采用Ostu大津分割法,分割出粗略目標,如圖2(a)所示,圖像中除了目標區(qū)域外,還有部分噪聲塊;運用形態(tài)學方法開運算、閉運算去除噪聲,連接目標區(qū)域,結果如圖2(b)所示。
提取輪船目標外輪廓,如圖2(c)所示,作為Snake算法的初始輪廓。
圖1 自然背景下輪船目標分形結果Fig.1 The fractal results of ship target under the background of nature
圖2 輪廓提取過程Fig.2 The process of contour extraction
由于處理圖像中部分目標內(nèi)部結構復雜,很可能會導致目標外輪廓處梯度向量流受到干擾,進而使外輪廓收斂到目標區(qū)域內(nèi)部,偏離了真實輪廓[11]。同理,背景中劇烈的灰度梯度變化同樣會干擾輪廓的正確收斂。因此,對原圖像梯度向量流進行改進,改進方法如下:
1)對原始圖像f求初始輪廓各點位置p(x,y);
2)對每一點p(x,y),確定其鄰域為目標真實輪廓潛在區(qū)域,鄰域大小為36×36,處理后為圖像g,如圖3(a);
3)只對圖像g求梯度向量流,替代原圖GVF。
經(jīng)過改進后,GVF由圖3(b)變?yōu)閳D3(c)??梢?,目標外大部分區(qū)域(圖3(a)中黑色部分)的GVF為0,且目標輪廓邊界區(qū)域的梯度變化劇烈,從而保證初始輪廓不會無限向外收斂到背景中;目標內(nèi)部的部分區(qū)域(黑色部分)GVF為0,避免由于目標內(nèi)部梯度變化劇烈程度強于目標輪廓區(qū)域,而導致初始輪廓收斂到目標內(nèi)部。
GVF Snake模型算法流程圖如圖4所示,每循環(huán)一次,輪廓線進行一次迭代形變,進而逼近梯度變化最大的邊界。循環(huán)次數(shù)N的確定與初始輪廓位置密切相關。
圖3 GVF場示意圖Fig.3 GVF schematic diagram
圖4 GVF Snake模型算法流程圖Fig.4 The flow chart of GVF Snake model algorithm
將上述算法對270幅具有復雜自然背景和人造目標的圖像進行檢測,原圖像素大小為512×512,示例圖像見圖5(a)。選取圖像的背景均比較復雜,具有豐富的的灰度梯度信息;目標大小各異,灰度信息復雜,與背景灰度交錯。經(jīng)驗證,普通閾值分割均無法分割出目標區(qū)域。實驗程序在MATLAB 2009a環(huán)境下編寫,在一臺 Pentium(R)Dual-Core CPU,2.60 Hz,1.96GB RAM 的PC機上進行測試。
實際應用主要針對中、遠距離(5~20km)自然背景中的人造目標進行檢測。成像設備采用可見光CCD攝像頭,視場大小為4°~5°,采集圖像為8位灰度圖像,幀頻為PAL制式(25Hz)。目標可識別像素大小一般為16×16至256×256之間。
微分計盒算法中,將原始圖像分割成多個16×16小區(qū)域(即M=16),對每個上述區(qū)域運用微分計盒法,依次設網(wǎng)格數(shù)e=2,4,8,16,求出相應盒子數(shù),據(jù)最小二乘法求出此區(qū)域分形維。分形后的圖像采用Ostu大津法分割出粗略目標區(qū)域,因為人造目標與自然背景的分形維存在顯著性差異,經(jīng)大量實驗驗證,分割閾值比較均固定,歸一化后變化范圍為0.4~0.45(8位灰度級范圍約102~114)。Ostu大津法分割準則是使目標與背景類間方差最大化的過程,而本文需要盡可能多分割出目標區(qū)域,允許部分背景的存在,以方便Snake輪廓的收斂。因此,分割閾值可以有一定的變化范圍(0~15)。
初始輪廓提取結果見圖5(c),按照上一節(jié)2.3中的步驟對GVF進行調(diào)整,得到最終梯度向量流,用來指導初始輪廓收斂到目標輪廓,輪廓收斂第5次、第10次結果分別見圖5(d)、圖5(e)??梢姡捎诓捎帽疚姆椒ㄌ崛〉降某跏驾喞€已很接近真實目標輪廓,基本上迭代循環(huán)次數(shù)N取10次就能滿足提取要求。
下面分別從檢測率和虛警率兩方面介紹本方法在已建立圖庫中的表現(xiàn)。
表1中的分形算法檢測率指分形算法正確檢測到人造目標的概率。從表中可看出,本方法分形檢測率很高,可以有效檢測出自然背景中的人造目標,但若背景為城市或含公路,則會影響目標檢測。
表1中的分形算法虛警率指分形算法在非目標區(qū)域中檢測出目標的概率。虛警率與圖像拍攝角度有關。如圖6所示,左圖中目標、背景均與CCD攝像頭具有等效間距,右圖中目標類似于左圖目標,而背景(大地)相對于攝像頭由近及遠,具有不同的分形特征,靠近攝像頭的大地紋理清楚細膩,分形維高,易干擾目標,增加虛警率;遠處的大地紋理模糊,分形維低,不會干擾目標。
表1中的Snake輪廓提取率指在分形算法正確提取初始輪廓的目標中,正確提取出目標真實輪廓的比率。從中可以看出,對于大部分測試圖像,初始輪廓可以有效收斂到目標真實輪廓,部分失敗原因在于目標輪廓區(qū)域梯度變化弱于周圍背景梯度變化,從而導致部分初始輪廓向背景收斂,影響目標輪廓結果。
表1 算法效率統(tǒng)計Table.1 The Statistics of Algorithm Efficiency
圖6 不同角度的目標圖像Fig.6 The object image with different angles
將本文采用的微分計盒算法與經(jīng)典分形算法中的毯子法[6]求分形維進行比較,通過Matlab仿真所需時間來比較結果,即調(diào)用Matlab函數(shù)cputime來求程序運行時間差。從結果可以看出本文提出的算法模型極大地縮短了運算時間,見表2(單位:s),其中列出了圖5中前三幅圖像的運行時間和圖庫的運行時間效率。
微分計盒算法對每一小塊圖像區(qū)域獨立求分形維,而毯子算法需計算每一尺度對應的圖像上下毯子,計算量大且內(nèi)存開辟較多;同時,微分計盒算法采用分塊掃描,避開了逐點計算分形維的運算,因而大大縮短了計算時間,使算法的實時性成為可能。
在XU ChenYang[10]的 GVF模型中,初始輪廓迭代次數(shù)一般為40次到上百次,才能逼近真實輪廓線,一般需要15~200s。在本文的GVF Snake算法中,由于初始輪廓已很接近目標輪廓,大大縮小了GVF Snake輪廓收斂次數(shù),一般輪廓迭代次數(shù)控制在15次之內(nèi),所耗時間為3~7s,效率大大提高。
本文提出基于分形理論和改進梯度向量流(GVF)動態(tài)輪廓(Snake)模型的人造目標檢測算法。首先利用微分計盒算法計算圖像各分塊區(qū)域的分形維,粗略分割目標與背景;然后將分割邊界作為Snake模型的初始輪廓,并依據(jù)分形結果修正和整體調(diào)整GVF場強分布;最后運用GVF Snake算法使初始輪廓準確收斂到目標真實邊界。試驗表明,該算法可以把目標從自然背景中準確快速提取出來,具有很好的魯棒性,同時具有通用性,適于不同人造目標的檢測。該算法可以用于復雜背景中人造目標的輪廓檢測,為圖像的進一步分析處理打下良好基礎。
[1]mandelbrot B B.The fractal geometry of nature[M].San Francisco,CA:Freeman,1982.
[2]宿丁,張啟衡.地空背景下目標分形擬合檢測算法[J].儀器儀表學報,2006,29(4):581-589.SU Ding,ZHANG Qiheng.An edge detection algorithm based on fitting fractal model[J].Chinese Journal of Scientific Instrument,2006,26(8):640-641.
[3]朱華,姬翠翠.分形理論及其應用[M].北京:科學出版社,2011.
[4]LIU Wenping,HE Yingde.Fractal features and fuzzy clustering based tree leaf segmentation from images with the complex background[C]//International Conference on Computer,Mechatronics,Control and Electronic Engineering.US:IEEE,2010:317-321.
[5]劉寧波,黃勇,關鍵,等,實測海雜波頻域分形有特性分析[J].電子與信息學報,2012,34(4):929-935.LIU Ningbo,HUANG Yong,GUAN Jian,et al.Fractal analysis of real sea clutter in frequency domain[J].Journal of Electronic & Information Technology.2012,34(4):929-935.
[6]Shmuel Peleg,Joseph Naor.Multipleresolution texture analysis and classification[J].IEEE Trans.Pattern A-nal.Machine Intell,1984,6(4):518-519.
[7]楊紹清,趙曉哲,林洪文.基于相對微分計盒法的人造目標分形檢測[J].光學技術,2006,32(8):58-60.YANG Shaoqing,ZHAO Xiaozhe,LIN Hongwen.Fractal artificial detection based on relative differential boxcounting method[J].Optiacl Technique.2006,32(8):58-60.
[8]陳永強,陸安生,胡漢平.基于分形的圖像分析方法綜述[J].計算機工程與設計,2005,26(7):1781-1783.CHEN Yongqiang,LU Ansheng,HU Hanping.Summary of image analysis method based on fractal[J].Computer Engineering and Design,2005,26(7):1781-1783.
[9]范延濱,劉彩霞,賈世宇,等.GVF Snake模型中初始輪廓線設置算法的研究[J].中國圖象圖形學報,2008,13(1):58-63.FAN Yanbin,LIU Caixia,JIA Shiyu,et al.The research of contour initialization algorithm in GVF snake model[J].Journal of Image and Graphics,2008,13(1):58-63.
[10]XU Chenyang,Prince Jerry L.Snakes,shapes,and gradient vector flow[J].IEEE Transactions on image processing,1998,7(3):359-369.
[11]齊華,張健,劉軍,等.基于梯度向量流模型的圖像分割方法[J].探測與控制學報,2009,31(6):16-20.QI Hua,ZHANG Jian,LIU Jun,et al.Image segmentation method on GVF snake model[J].Journal of Detection and Control,2009,31(6):16-20.