閆成杰, 王 沛, 劉秀清
(1. 中國科學院空天信息創新研究院, 北京 100190; 2. 中國科學院大學, 北京 100049)
PolSAR圖像地物分類是PolSAR圖像解譯中非常重要的一個分支。傳統的PolSAR圖像分類算法主要根據圖像的統計特性或散射特性,采用支持向量機、隨機森林和集成學習等分類器進行分類,然而由于圖像斑點噪聲和地物復雜性的存在,目前傳統的機器學習方法不能取得令人滿意的效果[1]。
近年來深度學習(DL)發展迅猛,在諸多領域取得了一系列突破。目前已有不少國內外學者將深度學習應用于PolSAR領域,Xu等[2]利用CNN實現了PolSAR圖像相干變化的檢測。Wang等[3]利用CNN模型對雙極化SAR圖像進行海冰分類,成功地實現了海冰密度的估計。
然而,以上方法[2-3]都是將PolSAR數據映射到實數域,然后進行切片預測,切片分類結果為中心像素點類別,因此存在邊界不連續和計算冗余的問題,除此之外,映射過程也造成了一定的信息損失。近年來計算機視覺領域提出了語義分割技術,實現了端到端的像素級圖像分類,例如FCN、SegNet、DeepLab和U-Net等。文獻[4]利用 FCN實現了道路檢測和中心線提取。文獻[5]提出基于H-A-α分解輸入的FCN,實現了快速PolSAR圖像分類。雖然文獻[4-5]中的模型解決了計算冗余問題,但是在解碼的過程中圖像位置信息丟失,邊界不連續問題依然存在。編解碼網絡需要全標注的輸入圖像,這對于PolSAR圖像來說很難獲取,文獻[6]使用帶標記訓練像素的零初始化地面真值圖訓練FCN模型,但是這種方法存在網絡收斂速度較慢和邊緣粗糙問題。
針對以上問題并結合PolSAR圖像的特性,我們對經典的編解碼網絡作了一些改進。為了解決相位信息丟失問題,引入復數域CNN;為了解決邊緣粗糙問題,引入輔助通道,采用反池化和特征圖兩種方式進行位置信息傳遞;為了提升對多尺度地物的分類能力,在編碼網絡的最后一層引入IASPP;針對地面真值未全部標記的問題,我們進行兩階段模型訓練并使用動態標注和動態權重。綜上,本文的結構安排如下:第一節介紹復數域CNN、IASPP、輔助通道以及上采樣的兩種方式。第二節詳細介紹改進編解碼網絡及其訓練流程。第三節為實驗部分,在基于AIRSAR平臺的16類地物數據上進行實驗,驗證本文所提出的算法的準確性和高效性。
目前在深度學習領域對SAR圖像的分類研究大都集中在實數CNN。建模過程中,輸入、網絡參數和輸出都是實數,需要將復數域SAR數據投影到實數域。投影必然會帶來信息丟失,尤其是相位信息的丟失,然而PolSAR數據的相位信息對于PolSAR圖像分類十分重要,因此將CNN推廣到復數域,是十分必要的。
在復數域卷積神經網絡(Complex-Valued-CNN, CV-CNN)中輸入圖像由實部和虛部兩部分組成,表達式如下:
(1)
式中,c為X的通道數,m,n為圖像尺寸。在編程實現時我們由兩組交互并行的實數卷積網絡來等效構成復卷積神經網絡,Xr和Xi分別表示實部和虛部,相對應卷積核表達式如下:
(2)
式中,c,o分別為卷積層的輸入、輸出通道數,s為卷積核尺寸,Kr,Ki分別為卷積核的實部和虛部。
記Conv(·)為實數卷積,記Conv(·)為復數卷積,記KO為第o個卷積核,則復數卷積的具體計算表達式如下:
I′O=Conv(X,Ko)=
Conv(Xr+jXi,Ko,r+jKo,i)=
Conv(Xr,Ko,r)-Conv(Xi,Ko,i)+
j[Conv(Xi,Ko,r)+Conv(Xr,Ko,i)]
(3)
即復數卷積的輸出為
(4)
和普通卷積相比,空洞卷積引入了擴張率參數,該參數定義了卷積核相鄰點之間插入的零的個數(擴張率-1),如圖1所示,分別表示普通卷積和擴張率為2的空洞卷積。
文獻[7]指出多尺度特征有助于分類精度的提升,DeepLab[8]中受到空間金字塔池化的啟發,提出ASPP,該方法使用具有不同擴張率的多個并行的空洞卷積層進行多尺度特征提取,最后將多個分支提取的特征進行融合。然而當擴張率過大時只有部分像素點參與計算,大量的信息丟失,因此文獻[9]提出DenseASPP,DenseASPP其實是多個串行的空洞卷積層,感受野逐層遞增。
由于訓練數據集較少,如果采用DenseASPP 結構,深層網絡模型訓練難度較大,所以本文將ASPP和DenseASPP進行結合,提出了改進型空洞空間金字塔池化(IASPP)。IASPP結構如圖2所示,整體結構類似DenseASPP,兩層ASPP級聯,最后經過3×3卷積融合特征和通道降維得到多尺度特征圖。

圖2 IASPP結構圖
假如空洞卷積擴張率為d,卷積核大小為k,則其感受野大小為
R=(d-1)×(k-1)+k
(5)
兩個感受野分別為R1、R2的卷積層,級聯后的感受野為
R=R1+R2-1
(6)
IASPP實際擴張率組合如圖3所示,最大感受野為33,而后續編碼網絡最后一層的輸出尺寸為32×32,因此33的感受野足夠大且不會因為過大而引入背景噪聲,除此之外,多種感受野的組合能夠捕獲更多的多尺度特征。

圖3 級聯ASPP擴張率組合
PolSAR圖像的特征可以分為以下4個類別[10]:
1) 基于辛克萊(Sinclair)散射矩陣[S],比如交叉極化比和共極化比;
2) 基于協方差矩陣[C]、相關矩陣[T]的極化目標分解特征;
3) 紋理特征;
4) 空間語義特征。
卷積神經網絡低層部分學習紋理等簡單信息,高層部分學習高級語義信息,所以CNN只是利用了3)、4)的特征來進行分類。1)中的特征在傳統的分類中也不常用,在此不予考慮。對于2)中的極化目標分解特征,文獻[11]中指出可以分為4種:基于K矩陣的二分量分解、基于散射模型的目標極化分解、基于特征矢量的目標極化分解和基于散射矩陣的相干分解。
為了引入極化目標分解特征,我們增加了輔助通道,整個輔助通道只采用1×1的卷積。對應以上4種分解,我們分別選取了Huynen分解,Freeman-Durden三分量分解,Cloude分解和Krogager分解組成一個12維的分解特征,以此作為輔助通道的輸入。輔助通道本身作為一個獨立的模型,具有分類的功能,所以輔助通道除了將位置信息傳遞給解碼網絡進行特征融合,還將分類結果傳遞給主通道進行模型融合。
編解碼網絡為了實現端到端的像素級圖像分類,需要在解碼網絡中使用上采樣。本文使用上池化[12](unpooling)和反卷積&特征圖兩種上采樣方法:上池化是指在編碼網絡中記錄最大池化索引,在解碼網絡中利用該索引進行上采樣得到稀疏的特征圖,然后進行卷積操作生成密集的特征圖,主通道編碼網絡的位置信息采用此種方式傳遞給解碼網絡,具體過程如圖4所示;反卷積&特征圖指把編碼網絡中池化之前的特征圖存儲下來,在解碼網絡中和反卷積得到的特征圖進行融合,這樣既保留的位置信息,又獲取了高層的語義信息,輔助通道的細節信息通過這種方式傳遞給解碼網絡。

圖4 上池化示意圖
本節將介紹所提出模型的具體結構和訓練流程。
整個網絡架構如圖5所示,由主通道和輔助通道組成。主通道是常規的編解碼架構,輔助通道通過解碼網絡和主通道進行交互。主通道在復數域進行計算,輔助通道在實數域進行計算。

圖5 模型結構
編碼網絡由3個卷積層構成。對于模型輸入數據和每個卷積層的輸出數據進行歸一化處理,用以加快模型的收斂速度并緩解梯度彌散問題。歸一化處理之后,使用Relu函數激活,使用尺寸 2×2,步長為2的窗口池化。對每個卷積層的參數進行隨機失活(dropout),用于增加網絡的泛化性能。從結構圖中我們可以看到解碼網絡還連接了多尺度層,多尺度層的作用以及實現方法我們在1.2節已經進行了詳細闡述。最終編碼網絡的輸出作為解碼網絡的輸入。
解碼網絡將輸入進行上采樣,最終實現像素級概率圖的生成,其中上采樣是實現精確的目標分割的關鍵步驟。主輔通道上采樣方式如1.4節所述。主輔通道組合得到的特征圖通過卷積進行融合,使得與目標密切相關的部分得到放大,同時有效抑制來自其他區域的噪聲,最終生成準確的分割圖。
模型訓練分為兩步,首先訓練復數域CNN模型,輸入為以樣本點為中心的10×10的切片,輸出為切片中心點屬于每個類別的概率。然后進行參數傳遞并訓練改進編解碼網絡,具體訓練流程如下:
算法1改進型編解碼網絡
輸入:協方差矩陣[C],分解特征D,真值標簽G。
1) 將真值標簽G未標記的區域記為其他類,對像素點權重W進行初始化;
2) 以步長為64的128×128滑窗在[C]和D上進行切片,獲得訓練數據;
3) 讀取存儲的復數域CNN模型,將參數轉移到主編碼網絡并凍結,只訓練解碼網絡和輔助通道部分;
4) 每次迭代得到預測結果M,根據M更新W和G;
5) 根據更新的G和W進行下一輪迭代訓練。
輸出:像素級的分類結果。
算法1詳細介紹了編解碼網絡的訓練流程。針對輸入數據只有部分標注的問題,我們將未標記區域初始化為其他區域,利用每一次訓練的結果對這些區域進行偽標注,并作為下一輪學習的目標。除此之外,我們還引入了權重矩陣W,權重矩陣W的取值可以分為welse和wtrain兩大部分:welse為偽標注區域權重,賦予較小的值(本文采用1)且是固定的,雖然偽標注區域的標簽不完全正確,但是給偽標注區域賦予較小的權重,實驗證明整個網絡也是迭代收斂的;wtrain為標注區域權重,取值相對welse較大且是動態變化的,每一輪訓練之后對wtrain進行更新,預測正確的像素點權重不變(本文采用10),預測錯誤的像素點賦予更大的權重werror(本文采用50),這種動態的權重使得模型更多的關注區分難度比較大的類別。
在本結中,首先給出了實驗數據集的描述和實驗結果評價指標,然后在PolSAR數據集上進行7組實驗:實數域CNN、復數域CNN、原始U-net網絡、編解碼網絡(M1)、編解碼網絡+預訓練(M2)、編解碼網絡+預訓練+多尺度(M3)、編解碼網絡+預訓練+多尺度+輔助通道(M4),證明了本文采用的算法以及算法中所采用的策略的有效性,其中M1-M3采用反卷積&特征圖進行位置信息傳遞。后續統一以括號中的簡寫來指代網絡模型。實驗基于Tensorflow深度學習框架,運行環境為NVIDIA GeForce GTX 1050-ti GPU(4 GB內存)、Intel(R) Core(TM) i5-8300H CPU@2.3 GHz(16 GB內存)。
本文使用基于AIRSAR平臺的荷蘭Flevo-land地區PolSAR數據進行實驗。圖6(a)為Flevo-land基準數據的Pauli圖像。地面真值標簽和顏色對應關系分別在圖6(b)和圖6(c)中示出,圖6(b)中的黑色區域為未標注區域。圖像中有14類農作物和2類人造目標,包括土豆、水果、燕麥、甜菜、大麥、洋蔥、小麥、豆類、豌豆、玉米、亞麻、油菜、草和苜蓿以及道路和少量建筑。

圖6 Flevoland地區PolSAR數據
本實驗采用Kappa系數、總體精度(OA)和類特定精度(PA)對實驗結果進行評估。Pab表示真值為a預測值為b的點數,則ta=∑bPab表示類別a的像素點總數,則有以下定義:
類特定精度PA表示每個類別的預測正確率:
(7)
總體精度OA表示整個圖像預測的正確率:
(8)
Kappa系數是一個統計量,表示預測和地面真值之間的一致性:
(9)
其中求和符號的取值范圍是預測的類別。
M1和M2模型的訓練集和驗證集收斂曲線分別如圖7和圖8所示,為了便于觀察,兩幅圖的收斂曲線都作了適當的平滑處理和縮放。由圖可知,M1、M2在訓練集上的表現相差無幾,但是在驗證集上M2的整體OA更高,而且由于M2的編碼網絡經過了預訓練,整個網絡的收斂速度明顯快于M1。圖8中損失曲線先下降再上升,這是典型的過擬合表現,有趣的是在損失上升的過程中驗證集的OA依然在提升,文獻[13]對該現象進行了解釋。

圖7 M1和M2模型訓練集收斂曲線

圖8 M1和M2模型驗證集收斂曲線
表1是7組對比實驗的分類結果,每種地物的采樣率不高于10%。切片預測時間約為130 s,而編解碼網絡預測時間約為3 s,速度提升了約44倍。除了預測時間,我們還從Kappa系數、OA、PA三個指標來綜合評估算法的性能。由表1可知復數域CNN相比實數域CNN,OA和 Kappa系數分別提升1.01%、1.90%。文獻[14]指出原始U-net模型不適合直接應用于遙感領域,本文M1模型和原始U-net模型相比,基本結構一致,但是具有更少的網絡層數和通道數,在保證訓練精度的情況下,增加了泛化能力,實驗結果表明M1表現更好。M2和M1的對比見上一段落。M3引入多尺度,在7組實驗中道路PA最高,達到了97.15%。M4相比M3引入了輔助通道,在草地、土豆等多個類別實現了最高PA,而且整體OA和Kappa分別為99.18%、98.90%,在7組實驗中最高。
圖9為Flevoland地區PolSAR圖像分類結果圖。圖9(c1)~(c4)的圖像組成部分從左到右、從上到下分別對應圖9(b1)~(b4)中的A、B、C、D、E、F六個區域,黑色為未知區域,綠色為預測正確部分,紅色為預測錯誤部分。從標注區域來看,M2相比M1整體預測誤差明顯減少。M2編碼網絡參數由復數域CNN轉移得來,根據復數域CNN的訓練流程可知,M2編碼部分的感受野只有10,對于大尺度物體預測性能有待改進。M3和M2相比引入了IASPP,可以發現A和C區域的道路誤差幾乎消失不見,然而引入多尺度的同時也會引入一些背景噪聲,這也就造成了E、F區域的預測效果有所下降。M4通過輔助通道引入單點信息,弱化了紋理特征,強化了細節,因此M4和M3相比,B、E、F區域的分類邊緣誤差降低,但是A區域中道路預測誤差增加。
綜上,對比實數域CNN和復數域CNN,可知復數域的引入使預測性能有了較大的提升;對比編解碼網絡和復數域CNN,可知編解碼網絡的預測速度有了質的飛躍,同時預測精度也有所提升;對比U-net模型和本文提出的M1-M4模型(M1和U-net、M2和M1、M3和M2、M4和M3為4組對照實驗),證明了算法各個改進部分的有效性。綜合對比7組實驗,本文提出的M4模型整體表現最優。

表1 荷蘭Flevoland地區PolSAR圖像分類結果

圖9 Flevoland地區PolSAR圖像分類結果
為了充分利用PolSAR圖像的相位信息并提高分類速度,本文提出了改進編解碼網絡,將PolSAR數據的實部和虛部進行并行交互處理,間接實現了復數域CNN, 并且引入IASPP和輔助通道來進一步提升算法性能,訓練過程中通過參數傳遞加速收斂。在荷蘭Flevoland地區PolSAR數據上進行7組實驗,實驗結果驗證了本文所提出算法的有效性。針對地面真值難以全部標注的問題,本文提出了動態標簽和動態權重的方法,雖然最后實驗證明能夠收斂,但欠缺嚴格的數學證明,尋找更加嚴謹有效的解決方案是接下來的重點研究方向。如何能夠更加準確地區分極化特性近似的地物,也是后續工作重點之一。