文章的主要贡献:

  • 速度:带atrous算法的DCNN可以保持8FPS的速度,全连接CRF平均推断需要0.5s;
  • 准确:在PASCAL语义分割挑战中获得了第二的成绩;
  • 简单:DeepLab是由两个非常成熟的模块(DCNN和CRFs)级联而成。

一、概述

自LeCun(1998)以来,DCNN一直被选作版面识别的方法,如今已经成为高级视觉研究的主流,提高了计算机视觉性能,广泛应用于图像分割,对象检测,细粒度分类等。相比于传统的视觉算法(SIFT或HOG),DCNN以其end-to-end(端到端)方式获得了很好的效果。这个依赖于DCNN对图像转换的平移不变性,根本是源于重复的池化层和下采样组合。平移不变性增强了对数据分层抽象的能力,但同时可能会阻碍低级视觉任务,例如姿态估计、语义分割等,在这些任务中语义分割更倾向于精确的定位而不是抽象的空间关系。

由此文章提出了DCNN的两个障碍:(1)信号下采样;(2)空间不敏感性。对第一个问题,提出atrous(带‘hole’)算法,它可以有效进行DCNN响应的密集计算,扩大感受野,获取更丰富的上下文信息。对于第二个问题,提出使用CRF做后处理,代替全连接层,能够捕获到更精细的边缘细节以及适应远距离依赖。在这个deeplab系统上做实验达到了71.6%的IOU准确度,另外在GPU上运行速度达到了8FPS。

二、研究方法与内容

1.使用空洞算法做密集滑动窗口特征提取

密集的空间分数评估有助于提取密集的CNN特征。首先将VGG16的全连接层改为卷积层,再使用采样率rate=2或4的空洞卷积方法对特征图采样,这种方法不仅可以保持完好的滤波器还能扩大感受野,并且不增加计算量和参数。算法里加入了im2col函数,将多通道的特征图转化成向量块,可以在不引入任何近似值的情况下,用各种采样率高效计算密集CNN特征图。损失函数是计算CNN输出图与原始图像(8倍采样)每个位置像素点交叉熵总和。

2.用卷积网络控制接受域的大小加速密集计算

文章设置不同的感受野大小实验,发现由7*7变为4*4之后,训练速度提高,加速密集计算,还尝试了将完全连接层的通道数量从4096减少到1024,这进一步减少了计算时间和内存占用,同时不会影响性能。

3.CRF精准定位

文章提出了能量函数:【论文阅读】semantic image segmentation with deep convolutional nets and fully connected CRFs。x是像素的标签,使用【论文阅读】semantic image segmentation with deep convolutional nets and fully connected CRFsP(x)表示像素i属于x的概率值。【论文阅读】semantic image segmentation with deep convolutional nets and fully connected CRFs,如果【论文阅读】semantic image segmentation with deep convolutional nets and fully connected CRFs【论文阅读】semantic image segmentation with deep convolutional nets and fully connected CRFs否则为0。【论文阅读】semantic image segmentation with deep convolutional nets and fully connected CRFs是高斯核,依赖于像素i和j提取的特征(记为f),【论文阅读】semantic image segmentation with deep convolutional nets and fully connected CRFs为加权系数。高斯核与双边像素值的概率以及颜色强度有关。该模型适用于有效的近似概率推断,可看做特征空间里具有高斯核的卷积操作,实现精准定位。

PS:附一个CRF示意图:

【论文阅读】semantic image segmentation with deep convolutional nets and fully connected CRFs

4.对尺度预测

具体来说,就是在网络的输入图像和前四个池化层后面连接一个两层的MLP,MLP第一层是128个3*3滤波器,第二层是128个1*1滤波器,然后将MLP的特征图连接到网络最后一层特征图上,一起送入分类层。这样分类层就多了5*128=640个通道,实验表示能够提高预测结果,但不如CRF好。

三、实验结果与分析

数据集:PASCAL VOC 2012 ,包含1464(train),1449(validation)和1456(test)数据集;10582张额外的训练数据,测试在21个分类上的IOU结果。

训练:DCNN和CRF分开训练

网络结构 VGG16
损失函数 上文提到的交叉熵之和
批次大小 20
学习率 初始0.001,最后一层分类器为0.1,每2000次迭代乘以0.1
参数 动量0.9,权重衰减0.0005

对DCNN微调之后,再使用上述公式交叉验证CRF的参数,给定参数初始搜索范围,采用从粗糙到精细的搜索方案,找到最优参数值,所有实验报告的平均场迭代次数为10。

验证:如下表1所示

【论文阅读】semantic image segmentation with deep convolutional nets and fully connected CRFs

可以看出DeepLab-MSc-CRF-LargeFOV效果最好。

多尺度特征:在模型中加入多尺度特征,性能约提高1.5%,连接CRF可提高4%,结果如下图4所示:

【论文阅读】semantic image segmentation with deep convolutional nets and fully connected CRFs

视野:不同输入步幅的情况下,对实验处理速度的影响,结果如表2:

【论文阅读】semantic image segmentation with deep convolutional nets and fully connected CRFs

卷积核减小,速度提高,参数减少;增大步幅(即带‘hole’采样率),速度提高,平均IOU提高,Deeplab-CRF-LargeFOV性能居然和DeepLab-CRF-7*7一样,而且速度还快。

对象边界的平均IOU:

验证数据集的对象边界周围有‘void’标签,计算位于这些标签的trimap里的像素平均IOU,结果如图5:

【论文阅读】semantic image segmentation with deep convolutional nets and fully connected CRFs

利用中间层的多尺度特征并通过全连接的CRF细化分割,显着改善了围绕物体边界的结果。

与其他方法的比较:

【论文阅读】semantic image segmentation with deep convolutional nets and fully connected CRFs

文章提出的模型更能捕捉复杂的边界信息。

测试模型性能:

【论文阅读】semantic image segmentation with deep convolutional nets and fully connected CRFs

实验结果如上图所示,PASCAL VOC 2012官方test集上评估模型。DeepLab-CRF和DeepLab-MSc-CRF模型分别实现66.4%和67.1%平均IOU的结果。比所有其他最先进的模型:TTI-Zoomout-16,FCN-8s和MSRA-CFM结果要好。增加模型的FOV时,DeepLab-CRF-LargeFOV的性能为70.3%,与DeepLab-CRF-7x7相同,训练速度更快。此外DeepLab-MSc-CRF-LargeFOV通过同时采用多尺度特征和大视角,获得71.6%的最佳性能。

四、读后感

DeepLab创造性的结合了DCNN和CRF产生一种新的语义分割模型,模型预测更精确同时计算效率更高。在PASCAL VOC 2012上展现了先进的水平。DeepLab是卷积神经网络和概率图模型的交集,后续可考虑将CNN和CRF结合到一起做end-to-end训练。另外,文中提到了边界框,也可以考虑弱监督学习方法。


【PS】作者给出了修订后的论文

V1 (ICLR 2015) 推出了DeepLab-CRF模型,该模型在PASCAL VOC 2012测试集上的性能达到66.4%。
v2 (ICLR 2015) 添加了DeepLab-MSc-CRF模型,该模型融合了中间层的多尺度特征。在PASCAL VOC 2012测试集上,DeepLab-MSc-CRF的性能达到67.1%。
v3(ICLR 2015) 具有大视场的实验。在PASCAL VOC 2012测试集上,DeepLab-CRF-LargeFOV达到70.3%的性能。在利用多尺度特征和大视场时,DeepLab-MSc-CRF-LargeFOV的性能达到71.6%。
v4 更新“DeepLab”系统,结果又双叒叕提高了。












相关文章: