【译】DeepLab V1:基于Deep CNNs和全连接CRFs的语义图像分割

基于Deep CNNs和全连接CRFs的语义图像分割[译]

SEMANTIC IMAGE SEGMENTATION WITH DEEP CONVOLUTIONAL NETS AND FULLY CONNECTED
Author: Liang-Chieh Chan [email protected]

摘要

DCNNs近期在高级视觉任务中表现出非常好的性能,比如图像分类和目标跟踪。本文联合DCNNs和概率图模型来解决像素级分类任务,也就是语义图像分割。我们发现DCNNs最后一层的响应不能充分地用于定位精确的目标分割。这是因为存在使得DCNNs擅长高级任务的非常的不变性属性。我们通过一个全连接的CRF结合DCNNs最后层的响应来克服深度网络中差的定位属性。定性的讲,我们的”DeepLab”系统能够以超过先前方法的精度来定位分割边界。定量的讲,我们的方法在PASCAL VOC2012语义图像分割任务上测试的平均IOU达到71.6%。我们展示了如何能有效地得到这些结果:注意网络的再利用;从小波社区引入”孔洞”算法,该算法在现代GPU上能以每秒8帧的速度处理神经网络响应的密集计算.

引言

DCNNs早期用于文本识别,最近成为高级视觉研究的主流, 如图像分类, 目标检测, 细粒度分类, 姿态估计等方面. 共同点: 端到端方式训练的DCNNs比依靠精心设计的特征的系统提供了明显的更好的结果, 如SIFT 或 HOG特征. DCNNs的成功得益于DCNNs定位图像变换的内在不变性, 这一属性能加强它们学习数据的分层抽象能力. 不变性非常适用于高级视觉任务, 但不利于低级任务, 如语义分割(也就是我们想要精细的定位而不是空间细节的抽象).

DCNN在图像标注任务应用上的两大技术障碍: 信号的下采样和空间不灵敏性(不变性)
问题一, 涉及多次在DCNN每层max-pooling及downsampling(striding)的结合造成信号分辨率减小, 比如(Krizhevsky等人, 2013; Simonyan & Zisserman, 2014; Szegedy等人, 2014).
借鉴用于有效计算非抽样离散小波变换的”孔洞算法 ”,它允许方案中对DCNN响应的有效密集计算比其他解决这个问题的方法更加简单.

问题二, 涉及涉及从分类器获得以对象为中心的决定本质上要求空间变换的不变性. 例如, 我们不能指望“自行车”分类器对位于自行车支架上的像素和其孔内部的像素,例如, 在自行车的底盘或者线有不同的响应。我们通过重新使用预训练的ImageNet网络来减少或缓解这一问题, 使其具有较小的感受野, 同时加快了速度. 更重要的是, 我们通过使用完全连接的条件随机场(CRF)来提高我们模型捕获细节的能力. CRF已广泛用于语义分割, 并通过结合多路分类器与由像素和边缘或超像素局部交互捕获的低级信息来计算得出的分数。虽然提出了增加复杂度来建模分段依赖性和/或高阶依赖关系,但是我们使用Krahenbuhl提出的完全连接的成对的CRF来进行有效的计算,并且能够捕获细微的边缘细节,同时也适应远程依赖. 在Krahenbuhl中, 该模型很大程度上提高了基于增强像素级别分类器的性能,在我们的工作中, 我们证实, 当与基于DCNN的像素级分类器相结合时, 它产生最先进的结果.

DeepLab的三个主要优点
(1)速度: 由于“atrous”算法和感受野尺寸的减小,我们的密集DCNN以8 fps的速度运行,而完全连接的CRF的平均场推理需要0.5秒
(2)精度: PASCAL语义分割挑战最现先进结果,超过了Mostajabi等人的方法的2%
(3)简单性: 我们的系统由两个相当完善的DCNN和CRF模块组成。

相关工作

系统直接以像素表示形式工作, 与Long的方法相似. 这与当前在DCNN的语义分割中最常见的两阶段方法是相反的: 这样的技术通常级联自下而上的图像分割和基于DCNN的区域分类,这使得系统承担前端分割系统的潜在错误. 例如,Arbelaez提出的边界候选框和掩码区域; Girshick和Hariharan使用Uirlings作为DCNN的输入,以将形状信息引入到分类过程中。同样,Mostajabi的作者依靠超像素表示。著名的非DCNN前身是Carreira的二阶合并方法,它也为Carreira提交的区域候选分配标签。 Cogswell的作者认识到单独分割的危险,他在Yadollahpour 的基础之上探索由Carreira计算出的各种基于CRF的分割候选。然后,根据特别针对该重新排列任务训练的DCNN,将这些分割提议重新排列。尽管这种方法明确地试图处理前端分段算法的缺点,但是在基于CRF的分割算法中,DCNN评分仍然没有明确的利用. DCNN只能在事后应用,而在分割过程中直接尝试使用它的结果会有意义。

对于更接近我们的方法的作品,其他一些研究人员已考虑使用卷积计算的DCNN特征进行密集图像标注。 第一个是 Farabet 在多个图像分辨率下应用DCNN,然后采用分割树来平滑预测结果; 最近,Hariharan提出将DCNN内计算的中间特征图连接起来进行像素分类,Dai提出按区域候选集合中间特征图。 尽管这些作品仍然采用与DCNN分类器结果分离的分割算法,但我们认为分割仅在稍后阶段使用是有利的,避免对过早决策的承诺。

最近,Long的无分割技术; Eigen以滑动窗口直接将DCNN应用于整个图像,通过卷积层代替DCNN的最后完全连接的层。 为了处理引言开始时提出的空间定位问题,Long等人从中间特征图中提取并连接分数,而Eigen通过将粗略结果传播到另一个DCNN来将预测结果从粗略细化到细分。

我们的模型与其他最先进的模型之间的主要区别是像素级CRF和基于DCNN的“unary terms”的组合。 Cogswell着眼于这个方向上最接近的作品,使用CRF作为基于DCNN的重新排序系统的提案机制,而Farabet将超像素视为局部成对CRF的节点,并使用图形切割进行离散推理; 因此,它们的结果可能受到超像素计算中的错误的限制,同时忽略了远程超像素依赖性。 我们的方法将每个像素视为CRF节点,利用远程依赖关系,并使用CRF推理直接优化DCNN驱动的成本函数。我们注意到,对于传统的图像分割/边缘检测任务,平均场已被广泛研究,例如(Geiger&Girosi,1991; Geiger&Yuille,1991; Kokkinos等,2008),但是最近Krahenbuhl&Koltun(2011)表明平均场推理对于完全连接的CRF可以是非常有效的,并且在语义分割的上下文中特别有效。

在我们的手稿的第一版被公开发布之后,引起了我们的注意,另外两个团队同时独立地探求了非常相似的方向,结合DCNN和密集连接的CRF(Bell等,2014; Zheng et al。2015年)。各种型号在技术方面存在一些差异。Bell等人(2014年)着重于材料分类问题,而Zheng等(2015)展开了CRF均值场推理步骤,将整个系统转换为端对端可训练的前馈网络。

用于密集图像标注的卷积神经网络

在这里,我们描述了我们如何重新设计和调整了公众可用的ImageNet预训练的VGG-16的最先进的16层分类网络,用于我们的密集语义图像分割系统的高效和有效的密集特征提取器。

采用孔洞算法的高效密集滑动窗口特征提取

密集的空间分数评估有助于我们致密的CNN特征提取器的成功。作为实现这一目标的第一步,我们将VGG-16的全连接层转换成卷积的,并以卷积方式在其原始分辨率的图像上运行网络。然而,这还不够,因为它产生非常稀疏计算的检测分数(步长为32像素)。为了在我们的8像素的目标步幅上更密集地计算分数,我们开发了Giusti、Sermanet以前使用的方法的变体。我们在Simonyan网络中最后两个最大池化层之后跳过subsampling,并通过引入零来增加其长度(在最后三个卷积层中为2×,在第一个完全连接层为4×)以修改随后的层中的卷积滤波器连接层。我们可以通过保持过滤器完好无损地实现这一点,而是分别使用2或4像素的步幅稀疏地对其应用的特征图进行采样。我们可以通过保持完好的过滤器并且分别使用2或4像素的步幅稀疏地对其应用的特征图进行采样以更有效地实现这一点。图1的这种方法被称为“孔洞算法”(’atrous algorithm’),并且已经被开发用于高效计算多孔算法(也叫做非抽取小波变换)。 我们通过添加到im2col函数(将多通道特征图转换为矢量块),将稀疏样本的底层特征图添加到Caffe框架中来实现这个。 这种方法通常是适用的,并且允许我们以任何目标子采样率有效地计算密集的CNN特征图,而不引入任何近似值。
【译】DeepLab V1:基于Deep CNNs和全连接CRFs的语义图像分割_第1张图片
图1:1-D中的孔算法的图示,当内核大小为3,输入步幅为2,输出步幅为1时

我们微调Imagenet预先训练的VGG-16网络的模型权重,以简单的方式适应图像分类任务,遵循Long等人的程序。(2014)。 我们用21路替换最后一层VGG-16中的1000路Imagenet分类器。 我们的损失函数是CNN输出图中每个空间位置的交叉熵项的总和(与原始图像相比下采样了8倍)。 所有位置和标签在整体损失函数中的权重相等。 我们的目标是真实值标签(8倍下采样)。 我们通过Krizhevsky等人的标准SGD程序来优化所有网络层的权重的目标函数。(2013年)。

在测试期间,我们需要原始图像分辨率的类别分数图。 如图1所示,第3.1节进一步阐述,类别分数图(对应于对数概率)相当平滑,这使得我们可以使用简单的双线性插值以可忽略的计算成本将其分辨率提高8倍。 请注意,Long等人的方法 (2014)在CNN输出中不使用空穴算法,并产生非常粗略的分数(以32倍抽样)。 这迫使他们使用学习的上采样层,显着增加了系统的复杂性和培训时间:在PASCAL VOC 2012上微调我们的网络大约需要10个小时,而他们报需要几天的训练时间(在现代GPU上的计时)。

用卷积网络减小感受野并加速密集计算

重新使用我们的网络进行密集分数计算的另一个关键因素是明确控制网络的感受野大小。 最新的基于DCNN的图像识别方法依赖于在Imagenet大规模分类任务上预先训练的网络。 这些网络通常具有很大的感受野大小:在我们考虑的VGG-16网络的情况下,如果网络应用卷积,其感受野是224×224(零填充)和404×404像素。 我们认为这种感受野大小太大,无法保证良好的定位精度(除非使用了大幅度放大的图像版本)。 此外,在将网络转换为完全卷积的网络之后,第一个完全连接的层具有4,096个大的7×7空间大小的滤波器,并且成为我们密集分数图计算中的计算瓶颈。

我们已经通过将第一FC层空间抽样到4×4空间大小来解决这两个严重的实际问题。 这将网络的感受野减少到128×128(零填充)或308×308)(卷积模式),并将第一个FC层的计算时间缩短了3倍。 使用我们的基于Caffe的实现和Titan GPU,由此产生的VGG派生网络非常有效:给定一个306×306输入图像,它在网络顶部产生39×39密集原始特征得分,速率约为8 fps在测试期间。 训练时的速度为3帧/秒。 使用较小的网络,如Krizhevsky等 (2013)可以允许视频速率测试时密集特征计算,即使在轻型GPU上。

详细的边界恢复:完全连接的条件随机场

深卷积网络和定位挑战

如图2所示,DCNN分数图可以可靠地预测图像中对象的存在和粗略位置,但不太适合用于指向其精确轮廓。 卷积网络在分类精度和定位精度之间有自然的权衡:具有多个最大池层的深度调制器已被证明在分类任务中最成功,然而,他们增加的不变性和大的感受野使得在其最高输出层分数推断位置的问题更具挑战性。

减小我们网络体系结构中的感受野大小可以改善但不能完全解决这个问题。 近期工作从两个方向来解决这个定位的挑战。 第一种方法是利用卷积网络中多层的信息来更好地估计对象边界。 第二种方法是采用超像素表示,实质上是将定位任务委托给低级分割方法。

在4.2节中,我们通过耦合DCNN的识别能力和完全连接的CRF的细粒度定位精度来寻求新的替代方向,并表明它在解决定位挑战方面非常成功,产生了准确的语义分割结果, 以超出现有方法范围的详细程度恢复对象边界。

全连接CRF用于精确定位

【译】DeepLab V1:基于Deep CNNs和全连接CRFs的语义图像分割_第2张图片
图2. 飞机图像的得分图(softmax功能前的输入)和置信图(softmax功能的输出)。我们在每个平均场迭代后显示得分(第一行)和置信(第二行)图。 最后一个DCNN层的输出用作平均场推理方法的输入

传统上,条件随机场(CRF)已被用于平滑噪声分割图(Rother等人,2004; Kohli等人,2009)。通常,这些模型包含耦合相邻节点的能量项,有利于对空间邻近像素进行相同标签的分配。在数学上,这些短距离CRF的主要功能是清除基于局部手工设计特征的弱分类器的虚假预测。

与这些较弱的分类器相比,现代DCNN体系结构如我们在这项工作中使用的结构产生了定性不同的得分图和语义标签预测。如图2所示,得分图通常相当平滑并产生均匀分类结果。在这个制度下,使用短距离CRFs可能不好,因为我们的目标应该是恢复详细的局部结构,而不是进一步平滑。使用对比敏感电位(Rother等人,2004)结合局部范围的CRF可以潜在地改善局部化,但仍然忽略了薄弱结构(thin-structures),通常需要解决昂贵的离散优化问题。

为了克服短距离CRF的这些限制,我们将我们的系统与Krahenbuhl&Koltun(2011)的完全连接的CRF模型相结合。该模型采用能量函数
公式1
其中 x 是像素的标签分配。我们使用一元电位 θi(xi)=logP(xi) ,其中 P(xi) 是由DCNN计算的像素 i 处的标签分配概率。成对电位为 θij(xi,xj)=μ(xi,xj)Σkm=1wmkm(fi,fj) ,其中 μ(xi,xj)=1 ,如果 xixj ,否则为零(即Potts模型)。对于图像中的每对像素 i j ,存在一对成对项,无论它们彼此有多远,即模型的因子图是完全连接的。每个 km 是高斯核,取决于为像素 i j 提取的特征(表示为 f ),并由参数 wm 加权。我们采用双边位置和颜色项,具体来说,内核是:
公式2
其中第一个内核依赖于像素位置(表示为 p )和像素颜色强度(表示为 I ),而第二个内核只取决于像素位置。超参数 σα σβ σγ 控制高斯核的“尺度”。关键的是,这种模式适合于有效的近似概率推理(Krahenbuhl&Koltun,2011)。 在完全可分解的平均场近似 b(x)=Πibi(xi) 下的消息传递更新可以表示为与特征空间中的高斯核的卷积。 高维滤波算法(Adams等人,2010)显着加速了这一计算,导致算法在实践中非常快速,使用Krahenbuhl等人2012的开源实现,对Pascal VOC图像的处理平均不到0.5秒。
【译】DeepLab V1:基于Deep CNNs和全连接CRFs的语义图像分割_第3张图片
图3:模型图。 来自深卷积神经网络(具有完全卷积层)的粗略得分图由双线性插值进行上采样。 应用完全连接的CRF来细化分割结果。

多尺度预测

继Hariharan和Long的最新成果之后,我们还探讨了一种多尺度预测方法来提高边界定位精度。具体来说,我们将前四个最大池化层中的每一个的输入图像和输出附加到一个两层MLP,其特征图连接到主网络的最后一层特征图。因此,通过5 * 128 = 640个通道增强了馈送到softmax层的聚合特征图。我们只调整新添加的权重,保留其他网络参数在第3节的方法学习到的值。如实验部分所述,从精细分辨率层引入这些额外的直接连接可以提高定位性能,但效果并不像用完全连接的CRF所获得的那样大。

实验评估

数据集
PASCAL VOC 2012分割基准,包含20个目标类别,1个背景类别。原始数据:1464(training),1449(validation),1456(testing)。增强数据集:通过Hariharan等提供的额外标注扩增至10582(training images)。性能是按照21个类别的平均的像素交叉IOU(交叠率)来衡量的。

训练 假设在CRF训练期间DCNN提供的一致条件是固定的,我们采用最简单的分段训练形式,解耦DCNN和CRF训练阶段。

对于DCNN训练,我们采用了已在ImageNet上进行预处理的VGG-16网络。我们通过交叉熵损失函数的随机梯度下降,对VOC 21路分类任务中的VGG-16网络进行了微调,如第2.1节所述。我们使用20个图像的小批量,初始学习率为0.001(对于最终分类器层为0.01),每2000次迭代将学习率乘以0.1。我们使用0.9的动量和0.0005的权重衰减。

在DCNN被微调之后,沿着Krahenbuhl&Koltun(2011)的方法,我们交叉验证方程式(2)中完全连接的CRF模型的参数。为了避免过度拟合验证集,参数 w2 σγ 固定为3,并在验证集的一小部分(我们使用100个图像)上进行交叉验证搜索 w1 σα σβ 的最佳值。我们采用从粗略到精细的搜索方案。具体来讲就是,初始的参数搜索范围是 w1 ∈[5, 10], σα ∈[50:10:100]和 σβ ∈[3:1:10],然后我们改进了第一轮最佳值周围的搜索步长。固定所有报告的实验的平均场迭代次数为10。

验证集的评估 我们对PASCAL的’val’集进行了大部分的评估,并对增强的PASCAL’train’集进行了训练。如表1,将完全连接的CRF结合到我们的模型(由DeepLab-CRF表示)产生了显着的性能提升,大约4%的提高。我们注意到Krahenbuhl&Koltun(2011)的原创作品将TextonBoost(Shotton等人,2009年)的27.6%的结果提高到29.1%,这使得我们在这里报告的改善(从59.8%到63.7%)更令人印象深刻。

转向定性结果,我们提供了图5中的DeepLab和DeepLab-CRF之间的视觉比较。使用完全连接的CRF可显着提高结果,从而允许模型准确地捕获复杂的对象边界。

多尺度特征 我们还利用中间层的特征,类似于Hariharan等(2014A);Long等人(2014)。如表1(a)所示,将多尺度特征添加到我们的DeepLab模型(表示为DeepLab-MSc)可提高约1.5%的性能,并且进一步整合的完全连接的CRF(表示为DeepLab-MSc-CRF)提高约4%。DeepLab和DeepLab-MSc的定性比较如图4所示。利用多尺度特征可以稍微改进对象边界。
【译】DeepLab V1:基于Deep CNNs和全连接CRFs的语义图像分割_第4张图片
表1:(a)我们提出的模型在PASCAL VOC 2012 ‘val’数据集(训练是在增强的“train”数据集上进行的)上的性能。性能最好的是利用了多尺度特征和大的感受野(b)与在PASCAL VOC 2012’test’数据集中其他最先进的方法相比,我们提出的模型(用增强数据集”trainval”训练的)有最好的的性能。

这里写图片描述
表2:视场效应。我们将PASCAL VOC 2012’val’的性能(CRF之后)和训练速度显示为(1)第一个完全连接层的内核大小的函数(2)在atrous算法中使用的输入步长。

视场/Field of view 我们采用的’atrous算法’允许我们通过调整输入步长来任意地控制模型的视场(FOV),如图1所示。表2中,我们在第一个完全连接的层上尝试了几种内核大小和输入步长。方法DeepLab-CRF-7x7是VGG-16网络的直接修改,内核大小为7x7,输入步幅为4。该模型在’val’集上产生了67.64%的性能,但是相对较慢,训练期间每秒1.44张图像)。通过将内核大小减小到4x4,我们将模型速度提高到每秒2.9张图像。我们已经尝试了两种具有不同FOV尺寸的网络变体,DeepLab-CRF和DeepLab-CRF-4x4;后者具有大的FOV(即大的输入步长)并获得更好的性能。最后,我们使用内核大小3x3,输入步幅为12,并进一步将过滤器数量从4096更改为最后两层的1024。有趣的是,由此产生的DeepLab-CRF-LargeFOV型号与昂贵的DeepLab-CRF-7x7的性能相当。同时,运行速度快3.36倍,参数明显减少(20.5M而不是134.3M)。

表1总结了几种模型变量的性能,展示了利用多尺度特征和大FOV的优势。
【译】DeepLab V1:基于Deep CNNs和全连接CRFs的语义图像分割_第5张图片
图4:结合多尺度特征改进了边界分割。我们在第一和第二行分别显示了DeepLab和DeepLab-MSc获得的结果

对象边界的平均像素IOU 为了量化所提出的物体边界附近模型的准确性,我们用类似于Kohli等人(2009)的实验来评估分割精度。Krahenbuhl&Koltun(2011)。 具体来说,我们使用在’val’集合中注释的’void’标签,通常发生在对象边界周围。 我们计算位于’void’标签的窄带(称为trimap)内的那些像素的平均IOU。 如图4所示,通过完全连接的CRF细化分割结果显着地改善了围绕物体边界的结果。
【译】DeepLab V1:基于Deep CNNs和全连接CRFs的语义图像分割_第6张图片
图5:(a)一些trimap示例(左上:图像。右上:ground-truth。左下:2像素的trimap,右下角:10像素的trimap)。所提出的方法在物体边界周围的带内的分割结果质量。(b)像素对精度。(c)像素平均IOU。

与最先进的方法的比较 图3中,我们定性地比较我们提出的模型DeepLabCRF与两种最先进的模型:FCN-8(Long等人 2014)和TTI-Zoomout-16(Mostajabi等人 2014)’val’数据集(结果从他们的论文中提取)。我们的模型能够捕捉复杂的对象边界。
【译】DeepLab V1:基于Deep CNNs和全连接CRFs的语义图像分割_第7张图片
图6:与最先进的模型在’val’数据集上的比较。第一行:原图像。第二排:真实值。第三排:其他近期模型(左图:FCN-8s,右图:TTI-Zoomout-16)。第四行:我们的DeepLab-CRF。

测试集结果 在验证集上设置了我们的模型选择后,我们会在PASCAL VOC 2012官方“test”集上评估我们的模型变体。 如表3,我们的DeepLab-CRF和DeepLab-MSC-CRF模型分别实现了66.4%和67.1%的IOU表现。我们的模型优于所有其他最先进的模型(具体来说是,TTI-Zoomout-16(Mostajabi等,2014),FCN-8(Long et al。,2014)和MSRA-CFM(Dai et 等),2014))。当我们增加模型的FOV时,DeepLab-CRF-LargeFOV的性能达到70.3%,与DeepLab-CRF-7x7相同,而训练速度更快。此外,我们最好的模型是DeepLab-MSc-CRF-LargeFOV,通过采用多尺度功能和大型FOV,达到71.6%的最佳性能。
【译】DeepLab V1:基于Deep CNNs和全连接CRFs的语义图像分割_第8张图片
表3:在PASCAL VOC 2012 测试集上的标签IoU(%),使用训练验证集训练
【译】DeepLab V1:基于Deep CNNs和全连接CRFs的语义图像分割_第9张图片
图7:VOC 2012-val的可视化结果。对于每行,我们显示输入图像、由DCNN提供的分割结果以及完全连接的CRF的精细分割结果。我们在最后三行显示我们的失败模式。

讨论

我们的工作结合了深卷积神经网络和完全连接的条件随机场的想法,产生了一种新颖的方法,能够产生语义地准确预测和详细的分割图,同时具有计算效率。我们的实验结果表明所提出的方法在PASCAL VOC 2012语义图像分割任务挑战中显着提高了最先进的技术。

我们打算改进模型的多个方面,例如完全整合其两个主要组件(CNN和CRF),并以类似于Krahenbuhl&Koltun(2013)的端到端方式对整个系统进行训练,陈等(2014)。我们还计划尝试更多数据集,并将我们的方法应用于其他数据源,如深度图或视频。最近,我们用弱监督标注,以边界框或图像级标签的形式进行模型训练(Papandreou等人,2015)。

在较高层次上,我们的工作依赖于卷积神经网络和概率图形模型。我们计划进一步调查这两种强大的方法的相互作用,并探讨其解决具有挑战性的计算机视觉任务的协同潜力。

论文版本
v1 向ICLR 2015提交。介绍DeepLab-CRF模型,在PASCAL VOC 2012测试集上达到66.4%的性能。

v2 补充ICLR 2015。添加了DeepLab-MSc-CRF模型,其中包含来自中间层的多尺度特征。 DeepLab-MSC-CRF在PASCAL VOC 2012测试集上的表现为67.1%。

v3 测试大的视场。在PASCAL VOC 2012测试集中,DeepLab-CRF-LargeFOV的性能达到了70.3%。DeepLab-MSc-CRF-LargeFOV在利用多尺度功能和大型FOV时,达到71.6%的表现。

v4 参考我们更新的“DeepLab”系统(Chen等人,2016),结果大大改善。

参考文献

你可能感兴趣的:(DeepLab,图像语义分割,CNN,CRF)