羅雅丹, 藍如夢, 譚盛輝
(廣西壯族自治區地圖院, 南寧 530023)
近年來,遙感技術因信息豐富直觀的特點而備受重視和關注,已廣泛應用于軍事、氣象、農林牧漁等領域,同時也推進了相關數據處理技術的發展。特別是基于視覺顯著性的遙感目標檢測和跟蹤算法,也引起了遙感學者們的關注和深入研究。魏等人[1]將視覺注意機制引入到遙感圖像的顯著性目標檢測中,采用自頂向下和自底向上的顯著性融合方法,計算權重向量,將所有的特征圖乘以權重向量得到顯著圖。針對顯著性檢測算法在復雜多目標遙感圖像中檢測能力不足問題,閆等人[2]結合顯著性檢測和超像素分割,檢測原始影像中部分顯著性較高的區域。針對光學遙感圖像中復雜海背景下的艦船檢測問題,王等人[3]利用基于最大對稱環繞顯著性檢測,完成初始目標候選區域提取,結合圖像局部相似性進行優化顯著性檢測。但是,上述方法僅是結合相對簡單的視覺顯著性檢測方法進行目標檢測,并沒有考慮目標與周圍影像的特征差異,顯著性檢測的精度和效率都有待提高。
人類視覺體系能夠快速發現視覺范圍內最重要的顯著區域(region of interest,ROI),即視覺顯著性檢測。學者們通過深入研究人類視覺體系的注意機制,提出了視覺顯著性(Saliency)定義,并提出了不同的顯著性檢測算法。如:純數學分析的全分辨率算法[4]、基于空間頻域分析的譜殘差算法(Spectral Residual Approach, SR算法)[5]、頻域調整算法(Frequency-tuned, FT算法)[6]、基于圖的顯著性算法(graph‐based visual saliency, GBVS算法)[7]、多特征多尺度算法[8]、基于區域對比的信息混合編碼算法[9]、基于弱監督學習的聯合算法[10]等等。以上算法,在進行檢測前必須先把JPEG圖像完整地解碼到像素域,消耗終端設備過多的計算量。為了免除解碼產生的復雜運算,Fang等人[11]提出了直接在DCT域中進行顯著性檢測的算法,充分發揮現有數據的作用。由于JPEG壓縮碼流的DCT塊存在較多零數據,能夠極大降低計算機運算量,提高數據處理效率。筆者曾在此基礎上提出了改進的基于DCT域的圖像縮放算法[12],以及基于DCT域的視頻運動顯著性檢測算法[13]。目前,基于DCT域的顯著性檢測算法的研究比較少,算法可提升空間較大。
本文針對遙感圖像中目標與周圍環境存在一定特征差異的特點,提出一種基于DCT域的目標顯著性檢測算法,提高遙感圖像目標檢測的精度和效率。該算法綜合考慮復雜多樣的遙感圖像特征,增加自適應的標準差計算塊差異,提高目標顯著性檢測的準確率;直接在DCT域中對DCT塊進行顯著性檢測計算,極大提高運算效率。
本文算法框架如圖1所示,其實現過程如下:
步驟1JPEG碼流部分解碼獲取DCT系數。本文采用JPEG算法中的順序編碼工作模式,從左到右和從上到下掃描,根據4∶2∶0抽樣比例直接從數據流中獲取DCT系數[14]。遙感圖像經過熵解碼器解碼得到量化的DCT系數,再經由反量化表獲取相應的DCT系數。
步驟2在DCT域中提取DCT系數的顏色、亮度和紋理等特征,計算差異值得到各個特征的差異矩陣。
步驟3根據不同圖像大小所對應的DCT塊分布,計算基于DCT塊的自適應標準差,并結合基于歐氏距離的高斯分布函數,分別計算各個特征的塊差異權重系數,從而得到各個特征的顯著圖。
步驟4采用歸一化融合規則計算出最終的顯著圖。

圖1 算法框架
本文所獲取的亮度和顏色特征由DC系數計算得到,而紋理特征則是由YCrCb顏色空間中的AC系數Y分量的總和構成[15]。
(1)顏色與亮度特征差異
已知顏色特征為I,亮度特征為Crg和Cby,計算出每一個塊與其它所有塊的顏色和亮度差異值,即為當前塊的特征差異矩陣。
(2)紋理特征差異
已知紋理特征為T,計算出每一個塊與其它所有塊的紋理特征差值,再對差值取2范數,即為當前塊的紋理特征差異矩陣。
DCT塊與塊之間的差異程度可用于定義塊的顯著度。文獻[12]中根據基于歐氏距離的高斯分布函數來計算塊差異的權重系數。DCT塊之間的差異距離較小時,則差異權重較為明顯,反之則較為微弱。該規律完全符合高斯分布函數曲線中間高、兩頭低、左右對稱的特點。因此,對于當前的DCT塊而言,與來自距離更遠的塊相比,距離更近的塊的權重系數會更大。若DCT塊i與其它所有DCT塊之間的差異均比較大,則該DCT塊i的顯著值會比較大,且與臨近塊的顯著值大于遠于臨近塊的顯著值[13]。
假設一幅遙感圖像的分辨率為8m×8n,則該圖像中包含m×n個DCT塊。計算每個塊與圖像中所有塊的歐氏距離,組合得到每個塊的距離矩陣;然后根據DCT塊的分布求出該矩陣的標準差,即為當前塊的σ。
文獻[12]中統一采用固定的標準差σ=5,然而隨著塊與塊之間的距離發生變化,塊與塊之間的標準差也會隨之變化,固定的標準差會影響檢測結果的準確性和精度。另一方面,不同分辨率的遙感圖像,d和σ值也不同,矩陣d和標準差σ也會不一樣。因此,本文針對不同圖像、不同DCT塊分布情況計算每個塊的自適應標準差σ值。
(1)計算基于DCT塊的歐氏距離矩陣d。塊i與塊j之間的位置坐標歐氏距離dij:
(1)
式中:xi和yi分別是DCT塊i在水平方向和垂直方向上的位置坐標值,xj和yj分別是DCT塊j在水平方向和垂直方向上的位置坐標值,得到大小為m×n的矩陣d。
(2)計算塊i矩陣的標準差σ:
(2)
其中,dij是DCT塊i與當前圖像所有塊的坐標歐氏距離,k是當前圖像的DCT塊數目,即k=m×n。
本文選擇基于自適應標準差的高斯分布函數來定義塊差異,結合各個特征的差異矩陣,得到特征顯著圖Mt(t=1,2,3,4)。
1.5.1 權重系數計算
塊i與不同的塊j之間的權重系數φij為
(3)
其中,σ是塊I的標準差。本文根據DCT塊的分布大小計算出自適應的σ,不同位置的塊對應不同的標準差。
1.5.2 特征顯著圖計算

(4)

由上可獲得亮度、顏色和紋理特征顯著圖Mt(t∈{I,Crg,Cby,T})。
1.5.3 融合顯著圖計算
根據特征顯著圖,采用歸一化融合,也就是對原始數據進行線性變換,把數據映射到[0,1]之間,得到最終的顯著圖M:
(5)
其中,Mt是各個特征顯著圖;N是歸一化操作;α和θ分別表示公式中對應的權重系數(本文設置α=θ=0.2)。
本文實驗數據的遙感圖像來自Google Earth。實驗中對100組遙感圖像進行了目標檢測。實驗軟硬件環境如下:Intel Core i7-6500U 2.50 GHz處理器、16.0 GB內存容量,軟件版本MATLAB 9.0。為了衡量算法的性能,本文從圖像主觀效果和客觀質量兩方面,分別對本文算法和文獻[1]、文獻[2]算法進行了性能比較。
圖2和圖3分別是不同場景下,不同算法的目標檢測結果比較。

圖2 場景1不同算法的結果比較

圖3 場景2不同算法的結果比較
由圖2、圖3可見,文獻[1]算法的結果中很大一片區域均被視為顯著內容,檢測結果不明顯;文獻[2]算法的結果中飛機并不是整幅圖像的唯一顯著目標,雖然能夠檢測出部分顯著內容,但也將部分不重要的內容視為顯著內容,檢測結果一般;而本文算法結果中,均突出了飛機目標的輪廓,能正確檢測出飛機所在的區域,檢測結果較優。
綜上,從主觀來看文獻[1]、文獻[2]算法的顯著內容不夠顯著,而本文算法的顯著內容相對顯著,由此可見本文算法的主觀效果更勝一籌。
為了進一步定量分析顯著模型的優劣以及對于遙感圖像的適用性,驗證本文顯著性檢測算法的性能,將本文算法與文獻[1]、文獻[2]算法的顯著性檢測算法進行對比。
本文采用接受者工作特征 (receiver operating characteristic,ROC)曲線作為顯著性檢測算法性能的客觀評價標準。根據ROC曲線下的面積(area under curve,AUC),可以對顯著性檢測算法的整體性能做出定量的評估,AUC越大,則算法的準確性越高。ROC評測法中用到正確數據標注圖(ground truth map),其是由人力標記將一幅圖像中的顯著區域的各個像素點設置為目標點(像素值設置為255),非顯著部分區域的各個像素點設置為背景點(像素值設置為0)。正確數據標注圖是一幅大小與源圖像相同,取值只有0和255的標準圖像。
不同算法的AUC結果比較見表1。由表1可知,在幾種算法中,本文所用算法曲線下的面積AUC最大,算法的準確性最高。因此,相比其它算法,基于DCT域的顯著性目標檢測算法不僅減少計算量和提高運行效率,整體性能表現更佳。

表1 不同算法的AUC結果比較
綜上,通過從圖像主觀效果和客觀質量兩方面進行比較分析,本文的顯著性檢測算法具有較好的目標突顯和檢測效果,在機場、港口和橋梁等重要位置的目標檢測應用中可以發揮一定的作用。
基于大幅面遙感圖像目標較小檢測較難的特點,為了提高目標檢測的速度和精度,本文深入研究視覺注意機制,考慮目標與周圍環境的特征差異,提出了基于DCT域的遙感圖像目標顯著性檢測算法。該算法直接在DCT域中提取亮度、顏色和紋理等特征,并根據不同位置的DCT塊與塊之間的標準差不同的特點,著重計算每一個DCT塊自適應的標準差作為DCT塊之間的差異權重系數,結合特征差異矩陣進一步提取目標顯著區域。實驗結果表明,本文算法的顯著性檢測較為明顯,提高了目標檢測的效率和準確度。