靳瑜昕,楊曉文,張 元,焦世超,文陽暉,王愛兵
(中北大學 大數(shù)據(jù)學院,山西 太原 030051)
早期的圖像分割方法是從RGB圖像中提取特征信息進行分割[1-4]。針對端到端的分割網(wǎng)絡在下采樣時圖像分辨率減少導致部分特征信息丟失的問題,文獻[5,6]提出了結(jié)合高級語義信息和低級細節(jié)特征、聚合不同尺度的上下文信息等方法提高分割性能。RGB圖像分割的問題在于圖像只提供顏色、紋理、形狀等二維視覺信息,而深度信息包含豐富的三維空間特征,通過融合RGB圖像和深度圖像可以有效提高語義分割性能。Cao等[7]根據(jù)深度特征隱含的局部幾何形狀信息與語義相關(guān)性更大,提出形狀感知卷積層(ShapeConv)處理深度特征,提高了分割性能。但如何充分利用兩種模態(tài)之間的互補性和差異性,如何增強編器中信息的交互、傳遞以及特征提取能力等仍是需要深入研究的問題。針對以上問題,本文提出了一種注意力引導特征交叉融合的室內(nèi)場景分割網(wǎng)絡(attention-guided multi-modal cross fusion network,ACFNet),包含編碼器、注意力引導的特征交叉融合模塊(attention-guided multi-modal cross fusion module,ACFM)、解碼器3部分。針對RGB圖像和深度圖像的不同特性,分別設計專用的RGB編碼器和深度編碼器提取特征,并將原始深度圖轉(zhuǎn)化為包含更多空間信息的HHA[8](horizontal disparity, height above ground,and the angle the pixel’s local surface normal makes with the inferred gravity direction)圖像。ACFM融合模塊引入注意力機制[9](convolutional block attention module,CBAM)處理兩種模態(tài)特征,并將處理后的兩種模態(tài)以交叉相乘的方式進行融合,充分利用兩種模態(tài)間的互補性和差異性。通過上述的網(wǎng)絡設計,有效地提高了RGB-D語義分割效果。
隨著深度傳感器的發(fā)展,在獲得顏色信息的基礎上,同時也能較為容易的獲得場景的深度信息,越來越多的學者開始了基于RGB-D圖像的分割方法研究。文獻[10]中指出多模態(tài)融合根據(jù)融合階段分為早期融合、晚期融合和混合融合。Chen等[11]提出了空間信息引導卷積網(wǎng)絡(spatial information guided convolutional network,SGNet),在不影響參數(shù)量和計算成本的情況下,感知幾何形狀的能力得到了很大程度的提高。Zhang等[12]提出了NANet(non-local aggregation network),它具有一個精心設計的多模態(tài)非局部聚合模塊(multi-modality non-local aggregation mo-dule,MNAM),以便在多階段更好地利用RGB-D特征的非局部上下文。Cao等[13]提出RGB×D,在早期學習階段以相乘的方式融合RGB信息和深度信息,之后只需要稍微修改就能使用現(xiàn)有的RGB分割網(wǎng)絡,簡單而有效地將RGB和RGB-D語義分割聯(lián)系起來。
注意力機制[14]的基本原理是為特征圖中不同的區(qū)域分配不同的權(quán)重,即提取特征圖中所關(guān)注的有用信息,同時抑制無用信息,從而實現(xiàn)高效的特征提取,并降低了網(wǎng)絡訓練難度。其次,注意力機制有助于獲取全局上下文信息,促進語義分割精度的提高。Zhou等[15]提出一個共同注意力網(wǎng)絡(co-attention network,CANet),設計共注意模塊自適應地聚合深度特征和顏色特征。ACNet(attention complementary network)[16]網(wǎng)絡利用結(jié)合注意力機制的3個并行分支和注意力互補模塊(attention complementary modu-les,ACM)有效提取并融合RGB 特征和深度特征,在NYUD V2數(shù)據(jù)集上的mIou達到48.3%。Zhou等[17]提出一種用于室內(nèi)語義分割的三流自注意網(wǎng)絡(three-stream self-attention network,TSNet),使用帶有自注意模塊的跨模態(tài)蒸餾流融合和過濾兩個不對稱輸入流的語義信息。Yan等[18]提出的RAFNet(RGB-D attention feature fusion network)包含3個互補的注意模塊,能夠有效的從RGB分支和深度分支中提取重要特征,并且減少語義信息的丟失。
本文提出的網(wǎng)絡模型遵循編碼器-解碼器架構(gòu),其中編碼器從輸入中提取豐富的語義特征,并執(zhí)行下采樣以減少計算工作量;解碼器采用上采樣技術(shù)恢復輸入分辨率,最后為每個輸入像素分配一個語義類別。本節(jié)首先介紹了所提ACFNet的整體網(wǎng)絡架構(gòu),然后詳細介紹了編碼器、ACFM特征融合模塊和解碼器3部分內(nèi)容。
本文提出的用于室內(nèi)場景分割的ACFNet體系結(jié)構(gòu)如圖1所示,其中,7×7、1×1均表示卷積操作,S表示卷積或池化操作的步長(Stride)。以編碼器-解碼器為基礎結(jié)構(gòu),RGB圖像結(jié)合HHA圖像作為網(wǎng)絡輸入。編碼器部分設計專用的CNN特征提取架構(gòu),采用兩個獨立的非對稱網(wǎng)絡,分別以ResNet-101和ResNet-50為主干網(wǎng)絡提取RGB特征和深度特征。RGB編碼器和深度編碼器由輸入預處理步驟7×7卷積、最大池化操作和Stage m(m=1,…,4) 4個階段組成,并且在RGB編碼器中加入全局特征提取模塊。在融合模塊引入注意力機制,增強有用信息傳播的同時抑制無用信息對分割效果的影響,基于CBAM提出注意力引導的特征交叉融合模塊(ACFM),并將融合后的特征在編碼器階段多層次傳播到兩個特征提取分支,以更好地利用融合后的增強特征表示。解碼器的基本塊 (Decoder m=0,…,4) 簡單的使用卷積層+BN層+ReLu堆疊多層以及雙線性上采樣操作組成,并且將RGB編碼器與深度編碼器Stage1-3的融合特征通過跳躍連接傳輸?shù)浇獯a器的Decoder3-1,增加低層細節(jié)信息和高層語義信息之間的聯(lián)系,以此來重用編碼器階段丟失的特征信息。
圖1 注意力引導多模態(tài)交叉融合的語義分割模型ACFNet的體系結(jié)構(gòu)
編碼器使用非對稱雙流分支,為RGB和深度編碼器設計不同的特征提取網(wǎng)絡,對原始深度圖像進行數(shù)據(jù)預處理,將其轉(zhuǎn)換為HHA圖像,結(jié)合RGB圖像作為分割網(wǎng)絡的輸入數(shù)據(jù)。分別以ResNet-101和ResNet-50作為RGB編碼器和深度編碼器的主干網(wǎng)絡,并且改進組成主干網(wǎng)絡的基本塊,即在Bottleneck中加入Maxpool并行模塊,如圖2(a)所示,記為MP_Bottleneck,通過增加網(wǎng)絡寬度的方式提高特征提取性能,如式(1)所示
FE_out=Fin+Conv1×1(Cat(Conv3×3(Conv1×1(Fin)),M_P(Conv1×1(Fin))))
(1)
式中:Fin∈RH×W×C, H、W和C分別表示特征圖的高度、寬度和通道數(shù),Conv1×1,Conv3×3分別表示1×1,3×3卷積操作,Cat表示拼接操作,M_P表示最大池化操作,F(xiàn)E_out表示ResNet網(wǎng)絡每階段的輸出。為了改進ResNet網(wǎng)絡提取圖像局部特征的不足,受Cao等[19]提出的GC(global context)的啟發(fā),在RGB編碼器的4個階段Stage1-4添加全局特征提取模塊(GC),如圖2(b)所示,使用GC處理FE_out提取全局特征,并且將最終的全局特征和局部特征通過相加的方式結(jié)合起來作為編碼器Stage1-4的最終輸出,構(gòu)建全局-局部特征提取模塊(global-Local feature extraction module,GL)如圖2(c)所示,如式(2)~式(4)所示
圖2 編碼器詳細設計結(jié)構(gòu)
FGL=FE_out+GC
(2)
GC=FE_out+Conv1×1(ReLu(LN(Conv1×1(y))))
(3)
y=FE_out×SoftMax(Conv1×1(FE_out))
(4)
其中,GC表示全局特征提取模塊(GC)的輸出,Conv1×1表示1×1卷積操作,LN表示批歸一化操作,y表示全局特征提取模塊(GC)模塊中獲取全局上下文部分的輸出,F(xiàn)GL表示全局-局部特征,由于高層階段包含更多的語義信息,會對分割精度產(chǎn)生更大的影響,因此在RGB編碼器最后一個階段的GC_block之前添加全局平均池化(GAP)操作,細化高層語義信息。
為了更好地利用RGB和深度特征之間的互補性進行特征融合,ACFM融合模塊引入注意力機制,首先使用CBAM模塊,如圖3(a)所示,其中,C表示拼接(Conca-tenate)操作,在通道和空間維度上進行注意力操作,分別對RGB和深度特征重新加權(quán),如式(5)~式(8)所示,學習哪些特征信息需要抑制,哪些特征信息需要重點關(guān)注
Fa_rgb=CBAM(FGL)
(5)
Fa_hha=CBAM(FE_out)
(6)
CBAM=ca×σ(Conv7×7(Cat(Avgpool(ca),MaxPool(ca)))
(7)
ca=x×σ(MLP(Avgpool(x)+MLP(Maxpool(x))
(8)
其中,F(xiàn)GL、FE_out分別表示輸入融合模塊的RGB特征和深度特征,x表示CBAM模塊的輸入即FGL、FE_out,ca表示CBAM模塊中通道注意模塊的輸出,F(xiàn)a_rgb、Fa_hha表示經(jīng)CBAM注意力機制處理后的特征輸出,σ表示Sigmoid激活函數(shù),Cat表示拼接操作,Avgpool和Maxpool分別表示平均池化和最大池化操作,MLP表示由兩個1×1卷積層組成的多層感知機。ACFM融合模塊的具體結(jié)構(gòu)如圖3(b)所示,使用交叉相乘的方式,如式(9)和式(10)所示,選擇經(jīng)注意力機制處理后的一種模態(tài)特征乘以未經(jīng)處理的另一種模態(tài)特征,從一種模態(tài)中選擇可區(qū)分的信息輔助修正另一種模態(tài)
圖3 注意力引導多模態(tài)交叉融合模塊
Fm_rgb=FGL×Fa_hha
(9)
Fm_hha=FE_out×Fa_rgb
(10)
其中,×表示逐元素相乘操作,F(xiàn)m_rgb、Fm_hha分別表示經(jīng)相乘操作修正后的特征輸出,之后進行交叉殘差連接,使用經(jīng)CBAM模塊處理后的特征與經(jīng)另一模態(tài)信息修正后的原始模態(tài)信息交叉相加,進一步重用在網(wǎng)絡處理過程中丟失的細節(jié)信息,增強兩種模態(tài)之間的互補性,最后將兩種模態(tài)信息通過相加的方式進行融合,如式(11)所示
Ff_out=(Fa_rgb+Fm_hha)+(Fa_hha+Fm_rgb)
(11)
式中:Ff_out表示ACFM模塊的最終輸出結(jié)果,將融合后的特征傳輸?shù)骄幋a器階段以相加的方式多層次傳播到兩個特征提取分支,該模塊充分利用了兩種模態(tài)之間的互補信息。本文實驗結(jié)果表明,ACFM模塊能夠高效融合RGB和深度特征,產(chǎn)生更有利于語義分割的特征表示,進一步改善語義分割性能。
ACFNet網(wǎng)絡的解碼器部分由5個相同的單元組成,如圖4所示,解碼器單元由卷積層+BN層+ReLU激活函數(shù)和上采樣操作組成,并在其中加入短接連接重用在訓練過程中丟失的信息,短接連接使用1×1卷積改變編碼器階段的輸出通道數(shù),使其與解碼器對應階段的通道數(shù)相同可以進行相加操作。解碼器單元中,1×1卷積用于改變通道數(shù),減少模型復雜度,兩個3×3卷積用于增加網(wǎng)絡的非線性特征,上采樣操作采用雙線性插值方法,經(jīng)過5次上采樣操作后圖像分辨率恢復到輸入大小。第一個解碼器單元的輸入通道數(shù)為2048,在圖像分辨率增加的過程中通道數(shù)逐漸減少,由于最后一個解碼器單元用于輸出網(wǎng)絡預測結(jié)果,因此去除其最后一個卷積層之后的批歸一化操作,并且設置輸出通道數(shù)為語義類別個數(shù),即40。
圖4 解碼器單元
本節(jié)在常用的RGB-D室內(nèi)數(shù)據(jù)集上進行了大量實驗,評估本文所提出的分割方法,并且對網(wǎng)絡的關(guān)鍵模塊設置消融實驗,驗證其有效性。
3.1.1 NYUD V2數(shù)據(jù)集
NYU Depth V2數(shù)據(jù)集[20]是由Microsoft Kinect的RGB和深度相機采集的各種室內(nèi)場景組成,包含來自3個城市464個不同室內(nèi)場景的1449張帶有標簽的RGB-D圖像對,其中795張圖像對用于訓練,654張圖像對用于測試環(huán)節(jié),使用將894個不同物體分為40個類別的分類方式。
3.1.2 評估標準
本文使用的語義分割性能度量標準為常見的像素精度(pixel accuracy,PixAcc)、平均交并比(mean intersection-over-Union,mIou)、平均像素精度(mean pixel accuracy,MPA),其中PixAcc為表示標記正確的像素占總像素的比例,其計算公式如式(12)所示;mIou即求取所有物體類別交并比(Iou)的平均值,本質(zhì)為求真實值(Ground Truth)和預測值兩個集合的交并比,其計算公式如式(13)所示;MPA為先計算每個類分類正確像素的比例,之后求所有類的平均,其計算公式如式(14)所示
(12)
(13)
(14)
其中,k+1表示類別總數(shù),i表示真實值,j表示預測值,pij表示將真實值為i預測為j的數(shù)量,pii表示預測正確的數(shù)量,pij和pji分別表示假正(FP)和假負(FN)的數(shù)量。
本文采用Pytorch深度學習框架實現(xiàn)網(wǎng)絡模型,使用動量為0.9的隨機梯度下降(stochastic gradient descent,SGD)優(yōu)化器訓練所提出網(wǎng)絡模型,并設置權(quán)重衰減為0.001進行正則化,初始學習率設置為0.02,在NYUD V2數(shù)據(jù)集上訓練500個epoch,批量大小設置為5。
本文提出的網(wǎng)絡結(jié)構(gòu)分別將改進后的ResNet-101和ResNet-50網(wǎng)絡在ImageNet數(shù)據(jù)集上進行預訓練后作為編碼器的主干網(wǎng)絡,將深度圖像編碼為HHA圖像,輸入的RGB-D圖像分辨率大小統(tǒng)一裁剪為640×480,為了增加圖片的多樣性,對輸入圖片應用隨機水平翻轉(zhuǎn)、縮放和裁剪等操作進行數(shù)據(jù)增強,使用交叉熵作為損失函數(shù)并采用監(jiān)督學習的方式,在NVIDIA GeForce RTX 3090 GPU上訓練所提出的網(wǎng)絡模型參數(shù),訓練過程中的損失曲線如圖5所示。
圖5 損失曲線
3.3.1 與其它方法的對比實驗
本節(jié)在NYUD V2數(shù)據(jù)集上將本文提出的ACFNet與其它現(xiàn)有的方法進行比較,NYUD V2數(shù)據(jù)集劃分為40個語義類別,結(jié)果見表1,列出了本文方法與其它方法在像素精度(PixAcc)、平均交并比(mIou)、平均像素精度(MPA)上的分割性能。
表1 在NYUD V2數(shù)據(jù)集上與其它方法的比較
具體而言,本文方法以ResNet-101+ResNet-50為主干網(wǎng)絡,在40個語義類別的NYUD V2數(shù)據(jù)集上進行實驗,兩個評估指標像素精度、平均交并比和平均像素精度分別為77.0%、51.5%和64.7%。與僅使用RGB圖像作為輸入的RefineNet相比,像素精度、平均交并比和平均像素精度分別提高了3.4%、5.0%和5.8%,實驗結(jié)果表明加入深度特征對于分割性能有一定的提高;與同樣使用注意力機制的ACNet和CANet相比,平均交并比分別提高了3.2%和0.3%;與融合特征同樣使用雙向多級傳播策略的RAFNet相比,像素精度、平均交并比和平均像素精度分別提高了3.2%、4.0%和4.4%;與較新的分割算法TSNet和RGB×D相比較,雖然網(wǎng)絡層數(shù)相對較多,但平均交并比也有很大提高,分別提高了5.4%和0.4%。綜上所述,本文所提出的ACFNet優(yōu)于現(xiàn)有的大多數(shù)方法,在NYUD V2數(shù)據(jù)集上表現(xiàn)出具有競爭力的分割性能,能夠較好地適應室內(nèi)場景的復雜性和多樣性。
3.3.2 語義分類結(jié)果分析
為了更直觀地分析本文方法在不同類別上的語義分割結(jié)果,本節(jié)進一步分析ACFNet在NYUD V2數(shù)據(jù)集的40個語義類別上的交并比,并將其與室內(nèi)語義分割算法RAFNet和CANet在不同類別上的交并比進行比較,以更清楚驗證本文方法在室內(nèi)語義分割方面的有效性。結(jié)果見表2,每個類別的最高結(jié)果用黑色加粗標記。
表2 在NYUD V2數(shù)據(jù)集上40個類別的交并比(Iou)比較結(jié)果/%
從表2中可以總結(jié)得出,在40個語義類別中,本文方法在22個類別上的交并比表現(xiàn)都優(yōu)于其它兩種方法。一方面,與CANet相比,本文方法在常見的易區(qū)分物體“柜子”、“床”、“椅子”上,交并比分別提高了1.4%、3.0%、3.5%;同時在大面積背景區(qū)域的分割精度上也有一定提高,與RAFNet相比,ACFNet在“墻壁”、“地面”和“天花板”的交并比分別提高了6.0%、1.5%和2.8%,這得益于本文提出的融合模塊能夠充分利用RGB和深度兩種特征之間的差異性和互補性,有效利用了深度特征所提供的三維空間信息,其中注意力機制抑制無用信息、放大有用信息的能力是融合模塊表現(xiàn)較好的主要原因之一。另一方面,本文方法在出現(xiàn)頻率較低的小物體上也表現(xiàn)出了較好的分割性能,比如在“圖片”、“燈”、“包”等物體上,ACFNet的交并比分別比RAFNet和CANet提高了8.2%、2.2%、10.6%和3.2%、4.2%、3.4%;同時在一些形狀不規(guī)則物體上的交并比也有一定程度的提高,比如ACFNet在“百葉窗”、“淋浴器”上的交并比分別比RAFNet和CANet提高了9.0%、4.1%和3.9%、19.1%,這得益于本文提出的全局-局部特征提取模塊,增加了更多可區(qū)分的細節(jié)信息,在一定程度上能夠改進分割性能。
3.3.3 消融實驗
為了驗證在相同超參數(shù)下本文所提網(wǎng)絡結(jié)構(gòu)的有效性,本節(jié)在NYUD V2數(shù)據(jù)集上進行了大量的消融實驗。以編碼器的主干網(wǎng)絡為ResNet-101和ResNet-50、RGB和深度特征通過簡單相加融合并進行雙向多級傳播、編碼器和解碼器對應階段設計短接連接的配置作為基線網(wǎng)絡(Baseline),ACFM表示融合模塊,GL表示全局-局部特征提取模塊,見表3,與基線網(wǎng)絡相比,單獨添加兩個模塊的平均交并比分別提高了2.4%、1.5%,而集成兩個模塊的本文方法平均交并比提高了3.1%,這表明同時使用比單獨使用任一模塊效果更好。
表3 在NYUD V2數(shù)據(jù)集上ACFM和GL模塊的消融實驗
為了進一步驗證本文所設計的ACFM融合模塊是最優(yōu)組合結(jié)果,消融實驗在ACFNet僅去除GL模塊的基礎上進行。首先設置不同的特征融合方式進行實驗,表明ACFM模塊融合方式的有效性,見表4,CBAM表示在融合之前對兩種特征進行的注意力操作,相加表示逐元素相加,本文方法指ACFM模塊中使用的交叉相乘再相加的融合方式,從表4中可以看出僅選擇相加的融合方式效果最差,像素精度、平均交并比和平均像素精度分別為74.3%、48.4%和60.9%;加入CBAM模塊處理特征之后再進行相加融合分割性能有一定的提高,而本文的融合方式是3種方式中融合效果最好的,像素精度、平均交并比和平均像素精度可以達到76.4%、50.8%和63.9%。這是因為ACFM模塊的融合方式增加了更多的交互操作,增強了兩種特征間的相關(guān)性,有效地利用了RGB和深度特征攜帶的信息。
表4 在NYUD V2數(shù)據(jù)集上ACFM模塊不同融合方式的消融實驗
在確定融合模塊的具體結(jié)構(gòu)之后,本文對在網(wǎng)絡的不同位置加入融合模塊也進行了消融實驗。如表5所示,在每個階段單獨加入ACFM的分割性能差強人意,尤其是網(wǎng)絡結(jié)構(gòu)的早期比如7×7卷積、Stage1之后,從表5中可以看出,這樣對網(wǎng)絡性能的提升微乎其微,這是由于前期的特征還未經(jīng)過太多處理,獲得的有用信息較少。而在每個階段單獨加入融合模塊對于整體的分割性能都有一定的改善,因此本文選擇在所有階段加入融合模塊,表5中第6行的顯示結(jié)果表明了本文網(wǎng)絡結(jié)構(gòu)設計的有效性,這種方式下的分割性能是最優(yōu)的,與效果最差的7×7卷積階段加入融合模塊相比,像素精度、平均交并比和平均像素精度分別提高了1.2%、2.1%和2.0%。
表5 在NYUD V2數(shù)據(jù)集上ACFM模塊位于ResNet-101+ResNet-50不同階段的消融實驗
為了驗證本文提出的修改ResNet網(wǎng)絡基礎塊的設計,在其它結(jié)構(gòu)均不改變的情況下,僅替換MP_Bottleneck為Bottleneck進行消融實驗,結(jié)果見表6,實驗結(jié)果表明MP_Bottleneck使像素精度、平均交并比和平均像素精度分別有了0.5%、0.3%和0.5%的提高。
表6 在NYUD V2數(shù)據(jù)集上ResNet-101+ResNet-50不同基礎塊的消融實驗
3.3.4 分割結(jié)果可視化
為了更直觀地展示本文網(wǎng)絡模型的結(jié)果,本節(jié)在圖6中顯示了ACFNet在公共數(shù)據(jù)集NYUD V2上的部分可視化結(jié)果,其中第一、第二、第三列依次表示RGB圖像、HHA圖像和語義標簽,第四、第五列分別表示基線網(wǎng)絡和ACFNet的語義分割結(jié)果。圖6中使用方框標記了語義分割結(jié)果的對比區(qū)域,結(jié)果顯示ACFNet對于易區(qū)分的大面積物體的分割精度有所提高,如第1行的“墻壁”和第6行的“窗簾”;本文模型在不規(guī)則物體上的分割表現(xiàn)也較好,如第2行的“盆栽”和第3行的“燈”,相比基線網(wǎng)絡,ACFNet在輪廓細節(jié)方面的分割結(jié)果有所改善;對于顏色相近的難以區(qū)分的物體,如第4行的“架子”和第5行的“水池”,本文模型也能獲得更多分割正確的區(qū)域。
圖6 本文網(wǎng)絡在NYUD V2數(shù)據(jù)集上的分割結(jié)果可視化對比
為改善室內(nèi)語義分割算法性能,本文提出一種注意力引導多模態(tài)交叉融合的室內(nèi)語義分割網(wǎng)絡ACFNet。在數(shù)據(jù)預處理階段將深度圖轉(zhuǎn)化為包含更多空間信息的HHA圖像,ACFM融合模塊引入注意力機制,從通道和空間兩方面處理RGB和深度特征并設計專用的融合連接方式。同時引用全局上下文模塊提取全局特征,將全局、局部特征通過相加結(jié)合起來,增強網(wǎng)絡傳播過程中的特征表示。在室內(nèi)RGB-D數(shù)據(jù)集NYUD V2上進行了大量對比實驗結(jié)果表明本文方法的有效性,相比近幾年其它的語義分割算法,像素精度和平均交并比均有所提高。如何進一步簡化本文的網(wǎng)絡模型,降低模型復雜度,融合多尺度特征以提高小物體的分割準確率是未來需要解決的問題。