張峻寧, 蘇群星, 王 成, 徐 超, 李一寧
(1.陸軍工程大學, 石家莊 050003; 2.陸軍指揮學院, 南京 210000;3.國防大學聯合作戰學院, 石家莊 050003; 4.32181部隊,西安, 710032;5.軍事科學院防化研究院, 北京 102205)
語義分割是指標記圖像中每個元素的類別信息,完成從低級到高級的推理,最終形成像素級的語義標注圖像.國內外學者提出眾多語義分割方法,主要分為傳統和基于深度學習的兩大類方法[1-3].傳統法[4]一般依靠圖像自身的低階視覺信息實現圖像分割,但是無法應用于復雜的分割任務.近年來,隨著深度學習技術的發展,語義分割技術也飛速發展,并廣泛應用于包括自動駕駛[5]、視頻監測[6]以及醫學圖像分析[7]等領域.2014年,Jonathan等[8]首先提出了全卷積層網絡(Fully Convolution Network, FCN)的像素級語義分割.文獻[9]提出了基于“編碼器-解碼器”的語義分割網絡SegNet,該方法在全卷積層上分別結合低層的位置特征與高層的語義信息,有效提高了圖像語義分割的精度,但是模型容易丟失信息.之后,Azadi等[10]通過優化網絡結構,提高了卷積層感受野的獨立性,實現了多任務的生成對抗網絡(Generative Adversarial Vetwork, GAN)網絡風格變換.最近,Chen等[11-13]提出了一系列語義分割模型(DeepLab v1、DeepLab v2及DeepLab v3),分別從像素密度預測、多尺度分割以及特征分辨率方面提高全卷積網絡的分割精度.但是上述模型都需要通過具有像素級標簽的大型數據集訓練.然而,手動標注數據集的語義信息成本十分昂貴,直接用于本地化場景的語義分割是十分困難的.
研究人員用計算機自動標注的虛擬圖像替代真實場景數據集,利用體量更小、代價更低的域自適應語義分割模型去解決手工標注數據集語義信息成本高的問題[14].由計算機模擬生成的場景分割圖(源圖)訓練真實場景圖(目標圖),主要分為兩個步驟:① 圖像變換模塊.將模擬圖像(源圖)域變換到真實圖像(目標圖)的域.② 建立模擬圖像的語義分割網絡,并用于分割真實場景,例如虛擬合成的GTA5數據集.此類方法根據數據集之間的相似性,利用虛擬數據集訓練真實場景的語義分割網絡,但是分割模型非常依賴于虛擬圖像到真實圖像的變換質量.一旦變換后圖像與真實圖像的語義未對齊或對齊性差,則語義分割網絡的性能急劇降低.為了提高語義分割中圖像的變換質量,域對應[15-19]和非監督域[20-23]的圖像變換方法迅速發展.文獻[15]通過建立特征分辨器縮小域間隙.文獻[16]分別從全局和局部角度匹配域.在此基礎上,文獻[17]提出超像素的特征域匹配,實現了更細的像素分割.之后,文獻[18]在域鑒別器中通過多層次的特征域差異計算,以縮小數據集之前的域間間隙.文獻[19]對圖像的前目標和后背景分別域匹配和語義分割,提高了不同類別的語義分割精度.但是上述網絡需要配對好的圖像作為模型的輸入,而實際當中并沒有大量匹配好的源圖與目標圖用于訓練.
相比于域對應的圖像變換,基于非監督域的圖像合成無需匹配的數據集,具有成本低,體量小的優勢.文獻[20]首次將源圖像到目標圖像視為圖像合成的過程,通過變換未匹配圖像的域分布,消除了不同風格圖像的域間隙.文獻[14, 21]提出了雙通道對齊網絡,在圖像生成器和分割網絡中執行通道特征對齊,在網絡中保留了空間結構和語義信息.之后,文獻[8,22]加入域匹配的約束關系,進一步限制圖像間的差異.文獻[10]提出了圖像生成和分割網絡的雙向學習框架,基于自我監督和感知損失建立圖像合成和分割的聯系,相互提升了各自模塊的性能.在此基礎上,文獻[9]進一步提出一種雙向學習的圖像語義分割框架.該框架以閉環的形式相互學習各模塊,相互促進了各模塊的性能.盡管如此,由于真實場景的復雜性,在生成的虛擬場景中存在一些與真實場景(目標)的域間間隙差距大的源圖,這些源圖不僅與目標圖的語義對齊性差,還會在訓練中影響其他源圖的變換質量.此外,同樣的問題還會存在源圖中的某些像素上.例如,源圖某些像素由于受到噪聲和相似風格物體的混淆,被模型錯誤理解為同類目標,最終影響了整個源圖的圖域變換,使得實際場景語義分割的精度降低.
雖然基于域適應的語義分割成本低,但是語義分割精度也低.分析原因主要是真實場景和虛擬場景中的部分物體的差異限制了源圖到目標圖的變換質量,影響了源圖到目標圖的語義對齊.為此,本文在雙向學習的圖像語義分割框架的基礎上,分別通過分階段訓練和可解釋蒙版消除域間間隙差距大的源圖和像素,提出一種改進變換網絡的域自適應語義分割網絡.首先為了提高變換網絡對源圖的場景理解,在訓練集中挑選出與目標圖域間隙大的源圖集,并提出分階段的變換網絡訓練策略,以提升源圖的變換質量.其次,針對源圖中部分像素語義對齊性差的缺陷,提出可解釋蒙版以標記域間隙置信度高的像素,使網絡在訓練過程中僅關注這些像素,而忽略語義對齊性差的像素對模型性能的影響.
給定計算機自動標注的虛擬圖片集(源圖S)以及未標注的實際場景數據(目標圖T),利用域適應的語義分割模型可實現目標圖T的語義分割任務.該模型包括兩個子網絡:① 源圖S到目標圖T的變換網絡F.②對目標圖T的場景分割子網絡E,如圖1所示.圖中:S′為利用變換子網絡將S變換為與T域分布相近的合成圖,變換后的S′與源圖具有相同的語義標簽LS;ΓF為變換網絡的訓練損失;ΓE為語義分割網絡的訓練損失.然后通過分割網絡M同時分割S′和T.其對應的變換網絡訓練損失為ΓF

圖1 域自適應語義分割的框架
ΓF=ζ(F(S′),F(T))+λSζ(F(S′),LS)+
λpζ(F(S′),F(S))+λpζ(F(T′),F(T))
(1)
式中:ζ為域分布損失,用于計算源圖S與目標圖T之間的特征差異;λS、λp分別為對應權重.由于只有源圖的標簽,模型中只計算源圖S的語義分割損失.為了保證目標圖的語義分割精度,變換后源圖像的域與目標圖像域需保持一致.只有當源圖與目標圖的語義對齊性較好,目標圖的分割精度才更高.
為此,文獻[10]通過圖像重構損失ζr和生成式對抗網絡的損失提升圖像的翻譯質量,其語義分割網絡的訓練損失ΓE如下:
ΓE=λG[ζG(S′,T)+ζG(S,T′)]+
λr[ζr(S′,F-1(S′))+ζG(T,F(T′)]
(2)
式中:λr、λG為對應的損失權重;ζG為生成式對抗網絡損失,用于評價變換源圖S′與目標圖像T的域分布距離;F-1是F的逆變換,以約束圖像變換網絡的圖像合成.
雖然上述模型可以實現非監督的語義分割任務,但是由于實際場景的復雜性,導致變換后的圖像與目標圖像的域分布存在差異.例如,源圖與目標圖在視覺上的差異(燈光、比例、對象紋理等).
為了克服域間隙大的源圖和像素對語義分割網絡訓練的影響,本文提出一種改進變換網絡的域自適應語義分割網絡(DA-SSN).具體而言,為了弱化源數據集中大間隙源圖對變換網絡訓練的影響,本文提出分階段訓練變換源圖的訓練策略.其次,通過一種可解釋蒙板標記圖像中視差差異較大的像素區域,并在訓練損失計算中忽略對應像素的損失,以消除間隙大的像素對模型訓練的影響.
如果源圖與目標圖風格相似,或者二者的域分布規律性強,則通過CycleGAN模型就可以實現源圖與目標圖的語義對齊.然而,GTA5數據集中存在一些與目標圖(城市場景)風格差異大的源圖.變換網絡為了得到整個訓練的最小化訓練損失,忽略部分正確的語義對齊源圖,以滿足全部源圖變換的最小訓練損失梯度訓練網絡參數.因此,該部分大間隙的源圖降低了整個場景的語義分割精度.本文通過分階段訓練變換網絡,以獲取目標圖域間隙小的源圖.具體變換網絡訓練策略如下.
輸入:S,T

訓練輪次K=1時,初始化變換網絡訓練步驟.
(1)基于式(3)和CycleGAN初始化網絡,設定判斷閾值?:


訓練輪次K=2時,第2階段源圖變換網絡優化步驟:
(3)更新剩余源圖,組成最終的變換源圖S′.
綜上所述,該網絡訓練由兩階段構成.第1階段基于CycleGAN網絡[9]訓練全部源圖到目標圖的語義對齊;第2階段對第1階段中變換效果差的源圖迭代訓練.具體來說,通過第1階段的變換網絡,可以篩選出域間間隙大的源圖集,然后將該數據集作為第2階段網絡的輸入.因為數據集減少了,變換網絡將全部注意力集中到剩余數據集上,再基于這些源圖的訓練損失最小化變換源圖.如此迭代,相比于初始階段的訓練,則間隙大的源圖變換更接近于目標域.為此,將變換網絡的訓練損失修改為
ΓF=λr[ζr(S,F-1(S′))+ζr(T,F(T′))]
(3)
式中:λa為對應的分階段訓練的損失權重.
本文將源圖的對抗網絡損失ζG(S′,T)作為評價源圖與目標圖的間隙差距,并在第一階段訓練中設置閾值?,篩選出ζG(S′,T)>?的源圖.當分辨器ζG(S′,T)>?時,可以認為該變換后的源圖域目標圖域間隙差距大,需要重新收集該數據集,并作為第二階段的變換網絡的輸入;反之,則認為所得源圖與目標圖是語義對齊的.
雖然通過分階段訓練變換網絡提高了域間隙大的源圖的語義對齊性,但是不可忽視的是,一張圖片(一個場景)中也會存在域間隙大的物體.例如GTA5和Cityscapes數據集之間的空間布局差異.對于GTA5,遠處天空中存在大量的高大型樹木,而城市景觀則不同.對于這部分風格差異較大的源圖像素,原始的CycleGAN網絡處理效果不佳.為此,在模型訓練中迫切需要將域間隙大的源圖部分像素區域忽略,以避免此類區域對其余像素區域的干擾.
2.2.1蒙版結構的構建 文獻[23]在估計場景深度時,針對空間幾何推理無法解釋的像素區域,提出了一種可解釋蒙板忽略該區域.在本文中,為了避免大間隙圖像像素對模型性能的影響,訓練了一個可解釋性預測網絡蒙板(MaskNet),與變換和分割網絡同時進行,該網絡輸出源圖像素對應的解釋掩碼,其中掩碼表示對應像素從源圖到目標圖間隙縮小的可信度.MaskNet的具體網絡結構如圖2所示.

圖2 蒙版網絡結構
經分析,該網絡是編碼器-解碼器架構,其中編碼器由6個卷積層組成,輸出層及卷積核的參數分別是:(16×16,7×7)(16×16代表輸出層參數,7×7代表卷積層參數,下同)、(16×32,5×5)、(32×64,3×3)、(64×128,3×3)、(128×256,3×3)、(256×256,3×3),解碼器是6個上卷積層,輸出層及卷積核尺寸參數是:(256×256,3×3)、(256×256,3×3)、(256×128,3×3)、(64×128,3×3)、(64×32,3×3)、(32×16,3×3),且在每個層中都有ReLU激活函數,同時預測層使用sigmoid函數,其對應的輸出層、卷積核尺寸參數如下:(256×5,3×3)、(256×5,3×3)、(128×5,3×3)、(64×5,3×3)、(32×5,3×3)、(16×5,3×3).
2.2.2基于MaskNet的損失函數 基于構建的MaskNet重新定義圖像變換損失,具體為
ΓF=λG[MS′ζG(S′,T)+MT′ζG(S,T′)]+
λr[MS′ζr(S,F-1(S′))+MT′ζr(T,F(T′))]
(4)
ζG(S′,T)=EIT~T[DF(IT)]+
(5)
ζrecon(S′,F-1(S′))=
(6)

由于蒙板網絡MaskNet并沒有直接的監督機制,所以模型在訓練中會直接將MaskNet全部預測為0,以實現訓練損失的最小化.為了防止此類情形的出現,在損失函數中設置一個正則化項,通過最小化與常量標簽“1”的交叉熵,來實現Mask的非零預測,具體公式為
ζmask(S′)=γf(MS′,1)
(7)
式中:ζmask為蒙板損失;γ為該項損失權重;f(MS′,1)為交叉熵函數,“1”是與Ms尺寸相同,全部元素為1的常量蒙板.
綜上所述,本文利用GAN和圖像重構損失函數鼓勵網絡最小化變換源圖域目標圖的差距,但通過蒙板Mask允許一定數量的松弛來避免域間隙大的像素區域的影響.
文獻[10]所提的域適應分割模型是全新的非監督語義分割網絡,對目標場景的語義分割性能顯著,但是其中變換網絡存在大間隙源圖變換質量較差的問題.針對此問題,本文在變換網絡中通過可解釋蒙板MaskNet和分階段訓練等改進,提升了源圖到目標圖的語義對齊性能.然后將所得源圖LT訓練語義分割網絡,最終提出一種改進變換網絡的域適應語義分割模型,具體步驟框架圖如圖3所示.

圖3 本文算法框架圖
本文算法分別由變換網絡模塊和分割網絡模塊組成,其中CycleGAN作為變換網絡模塊,本文在此基礎上提出了改進變換網絡,而Resnet101[24]和DeepLab v2[14]作為分割模型,其被ImageNet網絡初始化,對應的分辨器結構是5個卷積層,網絡參數分別是:卷積核4×4;各層通道數64、128、256、512、1;步長2,且每層之后連接1個ReLU層.
實驗數據分別來自于GTA5[25]和Cityscapes[26]數據集,其中GTA5作為源圖數據集,該數據集包含 24 966 張圖片,其分辨率為 1 914 像素×1 052 像素,與Cityscapes數據具有相同的19個類別.而Cityscapes數據集作為目標數據集,分為訓練集、驗證集以及測試集.在測試集下驗證本文算法的性能,但是由于官方并未提供測試集的真值,所以將驗證集作為測試集(500張圖片).為了保證測試的公平性,要求訓練集和驗證集中不包含相同場景的圖片.
在實驗中,變換網絡訓練圖片分辨率隨機設為452像素×452像素,訓練輪次為20.模型學習率為 0.000 2,且前10輪學習率逐漸降低為 0.000 1,之后保持不變.損失權重設為λG=1,λr=10,λa=1,分割網絡的實驗參數與文獻[10]相同,所有實驗均是在Ubuntu18.04系統Pytorch 平臺下完成.電腦配置如下:CPU(2.0 GHz Intel i7),運行內存為 32 GB,GPU(2080Ti).實驗主要做了兩方面驗證:① 驗證本文改進算法的有效性.② 比較不同算法的語義分割性能,分析本文算法的優勢.
4.4.1模型訓練損失變化 圖4所示為模型改進前后隨著訓練輪次的訓練損失變化曲線.分析可知,全部模型隨著訓練輪次的增加,訓練損失逐漸降低,并且在輪次 105左右收斂.相比于原始模型,本文所提的改進模型訓練損失縮減幅度更大,最終訓練損失從0.17降低至0.013.表明了本文所提出的改進降低了源圖到目標圖的間隙差距,提高了源圖到目標圖的語義對齊性.

圖4 模型改進前后的訓練損失
為了全面驗證本文改進的效果,本文訓練和評估了多種模型,其中每個模型都是原始模型的基礎上加入了不同的改進,包括D1(在原始F上加入源圖語義標簽),D2(分階段訓練原始F),D3(在訓練損失計算中利用可解釋蒙版.
4.4.2分階段訓練策略的有效性研究 針對域間間隙大的源圖,本文采用了分階段的訓練策略,以得到與目標圖語義對齊性更高的變換源圖.為了定量說明分階段訓練的意義,表1對比了分階段訓練前后的域間間隙和目標圖的語義分割精度.可以發現,分階段訓練源圖對于改善大間隙源圖的語義對齊性和提高語義分割精度具有重要作用.

表1 分階段訓練前后的性能對比
分階段訓練的關鍵是基于間隙閾值篩選大間隙的源圖數據集.為了進一步研究不同閾值對模型性能的影響,表2給出了不同閾值對變換源圖間隙損失和語義分割精度的影響.

表2 不同閾值的模型性能變化
經分析,當0.38>?>0.32時,隨著閾值的降低,模型的語義分割精度更高.這是因為隨著閾值的增加,大間隙的源圖集被逐步篩選出來,再對這些源圖進行重復訓練也再次提高了該源圖集的變換質量,因而進一步提高了整體的語義分割的精度.但是,當?<0.32時,模型的精度逐漸降低,這可能是因為閾值門檻的降低將不需要分階段訓練的源圖集也被重復訓練,造成再次訓練的源圖集的域間間隙距離增大,因而模型的精度進一步下降.因此,本文將篩選源圖集的閾值設定為?=0.32.但是需要指出的是,不同閾值的分階段訓練都要比原始的變換網絡訓練效果要好,語義分割精度更高,由此證明了所提的分階段訓練策略的有效性.
4.4.3可解釋蒙版的有效性研究 針對源圖中域間間隙大的像素區域,本文提出了可解釋性蒙版MaskNet,以忽略源圖中語義對齊性差的像素區域.圖5可視化了網絡預測的可解釋蒙版.分析可知,大部分像素在可解釋蒙版上呈白色(自信度較高),對應的源圖區域確實與目標圖風格相似,因而情況相符.相反,蒙版MaskNet對于天空、大樹等物體可信度較低(圖中呈灰色).事實上,源圖的這些區域確實與目標圖的風格差異大.在變換網絡中考慮這些區域只會降低其他像素區域的語義對齊性,最終導致語義分割的精度降低.本文通過可解釋蒙版避免了上述區域對模型的影響.

圖5 蒙版可視化及目標圖和源圖生成圖
為了定量評價可解釋蒙版的作用,表3給出了可解釋蒙版應用前后的模型性能變化.可以發現,可解釋蒙版的應用直接忽略了間隙大的像素區域,與改進前相比,降低了變換圖與目標圖的域間損失,語義分割的精度提高至42.2.由此說明了可解釋蒙版對提高模型性能的有效性.

表3 MaskNet應用前后的模型性能對比
4.5.1圖像變換性能 表5比較了本文算法與原始算法的變換圖的域間間隙.經分析,與原始模型的性能相比,本文算法縮小域間間隙性能更顯著.圖6所示為本文算法與CycleGAN算法的圖像變換效果,其中Cityscapes是隨機選擇的目標圖片集,包括不同的城市場景(街道、汽車、建筑物、天空以及大樹等).經分析,相比于CycleGAN的變換效果,本文變換的源圖在邊緣更加完整、輪廓清晰度更高,與Cityscapes數據集的場景風格更為接近.以遠方的天空和參天大樹為例,CycleGAN算法因為虛擬數據集中的高大樹木與遠方天空的混合,導致變換風格時產生混淆(見圖中紅色方框標注),而本文算法在上述對象上保持了對象的各自屬性,不會相互受到影響,這是因為本文通過可解釋型蒙版對風格差異大的物體(例如易混淆的天空、大樹等)進行一定程度的忽略,進而降低了它們對模型的影響,由此說明本文算法的有效性和優勢.

圖6 源圖的變換效果比較
4.5.2語義分割檢測性能 圖7顯示了分別利用Cycada[9]、DCAN[22]、CLAN[27]、BLD[10]、CBST[28]等算法對場景中的街道、汽車以及行人等類別進行語義分割的可視化結果.相比于其他算法,本文的語義分割圖毛刺少、邊界輪廓更清晰,分割的結果更加與實際真值相符.以圖7的汽車和行人分割為例,本文分割的行人和汽車很好地與街道、房屋等物體區分,并且估計的汽車邊緣毛刺少、輪廓清晰,其長寬也更接近于實際尺寸.
為了定量評價本文算法的優勢,分別在Resnet101[24]和DeepLab v2[14]上比較了所有算法的性能,評價標準是平均交并比指標,結果見表4,其中每一項指標的最高值加粗表示.本文算法在Resnet101[24]和DeepLab v2[14]兩種結構上的結果都好于其他流行算法.其中,DCAN[22]采用了自適應訓練方法,提高和泛化了不同類別的分割精度,相比于DCAN[27],本文模型性能提高了約17.4%.CLAN[27]通過調整特征域間間隙提高模型性能,但與本文模型相比結果仍相差約14.8%.本文的語義分割框架與DBL[10]相同,相比于DBL[10],本文通過蒙版等一系列改進進一步提高了模型的語義分割精度.由此可見,本文算法相比于其他算法的優勢.
基于域自適應的語義分割網絡是輕量級和易于訓練的.針對目前模型缺陷,本文提出一種改進的域自適應的語義分割模型.首先,提出變換網絡的分階段訓練策略,以分別訓練不同域間隙的源圖.在保證小間隙源圖的語義對齊的基礎上,提高了大間隙源圖的語義對齊性能.其次,針對源圖中域間隙差異大的像素區域,提出一種可解釋蒙版MaskNet,以避免這些像素降低模型的性能.相關數據集的實驗表明,相比于目前流行的域自適應語義分割算法,本文算法具有更好的變換質量和更高的語義分割精度.在未來的工作中,進一步利用場景深度信息去提高語義分割精度,這將對本系統的完善十分有意義.