【DDRNets】Deep Dual-resolution Networks for Real-time and Accurate Semantic Segmentation of Road Scen

Deep Dual-resolution Networks for Real-time and Accurate Semantic Segmentation of Road Scenes

深度双分辨率网络用于道路场景实时准确的语义分割

https://arxiv.org/pdf/2101.06085.pdf
https://github.com/ydhongHIT/DDRNet
Yuanduo Hong, Huihui Pan, Weichao Sun, Senior Member, IEEE, Yisong Jia
2021

摘要

语义分割是自主驾驶车辆理解周围场景的关键技术。当代模型的吸引人表现往往以繁重的计算和漫长的推理时间为代价,这对于自动驾驶来说是不可容忍的。使用轻量级架构(编码器-解码器或双通道)或对低分辨率图像进行推理,最近的方法实现了非常快速的场景解析,甚至在单个1080Ti GPU上运行超过100 FPS。然而,这些实时方法和基于膨胀骨干的模型之间的性能差距仍然很大。为了解决这个问题,我们提出了一系列专为实时语义分割而设计的高效骨干。所提出的深度双分辨率网络(DDRNets)由两个深度分支组成,在其中执行多个双边融合。此外,我们设计了一个新的上下文信息提取器,称为深度聚合金字塔池化模块(DAPPM),以扩大有效感受野并基于低分辨率特征图融合多尺度上下文。我们的方法在Cityscapes和CamVid数据集上实现了新的准确性和速度之间的最新权衡。特别是,在单个2080Ti GPU上,DDRNet-23-slim在Cityscapes测试集上以102 FPS的速度获得77.4% mIoU,在CamVid测试集上以230 FPS的速度获得74.7% mIoU。在广泛使用的测试增强中,我们的方法优于大多数最先进的模型,需要更少的计算。代码和训练模型可在网上获得。

关键词——语义分割、实时、深卷积神经网络、自主驾驶

1 摘要

图1:在Cityscapes测试集上,速度和准确性的比较。红色三角形表示我们的方法,蓝色三角形表示其他方法,绿色圆圈表示体系结构搜索方法。

语义分割是一项基础任务,其目标是将输入图像的每个像素分配给相应的标签[1]–[3]。它在许多实际应用中起着重要作用,例如医学图像分割、自动驾驶导航和机器人[4],[5]。随着深度学习技术的兴起,卷积神经网络被应用于图像分割,并在基于手工特征的传统方法上取得了显著的优势。自从全卷积网络(FCN)[6]被提出来处理语义分割问题以来,一系列新的网络被提出。DeepLab [7]消除了ResNet中的一些下采样操作,以保持高分辨率,并利用具有大扩张率的卷积操作[8]来扩大感受野。从那时起,基于空洞卷积的主干网络与上下文提取模块成为了广泛使用的标准结构,包括DeepLabV2 [9]、DeepLabV3 [10]、PSPNet [11]和DenseASPP [12]。

由于语义分割是一种密集预测任务,神经网络需要输出具有大感受野的高分辨率特征图以产生满意的结果,这在计算上是昂贵的。这个问题对于自动驾驶中的场景解析尤其关键,因为它需要在非常大的图像上进行操作,以覆盖广阔的视野。因此,上述方法在推理阶段非常耗时,无法直接部署在实际的自动驾驶车辆上。它们甚至无法在一秒内处理一张图像,因为使用了多尺度测试以提高准确性。

随着对移动设备部署需求的不断增长,实时分割算法[13]–[17]越来越受到关注。DFANet [18]采用深度多尺度特征聚合和轻量级深度可分离卷积,实现了100帧每秒的测试mIoU达到71.3%。与编码器-解码器范式不同,[19]中的作者提出了一种由空间路径和上下文路径组成的新型双边网络。特别是,空间路径利用了三个相对宽广的3×3卷积层来捕捉空间细节,而上下文路径是一个紧凑的预训练主干网络,用于提取上下文信息。这些双边方法,包括[20],在那个时候比编码器-解码器结构实现了更高的推理速度。

最近,提出了一些针对道路场景语义分割的竞争性实时方法。这些方法可以分为两类。一类利用了GPU高效的主干网络,特别是ResNet-18 [21–23]。另一类则开发了从头开始训练的复杂轻量级编码器,其中BiSeNetV2 [24]在实时性能方面达到了新的高峰,在Cityscapes数据集上以156帧每秒的速度实现了72.6%的测试mIoU。然而,除了使用额外的训练数据的[23]之外,这些最近的工作并未展示出更高质量结果的潜力。其中一些由于经过精心设计的架构和调整过的超参数而缺乏可扩展性。此外,鉴于更强大的主干网络的发展,ResNet-18几乎没有优势。

本文提出了一种用于高分辨率图像实时语义分割的双分辨率网络,特别是针对道路驾驶图像。我们的DDRNets从一个主干网络开始,然后分为两个并行的深度分支,具有不同的分辨率。一个深度分支生成相对高分辨率的特征图,另一个通过多次下采样操作提取丰富的语义信息。两个分支之间通过多个双边连接进行高效的信息融合。此外,我们提出了一种名为DAPPM的新型模块,它输入低分辨率的特征图,提取多尺度上下文信息,并以级联方式合并它们。在对语义分割数据集进行训练之前,双分辨率网络按照常见的范式在ImageNet上进行训练。

根据对三个流行基准(即Cityscapes、CamVid和COCOStuff)的广泛实验结果,DDRNets在分割准确度和推理速度之间取得了出色的平衡。与其他实时算法相比,我们的方法在Cityscapes和CamVid数据集上实现了新的最先进准确度,而无需使用注意力机制或额外的修饰。在标准测试增强的条件下,DDRNet与最先进的模型相媲美,并且需要更少的计算资源。我们还报告了具有统计学意义的性能,并进行了消融实验,以分析架构改进和标准训练技巧的影响。

主要贡献总结如下:

  • 提出了一系列新颖的双边网络,具有深度双分辨率分支和多个双边融合,作为高效的实时语义分割骨干网络。
  • 设计了一种新型模块,通过将特征聚合与金字塔池化相结合,收集丰富的上下文信息。当在低分辨率特征图上执行时,它几乎不增加推理时间
  • 我们的方法在2080Ti上实现了准确度和速度的新的最先进折衷,Cityscapes测试集上达到77.4%的mIoU,每秒102帧;在CamVid测试集上达到74.7%的mIoU,每秒230帧。据我们所知,我们是第一个仅使用精细注释,在几乎实时(22 FPS)下在Cityscapes上达到80.4%的mIoU的方法。

2. 相关工作

近年来,基于扩张卷积的方法提高了在许多具有挑战性场景下的语义分割表现。开创性的工作探索了轻量级架构如编码器-解码器和两条路径的更多可能性。此外,在场景解析任务中,上下文信息被证明非常重要。本节中,我们将相关工作分为三类,即高性能语义分割、实时语义分割和上下文提取模块

A. 高性能语义分割

图2. 关于扩张方法、编码器-解码器方法、双通道方法和我们的深度双分辨率网络的比较。

由于缺乏空间细节,普通编码器的最后一个层的输出不能直接用于预测分割掩模。如果只去除分类主干的下采样,那么有效的感受野将太小以学习高级的语义信息。一种可接受的策略是利用空洞卷积在去除最后两个下采样层的同时建立像素之间的长连接,如图2 a所示[10],[11]。然而,这也给实时推理带来了新的挑战,因为高分辨率特征地图维度的指数增长和空洞卷积实现的不充分优化。事实上,大多数最先进的模型都是基于扩张主干建立的,因此并不适合自动驾驶场景解析。

一些工作尝试探索标准扩张主干的替代方案。DeepLabv3plus [25] 的作者提出了一个简单的解码器,将上采样特征图与低级别特征图融合。它缓解了直接从空洞卷积生成高分辨率特征地图的要求。虽然编码器的输出步幅设置为16,DeepLabv3plus仍然可以取得竞争性的结果。HRNet [26] 强调了深度高分辨率表示,并且反映出比扩张主干更高的效率。我们发现,HRNet的计算效率和推理速度更高,其许多细高分辨率流的规模要小得多。以HRNetV2-W48为例,1/4分辨率和1/8分辨率特征的维度分别为48和96,远小于带有空洞卷积的预训练ResNets [27]。虽然HRNet的高分辨率分支要小得多,但是它们可以通过并行的低分辨率分支和重复的多尺度融合得到极大增强。

我们的工作始于深度、细节、高分辨率表示,并提出了更紧凑的架构。它们通过两个简明的主干同时保持高分辨率表示和提取高级的上下文信息。

B. 实时语义分割

几乎所有实时语义分割模型都采用了两种基本方法:编码器-解码器方法和双通道方法。这两种方法都讨论了轻量级编码器的重要性。

1)编码器-解码器架构:与基于膨胀卷积的模型相比,编码器-解码器架构在直观上计算和推理时间上消耗较少。编码器通常是一个具有重复空间降采样的深度网络,用于提取上下文信息,而解码器通过插值或转置卷积[28]来恢复分辨率,完成密集预测,如图2 b所示。特别地,编码器可以是在ImageNet上预训练的轻量级骨干网络,也可以是像ERFNet [5]和ESPNet [16]这样从头开始训练的高效变种。SwiftNet [21]充分发挥了在ImageNet上预训练编码器的优势,并利用轻量级的侧连接来辅助上采样。[29]中的作者提出了一种多重空间融合和类别边界监督的策略。FANet [22]通过快速注意力模块和整个网络的额外降采样,在速度和准确度之间取得了良好的平衡。SFNet [23]引入了流动对齐模块(FAM)来对齐相邻层级的特征图以获得更好的融合。

2)双通道架构:编码器-解码器架构降低了计算工作量,但由于在重复降采样过程中丢失了一些信息,通过上采样无法完全恢复,这会影响语义分割的准确性。为了缓解这个问题,提出了双通道架构[19],如图2 c所示。除了一个用于提取语义信息的通道外,另一个分辨率较高的浅层通道提供了丰富的空间细节作为补充。为了进一步提高准确性,BiSeNetV2 [24]使用全局平均池化进行上下文嵌入,并提出了基于注意力的特征融合方法。BiSeNetV1&V2中的两个通道最初是独立的,而Fast-SCNN [20]中的两个分支共享学习下采样模块。CABiNet [30]采用了Fast-SCNN的整体架构,但使用MobileNetV3 [31]作为上下文分支。

除了现有的双通道方法外,DDRNets的深度和细高分辨率分支可以实现多重特征融合和足够的ImageNet预训练,同时保证推理效率。我们的方法可以轻松扩展以实现更高的准确性(在Cityscapes数据集上超过80%的mIoU)。

3)轻量级编码器:有许多计算效率高的骨干网络可以用作编码器,例如MobileNet [32]、ShuffleNet [33]和Xception的小版本[34]。MobileNet 使用深度可分离卷积来替代标准卷积,以减少参数和计算量。MobileNetV2 [35]中的反向残差块减轻了深度可分离卷积的强正则化效果。ShuffleNet利用分组卷积的紧凑性,并提出了通道混洗操作,以促进不同组之间的信息融合。然而,这些网络包含大量的深度可分离卷积,在现有的GPU架构上无法高效实现。因此,尽管ResNet-18 [27]的FLOPs约为MobileNetV2 1.0×的六倍,但前者在单个1080Ti GPU上的推理速度高于后者[21]。然而,现有的轻量级骨干网络对于语义分割可能不是最优的,因为它们通常过于针对图像分类进行了调优。

C. 上下文提取模块

在语义分割中,另一个关键是如何捕捉更丰富的上下文信息。空洞空间金字塔池化(ASPP)[9]由具有不同采样率的并行空洞卷积层组成,可以关注多尺度的上下文信息。金字塔池化模块(PPM)[11]在卷积层之前实施金字塔池化,计算效率比ASPP更高。与卷积核的局部特性不同,自注意机制擅长捕捉全局依赖关系。因此,双重注意网络(DANet)[36]利用位置注意力和通道注意力的优点来进一步改善特征表示。对象上下文网络(OCNet)[37]利用自注意机制来探索对象上下文,即属于相同对象类别的一组像素。CCNet [38]的作者提出了交叉注意力机制来提高内存使用和计算效率。然而,这些上下文提取模块设计和执行时针对高分辨率特征图,对于轻量级模型来说耗时过长。我们将低分辨率特征图作为输入,通过增加更多尺度和深度特征聚合来加强PPM模块。当附加到低分辨率分支的末尾时,我们提出的模块在OCNet的PPM和Base-OC模块之上表现出更好的性能。

3. 方法

本节描述整个流程,包括两个主要组成部分:深度双分辨率网络和深度聚合金字塔池化模块。

A. 深度双分辨率网络

为了方便起见,我们可以在广泛使用的分类骨干网络(如ResNet)上添加一个额外的高分辨率分支。为了在分辨率和推断速度之间取得平衡,我们让高分辨率分支创建分辨率为输入图像分辨率的1/8的特征图。因此,高分辨率分支附加到conv3阶段的末尾。需要注意的是,高分辨率分支不包含任何降采样操作,并且与低分辨率分支一一对应以形成深度高分辨率表示。然后,可以在不同阶段进行多次双边特征融合,以充分融合空间信息和语义信息。

表格I DDRNet-23-SLIM和DDRNet-39在Imagenet上的架构。‘CONV4×r’表示CONV4被重复了r次。对于DDRNet-23-SLIM,r = 1;对于DDRNet-39,r = 2。

DDRNets-23-slim和DDRNets-39的详细架构如表I所示。我们修改了原始ResNet的输入模块,用两个连续的3×3卷积层替换了一个7×7卷积层。使用残差基本块构建主干和后续的两个分支。为了扩展输出维度,每个分支的末尾添加了一个瓶颈块。

图3. DDRNet中双边融合的细节。在ReLU之前实现逐点求和。

双边融合包括将高分辨率分支融合到低分辨率分支(高到低融合)和将低分辨率分支融合到高分辨率分支(低到高融合)。对于高到低融合,高分辨率特征图通过一系列3×3卷积(步长为2)进行降采样,然后进行逐点求和。对于低到高融合,低分辨率特征图首先通过1×1卷积进行压缩,然后使用双线性插值进行上采样。图3展示了双边融合的实现方式。第i个高分辨率特征图 X H i X_{Hi} XHi和低分辨率特征图 X L i X_{Li} XLi可以表示为:

其中,FH和FL分别对应具有高分辨率和低分辨率的残差基本块序列, T L − H T_{L-H} TLH T H − L T_{H-L} THL指的是低到高和高到低的转换器,R表示ReLU函数。
我们总共构建了四个不同深度和宽度的双分辨率网络。DDRNet-23的宽度是DDRNet-23-slim的两倍,DDRNet-39 1.5×是DDRNet-39的一个更宽的版本。

B. 深度聚合金字塔池化模块 DAPPM

图5. 深度聚合金字塔池化模块的详细架构。多尺度分支的数量可以根据输入分辨率进行调整。

在这里,我们提出了一个新的模块,进一步从低分辨率特征图中提取上下文信息。图5展示了DAPPM的内部结构。将1/64图像分辨率的特征图作为输入,使用指数步幅的大池化核生成1/128、1/256、1/512图像分辨率的特征图。还利用了全局平均池化生成的输入特征图和图像级别信息。我们认为,通过单个3×3或1×1卷积将所有多尺度上下文信息融合起来是不足够的。受到Res2Net的启发,我们首先对特征图进行上采样,然后使用更多的3×3卷积以分层残差的方式融合不同尺度的上下文信息。对于输入 x x x,每个尺度 y i y_i yi可以表示为:

其中, C 1 × 1 C_{1×1} C1×1表示1×1卷积, C 3 × 3 C_{3×3} C3×3表示3×3卷积,U表示上采样操作, P j , k P_{j,k} Pj,k表示核大小为 j j j、步幅为 k k k的池化层,Pglobal表示全局平均池化。最后,所有特征图通过1×1卷积进行级联和压缩。此外,为了便于优化,还添加了一个1×1投影快捷方式。与SwiftNet中的SPP类似,DAPPM使用BN-ReLU-Conv的序列实现。

表格II 考虑一个输入大小为1024×1024的图像,PPM和DAPPM生成的上下文尺寸如下:

在DAPPM内部,由较大池化核提取的上下文与更深层的信息流进行集成,并通过将不同深度与不同大小的池化核进行集成形成多尺度特性。表II显示,DAPPM能够提供比PPM更丰富的上下文信息。虽然DAPPM包含更多的卷积层和更复杂的融合策略,但由于输入分辨率仅为图像分辨率的1/64,它几乎不会影响推断速度。例如,对于一个1024×1024的图像,特征图的最大分辨率为16×16。

C. 语义分割的总体架构

图4. DDRNet在语义分割中的概览。"RB"表示顺序残差基本块。"RBB"表示单一残差瓶颈块。"DAPPM"表示深度聚合金字塔池化模块。"Seg. Head"表示分割头部。黑色实线表示包含数据处理(包括上采样和下采样)的信息路径,黑色虚线表示没有数据处理的信息路径。"sum"表示逐点求和。虚线框表示在推断阶段被丢弃的组件。

我们的方法概述如图4所示。针对语义分割任务,對雙分辨率网络進行了一些改進。首先,將低分辨率分支中RBB的3×3卷積步幅設置為2以進一步下採樣。然后,在低分辨率分支的输出上添加DAPPM,从1/64图像分辨率的高级特征映射中提取丰富的上下文信息。此外,将最后的高到低融合替换为由双线性插值和求和融合实现的低到高融合。最后,我们设计了一个简单的分割头,包括一个3×3卷积层和一个1×1卷积层。通过改变3×3卷积层的输出维数可以调整分割头的计算负载。对于DDRNet-23-slim,我们将其设置为64,对于DDRNet-23,我们将其设置为128,对于DDRNet39,我们将其设置为256。请注意,除了分割头和DAPPM模块以外,所有模块都在ImageNet上进行了预训练。

D. 深度监督

在训练阶段增加额外的监督可以减轻深度卷积神经网络(DCNNs)的优化问题。在PSPNet中,通过添加辅助损失函数来监督ResNet-101的res4 22块的输出,并根据实验结果将相应权重设置为0.4 [11]。BiSeNetV2提出了一种增强训练策略,即在语义分支的每个阶段末尾添加额外的分割头部。然而,需要进行大量实验来找到平衡每个损失的最佳权重,并且会导致训练内存的显著增加。为了获得更好的结果,SFNet使用了一种名为级联深度监督学习的类似策略 [23]。在本文中,我们只采用简单的额外监督以与大多数方法进行公平比较。如图4所示,我们添加了辅助损失并将权重设置为0.4,与PSPNet相同。在测试阶段,辅助分割头部被丢弃。最终的损失函数是交叉熵损失的加权和,可以表示为:
L f = L n + α L a (3) L_f=L_n+αLa\tag{3} Lf=Ln+αLa(3)
这里, L f L_f Lf L n L_n Ln L a L_a La分别代表最终损失、普通损失和辅助损失,而 α α α表示辅助损失的权重,在本文中为0.4。

4. 实验

A. 数据集

Cityscapes [40] 是一个着重于城市街景解析的著名数据集之一。它包含2975张经过精细注释的训练图像,500张验证图像和1525张测试图像。我们在训练过程中不使用额外的20000张粗略标注的图像。该数据集共有19个类别可用于语义分割任务。图像的分辨率为2048×1024,对于实时语义分割来说是具有挑战性的。

CamVid [41] 包含701个密集标注的帧,每帧的分辨率为960×720。它包括367张训练图像,101张验证图像和233张测试图像。我们将训练集和验证集合并用于训练,并按照之前的研究[18]、[19]、[21]使用11个类别在测试集上评估我们的模型。

COCOStuff [42] 提供了10K个复杂图像,密集标注了182个类别,其中包括91个物体类别和91个场景类别。需要注意的是,其中有11个物体类别没有任何分割标注。我们按照[42]中的划分(9K用于训练,1K用于测试)进行公平比较。

B. 训练设置

表格III 四个缩放的DDRNet的Top-1错误率、参数大小和GFLOPS:

在对语义分割任务进行微调之前,双分辨率网络在ImageNet数据集上进行了训练,遵循与前人作品[27]、[44]相同的数据增强策略。所有模型都使用输入分辨率为224×224,批量大小为256,在四个2080Ti GPU上进行100个epoch的训练。初始学习率设置为0.1,并在第30、60和90个epoch处降低10倍。我们使用带有权重衰减为0.0001和Nesterov动量为0.9的SGD训练所有的网络。表III显示了ImageNet验证集上Top-1错误率。虽然DDRNet的效率不如ImageNet上许多精心设计的轻量级主干网络,但是在速度折衷考虑下,在语义分割基准测试中仍然取得了良好的结果。Cityscapes、CamVid和COCOStuff的训练设置如下:
1) Cityscapes: 我们采用SGD优化器,初始学习率为0.01,动量为0.9,权重衰减为0.0005,遵循ploy学习策略,指数参数为0.9,以删除学习率,并实现包括图像随机裁剪、范围为0.5到2.0的随机缩放和随机水平翻转在内的数据增强方法。遵循[18]、[29]、[23],图像被随机裁剪成1024×1024进行训练。所有模型都使用12批次大小,在四个2080Ti GPU上进行484个epoch(约120K次迭代),并同步BN。对于在测试服务器上评估的模型,在训练时同时从train和val set中输入图像。为了与[24]和[23]公平比较,我们还使用了在线难例挖掘(OHEM)[50]。
2) CamVid: 我们将初始学习率设置为0.001,并将所有模型训练968个epoch。遵循[18],图像被随机裁剪成960×720进行训练。所有模型都在单个GPU上进行训练,其他训练细节与Cityscapes相同。当采用Cityscapes预训练时,我们微调模型200个epoch。
3) COCOStuff: 初始学习率为0.001,总的训练epoch数为110。我们在数据增强之前将图像的短边调整为640。与BiSeNetV2 [24]相同,crop size为640×640。其他训练细节与Cityscapes相同,但权重衰减为0.0001。在推理阶段,我们固定图像分辨率为640×640。

C. 推理速度和准确度的度量

推理速度是使用单个GTX 2080Ti GPU进行测量的,批处理大小设置为1,使用CUDA 10.0、CUDNN 7.6和PyTorch 1.3。与MSFNet和SwiftNet类似,我们在卷积层后排除了批归一化层,因为在推理过程中可以将其整合到卷积中。我们使用[51]建立的协议进行公平比较(图像大小:Cityscapes为2048×1024,CamVid为960×720,COCOStuff为640×640)。

类似于ResNet [27],我们报告了四次试验的最佳结果、平均结果和标准差,除了Cityscapes测试集的准确度由官方服务器提供。

D. 速度和准确度比较

表格IV 在Cityscapes数据集上的准确度和速度比较。我们同时报告了验证集和测试集上的结果。由于不同模型的推理速度是在不同的条件下测量的,因此报告了相应的GPU型号和输入分辨率。我们的GFLOPS计算采用2048×1024像素的图像作为输入。如果标有†,则相应的速度使用TensorRT加速进行测量。

Cityscapes:从表IV图1中可以看出,我们的方法在实时性和高准确度之间取得了新的最优平衡。特别地,DDRNet-23-slim(我们最小的模型)在测试集上以102 FPS的速度实现了77.4%的mIoU。它在与DFANet A和MSFNet*具有相似推理速度的情况下,比它们高出6.1%的mIoU,并且大约快2.5倍于MSFNet。此外,它比最小的SFNet快40%,在测试集上获得了2.9%的mIoU提升。值得注意的是,我们的方法也优于基于架构搜索的实时语义分割方法,例如CAS和GAS,它们具有类似的推理速度。对于更宽的模型,DDRNet-23在表IV中的实时方法中获得了整体最佳准确度,以37 FPS的速度达到了79.4%的mIoU。DDRNet-23相比于SFNet(ResNet-18)提高了0.5%的性能,并且运行速度是它的两倍。

我们继续深入研究DDRNet,并在Cityscapes测试服务器上以22 FPS的速度实现了80.4%的mIoU,仅使用精细注释的数据。如果从Mapillary [52]数据集和类似于[23]的TensorRT加速中获益,我们的方法可以为道路场景的实时语义分割建立一个巨大的基准。在Cityscapes验证集上,DDRNet-23-slim优于表IV中的所有已发表结果,具有36.3 GFLOPs和5.7M参数。而DDRNet-23在79.5%的mIoU上获得了新的整体最佳结果。图6展示了DDRNet-23-slim和DDRNet-23在不同场景下的可视化结果。

图6. Cityscapes验证集上的可视化分割结果。从左到右的四列分别表示输入图像、真实标注、DDRNet-23-slim的输出和DDRNet-23的输出。前四行展示了两个模型的性能,而最后两行表示一些分割失败的情况。
表格V 在CAMVID数据集上的准确度和速度比较。MSFNet在1024×768下运行,MSFNet*在768×512下运行,而其他方法在960×720下运行。如果标有†,则使用TensorRT加速进行测量。

2) CamVid: 如表V所示,DDRNet-23-slim在CamVid测试集上以230 FPS的速度实现了74.7%的mIoU,无需进行Cityscapes的预训练。它获得了第二高的准确度,并且比其他所有方法运行速度更快。特别是,DDRNet-23的性能优于先前的最先进方法MSFNet。DDRNet-23还比BiSeNetV2-L和SFNet(ResNet-18)有更大的性能提升,并且运行速度约为它们的两倍。鉴于CamVid的训练像素远少于Cityscapes,我们认为DDRNet的出色性能部分归功于充足的ImageNet预训练。此外,我们在Cityscapes上预训练的模型以实时速度实现了新的最先进准确度。特别是,Cityscapes上预训练的DDRNet-23在94 FPS下实现了80.6%的mIoU,比BiSeNetV2-L更强大且速度更快。对应的可视化结果如图7所示。

图7. CamVid测试集上的可视化分割结果。在测试期间被忽略的标签颜色设置为黑色。从左到右的三列分别表示输入图像、真实标注和DDRNet-23的输出。前四行展示了成功的样本,而最后两行表示一些分割失败的情况。
表格VI 在COCO-Stuff数据集上的准确度和速度比较。输入分辨率为640×640,PSPNet50的结果来自于[24]。如果标有†,则使用TensorRT加速进行测量。

3) COCOStuff: 我们还在COCOStuff上验证了我们的方法,这是一个具有丰富类别的更具挑战性的实时语义分割数据集。由于图像分辨率较其他两个数据集较小,在低分辨率分支中,RBB的步幅设置为1。重塑图像和预测掩码的时间不计入统计。表VI显示,在非常具有挑战性的场景下,我们的方法比BiSeNetV2表现出更大的优势。我们的DDRNet-23在与PSPNet50相似的准确度下运行速度快了20倍。

E. 与现有最新成果的比较

表格VII 在Cityscapes测试集上的最新模型。OS表示最终输出步幅。所有方法均在训练集和验证集上训练模型,除了标有†的PSPNet仅使用训练集。GFLOPS计算采用1024×1024像素的图像作为输入,大多数有关GFLOPS和参数的结果可以在[23]中找到。

在这一部分中,我们进一步展示了DDRNet在语义分割方面的能力,并与Cityscapes测试集上的最新模型进行了比较。这些方法通常采用多尺度和水平翻转推理方法来实现更好的结果,无论时间成本如何。为了与它们进行公平比较,我们也采用了包括0.50×、0.75×、1×、1.25×、1.5×、1.75×、2×的多个尺度以及左右翻转在内的数据增强。=表VII==显示,标准测试增强将DDRNet-39的准确率从80.4%提高到81.9%。我们的DDRNet-39优于许多集成自注意力模块(如CCNet、DANet和OCNet)的强大模型。值得注意的是,我们的方法仅需要DANet计算量的11%。 DDRNet-39还领先于基于ResNet-101主干的实时语义分割的最新方法SFNet,仅需34% 的计算量。尺寸接近表VII中其他模型的DDRNet-39 1.5×实现了非常具有竞争性的性能(82.4% mIoU)。

F. 与HRNet的比较

表格VIII DDRNet和HRNet的比较实验,以MIOU、FPS和训练内存为指标:

DDRNet和HRNet之间的主要区别在于分支的数量。此外,我们在低分辨率分支末尾附加了多尺度上下文提取模块。表VIII中的实验结果证明DDRNet在推理时间和训练内存使用方面优于HRNet。我们从官方实现中获取了两个较小的HRNets的验证结果。训练内存是在单个2080Ti上以批量大小为2和裁剪大小为1024×512进行测量, 不包括辅助分割头。

G. Cityscapes上的消融实验

表格IX 标准的额外花哨设计对实验结果的影响,包括深层监督(DS)、OHEM和以1024×1024进行裁剪训练(默认为1024×512):

1 标准技巧:我们分析了一些基本的训练技巧对性能的影响,这些技巧也被最新的高级方法SFNet[23]采用。如表IX所示,通过深度监督、OHEM和更大的裁剪大小训练,准确性从76.1提高到77.8。

表格X:DAPPM和其他上下文提取模块的比较。RES2代表RES2NET模块,BASE-OC是[37]中提出的对象上下文模块:

2 DAPPM:我们将DAPPM与金字塔池化(PPM)、自注意力模块(Base-OC)和Res2Net模块进行了比较。表X中的结果表明,所提出的模块将场景解析的性能从74.1% mIoU提高到77.8% mIoU,而推理速度几乎不受影响。与PPM和RES2相比,DAPPM也实现了1% mIoU的增益,而另一种最新方法Base-OC则使用低分辨率特征图具有相对较差的性能。

表格XI:双分辨率网络的消融研究。基线是从BiseNetV2中适应的,通过用低分辨率分支替换复杂的语义分支。’+THINER DETAIL BRANCH’表示将细节分支的维度减半。’+CONV3’表示将细节分支附加到CONV3阶段的末尾。’+RESIDUAL’表示将3×3卷积替换为残差基本块。’+BOTTLENECK’表示在每个分支的末端添加瓶颈块。’+LOW-TO-HIGH FUSION’或者’+BILATERAL FUSION’表示执行多次低到高融合或者双边融合:

  1. 双分辨率网络:为了加快实验速度,我们使用初始学习率为0.05、裁剪尺寸为1024×512、总共600个epoch、不使用OHEM的方式从头开始训练所有双侧网络。如表XI所示,使用更细的细节分支会导致1.3%的精度下降,并且比基线运行得快得多。将细节分支附加到网络中间层有助于生成深度高分辨率表示,并提高推理速度,因为它避免了使用更高分辨率进行计算。瓶颈扩展了特征维度,为DAPPM和最终的分割头产生了更丰富的特征。双侧融合通过很小的时间成本进一步提高了分割准确性。最后,我们的双分辨率网络在获得更好性能的同时,所需资源和时间少于基线。

V. 结论:

本文专注于路面场景的实时和准确语义分割,并提出了一种简单的解决方案,无需使用额外的花哨设计。特别是,提出了新颖的深度双分辨率网络作为实时语义分割的高效主干结构。同时还设计了一种新的模块,用于从低分辨率特征图中提取多尺度上下文信息。据我们所知,我们首次将深度高分辨率表示引入实时语义分割,并且我们的简单策略在三个流行基准测试中都优于以往的实时模型。 DDRNet主要由残差基本块和瓶颈块组成,通过调整模型宽度和深度,提供了广泛的速度和精度权衡。由于我们方法的简单性和效率,因此可以视为实现实时和高精度语义分割的强大基线。进一步的研究将专注于改进基线并将骨干网络转移到其他下游任务中。

REFERENCES

[1] Z. Liu, X. Li, P. Luo, C. C. Loy, and X. Tang, “Deep learning markov
random field for semantic segmentation,” IEEE Transactions on Pattern
Analysis and Machine Intelligence, vol. 40, no. 8, pp. 1814–1828, 2018.
[2] L. Jing, Y. Chen, and Y. Tian, “Coarse-to-fine semantic segmentation
from image-level labels,” IEEE Transactions on Image Processing,
vol. 29, pp. 225–236, 2020.
[3] X. Ren, S. Ahmad, L. Zhang, L. Xiang, D. Nie, F. Yang, Q. Wang,
and D. Shen, “Task decomposition and synchronization for semantic
biomedical image segmentation,” IEEE Transactions on Image Processing, vol. 29, pp. 7497–7510, 2020.
[4] M. Saha and C. Chakraborty, “Her2net: A deep framework for semantic
segmentation and classification of cell membranes and nuclei in breast
cancer evaluation,” IEEE Transactions on Image Processing, vol. 27,
no. 5, pp. 2189–2200, 2018
[5] E. Romera, J. M. Alvarez, L. M. Bergasa, and R. Arroyo, “Erfnet: Efficient residual factorized convnet for real-time semantic segmentation,”
IEEE Transactions on Intelligent Transportation Systems, vol. 19, no. 1,
pp. 263–272, 2017.
[6] J. Long, E. Shelhamer, and T. Darrell, “Fully convolutional networks
for semantic segmentation,” in Proceedings of the IEEE Conference on
Computer Vision and Pattern Recognition, pp. 3431–3440, 2015.
[7] L.-C. Chen, G. Papandreou, I. Kokkinos, K. Murphy, and A. L. Yuille,
“Semantic image segmentation with deep convolutional nets and fully
connected crfs,” arXiv preprint arXiv:1412.7062, 2014.
[8] S. Mallat, A wavelet tour of signal processing. Elsevier, 1999.
[9] L.-C. Chen, G. Papandreou, I. Kokkinos, K. Murphy, and A. L. Yuille,
“Deeplab: Semantic image segmentation with deep convolutional nets,
atrous convolution, and fully connected crfs,” IEEE Transactions on
Pattern Analysis and Machine Intelligence, vol. 40, no. 4, pp. 834–848,
2017.
[10] L.-C. Chen, G. Papandreou, F. Schroff, and H. Adam, “Rethinking
atrous convolution for semantic image segmentation,” arXiv preprint
arXiv:1706.05587, 2017.
[11] H. Zhao, J. Shi, X. Qi, X. Wang, and J. Jia, “Pyramid scene parsing
network,” in Proceedings of the IEEE Conference on Computer Vision
and Pattern Recognition, pp. 2881–2890, 2017.
[12] M. Yang, K. Yu, C. Zhang, Z. Li, and K. Yang, “Denseaspp for semantic
segmentation in street scenes,” in Proceedings of the IEEE Conference
on Computer Vision and Pattern Recognition, pp. 3684–3692, 2018.
[13] A. Paszke, A. Chaurasia, S. Kim, and E. Culurciello, “Enet: A deep
neural network architecture for real-time semantic segmentation,” arXiv
preprint arXiv:1606.02147, 2016.
[14] Z. Yang, H. Yu, M. Feng, W. Sun, X. Lin, M. Sun, Z. H. Mao,
and A. Mian, “Small object augmentation of urban scenes for realtime semantic segmentation,” IEEE Transactions on Image Processing,
vol. 29, pp. 5175–5190, 2020.
[15] H. Zhao, X. Qi, X. Shen, J. Shi, and J. Jia, “Icnet for real-time
semantic segmentation on high-resolution images,” in Proceedings of
the European Conference on Computer Vision, pp. 405–420, 2018.
[16] S. Mehta, M. Rastegari, A. Caspi, L. Shapiro, and H. Hajishirzi,
“Espnet: Efficient spatial pyramid of dilated convolutions for semantic
segmentation,” in Proceedings of the European Conference on Computer
Vision, pp. 552–568, 2018.
[17] B. Jiang, W. Tu, C. Yang, and J. Yuan, “Context-integrated and featurerefined network for lightweight object parsing,” IEEE Transactions on
Image Processing, vol. 29, pp. 5079–5093, 2020.
[18] H. Li, P. Xiong, H. Fan, and J. Sun, “Dfanet: Deep feature aggregation
for real-time semantic segmentation,” in Proceedings of the IEEE
Conference on Computer Vision and Pattern Recognition, pp. 9522–
9531, 2019.
[19] C. Yu, J. Wang, C. Peng, C. Gao, G. Yu, and N. Sang, “Bisenet:
Bilateral segmentation network for real-time semantic segmentation,” in
Proceedings of the European Conference on Computer Vision, pp. 325–
341, 2018.
[20] R. P. Poudel, S. Liwicki, and R. Cipolla, “Fast-scnn: Fast semantic
segmentation network,” arXiv preprint arXiv:1902.04502, 2019.
[21] M. Orsic, I. Kreso, P. Bevandic, and S. Segvic, “In defense of pre-trained
imagenet architectures for real-time semantic segmentation of roaddriving images,” in Proceedings of the IEEE Conference on Computer
Vision and Pattern Recognition, pp. 12607–12616, 2019.
[22] P. Hu, F. Perazzi, F. C. Heilbron, O. Wang, Z. Lin, K. Saenko, and
S. Sclaroff, “Real-time semantic segmentation with fast attention,” arXiv
preprint arXiv:2007.03815, 2020.
[23] X. Li, A. You, Z. Zhu, H. Zhao, M. Yang, K. Yang, and Y. Tong,
“Semantic flow for fast and accurate scene parsing,” arXiv preprint
arXiv:2002.10120, 2020.
[24] C. Yu, C. Gao, J. Wang, G. Yu, C. Shen, and N. Sang, “Bisenet
v2: Bilateral network with guided aggregation for real-time semantic
segmentation,” arXiv preprint arXiv:2004.02147, 2020.
[25] L.-C. Chen, Y. Zhu, G. Papandreou, F. Schroff, and H. Adam, “Encoderdecoder with atrous separable convolution for semantic image segmentation,” in Proceedings of the European Conference on Computer Vision,
pp. 801–818, 2018.
[26] K. Sun, Y. Zhao, B. Jiang, T. Cheng, B. Xiao, D. Liu, Y. Mu, X. Wang,
W. Liu, and J. Wang, “High-resolution representations for labeling pixels
and regions,” arXiv preprint arXiv:1904.04514, 2019.
[27] K. He, X. Zhang, S. Ren, and J. Sun, “Deep residual learning for image
recognition,” in Proceedings of the IEEE Conference on Computer Vision
and Pattern Recognition, pp. 770–778, 2016.
[28] M. D. Zeiler, D. Krishnan, G. W. Taylor, and R. Fergus, “Deconvolutional networks,” in 2010 IEEE Computer Society Conference on
Computer Vision and Pattern Recognition, pp. 2528–2535.
[29] H. Si, Z. Zhang, F. Lv, G. Yu, and F. Lu, “Real-time semantic
segmentation via multiply spatial fusion network,” arXiv preprint
arXiv:1911.07217, 2019.
[30] S. Kumaar, Y. Lyu, F. Nex, and M. Y. Yang, “Cabinet: Efficient
context aggregation network for low-latency semantic segmentation,”
arXiv preprint arXiv:2011.00993, 2020.
[31] A. Howard, M. Sandler, G. Chu, L.-C. Chen, B. Chen, M. Tan, W. Wang,
Y. Zhu, R. Pang, V. Vasudevan, et al., “Searching for mobilenetv3,” in
Proceedings of the IEEE International Conference on Computer Vision,
pp. 1314–1324, 2019.
[32] A. G. Howard, M. Zhu, B. Chen, D. Kalenichenko, W. Wang,
T. Weyand, M. Andreetto, and H. Adam, “Mobilenets: Efficient convolutional neural networks for mobile vision applications,” arXiv preprint
arXiv:1704.04861, 2017.
[33] X. Zhang, X. Zhou, M. Lin, and J. Sun, “Shufflenet: An extremely efficient convolutional neural network for mobile devices,” in Proceedings
of the IEEE Conference on Computer Vision and Pattern Recognition,
pp. 6848–6856, 2018.
[34] F. Chollet, “Xception: Deep learning with depthwise separable convolutions,” in Proceedings of the IEEE Conference on Computer Vision and
Pattern Recognition, pp. 1251–1258, 2017.
[35] M. Sandler, A. Howard, M. Zhu, A. Zhmoginov, and L.-C. Chen,
“Mobilenetv2: Inverted residuals and linear bottlenecks,” in Proceedings
of the IEEE Conference on Computer Vision and Pattern Recognition,
pp. 4510–4520, 2018.
[36] J. Fu, J. Liu, H. Tian, Y. Li, Y. Bao, Z. Fang, and H. Lu, “Dual attention
network for scene segmentation,” in Proceedings of the IEEE Conference
on Computer Vision and Pattern Recognition, pp. 3146–3154, 2019.
[37] Y. Yuan and J. Wang, “Ocnet: Object context network for scene parsing,”
arXiv preprint arXiv:1809.00916, 2018.
[38] Z. Huang, X. Wang, L. Huang, C. Huang, Y. Wei, and W. Liu, “Ccnet:
Criss-cross attention for semantic segmentation,” in Proceedings of the
IEEE International Conference on Computer Vision, pp. 603–612, 2019.
[39] S. Gao, M.-M. Cheng, K. Zhao, X.-Y. Zhang, M.-H. Yang, and P. H. Torr,
“Res2net: A new multi-scale backbone architecture,” IEEE Transactions
on Pattern Analysis and Machine Intelligence, 2019.
[40] M. Cordts, M. Omran, S. Ramos, T. Rehfeld, M. Enzweiler, R. Benenson, U. Franke, S. Roth, and B. Schiele, “The cityscapes dataset
for semantic urban scene understanding,” in Proceedings of the IEEE
Conference on Computer Vision and Pattern Recognition, pp. 3213–
3223, 2016.
[41] G. J. Brostow, J. Fauqueur, and R. Cipolla, “Semantic object classes
in video: A high-definition ground truth database,” Pattern Recognition
Letters, vol. 30, no. 2, pp. 88–97, 2009.
[42] H. Caesar, J. Uijlings, and V. Ferrari, “Coco-stuff: Thing and stuff classes
in context,” in Proceedings of the IEEE conference on computer vision
and pattern recognition, pp. 1209–1218, 2018.
[43] O. Russakovsky, J. Deng, H. Su, J. Krause, S. Satheesh, S. Ma,
Z. Huang, A. Karpathy, A. Khosla, M. Bernstein, et al., “Imagenet large
scale visual recognition challenge,” International Journal of Computer
Vision, vol. 115, no. 3, pp. 211–252, 2015.
[44] S. Xie, R. Girshick, P. Dollar, Z. Tu, and K. He, “Aggregated residual ´
transformations for deep neural networks,” in Proceedings of the IEEE
Conference on Computer Vision and Pattern Recognition, pp. 1492–
1500, 2017.
[45] V. Badrinarayanan, A. Kendall, and R. Cipolla, “Segnet: A deep convolutional encoder-decoder architecture for image segmentation,” IEEE
Transactions on Pattern Analysis and Machine Intelligence, vol. 39,
no. 12, pp. 2481–2495, 2017.
[46] M. Treml, J. Arjona-Medina, T. Unterthiner, R. Durgesh, F. Friedmann,
P. Schuberth, A. Mayr, M. Heusel, M. Hofmarcher, M. Widrich, et al.,
“Speeding up semantic segmentation for autonomous driving,” in MLITS, NIPS Workshop, vol. 2, 2016.
[47] Y. Zhang, Z. Qiu, J. Liu, T. Yao, D. Liu, and T. Mei, “Customizable architecture search for semantic segmentation,” in Proceedings of the IEEE
Conference on Computer Vision and Pattern Recognition, pp. 11641–
11650, 2019.
[48] P. Lin, P. Sun, G. Cheng, S. Xie, X. Li, and J. Shi, “Graph-guided architecture search for real-time semantic segmentation,” in Proceedings of
the IEEE/CVF Conference on Computer Vision and Pattern Recognition,
pp. 4203–4212, 2020.
[49] J. Wang, K. Sun, T. Cheng, B. Jiang, C. Deng, Y. Zhao, D. Liu,
Y. Mu, M. Tan, X. Wang, W. Liu, and B. Xiao, “Deep high-resolution
representation learning for visual recognition,” IEEE Transactions on
Pattern Analysis and Machine Intelligence, pp. 1–1, 2020.
[50] A. Shrivastava, A. Gupta, and R. Girshick, “Training region-based object
detectors with online hard example mining,” in Proceedings of the IEEE
Conference on Computer Vision and Pattern Recognition, pp. 761–769,
2016.
[51] W. Chen, X. Gong, X. Liu, Q. Zhang, Y. Li, and Z. Wang, “Fasterseg:
Searching for faster real-time semantic segmentation,” arXiv preprint
arXiv:1912.10917, 2019.
[52] G. Neuhold, T. Ollmann, S. Rota Bulo, and P. Kontschieder, “The
mapillary vistas dataset for semantic understanding of street scenes,” in
Proceedings of the IEEE international conference on computer vision
,
pp. 4990–4999, 2017.
[53] S. Chandra, C. Couprie, and I. Kokkinos, “Deep spatio-temporal random
fields for efficient video segmentation,” in Proceedings of the IEEE
Conference on Computer Vision and Pattern Recognition, pp. 8915–
8924, 2018.
[54] Z. Huang, X. Wang, Y. Wei, L. Huang, H. Shi, W. Liu, and T. S.
Huang, “Ccnet: Criss-cross attention for semantic segmentation,” IEEE
Transactions on Pattern Analysis and Machine Intelligence, pp. 1–1,
2020.
[55] R. Zhang, S. Tang, Y. Zhang, J. Li, and S. Yan, “Scale-adaptive convolutions for scene parsing,” in Proceedings of the IEEE International
Conference on Computer Vision, pp. 2031–2039, 2017.
[56] S. Kong and C. C. Fowlkes, “Recurrent scene parsing with perspective
understanding in the loop,” in Proceedings of the IEEE Conference on
Computer Vision and Pattern Recognition, pp. 956–965, 2018.
[57] Z. Wu, C. Shen, and A. Van Den Hengel, “Wider or deeper: Revisiting
the resnet model for visual recognition,” Pattern Recognition, vol. 90,
pp. 119–133, 2019.
[58] C. Yu, J. Wang, C. Peng, C. Gao, G. Yu, and N. Sang, “Learning a discriminative feature network for semantic segmentation,” in Proceedings
of the IEEE Conference on Computer Vision and Pattern Recognition,
pp. 1857–1866, 2018.
[59] H. Zhao, Y. Zhang, S. Liu, J. Shi, C. Change Loy, D. Lin, and J. Jia,
“Psanet: Point-wise spatial attention network for scene parsing,” in
Proceedings of the European Conference on Computer Vision (ECCV),
pp. 267–283, 2018.
[60] Y. Yuan, X. Chen, and J. Wang, “Object-contextual representations for
semantic segmentation,” arXiv preprint arXiv:1909.11065, 2019

猜你喜欢

转载自blog.csdn.net/wagnbo/article/details/131095555
今日推荐