朱蕾蕾
(河南省科學技術交流中心,河南 鄭州 450002)
圖像分割是圖像理解的基石,也是計算機視覺研究的關鍵。傳統圖像分割方法大多是基于手工特征提取和概率圖模型,如隨機森林(Random For?est)、條件隨機場(CRF)、馬爾科夫隨機場(MRF)等,這些方法很難產生準確的分割結果。
圖像語義分割是通過像素水平理解來識別圖片內容,通過對圖像中的每個像素點進行分類標注,并分割出語義相同的像素區域。2014年,Hari?haran等[1]提出SDS語義分割方法,該模型對目標監測和語義分割進行協同,導致訓練時間長、內存消耗大。為進一步降低內存開銷,提升語義分割的精度,2015年,Long等[2]提出全卷積網絡FCN,該模型采用卷積神經網絡來實現圖像像素到像素類別的變換,開啟圖像語義分割算法的新時代。之后國內外學者又相繼提出了Deeplab[3]、GroupViT[4]等基于卷積神經網絡的圖像語義分割算法。
上述圖像語義分割方法大多是基于卷積神經網絡建構的,這類模型僅能學習到圖像的局部特征信息,很難對全局上下文的依賴關系進行建模,導致分割結果不理想。此外,現有的圖像語義分割研究大多是基于大樣本數據,有關小樣本數據的研究較少。基于此,本研究提出基于深度殘差網絡(Deep Residual Network,ResNet)和雙向門限遞歸 單 元(Bi?directionalGated Recurrent Unit,Bi?GRU)的圖像語義分割模型ResNet?BiGRU。該模型利用深度卷積網絡來獲取局部特征信息,利用雙向GRU網絡對全局上下文特征信息進行建模,利用改進的空間金字塔池化方法(ASPP)來解決物體的多尺度問題。試驗結果表明,本研究提出的語義分割模型能產生分辨率高、邊界清晰的語義分割結果。
本研究在Deeplabv2圖像語義分割模型的基礎上進行改進,提出適用于對全局上下文特征信息進行建模的圖像語義分割模型ResNet?BiGRU模型。ResNet?BiGRU語義分割模型由級聯的深度殘差網絡、基于雙向GRU的循環網絡、改進的ASPP模塊組成(見圖1)。
深度卷積網絡的層數越深,可抽取到的特征信息也就越豐富,但在實際應用中可能會出現網絡退化、梯度消失的現象。因此,本研究選取ResNet101為基準網絡來構建級聯深度殘差網絡。其中,Dee?plabv2模型中的ResNet101網絡由5個卷積組構成,第一卷積組Conv1在完成卷積操作和第一次池化Pool1操作后,輸出步長為4的特征圖,空間分辨率降低1/4;第三卷積組Conv3在進行特征提取后,特征圖的空間分辨率降低1/2,輸出步長為8;其他卷積組沒有降采樣操作,最終得到降采樣8倍的特征圖。在ResNet101第五卷積組Conv5后增加第六卷積組Conv6,從而構成級聯的深度殘差網絡,Conv6和Conv5具有相同的網絡結構。以此類推,在ResNet101網絡后可增加多個卷積組,試驗發現,在增加第七卷積組后,模型的語義分割精度不再繼續提高。6個卷積組構成級聯的深度殘差網絡如圖2所示。其中,第四卷積組Conv4、第五卷積組Conv5、第六卷積組Conv6使用空洞卷積,空洞率分別為2、4、4。
CNN網絡受限于自身拓撲結構,導致層與層之間在面對建模序列問題時只能利用當前局部特征信息,很難獲取圖像的全局特征信息。而循環神經網絡(Recurrent Neural Network,RNN)能很好地處理特征信息的長依賴關系,還能有效捕捉長時記憶特征。因此,考慮將RNN網絡堆疊在CNN網絡上進行建模學習,獲取全局上下文特征信息。
常見的循環神經網絡有長短時記憶網絡LSTM、門限遞歸單元GRU。GRU是LSTM的一種變體,其比LSTM網絡參數更少、網絡結構更簡單,且更易收斂。而雙向RNN網絡比單向RNN網絡多一組反向傳播的循環神經網絡,這使得雙向RNN網絡比單向RNN網絡能獲取更多的特征信息。因此,本研究選取雙向GRU來構建循環網絡來對全局上下文信息的長依賴關系進行建模。
借鑒Visin等[5]提出的ReNet網絡建模思想,構建由2個雙向GRU組成的循環網絡,該循環網絡包含4個獨立的GRU,能從4個方向進行水平、垂直掃描特征圖,建模學習像素的依賴關系,獲取全局特征信息。首先,將輸入圖像或前一層的特征圖X劃分成M×N個不重疊的像素區域塊;然后,對劃分的像素區域塊按列進行垂直掃描,得到2個序列(一個自上向下掃描,一個自下向上掃描),并將2個序列輸入到2個門限遞歸單元中;每個GRU通過建模來獲取非重疊像素區域塊的特征信息,并將2個GRU輸出的隱層狀態值按坐標索引進行連接,得到新的特征圖。同樣對新特征圖進行自左向右、自右向左的水平掃描計算,并得到新的特征圖,其具有來自整個圖像的全局上下文信息。為保證循環網絡輸出特征圖的空間分辨率與輸入保持一致,將循環網絡劃分的像素區域塊的大小設置為1×1。為平衡計算能力和內存使用,循環網絡中每個GRU的隱層記憶單元個數設置為130。
Deeplabv2模型中改進的空間金字塔池化(ASPP)模塊通過不同空洞率的4個并行空洞卷積來獲取圖像的多尺度特征,空洞率設置的越大,相應卷積操作的卷積核就越小,導致邊緣像素分割的效果很差。為整合更多的特征信息,提升像素邊緣分割精度,本研究對Deeplabv2模型中的原始ASPP方法進行改進。
改進的ASPP模塊借鑒“Network in Network”方法中的1×1卷積降維思想,設置一個1×1標準卷積分支來保留前一層的原始特征信息,并去掉原始ASPP方法中空洞率為24的卷積分支。
為了驗證ResNet?BiGRU語義分割算法的性能,選取Weizmann Horse數據集進行試驗。該數據集由尺寸不同的328幅圖像組成,包含馬和背景2個類別,且分割目標受色彩、背景、光照等信息的干擾,使語義分割任務更具挑戰性。從中隨機選取200張作為訓練圖像,并通過數據增強操作將訓練圖像增加至12 000張,其余128張作測試圖像。
圖像語義分割算法性能的評價標準一般為平均交并比(Miou),見式(1)。
式中:Miou為計算真實值與預測結果的交集和并集之比;k為標記類別;k+1為包含背景的總標記類別;pij為屬于i類但被識別為j類的像素點的個數;pii為被正確預測為i類的像素數量;pji為屬于j類但被識別為i類的像素數量。
ResNet?BiGRU網絡模型是基于深度學習框架Pytorch編寫的。級聯的深度殘差網絡初始化參數與Deeplabv2模型中ResNet101網絡預訓練模型參數相同。在進行模型訓練時,將輸入的圖片統一裁剪為(320,320)固定尺寸,模型訓練仍采用ploy學習策略,初始學習率設為0.003,批大小設為10,動量項系數設為0.9,總迭代次數為13 000次,power設為0.9,權重衰減系數設為0.000 1。
為了驗證ResNet?BiGRU算法的性能,在Weiz?mann Horse數據集中進行試驗分析,一是對ResNet?BiGRU模型和ResNet?BiLSTM模型語義分割結果進行對比,二是對ResNet?BiGRU模型與其他語義分割模型的算法性能進行對比。
將Weizmann Horse數據集分別在ResNet?BiGRU模型和ResNet?BiLSTM模型中進行試驗,二者的初始參數設置相同。2個網絡模型在測試圖像上的語義分割結果如圖3所示,分別為RGB原圖像、Groundtruth標簽圖像、ResNet?BiGRU模型的語義分割圖、ResNet?BiLSTM模型的語義分割圖。對試驗結果分析發現,在ResNet?BiGRU語義分割結果中,馬的姿態分割的清晰完整,且錯分情況較少,可知ResNet?BiGRU模型的分割性能優于ResNet?BiLSTM模型。
為進一步驗證ResNet?BiGRU模型算法的性能,以Miou為評價標準,對PatchCut、CRF learning、CD?FFD+CRF等方法在Weizmann Horse數據集上的語義分割準確率進行對比(見表1)。

表1 不同方法在Weizmann Horse數據集上的語義分割準確率
由表1可知,本研究提出的ResNet?BiGRU方法與基于深度學習的分割方法或傳統分割方法相比,語義分割的準確率有所提升。與PatchCut、CRF learning相 比,ResNet?BiGRU的Miou提高 了8.8%;與CD?FFD+CRF相比,ResNet?BiGRU的Miou提高了2.7%;與ResNet?BiLSTM相比,ResNet?BiGRU的Miou提高了1.5%。
CNN網絡受自身拓撲結構的限制,很難建模學習全局上下文特征信息。針對該問題,本研究提出基于深度殘差網絡和雙向GRU的語義分割方法ResNet?BiGRU,該方法充分利用CNN和雙向GRU的特征學習優勢,通過算法建模來獲取更多的局部和全局特征信息,產生邊界清晰、分辨率高的語義分割結果。然而,本研究構建的網絡模型存在時間復雜度較高的問題,如何進一步優化算法性能、提升模型的泛化能力和對小目標物體的分割能力是下一步要進行探索的方向。