Gated-SCNN:提高小物體和細物體分割效果

1. 相關資源

2. 問題描述

  論文中提到,語義分割主要遇到的問題是低分辨率語義信息不足等。許多研究者也提出了融合不同層的語義信息,以及利用多尺度分辨率的上採樣模塊等,來緩解這些問題。
  語義分割在細小的目標分割上還存在一些問題。這個問題可以從網絡結構的內在出發,單一網絡的結構融合了非常多的不同類型的信息:顏色、形狀以及紋理信息。這些信息被融合在一起處理,可能會導致對識別重要的信息不夠的突出。

3. 創新點

  提出了一種用於語義分割的Two-Stream結構CNN(GS-CNN)。GS-CNN主要加入了一個單獨的分支用來學習邊緣信息,稱之爲形狀流。這一結構改進使得分割模型能夠更好的預測對象的邊緣信息,顯著的提升了小物體和細物體的分割效果。

4. 整體架構

在這裏插入圖片描述

   爲了方便後續敘述,按照文章和源碼對圖片進行了一些標註。

  網絡結構總體上分爲三個部分:常規流(Regular Stream)、形狀流(Shape Stream)、融合模塊(Fusion Module)。

  • 常規流:可選用VGG或者ResNet作爲backbone。
  • 形狀流:兩路輸入,M1作爲一路輸入,後續M3、M4、M5陸續作爲二路輸入。門控捲積層GCL用來生成權重圖。圖中的image gradients表示用canny算子提取的圖像邊緣信息,edge bce loss 用來監督邊緣信息的提取,強迫形狀流只學習邊緣信息。最後把提取的邊緣信息進行融合並匯入融合模塊。
  • 融合模塊:總共融合四路信息。

4.1 Gated Convolutional Layer

  文章對這部分的介紹只有兩個公式和一些簡單說明,筆者根據論文描述和源代碼繪製了GCL層的完整結構圖如下:
{% asset_img img4.png GCL %}

  從GCL的結構可以看出,它其實就是Attention機制 + 殘差結構的組合。

4.1.1 GCL的可視化效果

  作者對GCL層提取的特徵進行了可視化,可以看到,提取的幾乎是邊緣信息,效果還是很明顯的。
{% asset_img img5.png GCL的可視化效果 %}

4.2 Fusion Module

  同樣,結合源碼繪製了融合模塊的結構圖,如下:

{% asset_img img6.png GCL的可視化效果 %}
可以看出,作者對網絡結構進行了精心的設計。

5. 損失函數

  下圖列出了作者在文中所提到的所有損失函數。

{% asset_img img7.png 損失函數 %}

  本文的損失函數總共由4部分組成,其中又分爲2個小部分,Joint Multi-Task LearningDualTaskRegularizer

  • Joint Multi-Task Learning:邊界損失和語義分割損失。邊界損失用來監督網絡對邊緣信息的學習,通過反向傳播更新常規流和形狀流中的參數;語義分割損失用來監督網絡最終的分割結果,通過反向傳播更新整個網絡中(包括融合模塊)的參數。
  • Dual Task Regularizer:正則化。這一部分還是用來監督網絡多邊緣信息的學習,不過代碼實現部分比較繁瑣,比較有針對性,對這一小部分還沒有完全理解。

6. 實驗結果

在這裏插入圖片描述
在這裏插入圖片描述

7. 對比實驗結果

在這裏插入圖片描述
在這裏插入圖片描述

  從表中數據可以看到網絡對細小物體的分割效果有顯著提升,尤其是杆,信號標誌、信號燈、摩托車。
{% asset_img img12.png 損失函數 %}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章