王志鶴,行 坤,崔 寧,喻忠軍
(1.中國科學(xué)院空天信息創(chuàng)新研究院,北京 100094;2.中國科學(xué)院大學(xué)電子電氣與通信工程學(xué)院,北京 100049)
船舶尾跡有助于估計船舶的真實位置、航速和航向等信息[1],因此,準(zhǔn)確地進行SAR 圖像中船舶尾跡的自動檢測具有重要意義。在SAR圖像中,船舶尾跡經(jīng)常表現(xiàn)為亮線或暗線,而Radon 變換可以將圖像中的亮暗線轉(zhuǎn)換為變換域中的峰谷值,尾跡檢測問題也就變成了峰谷值提取問題,并且Radon 變換的積分過程可以有效地平滑噪聲,變換域中的信噪比高于圖像域,因此,Radon 變換被廣泛運用于SAR 圖像中的船舶尾跡檢測,但是還面臨以下4 個問題:1)非尾跡引起的亮點會極大地影響檢測結(jié)果;2)積分線上像素點數(shù)目不同導(dǎo)致變換域中出現(xiàn)“雙X 狀亮線”[2];3)尾跡對應(yīng)的變換域中峰谷值的提取困難;4)只能得到尾跡所在的直線,無法確定起點和方向。
文獻[3]采用小波變換抑制圖像噪聲,再采用Radon 變換檢測尾跡。文獻[4]首先利用形態(tài)成分分離算法分割出圖像中的尾跡結(jié)構(gòu)成分,再對尾跡結(jié)構(gòu)成分進行局部Radon 變換,最后通過峰值聚類決策確定尾跡具體位置。文獻[5]采用基于Radon 變換的兩級低秩加稀疏分解(LRSD)算法以抑制海雜波,實現(xiàn)快速檢測海面上的稀疏目標(biāo)尾跡。文獻[6]提出了一種基于小波與Radon 變換的尾跡檢測算法。文獻[7]采用頂帽變換提高SAR 圖像中尾跡與背景的對比度,從而更好地檢測尾跡。文獻[8-10]提出了一種結(jié)合水動力理論的基于Radon 的尾跡檢測算法,不同于傳統(tǒng)的閾值邏輯,其采用了成對搜索算法(搜索邏輯)提取變換域中的峰谷值點,并通過圖像域中的衡量指標(biāo)剔除虛警,實現(xiàn)了尾跡的高檢測率。文獻[11-12]將尾跡檢測問題轉(zhuǎn)化為基于Radon 變換的稀疏非凸廣義極大極小凹(GMC)正則化問題。
該文提出的算法有效克服了前述Radon 變換用于尾跡檢測的4 個問題。首先通過引入足夠大小的掩膜遮蓋船舶在SAR 圖像中形成的亮點,去除了其對檢測結(jié)果的影響;其次通過結(jié)合梯度的歸一化Radon 算法消除了變換域中“雙X 狀亮線”的影響,并增強了變換域中的峰谷值;再通過成對搜索算法[8]提取變換域中的峰谷值,得到了候選的尾跡直線;最后通過尾跡本身的特性和額外的船舶信息剔除虛警,得到了真實的尾跡,同時確定了尾跡的起點和方向。
船舶尾跡可分為4 類[13]:1)湍流尾跡;2)窄V 型尾跡;3)開爾文尾跡;4)內(nèi)波尾跡。在足夠粗糙的海面背景上,船舶尾跡附近的海表面波受到抑制,形成了相較背景更為平滑的區(qū)域,雷達回波較小,在SAR圖像中表現(xiàn)為沿著船跡有一定寬度的暗線狀特征,該特征被稱為湍流尾跡,是SAR 圖像中最常見的尾跡結(jié)構(gòu)。在湍流尾跡的兩側(cè)有時可以看到亮線。有兩種情況,一種是由小尺度的布拉格散射波產(chǎn)生的,另一種是湍流尾跡的亮邊。這里統(tǒng)一將與湍流尾跡夾角在10°范圍以內(nèi)出現(xiàn)的亮線歸類為窄V 型尾跡,10°是經(jīng)驗值。開爾文尾跡由橫波、發(fā)散波和尖波組成,開爾文尾跡表面起伏最大的區(qū)域位于船跡兩側(cè)16°~19.5°內(nèi),在這個區(qū)域內(nèi)橫波和發(fā)散波相干涉形成尖波,尖波表現(xiàn)為亮線,稱為開爾文臂,兩側(cè)開爾文臂的夾角約為39°。內(nèi)波尾跡是船舶行駛過程中,對密度躍層和溫度躍層進行擾動產(chǎn)生的,內(nèi)波尾跡呈現(xiàn)為V 型,但暗波和亮波交替出現(xiàn),大致與船跡平行。由于船尾產(chǎn)生的尾跡的振幅非常低,所以實際上只能檢測到由船首產(chǎn)生的尾跡。
根據(jù)上述船舶尾跡研究構(gòu)建了一個基礎(chǔ)的船舶尾跡模型,即中間是一條暗湍流尾跡,兩側(cè)可能出現(xiàn)亮窄V 型尾跡和亮開爾文尾跡,內(nèi)波尾跡形成條件苛刻不考慮,尾跡的交點是船首,如圖1(a)所示。其中,Δθv表示窄V 尾跡和湍流尾跡的夾角,范圍為0°~10°;Δθk表示開爾文尾跡和湍流尾跡的夾角,范圍為16°~19.5°。圖1(b)為一幅符合尾跡模型的實際SAR 圖像中的船舶尾跡。尾跡模型在變換域中對應(yīng)的峰谷值具有固定的結(jié)構(gòu),即中間是一個谷值,兩側(cè)可能出現(xiàn)兩對峰值?;谠摻Y(jié)構(gòu)提出的成對搜索算法可以有效地提取變換域中尾跡對應(yīng)的峰谷值。由于湍流尾跡是具有一定寬度的暗平滑區(qū)域,其梯度值較小,而窄V 型尾跡表現(xiàn)為窄亮線、開爾文尾跡表現(xiàn)為起伏的波紋,兩者的梯度值都較大,如圖1(c)所示。梯度值和灰度值大小關(guān)系一致,可以利用梯度值改進Radon變換,該文將在2.2節(jié)中進行詳細(xì)闡述。
圖1 尾跡圖像
Radon 變換將圖像域中的點映射為變換域中的一條曲線,并且同一直線上的點映射的曲線交于同一點,因此Radon 變換可以實現(xiàn)將圖像域的一條直線ρ=xcosθ+ysinθ映射成變換域中的一個點(ρ,θ),如圖2 所示。連續(xù)圖像的Radon 變換定義為[14]:
圖2 Radon變換示意圖
其中,D為整個圖像域,f(x,y)為圖像上(x,y)像素點的灰度值,ρ為原點到直線的距離,θ為x軸與直線的垂線之間的夾角,δ為Dirac delta 函數(shù)。
由于處理的圖像經(jīng)過預(yù)處理后帶有掩膜,被遮蓋的像素點不參與計算,并且不同直線上的像素點數(shù)目各不相同,使得圖像域中的直線對于變換域的貢獻不均勻。為解決該問題,需要將結(jié)果歸一化,即每個累加和除以積分路徑的實際長度,這樣掩膜中像素點不會影響累加結(jié)果,并且使每個像素點對于變換域的貢獻相同。
文中進一步考慮SAR 圖像中尾跡的梯度特性,湍流尾跡上的像素點梯度值比背景梯度值小,窄V型尾跡和開爾文尾跡梯度值比背景梯度值大。這與尾跡的灰度值與背景的灰度值關(guān)系一致,可以利用梯度值調(diào)節(jié)每個像素點的貢獻值,增強變換域中的峰谷值,使其更易被檢測到。結(jié)合梯度的歸一化,Radon 算法步驟可總結(jié)如下:
1)得到結(jié)合梯度的Radon 變換結(jié)果R如下:
其中,D為整個圖像域,M為掩膜,D-M表示在掩膜上的像素點不參與計算,g(x,y)為像素點(x,y)的梯度值。
2)計算帶掩膜圖像的直線長度,統(tǒng)計空間L表示每個單元(ρ,θ)的積分線長度,L計算式如下:
3)對變換結(jié)果R進行歸一化處理,得到最終結(jié)合梯度的歸一化Radon 變換Rnor為:
文中提出的算法考慮實際情況,直接處理大尺度的SAR 圖像,主要分為3 步:預(yù)處理、尾跡檢測和尾跡驗證。算法流程圖如圖3 所示。
圖3 算法流程圖
預(yù)處理分為3 個步:定位、初步提取船舶信息和掩膜。
1)定位:在大幅SAR 圖像定位可能出現(xiàn)尾跡的區(qū)域,首先需要進行船舶檢測,文中采用文獻[15]提出的CFAR 檢測器。其次,生成以船舶為中心的圖像子塊,該圖形子塊應(yīng)足夠大,以包含船舶尾跡,同時又不應(yīng)過大,以免導(dǎo)致圖像中包含過多的干擾信息。圖像子塊的大小一般取M=3 000/rs,實驗結(jié)果表明,該尺寸包含足夠的尾跡信息,其中,rs為SAR 圖像分辨率,單位為m。
2)初步提取船舶信息:利用最小外接矩形算法[16]處理CFAR檢測后得到的二值圖像,可以預(yù)估船舶的長、寬和航向,船舶外接矩形的長邊方向即預(yù)估的航向。這里得到的航向是湍流尾跡的衡量指標(biāo)之一,因為湍流尾跡方向也表示船舶航向,所以兩者的角度差不會很大,該指標(biāo)可以有效剔除虛警。因為湍流尾跡預(yù)估的航向更為準(zhǔn)確,所以航向以湍流尾跡方向為準(zhǔn)。
3)掩膜:非尾跡引起的亮點會對基于Radon 變換的算法檢測結(jié)果造成不利的影響,可以用矩形掩膜直接遮蓋住這些亮點。該掩膜是以船舶為中心的矩形,在方位向上的大小是2a,其中,a是利用預(yù)估的船舶最大航速和SAR 輔助數(shù)據(jù)估計的最大預(yù)期方位偏移[8]。若處理的SAR 圖像沒有足夠的輔助數(shù)據(jù),則可簡單地根據(jù)圖像子塊尺寸M得到a[11],文中取a=M/8。在距離向上的大小是3r,r是船舶在距離向上的長度,可以根據(jù)船舶外接矩形得到。帶掩膜的圖像子塊如圖4所示,圖像橫軸為距離向,縱軸為方位向。
圖4 帶掩膜的圖像子塊
尾跡檢測分為3 部分:
1)利用結(jié)合梯度的歸一化Radon 算法對帶掩膜的圖像子塊進行處理,得到變換域圖像。
2)限定搜索區(qū)域,船舶產(chǎn)生的尾跡對應(yīng)的峰谷值,只可能出現(xiàn)在變換域圖像(橫軸為夾角θ,縱軸為距離ρ)中的兩條正弦曲線之間的限定區(qū)域內(nèi),曲線公式如下:
其中,a是3.1 節(jié)提到的最大預(yù)期方位偏移,式中加上a/5 是防止曲線起點和終點處的峰谷值被遺漏。
3)成對搜索算法提取變換域圖像中的峰谷值,得到候選尾跡直線。
文獻[8]提出的成對搜索算法的核心思路是認(rèn)為船舶尾跡具有一個基礎(chǔ)尾跡模型,變換域中存在可能的一個谷值點和4 個峰值點,分別對應(yīng)可能成像的尾流結(jié)構(gòu):暗湍流尾跡、兩個亮窄V型尾跡和兩個亮開爾文尾跡。首先在變換域中搜索出一個灰度值差異最大的點對,對應(yīng)于湍流尾跡和一個窄V型尾跡(這里定義為第一個窄V 型尾跡)。根據(jù)尾跡模型,兩者夾角在10°范圍內(nèi),取大小為10°的窗口內(nèi)灰度的最大值fmax和最小值fmin計算差值,與文獻[8]不同的是,文中提出的算法采用的是根據(jù)式(6)算出的加權(quán)差值diff:
其中,g1、g2是權(quán)值,用于調(diào)節(jié)暗尾跡和亮尾跡對加權(quán)差值貢獻的比重,因為有時圖像中亮線(可能是亮尾跡或海洋現(xiàn)象)過于明亮,導(dǎo)致窗口內(nèi)的最大值過大,其差值超過了真正的湍流尾跡和窄V 型尾跡對應(yīng)的點對的差值,從而出現(xiàn)誤檢,所以取g2>g1偏重于最小值fmin,可以有效地避免這種情況。然后搜索第二個窄V 型尾跡,在以谷值點為中心的第一個窄V 型尾跡的對稱側(cè)。最后搜索開爾文尾跡,在以谷值點為中心的兩側(cè),根據(jù)尾跡模型,開爾文尾跡和湍流尾跡的夾角范圍為16°~19.5°,窗口大小取16°~19.5°。
尾跡檢測得到的結(jié)果是變換域圖像中的5 個點,每個點用坐標(biāo)(ρ,θ)表示,對應(yīng)圖像域中的5 條直線,即候選的尾跡直線,必須驗證是否是真正的尾跡結(jié)構(gòu)。驗證的基本思路:湍流尾跡上的像素點的灰度值要比背景均值小,并且湍流尾跡方向為船舶航向;窄V 型尾跡和開爾文尾跡上像素點的灰度值比背景均值大,并且開爾文尾跡上像素點的梯度值比背景梯度均值大。這里額外在梯度圖上對開爾文尾跡進行驗證,是因為開爾文尾跡表現(xiàn)為上下起伏的波紋,有時其像素點并不明亮,但是波紋起伏明顯時梯度值較大。根據(jù)以上描述確定衡量指標(biāo)θd、fm和gm。θd=abs(θt-θr),fm=Iw/I-1,gm=gw/g-1,其中,θr為船舶外接矩形的長邊與距離向之間角度,θt為候選湍流尾跡直線與距離向之間的角度,Iw為候選尾跡上像素點的平均灰度值,gw為候選尾跡上像素點梯度的平均灰度值,I為整個圖像子塊的平均灰度值,g為整個圖像子塊梯度圖的平均值。
值得注意的是,真實的尾跡是起始于船舶位置的半直線,需要確定尾跡的起點和方向。為此,通過船舶中心位置的平行于方位向的直線和候選尾跡直線的交點,將候選尾跡直線分割為兩個半直線,這樣將得到10 條半直線作為候選的尾跡。驗證步驟如下:
1)確定湍流尾跡。首先衡量是否滿足指標(biāo)θd<30°,其次選擇平均灰度值較低的候選湍流尾跡半直線,最后如果該半直線的衡量指標(biāo)fm<-0.05,則確定為湍流尾跡。若未檢測出湍流尾跡,則認(rèn)為整個圖像子塊中無尾跡。
2)確定窄V型尾跡。選擇位于湍流尾跡兩側(cè)±45°內(nèi)的候選窄V 型尾跡半直線,如果該半直線的衡量指標(biāo)fm>0.1,則確定為窄V 型尾跡。
3)確定開爾文尾跡。同樣選擇位于湍流尾跡兩側(cè)±45°內(nèi)的候選開爾文尾跡半直線,如果該半直線的衡量指標(biāo)fm>0.2或者gm>0.3,則確定為開爾文尾跡。
尾跡的起點是上述分割候選尾跡直線的交點,根據(jù)交點位置,并將衡量指標(biāo)fm作為權(quán)值加權(quán),可以求得尾跡頂點,該尾跡頂點可以用于預(yù)估船舶的真實位置。考慮到SAR 圖像中船舶成像有時會發(fā)生方位向偏移,如圖5 所示,所以CFAR 檢測出的船舶位置并不是真實位置,而尾跡頂點可以更為準(zhǔn)確地表示船舶真實位置。
文中對一幅1 233×2 151像素大小的TerraSar-X SAR圖像進行船舶尾跡檢測。SAR圖像如圖5所示。
圖5 SAR圖像
該圖像尺寸較大,首先需要通過CFAR 檢測器確定船舶的位置,并生成以船舶位置為中心的圖像子塊,以定位可能出現(xiàn)尾跡的較小區(qū)域。圖像分辨率未知,圖像子塊大小取M=3 km/5 m=600。一共得到9 幅圖像子塊,都包含尾跡。因為該SAR 圖像沒有足夠的輔助數(shù)據(jù),則簡單地認(rèn)為遮蓋船舶的掩膜方位向尺寸為a=M/8。圖6 是被檢測到的第一艘船的圖像子塊,圖6(a)為原始圖像子塊,外接矩形框選出船舶;圖6(b)為帶掩膜的圖像子塊。
圖6 第1艘船的圖像子塊
然后,對帶掩膜的圖像子塊作結(jié)合梯度的歸一化Radon 變換,得到變換域圖像。圖7 是第一艘船的圖像子塊的變換域圖像,圖7(a)為未作歸一化的變換域圖像,可以看到雙X 狀亮線和掩膜導(dǎo)致的暗偽影,圖7(b)為歸一化后的變換域圖像,暗偽影和“雙X 狀亮線”被明顯抑制。
圖7 變換域圖像
其次,利用成對搜索算法提取變換域圖像中的峰谷值點,權(quán)值g1、g2分別取0.2 和0.8。搜索區(qū)域限定在兩條正弦曲線之內(nèi)。成對搜索算法檢測結(jié)果如圖8 所示,其中三角形對應(yīng)為湍流尾跡,正方形對應(yīng)為兩條窄V 尾跡,圓形對應(yīng)為兩條開爾文尾跡。
圖8 成對搜索算法檢測結(jié)果圖
最后,進行尾跡驗證,5 個峰谷值點對應(yīng)的圖像域中候選尾跡直線如圖9(a)所示,圖9(a)中1 號線為候選湍流尾跡,2 號線為候選的第一條窄V 尾跡,3號線為候選的第二條窄V 尾跡,5 號線為候選的第一條開爾文尾跡,4 號線為候選的第二條開爾文尾跡。圖9(b)為經(jīng)過尾跡驗證后得到的最終尾跡檢測結(jié)果,可以看到,其有效地檢測到湍流尾跡、一條窄V型尾跡(湍流尾跡的亮邊)和一條開爾文尾跡,并且確定了尾跡的起點和方向。加權(quán)求得尾跡的頂點為圖9(b)中的叉形所在位置。
圖9 尾跡驗證結(jié)果圖
9 幅圖像子塊的尾跡目測情況匯總?cè)绫? 所示,1 表示可見,0 表示不可見。尾跡檢測情況較為復(fù)雜,檢測出的尾跡分為3 類:Tc表示檢測出目測可見的尾跡,并且位置正確,F(xiàn)c表示檢測出尾跡但是位置錯誤,F(xiàn)a表示檢測出目測不可見的尾跡。未檢測出尾跡分為兩類:Td表示未檢測出目測不可見的尾跡,F(xiàn)d表示未檢測出目測可見的尾跡。Tc和Td值越大,算法性能越好,檢測準(zhǔn)確率定義為P=(Tc+Td)/(Tc+Fc+Fa+Td+Fd),算法結(jié)果對比如表2 所示。實驗結(jié)果表明,文中算法可以有效地檢測船舶尾跡,并且優(yōu)于文獻[8]的算法。
表1 尾跡目測情況匯總表
表2 算法結(jié)果對比表
文中提出了一種基于Radon 變換和尾跡模型的船舶尾跡檢測算法,首先,通過船舶檢測定位尾跡區(qū)域,取適當(dāng)大小的圖像子塊分別進行結(jié)合梯度的歸一化Radon 變換;然后,采用成對搜索算法提取變換域中的峰谷值點;最后,對候選尾跡進行驗證,實現(xiàn)船舶尾跡的高概率檢測。該算法克服了傳統(tǒng)Radon變換無法判斷尾跡起點和方向,以及變換域中峰谷值點提取困難的缺點,并且實測結(jié)果表明,該算法的檢測率較高、虛警率較低。而對于一幅圖像中同時出現(xiàn)多艘船尾跡的情況(8、9 號尾跡),仍然可以準(zhǔn)確地檢測出尾跡結(jié)構(gòu),表明該算法具有一定的魯棒性。由于該算法基于尾跡模型,如果船舶尾跡結(jié)構(gòu)與模型完全不同,則無法有效地進行檢測,并且對于彎曲尾跡(5 號尾跡)確定的尾跡頂點位置不準(zhǔn)確。未來將針對以上情況對算法作進一步改進,并處理多幅不同波段SAR 圖像中的船舶尾跡,以檢驗算法的普適性。