天天看點

DABNet: Depth-wise Asymmetric Bottleneck for Real-time Semantic Segmentation

論文位址:https://arxiv.org/pdf/1907.11357.pdf

代碼位址:https://github.com/Reagan1311/DABNet

論文利用了depth-wise asymmetric convolution and dilated convolution 設計了DAB module(Depthwise Asymmetric Bottleneck),充分利用了感受視野和上下文資訊。

  • 關于實時分割的一些處理方法:

Enet----減少卷積filter的數量,減少計算量

ICnet----cascade network with 多尺度分辨率分支

ERFnet----殘差連接配接和因式分解卷積

ESPnet ----esp module(efficient spatial pyramid)

BiSeNet ---- 兩個分支資訊的融合,語義資訊和空間資訊

空洞卷積:

Dilated convolution ---- 在不增加參數量的情況下擴大感受視野

deeplab----atrous spatial pyramid pooling (ASPP) module 采集多尺度資訊

DenseASPP----concatenate dilated convolution layers 擷取密集的多尺度資訊

Convolution Factorization:

将普通卷積分解,減少計算量和memory的消耗。

例如inception,xception,mobilenet系列,shufflenet系列

DABNet: Depth-wise Asymmetric Bottleneck for Real-time Semantic Segmentation
DABNet: Depth-wise Asymmetric Bottleneck for Real-time Semantic Segmentation
  • DAB module

如上圖c所示,

1. 作者首先采用了3*3的卷積去減少channel,而不是1*1的卷積。雖然1*1的卷積能夠減少計算量。但是1*1的卷積在resnet中采用主要是為了加深網絡的深度,但是這裡不需要網絡深度100層以上。

2. 為了更好的擷取空間資訊,作者在卷積之後将channel數減少了一般,并沒有壓縮太多。

3. 由于之前的網路結構已經證明分層的網絡會對語義分割任務更有效,是以DAB module也是融合多尺度的資訊,感覺也是借鑒了bisenet,采用了雙分支的結構。

一個分支擷取local information,為了減少計算量,借鑒了erfnet采用了将n*n的卷積分解成n*1深度可分離卷積和1*n的深度可分離卷積。

一個分支為了擷取邊緣語義資訊,采用空洞卷積,在不減少分辨率的情況下。但是空洞卷積随着rate的增大,計算量也會變大。為了解決這個問題,作者将其與depth-wise asymmetric convolution結合。是以叫做depth-wise asymmetric dilated convolution。

激活函數:

作者采用了前置激活的政策(conv之前做激活),參考(Identity mappings in deep residual networks ICCV 2016),并且Mobilenetv2: Inverted residuals and linear bottlenecks中提出了non-linear layers in bottlenecks hurts the performance。是以在1*1的point-wise convolution之删除了non-linearity

  • 網絡設計:

Downsampling政策:作者沒有像enet一樣一上來就下采樣而是先用3*3卷積減少通道然後采用enet initial block,之後再經過一次不加max pooling的下采樣。借鑒ESPNetv2中的方法,利用了long-range shortcut connection融合原圖和downsampling block。

DAB block:做block内的資訊融合,采用可空洞卷積。畢竟dense connect的方式效果還是很顯著的。

DABnet:無decoder

  • 實驗分析

參數的一些設定:use mini-batch stochastic gradient descent (SGD) with batch size 8, momentum 0.9 and weight decay 1e −4 in training. We employ the “poly” learning rate policy [5] and the initial learning rate is set to 4.5e −2 with power 0.9.

DABNet: Depth-wise Asymmetric Bottleneck for Real-time Semantic Segmentation
DABNet: Depth-wise Asymmetric Bottleneck for Real-time Semantic Segmentation

實驗結果表明:

1. 空洞卷積rate{3, 3, 7, 7, 13, 13}要比{4, 4, 8, 8, 16, 16}高2.3個點。

2.加上decoder效果提升不大,但是很影響速度。

3.加入spp有效果提升,但是也會影響速度。

繼續閱讀