摘要
- 研究點:CNN做語義分割
- 工程主頁:http://liangchiehchen.com/projects/DeepLab.html
- 主要貢獻:
atrous conv: 可以控制參與卷積的feature的分辨率
Subsample -> Conv(kernel) 和 AtrousConv(kernel) -> Subsample 等價,且 AtrousConv(kernel) 平移不變。
參考博客:http://blog.csdn.net/u012759136/article/details/52434826#t9
atrous spatial pyramid pooling (ASPP) : 可以在不同的scale下分割物體。
定位物體邊界更加精確!將 DCNN layer 最后的輸出與 fully connected Conditional Random Field (CRF)結合,克服了DCNN中最大池化和下采樣造成的定位精度不准的問題。
- 關鍵詞: 語義分割;atrous convolution; CRF
1 Introduction
DCNN在語義分割這一塊的局限性:
(1) 分辨率下降(max-pooling and downsampling 的stride引起)reduced feature resolution
引用了FCN做語義分割的[14] ,並指出其缺點是空間分辨率大大降低!作者為克服該問題,去掉了池化后幾層的下采樣操作,而在后續的幾層卷積層中加入了上采樣操作。
Use atrous convolution as a shorthand for convolution with upsampled filters
atrous convolution [3,6,16]
相比采用deconv(反卷積)的方法[13,14],作者采用的atrous conv+線性插值的方法也非常有效。
其優勢在於:不需要增加參數的個數,而可以獲得更大的感知野。
(2) 物體存在不同的尺度(existence of objects at multiple scales)
對這個問題,通常的做法是將同一幅圖像的不同吃錯的feature/score map聚合得到結果[6,17,18]。這方法的確可以增提高性能,但是增加量計算量。參考SPP的做法,作者提出了在卷積操作之前小對給定的feature layer用多種采樣率進行 resample
即采用多個並行的不同采樣率的atrous convolutional layers(ASPP)
(3) 定位不精確(reduced localization accuracy due to DCNN invariance)
這是由於物體檢測時需要對空間變換具有不變性,因此限制了DCNN的空間精度。
解決該問題的一個辦法是:skip-layers ,從多層提取出hyper-column features
作者則是提出了一個更為有效的方法:采用一個fully-connected CRF[22] 
算法基本框架:
(1)基於VGG-16/ResNet-101(效果可能比VGG-16更好)進行變化:先將所有的全連接層換成卷積層 [14],然后通過atrous conv提高feature的分辨率(從32x到8x)
(2)Bi-linear interpolation : factor =8 這樣把score map尺寸變回到原圖像尺寸。
(3)結果送入CRF 來refine分割結果。
算法優點:
(1)速度快: 8FPS
(2)精度高:在PASCAL VOC 2012 semantic segmentation benchmark [34], PASCAL-Context [35], PASCALPersonPart [36], and Cityscapes [37]上取得了較好的成果。
(3)簡單:主要由兩部分組成:DCNN和CRF
2 相關工作
第一類:傳統的方法
第二類:CNN提取特征做稠密的image labeling
[21] use skip layer-> pixel 分類
[51] pool 中間的feature maos by region proposals
第三類:直接用DCNN 得到抽魔的category-level pixel labels(甚至都不需要分割了),相關工作有[14,52], 將最后的全連接層替換為全卷積層。針對空間定位問題,[14]采用上采樣並將中間過程的feature maps得到的score連接起來,而[52] 是將粗略的結果通過另一個DCNN進行refine.
近期進展:
- End-to-end training for structured prediction
[40], [59],[62], [64], [65]
[18], [68] combine semantic segmentation with edge detection.
- Weaker supervision
[49], [73] pursue instance segmentation, jointly tackling object detection and semantic segmentation.
atrous conv: 可以擴大filter的感知野
3 methods
3.1 atrous conv for dense feature extraction and field-of view enlargement
FCN【14】中對分辨率下降的補救方法是反卷積;作者采用的是atrous convolution
以1D為例,the output y[i] of atrous convolution 2 of a 1-D input signal x[i] with a filter w[k] of length K is defined as:
(見論文)
而在標准的卷積中,采樣率r=1 

3.2 Multiscale Image Representations using Atrous Spatial Pyramid Pooling
受SPP的啟發,一個任意尺寸的區域可以通過對一個固定尺度下的卷積特征進行resample
本文采用的是多個並行的不同采樣率的atrous 卷積層,最后整合在一起。 
3.3 Structured Prediction with Fully-Connected Conditional Random Fields for Accurate Boundary Recovery (物體邊界定位)
解決方法:
1)[14] ,[21],[52] 將卷積網絡不同層的信息進行合並。
2)[50] 采用super-pixel -> 變成一個low-level 分割問題。
作者采用的是CRF 並且不能用局部的,要用全局的[22]。
能量函數參考[22]:
4 實驗
- 將最后一層的輸出個數替換成需要分割的種類數(包括背景)。
- 損失函數為輸出圖的每個空間位置(輸出是原輸入圖的1/8)的交叉熵之和。
- SGD
參考文獻
[14] J. Long, E. Shelhamer, and T. Darrell, “Fully convolutional networks for semantic segmentation,” in CVPR, 2015.
[18] I. Kokkinos, “Pushing the boundaries of boundary detection using deep learning,” in ICLR, 2016.
[21] B. Hariharan, P. Arbel´aez, R. Girshick, and J. Malik, “Hypercolumns for object segmentation and fine-grained localization,” in CVPR, 2015.
[22] P. Kr¨ahenb ¨ uhl and V. Koltun, “Efficient inference in fully connected crfs with gaussian edge potentials,” in NIPS, 2011.
[51] J. Dai, K. He, and J. Sun, “Convolutional feature masking for joint object and stuff segmentation,” arXiv:1412.1283, 2014
[52] D. Eigen and R. Fergus, “Predicting depth, surface normals and semantic labels with a common multi-scale convolutional architecture,”arXiv:1411.4734,2014.
[68] G. Bertasius, J. Shi, and L. Torresani, “High-for-low and low-forhigh: Efficient boundary detection from deep object features and its applications to high-level vision,” in ICCV, 2015.
