劉漳輝 占小路 陳羽中
圖像語義分割或場景解析是計算機視覺中長期存在且充滿挑戰(zhàn)的基礎任務.它的基本目標是對給定圖像中每個像素都分配一個對應語義類別的標簽,最后得到對應類別的分割圖,因此圖像分割也可看作是像素級的分類任務,是細粒度最小的圖像語義理解任務.精準高效的圖像語義分割算法能幫助人們更好地分析和理解圖像,廣泛應用于自動駕駛、醫(yī)療診斷、圖像生成、圖像編輯、增強現(xiàn)實等諸多領域.
隨著深度神經網絡的發(fā)展,學者們提出一些基于卷積神經網絡(Convolutional Neural Network, CNN)的圖像語義分割算法.全卷積神經網絡(Fully CNN, FCN)[1]將完全卷積用于語義分割,將分類網絡的全連接層替換成卷積層,有效地進行端到端訓練,輸入圖像大小不受限制,產生對應大小的密集預測,實現(xiàn)像素級別的分類預測.此后,研究者們提出一系列基于FCN的改進算法,在圖像語義分割任務上取得一定進展.但是,由于FCN通過堆疊卷積與池化操作提取特征,圖像分辨率不斷下降,出現(xiàn)位置信息的損失.此外,受到感受野的限制,容易出現(xiàn)錯誤的上下文信息聚合,難以適應包括存在多類別的場景在內的一些復雜場景.因此,圖像語義分割研究的重點在于上下文關系建模及解決分辨率重建問題.
針對上下文關系建模,早期的研究工作主要通過概率圖模型描述像素之間的關系,如條件隨機場[2]和馬爾科夫隨機場[3].針對前端-后端結構,前端采用深度神經網絡(Deep CNN, DCNN)進行特征提取,后端使用概率圖模型提取像素間的依賴關系.但是,由于模型多在離散的標簽空間中進行建模,計算代價高昂.還有一些方法在骨干網絡后通過金字塔聚合或注意力機制捕獲上下文關系.基于金字塔聚合的方法主要通過池化操作或空洞卷積操作獲得更大范圍的上下文信息,進而融合多尺度特征的上下文信息,得到更有鑒別力的特征.Zhao等[4]提出PSPNet(Pyramid Scene Parsing Network),使用空間金字塔池化模塊(Spatial Pyramid Pooling, SPP),通過不同網格大小的池化操作捕獲多尺度的上下文信息.Chen等[5]提出DeeplabV3,使用空洞空間金字塔池化模塊(Atrous SPP, ASPP),通過并行多個不同空洞率的空洞卷積獲得多尺度特征圖.Yang等[6]提出DenseASPP(Densely Connected ASPP),使用密集連接的帶孔金字塔池化模塊,結合DenseNet(Dense Convolutional Network)[7]與ASPP模塊,有效增大特征的感受野,獲得更大范圍的上下文信息.
雖然特征金字塔能收集豐富的上下文信息,但未對上下文信息的重要性進行有效區(qū)分,忽略前景與背景上下文之間的依賴關系,影響構建特征的類別區(qū)分能力.此外,人類在觀察前景目標時不僅依賴局部信息辨別前景目標的準確類別,還會與背景進行對比,以突出前景目標.近年來,基于注意力機制的方法廣泛應用于包括圖像語義分割在內的各種計算機視覺任務中.該機制的主要思想是通過一個注意力圖對特征進行有選擇的增強,即將注意力更多地放在感興趣的區(qū)域內.受SENet(Squeeze and Excitation Networks)[8]的啟發(fā),Zhang等[9]提出EncNet(Context Encoding Network),使用上下文編碼模塊,從編碼的語義中生成一個加權向量,有選擇地突出與類別相關的特征.Wang等[10]提出Non_local(Non-local Neural Networks),利用自注意力機制建模每個像素間的依賴關系,突破感受野的限制,捕獲長距離的依賴關系.Fu等[11]提出DANet(Dual Attention Network),從空間與通道兩個角度構建兩個注意力模塊,并行建模像素間的語義相互依賴關系,融合兩個注意力模塊的輸出,進一步增強特征的表示能力.
自注意力機制存在計算復雜度較高且有大量冗余計算的問題.一些優(yōu)化方法,如CCNet(Criss-Cross Network)[12]、EMANet(Expectation-Maximization Atten-tion Networks)[13]、ANNet(Asymmetric Non-local Neural Networks)[14],降低計算復雜度,其核心思想是優(yōu)化采樣點,避免在整個圖像上建立注意力圖.此外,一些方法聚焦于提取各類上下文關系,如ACFNet(Attentional and Class Feature Network)[15]、OCRNet(Object-Contextual Representations-Network)[16]等,引入像素和類別之間的依賴關系,豐富上下文信息.
隨著圖神經網絡的發(fā)展,研究者們采用圖卷積捕獲更廣泛的上下文信息.Chen等[17]提出GloRe-Net(Graph-Based Global Reasoning Networks),將坐標空間的像素級特征聚合到交互空間,再進行有效的關系推理,最后在反投影回原始坐標空間,以圖卷積的方式有效建模遠區(qū)域之間的關系.Wu等[18]提出GINet(Graph Interaction Network),利用圖交互單元,以類別的文本形式提取語義概念,通過視覺圖和語義圖的交互更新每個像素特征的信息.
針對分辨率重建問題,大多數(shù)研究者采用空洞卷積[19]或編解碼結構.基于空洞卷積的模型主要在骨干網絡中以空洞卷積替代原有的卷積操作,從而維持圖像的分辨率.此類方法未引入額外參數(shù),但高分辨率的特征圖顯著增加內存消耗與計算復雜度,限制模型的應用范圍.基于編解碼結構的模型通過聚合編碼器的多層次特征逐步恢復分辨率,在恢復過程中不斷進行上采樣及特征融合操作.Ronne-berger等[20]提出U-Net,每次進行2倍上采樣直至恢復原分辨率.Noh等[21]提出DeconvNet(Learning Deconvolution Network),通過堆疊反卷積層,逐步恢復原圖大小.但是,上述模型引入大量參數(shù),增大訓練難度.Wu等[22]提出FastFCN,使用聯(lián)合金字塔上采樣方法,通過多并行空洞卷積生成高分辨率的特征圖.Tian等[23]提出DUsampling,使用數(shù)據(jù)依賴上采樣方法,學習重構矩陣以最小化真實標簽與壓縮標簽的誤差,再使用重構矩陣對特征進行上采樣.特征融合操作多采用普通的加法或拼接操作.由于高層特征包含豐富的語義信息,缺少空間的細節(jié)信息,低層特征則相反,因此,對高層特征與低層特征進行簡單的相加與拼接操作無法得到高質量的特征.
針對上述問題,本文提出基于語義傳播與前/背景感知的圖像語義分割網絡(Image Segmantic Seg-metation Network Based on Semantic Propagation and Fore-Background Aware, SPAFBA).首先,提出聯(lián)合語義傳播上采樣模塊(Joint Semantic Propagation Up-Sampling Module, JSPU),提取高層特征的全局語義信息與局部語義信息,得到語義權重,將高層特征語義傳播到低層特征,縮小兩者之間的語義差距,再通過逐層上采樣實現(xiàn)分辨率重構.此外,還提出金字塔前/背景感知模塊(Pyramid Fore-Background Aware Module, PFBA),通過兩個并行分支提取不同尺度的前景特征與背景特征,建立前景與背景間的依賴關系,捕獲多尺度的前/背景感知特征,增強前景特征的上下文表示.語義分割基準數(shù)據(jù)集上的實驗表明,SPAFBA性能較優(yōu).
本文提出基于語義傳播與前/背景感知的圖像語義分割網絡(SPAFBA),整體框圖如圖1所示.
圖1 SPAFBA整體框圖Fig.1 Overall framework of SPAFBA
SPAFBA主要由深度卷積神經網絡模塊(DCNN)、聯(lián)合語義傳播上采樣模塊(JSPU)、金字塔前/背景感知模塊(PFBA)及預測層4個模塊組成.DCNN是整個模型的入口,遵循典型的神經網絡設計,也稱為主干網絡.DCNN輸出一個低分辨率、攜帶豐富語義信息的特征圖.JSPU旨在獲取具有高分辨率和豐富語義信息的特征,輸出3個具有相同大小的特征圖,分別包含不同級別的語義特征.PFBA以JSPU輸出的3個特征圖的連接作為模塊的輸入,捕獲前景特征和背景特征之間的依賴關系,并增強前景特征的上下文表示,得到像素鑒別能力更強的特征圖.預測層通過Softmax激活函數(shù)生成類標簽上的概率分布,預測目標類別.
深度卷積神經網絡通過不斷堆疊卷積與池化操作,并使用殘差連接加深網絡的深度,提取豐富的特征表示.SPAFBA使用ResNet101作為骨干網絡.ResNet101分為5層,每層對應于1個輸出,分辨率逐層減小為1/2倍,最后一層輸出原圖縮小32倍的特征圖.另外,為了減少參數(shù)和計算量,使用3個3×3卷積替換骨干網絡第1層中的7×7卷積.
語義分割模型通常采用分類模型作為骨干網絡,如ResNet系列、EfficientNet系列.分類網絡對于分辨率的要求并不高,作為骨干網絡時,最后輸出尺寸通常為原圖的1/32.但是,語義分割任務是密集的逐像素預測任務,最終輸出需恢復為原圖大小,因此輸出的分辨率大小嚴重影響模型性能.目前,大多數(shù)模型采用空洞卷積的方法維持特征的分辨率,雖然能維持特征的分辨率,但需要更大的內存消耗及計算資源.因此,SPAFBA提出聯(lián)合語義傳播模塊,不采用空洞卷積的方法,而是從骨干網絡后三層的輸出中逐步恢復空間信息.
另外,高層特征分辨率較低,通常含有豐富的語義信息,對類別預測更具有區(qū)分性,但缺乏空間位置信息.低層特征則分辨率較高,含有更多細粒度結構的信息,但缺乏語義表征能力.充分結合這兩種特征的優(yōu)勢是實現(xiàn)精準語義分割的基礎.
SPAFBA在恢復空間信息時還抽取高層特征的語義信息,用于增強低層特征的語義表示.首先,高層特征通過上采樣操作實現(xiàn)空間信息的補充,再利用2個分支分別捕獲全局語義權重及局部語義權重.全局語義分支先通過1個全局平均池化操作,得到C×1×1(C為通道個數(shù))的全局語義向量,通過2個1×1卷積進行權重學習,前一個卷積進行通道縮減以減少計算,后一個卷積恢復成原有通道大小.局部語義分支通過2個簡單的1×1卷積學習局部語義權重.與全局語義分支相同,前一個卷積進行通道縮減以減少計算.將全局語義分支與局部語義分支學習的全局語義及局部語義權重相加,經過Sigmoid函數(shù)激活后,得到高層特征的語義表示.之后,通過與低層特征進行逐像素乘法,將語義信息傳入低層,增強低層特征的語義表示.為了利用殘差結構的優(yōu)勢,模塊通過連接的方式融合增強后的低層特征與原低層特征,得到具有魯棒性的輸出特征:
t=T(l,h)=
l+l·sigmoid(F(pooling(h);θ,μ)+F(h;φ,ω)),(1)
其中,T(·)為語義傳播函數(shù),l為低層特征輸入,具有相同維度,h為高層特征輸入,pooling(·)為最大池化操作,F(xiàn)(·)為分支結構,θ、μ、φ、ω為卷積操作.
聯(lián)合語義傳播上采樣模塊的逐級傳播結構如圖1左下角所示,最左側3個特征為骨干網絡最后三層的輸出,分別記為C3、C4、C5.不同于經典的以Top-Down方式逐步恢復分辨率的U-Net或FPN(Fea-
ture Pyramid Network),JSPU模塊的上采樣結構類似三角形,同一階段考慮每兩個相鄰特征,并逐漸上升到頂部.
在第一階段中,C5與C4進行一次語義傳播,得到輸出特征:
C54=C5⊕T(C4,C5),
其中,T(·)如式(1)函數(shù),⊕為逐像素加法.同時C4與C3進行一次語義傳播,得到特征:
C43=C3⊕T(C3,C4).
此時C43包含C4的語義信息,減少與C54之間的語義差異.相比而言,Top-Down結構得到C54后直接與C3進行傳播,兩者語義差距較大,并且可能隨著不斷傳遞造成語義丟失問題.但是,JSPU模塊提出的上采樣結構通過每兩個鄰近特征傳遞語義信息,較好地解決語義丟失問題.在第二階段中,C54與C43再進行一次傳播,得
C543=C54⊕T(C43,C54).
此時C543分辨率為原圖的1/8,并且結合三層特征的語義.最后將C3、C43、C543按通道維度拼接,得到JSPU模塊最后的輸出特征:
Xout=concat(ω(C3),C43,C543),
其中,ω為3×3卷積操作,concat表示按通道拼接.Xout空間維度與C3相同,通道維度為C3通道數(shù)的3倍.注意到C3經過3×3卷積層提取更細粒度的特征表示.另外,C4作為整個傳播的中間特征,語義表示能力會影響整個模型性能.因此,SPAFBA在C4處增加一個輔助監(jiān)督以確保其表征能力.
JSPU模塊結構如圖2所示.
圖2 JSPU模塊結構圖Fig.2 Structure of JSPU
研究表明,上下文信息有利于模型性能的提升,SPAFBA模仿人類觀察辨別事物的方式,建立前景與背景之間的上下文依賴關系,更好地識別前景信息,增強前景特征的類別識別能力.由于圖像中相鄰像素可能屬于不同類別,空間區(qū)分對于前景環(huán)境至關重要.SPAFBA使用空洞卷積捕捉前景的上下文,空洞卷積可提供更大的感受野以捕獲空間上更遠的上下文信息.對于背景,由于背景通常是由一些像素作為一整個區(qū)域的代表,無需進行空間區(qū)分,故采用池化方法捕捉背景的上下文信息.
PFBA通過4個不同空洞率的空洞卷積得到4個不同尺度的前景特征:
fi=atrous(Xout;ri),i=1,2,3,4,
其中,空洞率r1=1,r2=6,r3=12,r4=18,Xout為上一模塊的輸出,atrous為空洞卷積操作.由此得到前進特征集合:
F={f1,f2,f3,f4}.
背景特征由最大池化分支及平均池化分支獲得,注意在每次池化操作后都經過一個堆疊的由1×1卷積、批量歸一化層(Batch Normalization, BN)及ReLU激活函數(shù)構成的卷積層.經過2個分支可得到2組不同含義的背景特征:
AB={Flat(ab1),Flat(ab2),Flat(ab3),Flat(ab4)},
MB={Flat(mb1),Flat(mb2),Flat(mb3),Flat(mb4)},
其中,
mbi=ρi(Mpool(Xout;bi)),i=1,2,3,4,
abj=τj(Apool(Xout;bj)),j=1,2,3,4,
Flat為按空間平鋪展開操作,Apool為平均池化操作,Mpool為最大池化操作,ρi、τj為1×1卷積操作,背景劃分區(qū)域b1=1,b2=2,b3=3,b4=6.最大池化分支重視全局背景特征,平均池化側重局部背景特征,再將其按空間平鋪展開并拼接,得到最后的背景特征:
B=concat(AB,MB),
其中concat為拼接操作.
基于前景特征與背景特征,PFBA提出前/背景感知特征(Fore-Background Aware Feature)的概念,用于表示經過前景-背景關系圖增強后的前/景特征.前/背景感知特征中的每個像素能自適應獲得不同背景上下文依賴關系.首先對于背景特征B′按空間維度展開為C×S矩陣,其中S為背景區(qū)域個數(shù).前景特征經過一個空洞卷積之后獲得三維特征D∈RC×H×W.為了獲得前/背景的關系圖,將前景特征D維度轉換為C×N,其中N=H×W,將其轉置后與背景特征進行矩陣乘法,并通過softmax函數(shù)激活,得到前/背景依賴關系圖M∈RN×S,前景特征第i個位置與第j個背景區(qū)域之間的依賴關系表示如下:
其中,·為點積運算,通過指數(shù)映射放大關系差異.
PFBA對關系圖M進行線性插值,將S個背景區(qū)域擴成N個,即由原來的N×S對關系增加到N×N對關系,以擴充前景特征的視野,得到更豐富的上下文對比信息.最后的前/背景依賴關系圖為
M=?(D,B′)=Interpolation(softmax(DT×B′)),
其中,?為獲取前/背景依賴關系圖函數(shù),Interpola-tion為線性插值操作.
最后,為了捕獲多尺度的前/背景感知特征,4個前景特征共享同一個背景特征,將前景特征集合F中的每個前景特征依次與背景特征B通過?(·)函數(shù)建立依賴關系,再通過矩陣乘法對前景特征加權,并將結果重塑,得到由4個前/背景感知組成的集合:
A={A1,A2,A3,A4}=f+α(f·?(f,B)),
其中,f∈F,α初始值置為0,通過模型學習得到一個分配權重.
此外,PFBA包括一個全局池化分支,由全局平均池操作、1×1卷積和雙線性插值組成,用于捕獲全局上下文信息.PFBA將4個前/背景感知特征與全局特征按通道維度進行拼接,并使用1×1卷積縮減通道,同時加入失活層保證模型的泛化能力.通過融合全局特征與多尺度前/背景感知特征,獲得鑒別能力較強的語義特征圖,即PFBA模塊最后的輸出特征:
Eout=concat(A,glo_pool(Xout)),
其中glo_pool為全局池化分支操作.
PFBA模塊結構圖如圖3所示.
圖3 PFBA模塊結構圖Fig.3 Structure of PFBA
預測層以金字塔前/背景特征感知模塊的輸出作為輸入,通過一個卷積層將通道輸出縮減至總的分類個數(shù),再通過雙線性插值上采樣兩倍恢復成原圖大小,得到最終的分割預測圖.采用像素交叉熵損失應用于最終的分割預測,通過最小化模型的損失值訓練模型.另外,除了最終的預測損失,SPAFBA對骨干網絡第4層的輸出進行監(jiān)督.最終損失為
Ltotal=Lmain+αLaux,
其中,Lmain為最終預測損失,Laux為輔助監(jiān)督損失,α為輔助損失的加權參數(shù).
本文在PASCAL_VOC2012、PASCAL-Context、ADE20K數(shù)據(jù)集上進行實驗.PASCAL_VOC2012數(shù)據(jù)集是一個廣泛使用的語義分割基準數(shù)據(jù)集,包含20個前景目標類別和1個背景類,分為3個子集,訓練集包括1 464幅圖像,驗證集包括1 449幅圖像,測試集包括1 456幅有精細分割標注的圖像.本文使用由SBD數(shù)據(jù)集提供的額外數(shù)據(jù)擴充數(shù)據(jù)集,得到包含10 582幅圖像的訓練集,即train_aug.PASCALContext數(shù)據(jù)集是一個復雜且具有挑戰(zhàn)性的場景解析數(shù)據(jù)集,包含59個前景目標類和1個背景類,訓練集包括4 998幅圖像,驗證集包括5 105幅圖像.ADE20K數(shù)據(jù)集是一個龐大的場景解析數(shù)據(jù)集,包含150個類別,訓練集包含25 000幅圖像,驗證集包含2 000幅圖像,測試集包含3 000幅圖像.
SPAFBA使用標準的ResNet101作為骨干網絡,包含5層網絡結構.為了實現(xiàn)全分辨率的預測,在骨干網絡后增加1個上采樣層.此外,使用3個3×3卷積取代第1層的7×7卷積.模型基于PyTorch框架實現(xiàn),使用ImageNet上預訓練的模型初始化主干網絡的權重.學習率采用poly衰減策略,在訓練期間每次迭代后基礎學習率根據(jù)
逐漸下降至0.采用隨機梯度下降法(Stochastic Gradient Descent, SGD)作為訓練優(yōu)化器,并設置動量為0.9,權重衰減為0.000 1.另外,模型還使用異步批處理歸一化(Synchronized Batch Normalization, SyncBN)進行訓練,衰減系數(shù)設置為0.000 1.
在數(shù)據(jù)增強方面,SPAFBA在訓練期間對輸入圖像進行隨機水平翻轉,在0.5~2.0范圍內對圖像進行隨機縮放和隨機裁剪.
對于不同的基準數(shù)據(jù)集,采用不同的訓練設置.針對PASCAL_VOC2012數(shù)據(jù)集,在驗證集和測試集上,首先將初始學習率設置為 0.001,裁剪大小為 512×512,批處理大小為16,在 train_aug訓練集上訓練80個迭代周期.然后,在原始PASCAL_VOC2012訓練集上進行微調,迭代周期設置為50,設置較小的初始學習率為0.000 1.針對PASCAL_Context數(shù)據(jù)集,初始學習率設置為0.001,裁剪大小設置為520×520,訓練120個迭代周期,批處理大小設置為16.針對ADE20K數(shù)據(jù)集,初始學習率設置為0.004,裁剪大小設置為576×576,訓練180個迭代周期,批處理大小設置為16.
采用廣泛使用的平均交并比(Mean Intersectionover Union, mIoU)和像素精度(Pixel Accuracy, pixAcc)作為主要評估指標.在測試期間,模型增加多尺度和翻轉的策略進行評估.輸入圖像按原始尺度的{0.5,0.75,1.0,1.25,1.5,1.75,2.0}進行縮放并隨機翻轉,得到多個輸入圖像,最后生成最終的預測結果.
實驗中采用的對比方法如下.1)語義分割方法:FCN[1]、PSPNet[4]、EncNet[9].2)注意力機制方法:DANet[11]、CCNet[12]、ANNet[14]、CFNet(Cooccur-rent Feature Network)[24]、DMNet(Dynamic Multi-scale Network)[25]、SANet(Squeeze-and-Attention Net-works)[26]、APCNet(Adaptive Pyramid Context Net-work)[27].3)圖卷積方法:GINet[18]、CDGCNet(Class-Wise Dynamic Graph Convolution Network)[28].4)其它方法:OCRNet[16]、RecoNet(Low-Rank-to-High-Rank Context Reconstruction Framework)[29]、EfficientFCN[30].
各方法在3個數(shù)據(jù)集上的mIoU值對比如表1所示.對比方法的實驗結果數(shù)據(jù)均引自對應文獻.為了公平對比,所有對比方法都未采用額外的數(shù)據(jù)進行預訓練.
表1 各方法在3個數(shù)據(jù)集上的mIoU值對比Table 1 mIoU value comparison of different methods on 3 datasets %
由表1可知,相比FCN、PSPNet、EncNet,SPAF-BA的mIoU值有顯著提升.相比DANet、CFNet、DMNet、SANet、CCNet和ANNet,SPAFBA的mIoU值在PASCAL_VOC2012、PASCAL_Context數(shù)據(jù)集上至少提升1.1%~1.6%,在ADE20k數(shù)據(jù)集上也取得微弱的性能優(yōu)勢.相比CDGCNet和GINet,SPAFBA的mIoU值在Pascal_VOC2012數(shù)據(jù)集上提升1.1%,在PASCAL_Context數(shù)據(jù)集上提升0.6%.相比RecoNet,SPAFBA的mIoU值在PASCAL_VOC-2012數(shù)據(jù)集上略有下降,但在PASCAL_Context數(shù)據(jù)集上提升0.7%.在ADE20K數(shù)據(jù)集上,SPAFBA的mIoU值略優(yōu)于OCRNet、EfficientFCN,但略差于RecoNet.從3個數(shù)據(jù)集的整體性能表現(xiàn)可分析出,SPAFBA在類別數(shù)適中的復雜任務中更能體現(xiàn)優(yōu)勢,相比采用注意力機制或圖卷積方式構建上下文依賴關系的方法,SPAFBA由于考慮背景區(qū)域對不同尺度前景特征的激勵與約束,PFBA模塊建立的前/背景依賴關系在復雜場景下依然能提供上下文區(qū)分關系,增強前景特征的表示,從而提升方法性能.
在本節(jié)實驗中,SPAFBA的基線模型僅包括標準的ResNet101骨干網絡,并直接通過雙線性插值恢復原圖分辨率大小,通過逐模塊增加的方式進行消融實驗,評估不同模塊對模型總體性能的影響.模型在train_aug數(shù)據(jù)集上進行訓練,在PASCAL_VOC2012驗證集上進行評估.為了公平起見,訓練及測試設置均相同.
不同模塊對SPAFBA的mIoU值對比如表2所示.
表2 不同模塊對SPAFBA的mIoU值的影響Table 2 Influence of different modules on mIoU of SPAFBA
由表2可看出,僅包括ResNet101骨干網絡的基線模型的mIoU值為71.68%,添加JSPU模塊后,mIoU值提升7.66%,表明相比基線模型,JSPU模塊使用的雙線性插值上采樣具有明顯優(yōu)勢.原因在于 JSPU模塊使用高層特征的語義信息作為低層特征的語義指導,同時考慮全局語義及局部語義,更好地利用低層特征恢復分辨率.雙線性插值僅考慮局部信息,容易受局部錯誤像素干擾,恢復分辨率能力較弱.僅在ResNet101中添加PFBA模塊,mIoU值比基線模型提升4.95%,相比僅加入JSPU模塊降低2.71%.其主要原因在于ResNet101具有較低的輸出步幅,丟失過多的細節(jié)特征.PFBA難以捕獲具有較好特征表示的前景特征及背景特征,建立的前/背景依賴關系對前景特征的增強效果有限.在添加JSPU模塊后繼續(xù)加入PFBA模塊,mIoU值提升至80.34%.上述性能提升表明建模前景與背景之間的依賴關系能增強特征的上下文表示,從而提高模型性能.在添加JSPU模塊與PFBA模塊后,根據(jù)文獻[9],進一步在骨干網絡第四層添加輔助損失,SPAFBA的mIoU值又提升0.21%.這表明輔助損失確保中間層特征的語義表示能力,加強模型的表征能力.進一步在測試過程中采用多尺度和翻轉策略,相比只添加輔助損失,mIoU值提升0.13%.最后,使用原始PASCAL_VOC2012數(shù)據(jù)集的訓練集微調模型, mIoU達到81.67%.上述實驗表明,SPAFBA中的模塊能顯著提高網絡性能.
下面進一步對比分析采用不同骨干網絡時,JSPU模塊對骨干網絡的性能影響,結果如表3所示,表中Dilated_表示在相應骨干網絡中增加空洞卷積操作,+JSPU表示在相應骨干網絡中添加JSPU模塊.
表3 采用不同骨干網絡時JSPU模塊在PASCAL_VOC2012驗證集上的性能表現(xiàn)Table 3 Performance of JSPU module with different backbone networks on PASCAL_VOC2012 val set
由表3可看出,添加JSPU模塊后的效果明顯優(yōu)于添加空洞卷積操作.相比空洞卷積維持高分辨率的方法, JSPU模塊能獲得同樣輸出步幅的結果,此外,JSPU模塊內存占用更少,在訓練模型時也具有優(yōu)勢.
最后,分析JSPU模塊與不同的上下文信息提取方法及PFBA模塊結合的性能表現(xiàn),進一步驗證JSPU模塊與PFBA模塊的有效性.采用的上下文信息提取方法包括EncNet中的 Context Encoding Mo-dule方法(簡記為Encoding),DeeplabV3中的ASPP,PSPNet中的PPM(Pyramid Pooling Module).
各方法在PASCAL_VOC2012驗證集上的有效性結果如表4所示:Encoding、ASPP、PPM的上采樣方法不做插值時,表示原始論文的網絡結構;ASPP、PPM的上采樣方法為JSPU時,表示加入JSPU模塊進行上采樣恢復分辨率;Encoding中上采樣方法為雙線性插值時,表示首先從EncNet的骨干網絡中移除空洞卷積,輸出步幅調整為32,再使用雙線性插值對輸出特征圖進行4倍上采樣,將輸出步幅恢復到與原始模型一致,并將特征圖送入Context Encoding Module上下文提取模塊.
表4 各方法的有效性實驗結果Table 4 Vadility of different methods in experiment
由表4可見,Encoding中上采樣方法從不采用插值改為雙線性插值.mIoU值有所下降,表明替換骨干網絡中空洞卷積獲得高分辨率的圖像是困難的,不恰當?shù)纳喜蓸臃椒赡軐е滦阅軗p失.但采用JSPU模塊替換空洞卷積時,mIoU值有所提升,優(yōu)于不采用插值的方式,進一步驗證JSPU模塊在上下文信息提取方面的優(yōu)勢.同時,將JSPU模塊應用到ASPP和PPM中,mIoU值也有所提升.JSPU模塊與PFBA模塊結合,mIoU值達到最優(yōu),說明PFBA模塊捕獲的前/背景依賴能對前景特征提供背景區(qū)域上下文依賴,實現(xiàn)對每個像素特征的激勵與約束,增強特征的語義表示能力.
ResNet101和SPAFBA在PASCAL_VOC2012驗證集上的可視化結果如圖4所示.
(a)原始圖像(a)Original images
(b)真實標簽圖(b)Ground Truth
(c)ResNet101
(d)SPAFBA圖4 各方法在PASCAL_VOC2012 驗證集上的可視結果展示Fig.4 Visual results of different methods on PASCAL_VOC2012 val set
由圖4可見,SPAFBA的分割質量明顯優(yōu)于ResNet101.在第1幅飛機圖像中,ResNet101基本丟失飛機兩翼及尾部形狀,而SPAFBA清晰捕獲其形狀.類似地,對于第4幅和第5幅圖像,SPAFBA都能較好地分割對象形狀.在第2幅和第3幅這種多對象距離很近或重疊的場景中,ResNet101容易將對象邊界錯分或難以區(qū)分,SPAFBA則大幅改善邊界劃分效果,邊界信息和細節(jié)處理更精確.
SPAFBA在PASCAL_VOC2012測試集的可視化結果如圖5所示.由圖可見,預測結果中每個像素的分類結果與原始圖像基本一致,在邊緣及邊界上效果較優(yōu),說明SPAFBA具有較高的語義分割精度.
(a)原始圖像(a)Original images
(b)可視化結果(b)Visualization results圖5 SPAFBA在PASCAL_VOC2012測試集上的可視化結果Fig.5 Visualization results of SPAFBA on PASCAL_VOC2012 test set
本文提出基于語義傳播與前/背景感知的圖像語義分割網絡(SPAFBA).SPAFBA中包含聯(lián)合語義傳播模塊和金字塔前/背景感知模塊.聯(lián)合語義傳播模塊提取高級特征的語義信息,增強低層特征的語義,緩解兩者之間的語義差距,較好地利用低層特征進行融合,恢復分辨率,解決圖像語義分割的分辨率重建問題.金字塔前/背景感知模塊建立前景與背景之間的上下文依賴關系,較好地增強特征的表示能力.兩個公共數(shù)據(jù)集上的實驗表明SPAFBA性能較優(yōu).今后將考慮如何改善邊緣細節(jié)信息的處理,以及如何構建一個更輕、更有效的模型.