程 鑫 尹四清,2 崔建功 梁昊然
(1.中北大學軟件學院 太原 030051)(2.山西省軍民融合軟件工程技術研究中心 太原 030051)
(3.中北大學動態(tài)測試省部共建實驗室 太原 030051)
圖像語義分割是將圖像中每個像素按照語義信息劃分類別的技術,是計算機視覺中重要的課題之一。在無人駕駛,室內(nèi)導航,增強現(xiàn)實等領域具有廣泛的應用場景。在室內(nèi)場景圖像語義分割領域中,由于室內(nèi)場景中顏色和紋理特征差別較小、光照較差、遮擋嚴重、存在著交錯復雜的物體等具有挑戰(zhàn)性的問題。因此,RGB-D語義分割得到研究者們的廣泛關注。
在最近幾年,基于超像素分割的RGB-D圖像語義分割一直是關注的焦點[1~2],然而這種方法使用的是手工制作的特征輸入到分類器中來標記每個區(qū)域。此方法步驟繁多,在計算和時間上都是密集的?;谏鲜龅木窒扌砸约吧疃葘W習的成功引入。尤其是基于FuseNet[3]的室內(nèi)場景語義分割方法,在網(wǎng)絡的編碼器分支中,對深度通道的中間特征圖與RGB通道的中間特征圖進行元素求和。在編碼器-解碼器中使用不同策略的融合方式,例如早期融合[4],后期融合[5],將RGB圖和深度幾何信息圖進行融合后作為輸入。深度網(wǎng)絡模型有助于提取低、中、高級特征。這些方法通常使用的是監(jiān)督機制,需要大量的標注數(shù)據(jù),才能正確分割。
在最近的五年中,生成式對抗網(wǎng)絡在圖像合成和圖像分割的方面效果顯著。隨著技術的不斷更新,已經(jīng)有研究者提出了使用對抗網(wǎng)絡的半監(jiān)督學習方法來提高圖像語義分割的分割精度[6~7]。然而就我們統(tǒng)計所知,以前沒有任何研究使用生成式對抗網(wǎng)絡和半監(jiān)督學習機制來研究室內(nèi)場景語義分割。
在這項研究中,我們提出了一種基于生成式對抗網(wǎng)絡的半監(jiān)督語義分割方法,該方法使用一定數(shù)量的標簽數(shù)據(jù)和一定數(shù)量的無標簽數(shù)據(jù)。我們還提出了新的損失函數(shù),是基于距離變換和逐像素交叉熵的損失項[8],來改善有監(jiān)督階段的分割結果。該損失函數(shù)用于對抗式生成網(wǎng)絡的預訓練分割網(wǎng)絡中,在訓練過程中分割網(wǎng)絡充當生成網(wǎng)絡,鑒別網(wǎng)絡通過生成置信圖來幫助分割網(wǎng)絡產(chǎn)生更好的分割效果。并且我們采用稀疏融合的思想,在分割網(wǎng)絡中融入深度幾何信息分支,來降低類感染。
將生成對抗網(wǎng)絡首次應用在圖像語義分割是在2016年[9],訓練一個卷積神經(jīng)網(wǎng)絡進行圖像分割,在網(wǎng)絡里充當生成器,鑒別器來判斷分割結果是來自生成器還是來自真實的標簽,并證明了這種對抗性方法可以減少訓練中的過度適應。在2018年,W.C.Hung等[10]研究出一個新的鑒別器,利用圖像的分辨率判斷圖像的真假性,為了減少訓練時需要的標簽數(shù)據(jù)量,引入了半監(jiān)督機制;文獻[11]提出了一種基于GAN的半監(jiān)督學習模型,他們的創(chuàng)新點在于生成了額外的訓練數(shù)據(jù)和一個鑒別器,鑒別器在類成員之間和生成器圖像中進行圖像分類,此方法生成的圖像仍然建立在像素強度上。文獻[12]中提到像素強度并不總是與對象結構的特性相關聯(lián)。綜上所述,基于生成式對抗網(wǎng)絡的半監(jiān)督方法研究已經(jīng)逐步拓展。
由Caner Hazirbas等[3]提出了兩種融合策略,稀疏融合策略和密集融合策略。通過研究者的實驗證明提出的兩個融合策略均優(yōu)于當時已有的大多數(shù)方法,由于本文采用DeepLabv3網(wǎng)絡作為分割網(wǎng)絡,其網(wǎng)絡屬于深度網(wǎng)絡結構,為了提高運算速度和減少數(shù)據(jù)量,所以本文引用稀疏融合的方法策略。
在FuseNet網(wǎng)絡中,稱卷積層(Convolutional layer,Conv)和激活函數(shù)(ReLu),批標準化規(guī)則(Batch Normalization,BN)的組合為CBR塊。并在CBR塊與池化層(Pooling)之間插入融合層(Fu?sion)稱之為稀疏融合。如圖1所示。通過融合,將深度幾何特征圖不連續(xù)的加入RGB的分支中,以增強RGB特征圖。經(jīng)過研究者們的證明,顏色域和幾何域中的特征是互補的,可有效地通過其結構來區(qū)分無紋理區(qū)域,通過其顏色區(qū)分無結構區(qū)域。
圖1 稀疏融合框架圖
在本文室內(nèi)場景分割算法中包括語義分割器網(wǎng)絡和鑒別器網(wǎng)絡,其中分割器是基于DeepLabv3網(wǎng)絡的兩個分支網(wǎng)絡,分別輸入RGB圖像和深度幾何信息,隨著卷積層不斷提取特征,將提取的幾何特征信息融入到RGB特征中,最后結合使用不同學習率的多尺度空洞卷積來擴大感受野;鑒別器是基于全卷積網(wǎng)絡,相比傳統(tǒng)GAN網(wǎng)絡,本文的鑒別器輸入圖片尺寸不受限制。
首先向兩個分支的分割網(wǎng)絡分別輸入一組尺寸為H×W×3的RGB圖和深度幾何圖,鑒別網(wǎng)絡接收從分割網(wǎng)絡或真值標簽獲得類別概率圖作為輸入,輸出概率圖的尺寸大小為H×W×1。在訓練期間,帶標簽和無標簽的數(shù)據(jù)都在半監(jiān)督設置下使用,具有不同的損失函數(shù)。當使用帶標簽的數(shù)據(jù)時,訓練由帶有真值標簽的距離圖損失項和對抗性損失來監(jiān)督;對于未標記的數(shù)據(jù),從分割網(wǎng)絡中得到分割預測后,通過分割預測來計算置信圖,該置信圖用作一個監(jiān)督信號來訓練具有掩膜交叉損失。其中置信度表示分割的質(zhì)量,所以置信圖有助于訓練期間可信區(qū)域的位置。
本文所述網(wǎng)絡總結構圖如圖2所示,在訓練過程中使用三個損失函數(shù)對分割網(wǎng)絡進行優(yōu)化:距離圖損失懲罰項Lpm(距離圖是從真值和預測圖之間的距離,并從ground truth mask中得到),對抗損失Ladv來愚弄鑒別器;半監(jiān)督損失Lsemi是基于鑒別器網(wǎng)絡輸出的置信圖的損失。其中利用鑒別器損失LD訓練鑒別器網(wǎng)絡。分割網(wǎng)絡與鑒別網(wǎng)絡每層參數(shù)如表1和表2所示。
表1 分割網(wǎng)絡每層參數(shù)
表2 鑒別網(wǎng)絡每層參數(shù)
圖2 基于GAN的總體結構
傳統(tǒng)的室內(nèi)場景中通過目標的顏色和紋理特性來識別,從分割效果上來看,相同紋理或相同顏色的目標出現(xiàn)邊界感染,文獻[13]中,研究者通過多次實驗觀察到,深度圖像中存在著對象大量的幾何信息,利用這些幾何信息對具有相似紋理,顏色,特征,位置進行語義分割精度有了很大的提高。
結合上面問題,本文中受到稀疏融合思想的啟發(fā),在分割網(wǎng)絡中,將給出兩個分支,同時提取RGB圖片特征和幾何信息特征,并分別在四個殘差塊的最后一個CBL塊(卷積層(Conv)、批處理規(guī)范化(BN)、帶泄露修正線性單元(Leaky-ReLU))后插入深度信息的淺層特征,給出block1中結構,如圖3所示。其余三個殘差塊與此結構相同。將在空間金字塔池化ASPP(Atrous Spatial Pyramid Pooling)后加入CBL塊,塊后也同樣融入深度信息特征到RGB通道。以這種方式將深度圖像上得到的特征映射不連續(xù)的加入到RGB分支中,來增強RGB的特征映射。由于顏色特征會被深度特征覆蓋,所以加入BN層來減少內(nèi)部變量的移位來解決這個問題。將其融合后,在基礎網(wǎng)絡的最后一層加入dropout層來進一步提高性能。最后,我們利用上采樣層和softmax函數(shù)來匹配輸入圖像的大小。
本文中使用的鑒別器網(wǎng)絡是受到全卷積網(wǎng)絡和文獻[14]中鑒別器的結構啟示。由5個卷積層組成,其中kernel size=4,filter=(64,128,256,512,1)。stride1,2,3,4=2,stride5=1(stride表示第i層卷積層的步數(shù),i=1,2,3,4,5)。并在每層后應用Leaky-ReLu激活函數(shù)。最后增加一層上采樣層,將圖像恢復原尺寸大小。
圖3 殘差塊1中稀疏融合結構圖
輸入給定大小的圖像Xn:H×W×3,Yn為真值標簽圖。分割網(wǎng)絡表示為S(?),圖像Xn經(jīng)過分割網(wǎng)絡后的輸出表示為S(Xn):H×W×C,這里C為類別數(shù),由于本文中室內(nèi)場景分為14類,所以在這里C取值為14。鑒別器網(wǎng)絡表示為D(?),它輸入尺寸為H×W×14的分類概率圖,輸出尺寸為H×W×1的可信度區(qū)域圖。
3.4.1 鑒別器網(wǎng)絡
在訓練鑒別器網(wǎng)絡時,只使用帶有標記的數(shù)據(jù)。鑒別器網(wǎng)絡輸出兩個結果,判斷是否來自于真值。鑒別網(wǎng)絡損失定義如下:
式(1)中:D(Xn)(h,w)表示輸出Xn在位置(h,w)處的可信度區(qū)域圖;D(Yn)(h,w)表示輸出Yn在位置(h,w)處的可信度區(qū)域圖;當p=0時,說明結果來自于分割網(wǎng)絡輸出的預測圖像;當p=1時,說明結果來自于熱編碼后的真值標簽圖。
3.4.2 分割器網(wǎng)絡
在訓練分割器網(wǎng)絡時,采用多項損失和約束分割網(wǎng)絡,并使其最小化進行調(diào)優(yōu)。分割網(wǎng)絡損失函數(shù)如下:
式(2)中:Lpm為距離圖損失懲罰項;Lsemi為基于鑒別器網(wǎng)絡輸出的置信圖的損失;Ladv為對抗損失;超參數(shù)λadv和λsemi是為了調(diào)優(yōu)分割網(wǎng)絡交叉熵的重要因子。由于對抗性損失為了接近地面真值而過度校正預測值,交叉熵損失逐步減小,會選擇一個比標記數(shù)據(jù)的λadv小的數(shù)值,對于我們所提出的方法中的超參數(shù)。λadv設置為0.01,λsemi設置為0.1。
距離圖損失懲罰項(Distance map loss penalty term),引入此損失項是為了提高RGB圖像中對象的分割邊界的精度。利用基于真值距離變換的損失函數(shù)來懲罰過度分割和稍欠分割。距離變換允許插值每個像素之間的2D距離到地面真值分割。其定義為
式(3)中:Lpm為距離圖損失懲罰項,表示預測標簽和真值標簽之間的像素交叉熵;N=H×W;y表示真值,y表示預測標簽;y在坐標位置為(h,w)處的像素值為y(h,w);y在坐標位置為(h,w)處的像素值為y(h,w)。C表示類別數(shù)目;⊙ 表示哈達瑪積;?表示距離圖懲罰項。為了計算?,首先計算真值的倒數(shù)的距離變換,然后將其反轉(zhuǎn)促使像素更接近邊界,變量γ控制與分類對象邊界的擬合。在這項研究中,將γ設置為20。然后計算距離變換的真值,得到分類對象的距離圖。
通過鑒別網(wǎng)絡與分割網(wǎng)絡來進行對抗學習,則得到對抗損失,其定義為
式(4)中:D(S(Xn))(h,w)表示由分割網(wǎng)絡輸出結果S(Xn)在位置(h,w)處的可信度區(qū)域圖。對抗性損失用于訓練分割網(wǎng)絡,使分割預測結果更加接近真值,來欺騙鑒別器。
使用未標記的數(shù)據(jù)訓練時,半監(jiān)督環(huán)境下進行對抗性訓練,由于此時沒有標簽數(shù)據(jù),則不使用Lpm,但是對抗性損失仍然適用,因為它只需要鑒別器D(?)。應該注意的是,鑒別器網(wǎng)絡已經(jīng)被訓練過了,此時可以產(chǎn)生置信圖D(S(Xn)),用來描述與真值分布足夠接近的區(qū)域。其定義為
式(5)中:Tsemi是置信圖上的閾值,以突出可信區(qū)域;當D(S(Xn))(h,w)>Tsemi時,I(x)=1,否者I(x)=0。在本文中將Tsemi設置為0.2,低于此閾值時,產(chǎn)生的可信度區(qū)域小,無法在半監(jiān)督的環(huán)境下正確改進分割。
NYU-DepthV2室內(nèi)場景RGB-D數(shù)據(jù)集[15],該數(shù)據(jù)集包含646個不同場景和26種不同場景類型的圖。其中包含有1449個RGB和深度圖像,這些圖像被分成795個訓練圖像和654個測試圖像,分辨率為640×480。Gupta S等[16]將這4個類標簽(ground,permanent structures,furniture,props)映射到40個類標簽。本文中是將4分類標簽映射到14個結構化類標簽進行實驗。語義類別為Bed,Books,Ceiling,Chair,F(xiàn)loor,F(xiàn)urniture,Objects,Pic?ture,Sofa,Table,Tv,Wall,Window,uknw。
實驗方法是采用Pytorch框架實現(xiàn)的,采用的Pytorch的版本為0.4.1,CUDA9.0,GTX1080ti。選用的優(yōu)化分割網(wǎng)絡參數(shù)的方法為mini-batch梯度下降算法,輸入圖像的批次batch_size設為2,設置學習率為0.0007,由于過擬合現(xiàn)象,我們選用權重衰減率設為0.0005。選用優(yōu)化鑒別網(wǎng)絡的方法是使用Adam優(yōu)化器,設置學習率為0.001。最大迭代次數(shù)為20K。
像素精度也稱為全局精度,是真實分類預測概率。定義為
平均像素精度表示每個類別的精準度平均值,也稱為標準化混淆矩陣的平均值。定義為
對于沒有“void”或“background”標簽或者少量像素屬于這些類的數(shù)據(jù)集,這還是一個不錯的評價標準。
聯(lián)合交并比是預測值和真值的交集在他們的并集上的平均值,定義為
在本文中有三項超參數(shù),其中是λadv和λsemi用于對多項任務學習的平衡,Tsemi用于衡量半監(jiān)督學習的敏感度。通過實驗對比,在表3中列舉出超參數(shù)的實驗數(shù)據(jù),以聯(lián)合交并比最優(yōu)供算法選擇。實驗時使用1/8的數(shù)據(jù)量。首先設置相同λsemi條件下,對比不同的λadv,可以看到當λadv=0.01時,IoU的值最高。接下來驗證在λadv=0.01時,對Tsemi和λsemi的不同取值進行對比,得到當Tsemi=0.2,λsemi=0.1時,得到最佳的IoU數(shù)值。
表3 超參數(shù)分析表
為了有效評估本文算法的良好特性,通過與基于CNN的FuseNet網(wǎng)絡、文獻[17]和本文所提出的語義分割方法進行結果對比,采用NYU-DepthV2的驗證集來驗證實驗結果,實驗結果如圖4所示。
圖4 NYUDepth V2數(shù)據(jù)集上的語義分割結果(迭代次數(shù)20K)
圖4(g)與圖4(d)、(e)相比,在視覺效果上逐步有了明顯的提升,是由于引入幾何深度信息以及基于分割鑒別網(wǎng)絡的對抗性,使得性能有很大的提升。圖4(f)是使用本文方法沒有加入深度信息的純RGB圖語義分割,相比于帶有標簽圖4(c)中,床頭燈周邊區(qū)域光照強,亮燈部分的輪廓和紋理信息丟失嚴重,提供了弱邊界信息;而加入深度幾何信息后,可以為場景中提供更多的語義標簽上下文信息。綜上比較看來,在文本框架結構中融合幾何深度信息的半監(jiān)督技術,可以帶來更具有魯棒性、判別力強的上下文約束,有更好的視覺效果。
本文網(wǎng)絡在14分類映射的NYUDepth V2數(shù)據(jù)集上做20K次迭代次數(shù)的實驗結果,并與FuseNet網(wǎng)絡方法、Multiscale+depth Convet方法[19]以及其他方法進行對比,結果如表4所示。通過對比發(fā)現(xiàn)本文提出的網(wǎng)絡模型比FuseNet的IoU提高了3.52%MPixelacc提高了5.25%。與文獻[18]的方法相比,Pixelacc提高了1.95%。與文獻[19]中提出的融合超像素MRF的方法相比,MPixelacc有了明顯的提高。實驗證明本文提出的模型對語義分割具有良好的魯棒性。在本文中只復現(xiàn)了基于CNN的FuseNet網(wǎng)絡,把原來作者的數(shù)據(jù)集更換為本次使用的數(shù)據(jù)集,其原理沒有發(fā)生改變,并且輸入的批次以及迭代次數(shù)和顯卡運算有關,復現(xiàn)中最好的結果是36.61%的IoU,比FuseNet中的37.76%的IoU低。
表4 算法比較實驗數(shù)據(jù)表
本文提出了一種基于GAN網(wǎng)絡并融合深度幾何信息的半監(jiān)督學習方法。這種方法有利于加強對象邊界信息內(nèi)容。我們基于距離變換的新?lián)p失函數(shù)在訓練階段懲罰了錯誤的預測,并幫助分割網(wǎng)絡在半監(jiān)督學習的階段對未標注的圖像進行更精確的分割。通過實驗表明,使用有限數(shù)量的注釋數(shù)據(jù),可以獲得準確的室內(nèi)對象分割。但是,該模型非常依賴圖像質(zhì)量分布。為了進行有效訓練,它需要在訓練集中充分地平衡好標簽圖像和不同圖像的質(zhì)量,才能準確預測圖像的語義分割。下一步我們將這項工作擴展到三維圖形語義分割,將半監(jiān)督的技術逐步擴展到弱監(jiān)督,利用少量標簽圖來做訓練。