【论文阅读--实时语义分割】BiSeNet V2: Bilateral Network with Guided Aggregation

摘要

低层细节和高层语义对于语义分割任务都是必不可少的。然而,为了加快模型推理的速度,目前的方法几乎总是牺牲低级细节,这导致了相当大的精度下降。我们建议将这些空间细节和分类语义分开处理,以实现高精度和高效率的实时语义分割。为此,我们提出了一种在速度和准确性之间进行良好权衡的高效体系结构,称为双边分割网络(BiSeNet V2)。该体系结构包括:

  • (1)一个细节分支,浅层 宽通道,用于捕获低级细节并生成高分辨率特征表示;
    (2)语义分支,层深 通道窄,获取高层语义语境。由于降低了信道容量和快速下采样策略,语义分支是轻量级的。
    (3)设计了一个 引导聚合层 来增强相互连接并融合这两种类型的特征表示。
    (4)还设计了一种 辅助训练策略,在不增加额外推理代价的情况下提高了分割性能。

性能:具体而言,【2048×1024输入+ NVIDIA GeForce GTX 1080 Ti卡】 在Cityscapes测试集实现了【72.6%的平均IoU + 156 FPS以上】,这比现有方法分割精度更好、速度更快。代码和经过训练的模型将公开提供。

深层特征具有较大的感受野,提供语义信息
浅层特征具有丰富的空间信息,提供目标轮廓的信息

1 Introduction

语义分割是为每个像素分配语义标签的任务。这是计算机视觉的一个基本问题,有着广泛的应用,包括场景理解、自动驾驶、人机交互和视频监控等。近年来,随着卷积神经网络的发展,基于完全卷积网络(FCN)的一系列语义切分方法,不断提升了最先进的性能。

【分割任务中,高精度的框架】
这些方法的高精度取决于它们的主干网络。主干网有两种主要架构:
i)扩展主干网,删除下采样操作并对相应的滤波器内核进行上采样,以保持高分辨率的特征表示,如图2(a)所示。
ii)编码器-解码器主干,具有自顶向下和跳过连接,以恢复解码器部分中的高分辨率特征表示,如图2(b)所示。
【运行速度存在问题】
然而,这两种体系结构都是为一般的语义分割任务而设计的,很少考虑推理速度和计算成本。在空洞卷积主干中,空洞卷积非常耗时,去除下采样操作会带来巨大的计算复杂性和内存占用。编码器-解码器体系结构中的许多连接对内存访问成本不太友好(Ma等人,2018年)。然而,实时语义切分应用需要高效的推理速度。
【模型加速方案】
面对这一需求,基于两个主干网,现有方法主要采用两种方法来加速模型:
i)输入限制。在相同的网络结构下,输入分辨率越小,计算成本越低。
ii)通道修剪。这是一种直接的加速方法,特别是在早期阶段修剪通道以提高推理速度。虽然这两种方法都能在一定程度上提高推理速度,但它们牺牲了低层次的细节和空间容量,导致了准确率的大幅下降。
因此,为了同时实现高效率和高准确度,开发一种特定的实时语义切分任务体系结构具有挑战性和重要意义。
【折中思路】
我们观察到,低层次的细节和高层次的语义对于语义分割任务都是至关重要的。在一般的语义分割任务中,深度和广度网络 同时编码 这两种信息。然而,在实时语义分割任务中,我们可以将空间细节和语义 分开处理,以实现准确性和推理速度之间的折衷。
【BiSeNet V2】
为此,我们提出了一种称为双边切分网络(BiSeNet V2)的双路径结构,用于实时语义切分。其中一条路径被设计用于捕获宽通道和浅层的空间细节,称为细节分支。相反,另一种途径是通过狭义通道和深层次的语义提取,称为语义分支。语义分支只需要一个大的接受域来捕获语义上下文,而细节信息可以由细节分支提供。因此,语义分支可以通过更少的通道和快速下采样策略变得非常轻量级。将这两种类型的特征表示合并,以构建更强大、更全面的特征表示。该概念设计为实时语义分割提供了一个高效的体系结构,如图2(c)所示。
【论文阅读--实时语义分割】BiSeNet V2: Bilateral Network with Guided Aggregation_第1张图片

【主要贡献】

  • 我们提出了一种高效的双路径架构,称为双边分割网络,用于实时语义分割,它分别处理空间细节和分类语义。
  • 对于语义分支,我们基于深度卷积设计了一个新的轻量级网络,以增强感受野并捕获丰富的上下文信息。
  • 引入了增强训练策略,以进一步提高分段性能,而不会增加推理成本。
  • 我们的架构在城市景观(Cordts等人,2016年)、CamVid(Brostow等人,2008a)和COCO Stuff(Caesar等人,2018年)的不同基准上取得了令人印象深刻的成果。更具体地说,我们在一张NVIDIA GeForce GTX 1080Ti卡上以156 FPS的速度获得Cityscapestest集72.6%平均IoU的结果。

2 相关工作

(这一章节在论文 STDC中描述更清晰)
近年来,图像语义分割取得了重大进展。在本节中,我们的讨论主要集中在与我们的工作最相关的三组方法上,即通用语义切分方法、实时语义切分方法和轻量级体系结构。


2.1通用语义切分

基于阈值选择、the region growing 、超级像素和图形法 的传统分割方法采用手工特征来解决此问题。最近,基于FCN的新一代算法在不同基准上不断提高最先进的性能。各种方法基于两种类型的主干网:

  • i)扩展主干网(具有空洞卷积)
    扩展主干删除下采样操作,并对卷积滤波器进行上采样,以保持高分辨率特征表示。由于空洞卷积的简单性,各种方法在其上开发了不同的新型有效成分。Deeplabv3 (2017年) 设计了一个空洞空间金字塔池来捕获多尺度上下文,而PSPNet (2017年) 在扩展主干上采用了金字塔池模块。同时,一些方法引入了注意机制,例如自我注意、空间注意和通道注意,以基于扩展主干捕获长程上下文。
  • ii)编码器-解码器骨干网络
    编码器-解码器骨干网络添加额外的自顶向下和横向连接,以恢复解码器部分中的高分辨率特征映射。FCN和超列(分割的一篇论文)采用跳过连接来集成低级功能。同时,U-net (2015年)、具有保存池索引的SegNet(2017年)、具有多路径细化的RefineNet (2017年)、具有逐步重建的LRR (2016年),具有“大内核”卷积的GCN (2017年) 和具有通道注意模块的DFN (2018b) 将该主干网络合并以恢复详细信息。HRNet (2019年) 采用多分支来维持高分辨率。

这两种类型的主干网编码底层细节和高层语义。尽管这两种类型的主干网都达到了最先进的性能,但大多数方法的推理速度都很慢。在本研究中,我们提出了一种新颖有效的架构,分别处理空间细节和类别语义,以实现分割精度和推理速度之间的良好折衷。


2.2 实时语义分割

随着越来越多的实际应用需要快速的交互和响应,实时语义分割算法越来越受到人们的关注。SegNet (2017年) 使用小型网络结构和跳过连接来实现高速。E-Net (2016年) 从头设计了一个轻量级网络,并提供极高的速度。ICNet (2018a) 使用图像级联来加速算法,而DLC (2017) 使用级联网络结构来减少“容易区域”中的计算。ERFNet (2018) 采用剩余连接和因子化卷积来保持效率和准确性。同时,ESPNet (2018,2019) 设计了一种高效的空间金字塔扩张卷积,用于实时语义分割。GUN (2018) 采用导向上采样模块融合多分辨率输入信息。DFANet (2019b) 重用特征以增强特征表示并降低复杂性。
虽然这些方法可以达到实时推理的速度,但它们在损失底层细节的同时,极大地牺牲了推理的准确性和效率。在这项工作中,我们同时考虑了低级细节和高级语义,以实现高精度和高效率。


2.3轻型结构

深度卷积和可分离卷积的开创性工作之后,轻量级架构设计实现了快速发展,包括 Xception (2017)、MobileNet (2017;2018)、ShuffleNet (2018b;2018),等等。这些方法在分类任务的速度和准确性之间实现了有价值的权衡。在本研究中,我们在给定计算复杂度、内存访问成本和实时推理速度的情况下设计了一个轻量级的网络,用于实时语义分割。

3 BISENTv2的3个核心概念

  • 【细节分支】
    细节分支负责空间细节,这是低级信息。该分支具有丰富的信道容量 (编码了丰富的空间详细信息)。
    关键概念:对空间细节使用 宽通道和浅层。得到特征表示具有较大的空间尺寸和较宽的通道。因此,最好不要采用残差连接,这会增加内存访问成本并降低速度。
  • 【语义分支】
    与细节分支并行,语义分支被设计为捕获高级语义。语义分支可以是任何轻量级卷积模型。
    该分支具有 低信道容量、语义分支与细节分支的通道数之比为λ(λ<1 轻量更)
    同时,快速下采样策略 (快速扩大感受野)、全局平均池 (2016) 嵌入全局上下文响应 (更大的感受野)。
  • 【聚合层】
    细节分支和语义分支的特征表示是互补的,其中一个分支不知道另一个分支的信息。因此,设计了一个聚合层来合并这两种类型的特征表示。
    由于快速下采样策略,语义分支输出的空间维度小于细节分支。我们需要对语义分支的输出特征映射进行上采样,以匹配细节分支的输出。融合信息有几种方式,例如简单求和、串联和一些精心设计的操作。考虑到准确性和效率,我们试验了不同的融合方法。最后,我们采用了双向聚合方法,如图3所示。

【论文阅读--实时语义分割】BiSeNet V2: Bilateral Network with Guided Aggregation_第2张图片
图3双边分割网络概述。主要有三个组成部分:

  • 两个通路主干(紫色虚线框)
    双通道主干有一个细节分支(蓝色立方体)和一个语义分支(绿色立方体)。详细分支中的三个阶段分别有C1、C2、C3通道。语义分支中相应阶段的通道可以通过因子λ(λ<1)来实现轻量化。语义分支的最后一个阶段是上下文嵌入块的输出。同时,立方体中的数字是特征图大小与输入分辨率的比率。
  • 聚集层(橙色虚线框)
    在聚合层部分,我们采用了双边聚合层。Down表示下采样操作,Up表示上采样操作, ψ ψ ψ表示S形函数, N N N表示元素乘积。
  • 助推器部分(黄色虚线框)
    此外,在助推器部分,我们设计了一些辅助分割来提高分割性能,而不需要额外的推理成本。

4 双边分割网络

我们的BiSeNet概念是通用的,可以通过不同的卷积模型 和任何特定设计来实现。主要有三个关键概念:

  • i)细节分支具有较高的信道容量和浅层,对空间细节的感受野较小;
    ii)语义分支通道容量低,层次深,接受域大。
    iii)设计了一个有效的聚合层来融合这两种类型的表示。

在本小节中,根据建议的概念设计,我们演示了总体架构和一些其他特定设计的实例,如图3所示。


4.1细节分支

细节分支的实例化包含三个阶段,每个阶段的每一层都是一个卷积层,然后是批量规范化和激活函数。每个阶段的第一层具有跨步s=2,而同一阶段中的其他层具有相同数量的过滤器和输出特征图大小。因此,该分支提取的输出特征映射是原始输入的1/8。
由于信道容量高,该细节分支编码丰富的空间细节。由于信道容量高,空间尺寸大,残差结构将增加内存访问成本。因此,该分支主要遵循VGG网络的原理来堆叠层。

4.2语义分支

考虑到同时具有大的感受野和高效的计算,我们设计了语义分支,其灵感来自轻量级识别模型的理念,例如,Xception (2017),MobileNet (2017;2018;2019),ShuffleNet (2018b;2018)。语义分支的一些关键特征如下。
【论文阅读--实时语义分割】BiSeNet V2: Bilateral Network with Guided Aggregation_第3张图片
图4 Stem块和上下文嵌入块的图示。表示:Conv是卷积运算。BN是批处理规范化。ReLu是ReLu激活功能。Mpooling是最大池。GPooling是全局平均池。C表示拼接。同时,1×1,3×3表示核的大小,H×W×C表示张量形状(高度、宽度、深度)。

  • 【词干块】
    图4(a),我们采用词干块作为语义分支的第一阶段,它使用两种不同的下采样方式来缩小特征表示。然后将两个分支的输出特征连接为输出。该结构具有高效的计算量和有效的特征表达能力。

  • 【上下文嵌入块】
    图4(b),如第3.2节所示,语义分支需要大的感受野来捕获高级语义。我们设计了上下文嵌入块,该块使用全局平均池和残差连接,有效嵌入全局上下文信息,如图4所示。

  • 【聚集和扩展层】
    图5反向瓶颈和聚集扩展层的图示。(a) 是MobileNet V2中提出的移动反向瓶颈Conv。步幅为2时,虚线快捷路径和求和圆不存在。(b)(c)为聚集扩展层,利用深度卷积的优势:

    • i)3×3卷积 以有效地聚集特征响应并扩展到更高维空间;
      iii)在扩展层的每个单独输出通道上独立执行的 3×3深度卷积
      iv)1×1卷积 作为投影层,将深度卷积的输出投影到低信道容量空间。
      当stide=2时,我们采用两个3×3深度卷积,进一步扩大了感受野,并采用一个3×3可分离卷积作为捷径。

    最近的工作大量采用5×5可分离卷积来扩大感受野,在某些情况下比两个3×3可分离卷积的FLOPS更少。在这一层中,我们将可分离卷积中的5×5深度卷积替换为两个3×3深度卷积,这两个深度卷积具有更少的FLOPS和相同的感受野。

    与MobileNetv2中的反向瓶颈相反,GE层还有一个3×3卷积。然而,该层对计算成本和内存访问成本也很友好,因为3×3卷积在CUDNN库中得到了特别优化 (2014;2018)。同时,由于该层的存在,GE层比反向瓶颈具有更高的特征表达能力。
    【论文阅读--实时语义分割】BiSeNet V2: Bilateral Network with Guided Aggregation_第4张图片
    表示:Conv是卷积运算。BN是批处理规范化。ReLu是ReLu激活功能。同时,1×1,3×3表示核的大小,H×W×C表示张量形状(高度、宽度、深度)。


4.3 双向引导聚合

有一些不同的方式来合并两种类型的特征响应,即元素相加和串联。然而,这两个分支的输出具有不同的特征表示级别。细节分支用于低级,语义分支用于高级。因此,简单的组合忽略了这两种类型信息的多样性,导致性能下降和难以优化。
根据观察结果,我们提出了双边引导聚合层来融合来自两个分支的互补信息,如图6所示
该层利用 [语义分支的上下文信息] 指导 [细节分支] 的特征响应。在不同的尺度引导下,我们可以捕获不同的尺度特征表示,这些特征表示 [内在地编码了多尺度信息]。同时,与简单的组合相比,这种引导方式能够实现两个分支之间的高效通信。
【论文阅读--实时语义分割】BiSeNet V2: Bilateral Network with Guided Aggregation_第5张图片
图6双边引导聚合层的详细设计。表示法:Conv是卷积运算。DWConv是深度卷积。APooling是平均池。BN表示批标准化。上采样意味着双线性插值。Sigmoid是Sigmoid激活函数。求和就是求和。同时,1×1,3×3表示核尺寸,H×W×C表示张量形状(高度、宽度、深度),N表示元素乘积。


4.4 助推器训练策略

为了进一步提高分割精度,我们提出了一种增强训练策略。顾名思义,它类似于火箭助推器:它可以在训练阶段增强特征表示,在推理阶段可以丢弃。因此,在推理阶段增加的计算复杂度很小。如图3所示,我们可以将辅助分割头插入语义分支的不同位置。在第5.1节中,我们分析了插入不同位置的影响。图7显示了分割头的细节。通过控制通道尺寸 C t C_t Ct,可以调整辅助分割头和主分割头的计算复杂度。
【论文阅读--实时语义分割】BiSeNet V2: Bilateral Network with Guided Aggregation_第6张图片
图7助推器中分段头的详细设计。表示法:Conv是卷积运算。BN表示批标准化。上采样意味着双线性插值。同时,1×1,3×3表示核尺寸,H×W×C表示张量形状(高度、宽度、深度),C表示通道尺寸,S表示上采样比例,N表示最终输出尺寸。

5 实验结果

在本节中,我们首先介绍数据集和实现细节。接下来,我们研究了我们提出的方法的每个组成部分对城市景观验证集的影响。最后,我们报告了与其他算法相比,我们在不同基准上的最终精度和速度结果。

【数据集】

  • Cityscapes (2016) 侧重于从汽车角度对城市街道场景的语义理解。数据集分为训练集、验证集和测试集,分别有2975500和1525张图像。在我们的实验中,我们只使用精细标注的图像来验证我们提出的方法的有效性。注释包括30个类,其中19个用于语义切分任务。该数据集具有2048×1024的高分辨率,对实时语义分割具有挑战性。
  • Cambridge driving Label Video Database(CamVid)(2008a)是从驾驶汽车的角度来看的道路场景数据集。它包含从视频序列中提取的分辨率为960×720的701幅图像。继开创性工作之后,图像被分为367张用于培训,101张用于验证,233张用于测试。我们使用提供的32个候选类别中的11个类别的子集与其他方法进行公平比较。不属于这些类别之一的像素将被忽略。
  • COCO Stuff(Caesar et al.,2018)通过密集的Stuff注释,增强了流行COCO (2014) 数据集的10K复杂图像。对于实时语义分割来说,这也是一个具有挑战性的数据集,因为它有更复杂的类别,包括91个要评估的thing和91个stuff类。为了进行公平比较,我们采用了分割方式 (2018):9K图像用于训练,1K图像用于测试。

【训练】

  • 我们的模型采用“开明正常”初始化方式从头开始训练(He等人,2015)。我们使用0.9动量的随机梯度下降(SGD)算法来训练我们的模型。对于所有数据集,我们采用16个批量。
    对于Cityscapes和CamVid数据集,权重衰减为0.0005权重衰减,而对于COCOStuff数据集,权重衰减为0.0001。
    我们注意到,权重衰减正则化仅用于卷积层的参数。初始速率设置为 5 e − 2 5e^{−2} 5e2 采用 “poly” 学习速率策略,即初始学习率乘以 ( 1 − i t e r i t e r m a x p o w e r ) (1-\frac{iter}{iter_{max}}^{power}) (1itermaxiterpower)每次迭代的功率为0.9。此外,我们分别针对Cityscapes数据集、CamVid数据集和COCO Stuff数据集对模型进行150K、10K和20K迭代训练。

【数据增强】

  • 我们随机水平翻转、随机缩放并将输入图像随机裁剪为固定大小以进行训练。随机量表包含{0.75,1,1.25,1.5,1.75,2.0}。城市景观的裁剪分辨率为2048×1024,CamVid的裁剪分辨率为960×720,COCO-Stuf的裁剪分辨率为640×640。此外,城市景观的增强输入将调整为1024×512分辨率,以训练我们的模型。

【推理】

  • 我们不采用任何评估技巧,例如滑动窗口评估和多尺度测试,这可以提高准确性,但耗时。
    对于2048×1024分辨率的输入,我们首先将其调整为1024×512分辨率以进行推断,然后将预测调整为输入的原始大小。我们仅使用一个GPU测量推理时间,并重复5000次迭代以消除误差波动。我们注意到,调整大小的时间包含在推断时间度量中。换句话说,当测量推断时间时,实际输入大小为2048×1024。同时,我们对城市景观数据集和CamVid数据集采用 mIoU 的标准度量,而对COCOStuff数据集采用 mIoU 和像素精度 pixAcc 的标准度量。

【设置】

  • 我们基于PyTorch 1.0进行了实验。推理时间的测量在一台NVIDIA GeForce GTX 1080Ti上执行,配备CUDA 9.0、CUDNN 7.0和TensorRT v5.1.5.1.

5.1 Cityscapes的消融评估

本节介绍消融实验,以验证我们方法中每个组件的有效性。在以下实验中,我们在Cityscapes训练集上训练我们的模型,并在Cityscapes验证集上进行评估。

【独立的路径的影响】
我们首先专门探讨了独立的路径的影响。表2中的前两行说明了仅使用一条路径的分割精度和计算复杂性。细节分支缺乏足够的高层语义,而语义分支缺乏底层空间细节,这导致了令人不满意的结果。图8显示了对细节分支的空间细节的逐渐关注。表2中的第二组表明,两个分支的不同组合都比仅有的一个通路模型好。这两个分支都可以提供互补的表示,以实现更好的分割性能。
语义分支和细节分支仅达到平均IoU的64.68%和62.35%。然而,通过简单的求和,语义分支可以为细节分支带来6%以上的改进,而细节分支可以为语义分支获得4%的增益。这一观察结果表明,这两个分支的表示是互补的。

【论文阅读--实时语义分割】BiSeNet V2: Bilateral Network with Guided Aggregation_第7张图片
表2 城市景观上的消融。我们逐步验证每个组件的有效性。在输入空间大小为2048×1024的情况下,我们显示了以GFLOPs为单位的分割精度(mIoU%)和计算复杂度。注释:Detail是Detail分支。Semantic是语义的分支。BGA表示双边引导聚合层。助推器指助推器培训策略。DDWConv是双层深度卷积层。

【论文阅读--实时语义分割】BiSeNet V2: Bilateral Network with Guided Aggregation_第8张图片图8示出细节分支的不同阶段的视觉解释的示例。在GradCAM(Selvaraju等人,2017年)之后,我们对细节分支的Grad Cam进行了可视化。可视化显示细节分支可以逐渐聚焦于空间细节,例如边界。

【聚合方法】
我们还研究了两个分支的聚合方法,如表2所示。
为了实现高效的聚合,我们设计了双边引导聚合层,该层以高层语义为指导,对多尺度的底层细节进行聚合。
我们还展示了两个没有 双边引导聚合层 作为初始聚合基线的变体:两个分支输出的总和和串联。为了进行公平比较,总和和串联的输入分别通过一个可分离层。
图9(下图)展示了细节分支、语义分支和这两个分支的聚合的可视化输出。这说明细节分支可以提供足够的空间细节,而语义分支捕获语义上下文。
【论文阅读--实时语义分割】BiSeNet V2: Bilateral Network with Guided Aggregation_第9张图片


表3对城市景观语义分支设计的影响。我们进行了信道容量、块设计和语义分支扩展率的实验。表示法:GLayer表示聚集层,即GE层中的第一个3×3卷积。DDWConv是双深度卷积层。

  • a) 信道容量比
    语义分支负责高级语义,而不关心空间细节。因此,语义分支可以变得非常轻量级,具有较低的信道容量,通过λ的信道容量比进行调整。λ的变化值可以控制语义分支前两级的信道容量。最后两个阶段的通道尺寸仍然是64和128。这里,我们选择λ=1/4。
  • b) 语义分支的块分析
    我们专门设计了GE层,当步长=2时,采用双深度卷积。第二行表示我们使用一个5×5深度卷积,而不是两个3×3深度卷积。第三行表示我们将GE层的第一个3×3卷积层替换为1×1卷积。
    主要改进包括两个方面:(i)我们在MobileNetV2的反向瓶颈中采用了一个3×3卷积作为收集层,而不是一个逐点卷积(Sandler et al.,2018);(ii)当步长=2时,我们使用两个3×3深度方向的卷积来代替一个5×5深度方向的卷积。
    表4b显示了我们模块设计的改进。聚集和扩展层可以扩大接受域,有效地捕获高层语义。
  • c) 扩展比
    不同的 ϵ \epsilon ϵ 值会影响语义分支的代表能力。我们选择 ϵ \epsilon ϵ = 6 来权衡精度和计算复杂度。
    GE层中的第一个3×3卷积层也是一个扩展层,可以将输入投影到高维空间。它在内存访问成本方面具有优势。该层的扩展比可以控制该层的输出尺寸。表3c调查了变化的影响。令人惊讶的是,即使使用=1,语义分支也可以将基线提高4%(62.35%→ 67.48%)表示IoU,验证了轻量级语义分支的有效性。【论文阅读--实时语义分割】BiSeNet V2: Bilateral Network with Guided Aggregation_第10张图片
  • 助推器训练策略
    如第4.4节所述,我们提出了一种增强训练策略,以进一步提高分割精度。我们在训练阶段将图7所示的分词头插入语义分支的不同位置,这些位置在推理阶段被丢弃。
    表4显示了插入分割头的不同位置的效果。可以看出,增强训练策略可以明显提高分割精度。我们选择表4第三行的配置,这进一步将平均IoU提高了3%以上(69.67%→ 73.19%),但不牺牲推理速度。基于此配置,我们采用在线引导策略(Wu等人,2016年)进一步提高性能。

    【论文阅读--实时语义分割】BiSeNet V2: Bilateral Network with Guided Aggregation_第11张图片
    图7助推器中分段头的详细设计。表示法:Conv是卷积运算。BN表示批标准化。上采样意味着双线性插值。同时,1×1,3×3表示核尺寸,H×W×C表示张量形状(高度、宽度、深度),C表示通道尺寸,S表示上采样比例,N表示最终输出尺寸。
    【论文阅读--实时语义分割】BiSeNet V2: Bilateral Network with Guided Aggregation_第12张图片
    表4助推器位置。我们可以将辅助分词头添加到不同的位置,作为语义分支的助推器。这里,stages表示可以在s stage之后添加辅助分段头。stage5 4和stage5 5分别表示上下文嵌入块之前或之后的位置。OHEM代表在线引导策略。

5.2 泛化能力

在本节中,我们主要探讨我们提出的体系结构的泛化能力。首先,我们在表5中调查了更广泛模型和更深模型的性能。接下来,我们用其他一些通用的轻量级模型替换语义分支,以探索表6中的兼容性。

  • 泛化到大型模型
    尽管我们的体系结构主要设计用于轻量级任务,例如实时语义分割,但BiSeNet V2也可以推广到大型模型。我们主要从两个方面扩展了该体系结构:(i)更宽的模型,由宽度乘数 α α α 控制;(ii)更深的模型,由深度乘数 d d d 控制。
    表5显示了具有不同宽度乘数 α α α 和不同深度乘数 d d d 的更宽模型的分割精度和计算复杂度。根据实验,我们选择 α α α =2.0和 d d d =3.0来构建我们的大型架构,称为BISENTV2 large,实现了75.8%的百万用户和千兆次运营。
  • 与其他模型的兼容性
    BiSeNetV2是一个具有两个分支的通用体系结构。在这项工作中,我们为语义分支设计了一些特定的块。语义分支可以是任何轻量级卷积模型(He et al.,2016;Howard et al.,2017)。因此,为了探索我们架构的兼容性,我们使用不同的通用轻量级模型进行了一系列实验。表6显示了不同模型组合的结果。

    【论文阅读--实时语义分割】BiSeNet V2: Bilateral Network with Guided Aggregation_第13张图片

5.3 性能评价

在本节中,我们将在三个基准数据集(Cityscapes、CamVid和COCO Stuff)上,将我们的最佳模型(BiSeNetV2和BiSeNetV2 Large)与其他最先进的方法进行比较。

  • Cityscapes
    我们在Cityscapes测试集上给出了所提出的BiSeNetV2的分割精度和推理速度。我们使用2048×1024输入的训练集和验证集来训练我们的模型,首先在模型中将其调整为1024×512分辨率。然后在测试集上评估分割精度。推断时间的测量在一个NVIDIA GeForce 1080Ti卡上进行。表7报告了我们的方法和现有方法的比较结果。
    表示: γ γ γ 是对应于原始2048×1024分辨率的下采样率。主干表示在ImageNet数据集上预先训练的主干模型。“-”表示方法不报告相应的结果。DFANet A和DFANet B采用1024×1024输入大小,并使用优化的深度卷积来加速速度。
    【论文阅读--实时语义分割】BiSeNet V2: Bilateral Network with Guided Aggregation_第14张图片
  • CamVid
    表8显示了CamVid数据集的统计精度和速度结果。在推理阶段,我们使用训练数据集和验证数据集,以960×720分辨率输入来训练我们的模型。
    此外,我们还研究了训练前数据集对CamVid的影响。表8的最后两行显示,城市景观预培训可以极大地提高CamVid测试集的平均IoU超过6%。
    注:主干是指在额外数据集上预先训练的主干模型,例如ImageNet数据集和Cityscapes数据集。∗ 表示模型是经过城市景观预训练的。†表示从零开始训练的模型。
    【论文阅读--实时语义分割】BiSeNet V2: Bilateral Network with Guided Aggregation_第15张图片
  • COCO-Stuf
    我们还在表9中报告了COCO Stuff验证数据集的准确性和速度结果。在推断阶段,我们将输入填充到640×640分辨率。为了进行公平比较,我们不采用任何耗时的测试技巧,如多尺度和翻转测试。即使与先驱工作相比,该数据集中的类别更为复杂,我们的BiSeNetV2仍具有更高的效率和可比的准确性。
    注:主干是在ImageNet数据集上预先训练的主干模型。
    【论文阅读--实时语义分割】BiSeNet V2: Bilateral Network with Guided Aggregation_第16张图片

你可能感兴趣的:(深度学习相关的论文阅读,2D实时语义分割,深度学习)