BiseNet閱讀總結

1、思路算法

語義分割既須要豐富的空間信息,又須要較大的感覺野。然而,現代方法一般會犧牲空間分辨率來實現實時推理速度,致使性能低下。本文提出了一種新的雙邊分割網絡(BiSeNet)來解決這一難題。咱們首先設計一個空間路徑以較小的步幅保存空間信息並生成高分辨率特徵。同時,採用快速下采樣策略的上下文路徑獲取足夠的接受域。在此基礎上,提出了一種新的特徵融合模塊,實現了特徵的有效融合。網絡

2、語義分割研究現狀框架

實時語義分割的算法代表,模型的加速方法主要有三種。1)嘗試經過裁剪或調整大小來限制輸入大小,下降計算複雜度。雖然該方法簡單有效,但空間細節的丟失會破壞預測,特別是邊界附近的預測,致使度量和可視化精度降低。2)一些工做不是調整輸入圖像的大小,而是對網絡的通道進行修剪以提升推理速度,特別是在基礎模型的早期階段。然而,它削弱了空間能力。3)對於最後一種狀況,ENet建議放棄模型的最後一個階段,追求一個很是緊密的框架。然而,這種方法的缺點是顯而易見的:因爲ENet在最後階段放棄了向下採樣操做,模型的接受域不足以覆蓋較大的對象,致使識別能力較差。總的來講,以上方法都是在精度和速度之間進行折衷,在實際應用中效果較差。ide

爲了彌補上述空間細節的損失,研究者們普遍採用了U型結構。經過融合骨幹網的層次特徵,u形結構逐漸提升了空間分辨率,填補了一些缺失的細節。然而,這種技術有兩個缺點。
1)因爲在高分辨率地形圖上引入了額外的計算,完整的u型結構會下降模型的速度。2)更重要的是,經過下圖(b)所示的淺層,大部分在修剪或剪切過程當中丟失的空間信息很難恢復。換句話說,u型技術更像是一種減輕,而不是一種必要的解決方案。性能

 

 在此基礎上,咱們提出了由空間路徑(SP)和上下文路徑(CP)兩部分組成的雙邊分割網絡(BiSeNet)。正如它們的名字所暗示的,這兩個組成部分被設計用來分別應對空間信息的丟失和接受域的收縮。這兩條道路的設計理念是明確的。對於空間路徑,咱們僅將3個卷積層疊加獲得1/8的feature map,它保留了豐富的空間細節。在上下文路徑方面,咱們在Xception[8]的尾部附加了一個全局平均池層,其中接受域是主幹網絡的最大值。上圖(c)顯示了這兩個組件的結構。學習

爲了在不損失速度的狀況下得到更好的精度,咱們還研究了兩種路徑的融合以及最終預測的細化,提出了特徵融合的方法分別爲注意細化模塊(FFM)和注意細化模塊(ARM)。優化

3、限制語義分割模型的緣由編碼

豐富的空間信息或擴大接受域spa

空間信息:卷積神經網絡(CNN)[16]經過連續的下采樣操做來編碼高級語義信息。然而,在語義分割任務中,圖像的空間信息是預測細節輸出的關鍵。現代現有的方法致力於編碼豐富的空間信息。DUC [32], PSPNet [40],DeepLab v2[5]和DeepLab v3[6]使用擴展卷積來保持特徵圖的空間大小。全局卷積網絡[26]利用了「大核」,擴大感覺野。設計

U型方法:u型結構[1,10,22,24,27]能夠恢復必定程度的空間信息。原始的FCN[22]網絡經過一個跨躍鏈接的網絡結構來編碼不一樣層次的特徵。一些方法將其特有的細化結構轉化爲u形網絡結構。[1,24]利用反捲積層建立u形網絡結構。U-net[27]爲這個任務介紹了有用的跳躍鏈接網絡結構。全局卷積網絡[26]將u型結構與大核相結合。LRR[10]採用拉普拉斯金字塔重構網絡。RefineNet[18]增長了多路徑細化結構來細化預測。DFN[36]設計了一個通道注意塊來實現特徵選擇。然而,在u型結構中,一些丟失的空間信息是不容易恢復的。

上下文信息:語義分割須要上下文信息來生成高質量的結果。大多數經常使用的方法是擴大接受域或融合不一樣的上下文信息。[5,6,32,37]利用卷積層中不一樣的膨脹率來捕獲不一樣的上下文信息。在圖像金字塔的驅動下,語義分割網絡結構一般採用多尺度特徵集成。在[5]中,提出了一個「ASPP」模塊來捕獲不一樣接受域的上下文信息。PSPNet[40]應用了一個PSP模塊,它包含了幾個不一樣規模的平均池化層。[6]設計了一個帶有全局平均池的ASPP模塊來捕獲圖像的全局上下文。[38]經過自適應卷積層對神經網絡進行改進,得到自適應的場環境信息。DFN[36]將全局池添加到u形結構的頂部以對全局上下文進行編碼。

注意力機制:注意機制能夠利用高層信息來引導前饋網絡[23,31]。在[7]中,CNN的注意力取決於輸入圖像的尺度。在[13]中,它們將通道注意力機制應用於識別任務,達到了最早進的水平。像DFN[36]同樣,他們學習全局上下文做爲注意力並修改特性。

4、感覺野
在卷積神經網絡CNN中,決定某一層輸出結果中一個元素所對應的輸入層的區域大小,被稱做感覺野Receptive field。
感覺野大才能充分考慮圖片信息,使得分割結果完整、精確。
網絡深,感覺野就大,設置Context Path, 採用Resnet, Xception等骨架網絡,增長深度,擴大感覺野。
5、網絡框架

 

 

一、Spatial Path

每一層包含一個stride = 2的卷積,而後批量歸一化[15]和ReLU[11],輸出圖像爲原圖的1/8。因爲特徵圖的空間尺寸大,編碼的空間信息豐富。

二、Context path
空間路徑編碼豐富的空間信息,而上下文路徑的設計是爲了提供足夠的接受域。

包含一個深度骨架網絡,用於模型調整的卷積網絡,以及一系列注意力優化模塊。值得一提的是採用了全局均值化來下降計算量,穩定最大感覺野。

ARM(注意力優化模塊)

在 Context Path 中,藉助全局平均池化捕獲全局語境,計算注意力向量,優化 Context Path 中每一階段的輸出特徵,便於整合全局語境信息,大大下降計算成本。

三、(FFM)特徵融合模塊:

Spatial Path 捕獲的空間信息編碼了絕大多數的豐富細節信息,Context Path 的輸出特徵主要編碼語境信息。兩路網絡的特徵並不相同,所以不能簡單地加權兩種特徵,要用一個獨特的特徵融合模塊以融合這些特徵。簡而言之,兩個路徑的特徵圖直接疊加不合適,那就設定個卷積網絡,去訓練學習一下兩部分如何疊加,如上圖。
針對不一樣層次的特徵,首先將空間路徑和上下文路徑的輸出特徵串聯起來。而後利用批處理歸一化[15]來平衡特徵的尺度。接下來,咱們將鏈接的特徵集合到一個特徵向量並計算一個權重向量,就像SENet[13]那樣。該權向量可對特徵進行重權,至關於特徵的選擇和組合。

6、總結

a、單獨用Spatial path 來保留豐富的空間信息

b、Context Path 直接用預訓練經典網絡提取深層特徵,擴大感覺野,提取上下文信息

c、使用了一個ARM模塊,優化 Context Path 中每一階段的輸出特徵,便於整合全局語境信息

d、Context Path 與Spatial path的特徵整合方式:FFM

e、Loss Function 中,對Context Path 另外作監督

相關文章
相關標籤/搜索