FastFCN: Rethinking Dilated Convolution in the Backbone for Semantic

FastFCN:重新思考膨胀卷积在语义分割主干网络中的作用

注:部分插图近几天补上,赶其他ddl去了

注:作者的理论分析我觉得主要集中在3.2,大家可以注意一下

在下面两篇我跑了作者的代码并进行简单分析,大家可以瞅一眼啦:

深度学习(五):FastFCN代码运行、测试与预测_biter0088的博客-CSDN博客

深度学习(8):FastFCN代码运行、测试与预测2_biter0088的博客-CSDN博客

目录

摘要:

1 引入(Introduction)

2 相关工作(Related work)

2.1 语义分割

2.2 上采样(upsampling)

3 方法(Method)

3.1 DilatedFCN

3.2 我们方法的框架(The Framework of Our Method)

3.3 联合金字塔上采样(Joint Pyramid Upsampling)

3.3.1 背景(Background)

3.3.2 改写为联合上采样(Reformulation into Joint Upsampling)

3.3.3 用 CNN 解决(Solving with CNNs)

4 实验(Experiment)

4.1 实验设置 (Experimental Settings)

4.2. 消融研究(Ablation Study)

4.3 与其他方法的比较(Comparsion with Other Methods)

5 结论(Conclusion)

参考链接:


摘要:

当前的语义分割方式通常会在主干网络中使用空洞卷积(dilated convolutions ,扩张卷积)以提取高分辨率的特征图像,但这会带来严重的计算复杂度和内存占用。我们提出了一个名为JPU的新奇的联合上采样模块,通过从多个高分辨率的特征图像提取出一个联合上采样,来替代在空洞卷积上的时间和内存消耗。使用提取的JPU模块,我们的方法减少超过三倍的计算复杂度并且没有性能损失。实验表明JPU是优于其他上采样模块的,并且能够接入到现有的方法中来减少计算复杂度和提升性能。通过用JPU替代空洞卷积模块,我们的方法在运算快3倍的情况下,在Pascal Context数据集(平均交并比为53.13%)和ADE20K数据集(最终得分为0.5584)上都优于同类算法。代码链接:https://github.com/wuhuikai/FastFCN 。

1 引入(Introduction)

语义分割[23,40,4]是计算机视觉中最基础的任务之一,它的目标是给图片中每一个像素分配一个语义标签。目前通常使用全卷积网络FCN[22]来解决这个任务,并且在多个分割基准上取得了极好的效果。
        最初的全卷积网络(original FCN)是被Long等[22]提出的,它从用于图像分类的卷积神经网络CNN[16,15]转化而来。因为继承了针对图像分类的设计,最初的FCN网络通过卷积层(stride convolutions)和/或空间池化层(spatial pooling layers)来逐步地对输入图像进行下采样,最终得到一个低分辨率的特征图(feature map)。尽管最终的特征图编码了丰富的语义信息,但图像精细的结构信息损失了,这会导致对图像边界不准确的预测。如图1a所示,最初的全卷积网络下采样输入图片5倍,使最终得到的特征图的分辨率(spatial resolution)减小了32倍。
        为了获得高分辨率的最终特征图,[3,28,18,30,27]使用最初的FCN作为编码器(encoder)来获取高级语义信息,使用一个解码器(decoder)通过结合来自编码器的多层特征图来逐步恢复空间信息。如图1b所示,我们命名这样的方法为编码-解码(EncoderDecoder),在这种方法中,解码器最终的预测结果是高分辨率的。另一种方法,DeepLab [5]移除了原始FCN最后两个下采样操作并且引入空洞卷积(dilated/atrous convolutions)来维持感受野(the receptive field of view)不变。在 DeepLab之后,[38,6,36]在最终的特征图上使用多尺度上下文模块(a multi-scale context module),在一些语义分割基准(segmentation bechmarks)上明显胜过大多数的编码解码结构(EcoderDecoder)。如图1c所示,空洞卷积(dilatedFCN)得到最终特征图的分辨率是原始FCN的4倍,因此保留了更多的结构和位置信息。


        空洞卷积(dilated convolutions)在保留最终特征图的分辨率上起了重要作用,比多数使用编码解码结构的有着更优越的性能。可是,引入空洞卷积带来了严重的计算复杂度和空间占用,限制了实时应用。以 ResNet-101 [13] 为例,与原始 FCN 相比,DilatedFCN 中的 23 个残差块(69 个卷积层)需要占用 4 倍的计算资源和内存使用量,3 个残差块(9 个卷积层)需要 多占用 16 倍的资源。
        在这篇文章中,我们致力于解决前述空洞卷积引起的问题。为了实现这个目标,我们使用一个新奇的联合上采样模块来替代时间存储消耗大的空洞卷积,取名为联合金字塔上采样(JPU)。我们的方法使用原始FCN作为主干网络,使用JPU去上采样输出步长为32的低分辨率特征图(out-put stride,OS),得到一个高分辨率的特征图(输入出步长为8)。相应地,整个分割网络框架的计算耗时和空间占用急剧下降。与此同时,用JPU替代空洞卷积并没有引起性能降低。我们把这归因于JPU可用从多层特征图中获取多尺度信息(multi-scale)的能力。
        为了验证我们方法的有效性,我们一开始进行了一个系统性实验,表明在一些主流网络中用JPU替代空洞卷积没有性能降低。我们稍后在一个分割基准(segmentation bechmark)上进行了测试,结果表明我们的方法是同类方法中最优的(state-of-the-art)并且运行速度是三倍以上。具体来说,我们在所有基准上大幅度地超出Pascal Context[23],达到了平均交并比(mIoU)为53.13%的最优效果。在ADE20K数据集[40],我们使用ResNet-50作为主干网络,获得了平均交并比为42.75%,刷新了验证集(val set)的记录.此外,使用ResNet-101作为主干网络,我们在ADE20K测试集上达到了最优。
        综上所述,我们的贡献有三点:(1)我们提出了一个用于主干网络的计算效率高的JPU上采样模块来替代时间和空间消耗大的空洞卷积。(2)基于提出的JPU,整个分割网络在达到更好效果的同时计算耗时和存储占用能够减少3倍。(3)我们的方法在Pascal Context数据集(平均交并比为53.13%)和ADE20K数据集(使用ResNet-50作为主干网络时在验证集上平均交并比为42.75%,使用ResNet-101作为主干网络时在测试集上最终得分为0.5584)上都达到了同类中的最优。

2 相关工作(Related work)

在这个部分,我们首先给出语义分割方法的总体概述,这些方法可以被分为两个方向。然后我们介绍在上采样(upsampling)上的一些相关工作。

2.1 语义分割

FCNs[22]在语义分割上面取得了巨大的成功。在FCN之后,有两个主要的方向:DilatedFCN和编码器解码器结构(encoderdecoder)。DilatedFCN[11,34,7,6,38,36,5]使用空洞卷积(dilated convolutions)来保持感受野不变,同时使用一个多尺度上下文模块(a multi-scale context module)来处理高级特征图(high-level feature maps)。此外,编码解码结构[24,28,18,1,26,12,33,37]提出使用编码器(encoder)去提取多层特征图信息,并将这些信息用解码器(decoder)结合起来,得到最终的预测结果。
        DilatedFCN 为了在最终高分辨率的特征图上获取多尺度上下文信息,PSPNet[38]在多网格尺度(multiple grid scales)上使用池化操作,DeepLabV3[6]使用不同比率的空洞卷积并取名为ASPP。EncNet[36]使用上下文编码模块(Context Encoding Module)来获取全局的上下文信息。与上述方法不同,我们的方法在提出了一个命名为JPU的联合上采样模块来替代在DilatedFCNs主干网络中使用的空洞卷积, 这个替代能够在没有性能损失的情况下非常明显地减少计算复杂度
        EncoderDecoder 为了逐步恢复空间信息,[28]引入了结合编码特征和相应解码活动的跳跃式连接(skip connections)来构建U-Net。[18]提出一个多路径细化网络(a multi-path refinement network)来明确地利用下采样过程中的所有信息。DeepLabV3+[8]使用DeepLabV3作为编码器,结合了DilatedFCN和EncoderDecoder的优势。我们的方法是对DeepLabV3+的补充,在减少DeepLabV3+计算负载的同时没有性能损耗。

2.2 上采样(upsampling)

在我们的方法中,我们提出了一个以高分辨率特征图为指导对低分辨率特征图进行上采样的模块,这与联合上采样和数据相关上采样密切相关。
        Joint Upsampling 在图像处理的文献中,联合上采样旨在利用引导图像作为先验,并将结构细节从引导图像转移到目标图像。[17]构建基于CNNs的联合滤波器,学习恢复引导图像中的结构细节。[31]提出了一个端到端的可训练引导滤波模块,它有条件地对低分辨率图像进行上采样。我们的方法和上述方法相似。然而,所提出的 JPU 是为处理具有大量通道的特征图而设计的,而 [17, 31] 是专门为处理 3 通道图像而设计的,无法捕捉高维特征图中的复杂关系。
        Data-Dependent Upsampling DUpsampling [29] 也与我们的方法有关,它利用了分割标签空间中的冗余,能够从 CNN 的低分辨率输出中恢复像素级预测。与我们的方法相比,DUpsampling 对标签空间有很强的依赖性,它对更大或更复杂的标签空间的泛化能力很差。

3 方法(Method)

在本节中,我们首先介绍最流行的语义分割方法,称为 DilatedFCNs。 然后,我们用一种新颖的联合上采样模块联合金字塔上采样(JPU)对 DilatedFCN 的架构进行了改造。最后,我们详细讨论了所提出的 JPU,在此之前简要介绍了联合上采样、扩张卷积(空洞卷积,dilated convolutions)和步幅卷积(stride convolutions)。

3.1 DilatedFCN

为了在语义分割中利用 Deep CNN,Long等人 [22] 将设计用于图像分类的 CNN 转换为 FCN。以 ResNet-101 为例,原始 CNN 包含 5 个卷积阶段,一个全局平均池化层和一个线性层。为了构建FCN,将全局平均池化层和线性层替换为卷积层,用于生成最终的标签图,如图1a所示。在每两个连续的卷积阶段之间,使用步幅卷积和/或空间池化层,从而产生 5 个空间分辨率逐渐降低的特征图。
        FCN 中最后一个特征图的空间分辨率降低了 32 倍,导致对位置和细节的预测不准确。 为了获得高分辨率的最终特征图,DeepLab [5] 去除了最后两个特征图之前的下采样操作,如图 1c 所示。 此外,最后两个卷积阶段内的卷积层被扩张卷积取代,以保持感受野,因此命名为 DilatedFCN。 结果,最后一个特征图的分辨率降低了 8 倍,保留了更多的位置和细节信息。 继 DeepLab 之后,[38, 6] 提出了一个多尺度上下文模块来从最后一个特征图中捕获上下文信息,在多个分割基准中取得了巨大的成功。

3.2 我们方法的框架(The Framework of Our Method)

为了获得高分辨率的最终特征图,DilatedFCN 中的方法从原始 FCN 中删除了最后两个下采样操作,由于放大的特征图,这带来了沉重的计算复杂度和内存占用。 在本文中,我们旨在寻找一种替代方法来逼近 DilatedFCN 的最终特征图,而没有计算和内存过载。 同时,我们希望我们的方法的性能与原始的 DilatedFCN 一样好。
        为了实现这一点,我们首先放回由 DilatedFCN 删除的所有步幅卷积,同时用常规卷积层替换所有扩张卷积。 如图2所示,我们方法的主干与原始FCN的主干相同,其中五个特征图(Conv1-Conv5)的空间分辨率逐渐降低了2倍。为了获得类似于 DilatedFCN 最终特征图的特征图,我们提出了一个名为 Joint Pyramid Upsampling (JPU) 的新模块,它将最后三个特征图 (Conv3−Conv5) 作为输入。然后是一个多尺度上下文模块 ( PSP [38]/ASPP [6])或全局上下文模块(编码[36])用于产生最终预测。
        与 DilatedFCN 相比,当主干为 ResNet-101 时,我们的方法在 23 个残差块(69 层)中减少了 4 倍的计算和内存资源,在 3 个块(9 层)中减少了 16 倍。 因此,我们的方法运行速度比 DilatedFCN 快得多,同时消耗的内存更少。

3.3 联合金字塔上采样(Joint Pyramid Upsampling)

所提出的 JPU 旨在生成一个特征图,该特征图用于近似来自 DilatedFCN 主干的最终特征图。 这样的问题可以重新表述为联合上采样,然后由为此任务设计的 CNN 解决。

3.3.1 背景(Background)

 Joint Upsampling 给定一个低分辨率的目标图像和高分辨率引导图像,联合上采样旨在通过从引导图像中转移细节和结构来生成高分辨率目标图像。 一般而言,低分辨率目标图像yl 是通过对低分辨率引导图像xl 采用变换f(·) 来生成的,即yl = f(xl)。 给定 xl 和 yl ,我们需要得到一个变换 f^(·) 来逼近 f(·),其中 f^(·) 的计算复杂度远低于 f(·)。 例如,如果 f(·) 是多层感知器 (MLP),则 f^(·) 可以简化为线性变换。 然后通过对高分辨率引导图像 xh 应用 f^(·) 获得高分辨率目标图像 yh,即 yh = f^(xh )。 形式上,给定 xl 、 yl 和 xh ,联合上采样定义如下:

其中 H 是一组所有可能的变换函数,|| · || 是一个预定义的距离度量。
        Dilated Convolution DeepLab [5] 中引入了空洞卷积,用于在保持接收视野的同时获得高分辨率特征图。 图 3a给出一维空洞卷积(dilation rate = 2)的说明,可以分为以下三个步骤:(1)根据索引的奇偶性将输入特征f_in分成两组f_in_0和f_in_1,(2 ) 用相同的卷积层处理每个特征,得到 f_out_0 和 f_out_1,以及 (3) 将生成的两个特征交错合并得到输出特征 f_out。
        Stride Convolution 步幅卷积的提出是为了将输入特征转换为空间分辨率降低的输出特征。这相当于如图 3b 所示的以下两个步骤:(1)用正则卷积处理输入特征 f_in 以获得中间特征 f_m ,以及(2)去除具有奇数索引的元素,从而产生f_out 。

3.3.2 改写为联合上采样(Reformulation into Joint Upsampling)

我们方法的主干与 DilatedFCN 之间的区别在于最后两个卷积阶段。 以第 4 个卷积阶段(Conv4)为例,在 DilatedFCN 中,输入特征图首先经过一个常规卷积层处理,然后是一系列扩张卷积(d=2)。 不同的是,我们的方法首先使用步幅卷积(s=2)处理输入特征图,然后使用几个常规卷积来生成输出。
        形式上,给定输入特征图 x,DilatedFCN 中的输出特征图 y_d 得到如下:

而在我们的方法中,输出特征图 y_s 生成如下:

Cr , Cd , 和 Cs 分别代表一个常规/空洞/步幅卷积,Crn 是n层常规卷积。图3中S、M和R分别是split、merge和reduce操作,其中相邻的S和 可以取消 M 操作。 值得注意的是,等式 2和 3中的卷积是一维的,这是为了简单起见。 对于2D 卷积可以获得类似的结果。
        上述方程表明 ys 和 yd 可以使用相同的函数 Crn 获得,但输入不同: ym0 和 ym1 ,其中前者是从后者下采样的。 因此,给定 x 和 ys ,可以得到近似 yd 的特征图 y 如下:

这与等式 1 中定义的联合上采样问题相同。对于第 5 个卷积阶段(Conv5),可以很容易地获得类似的结论。

3.3.3 用 CNN 解决(Solving with CNNs)

等式 4 是一个优化问题,通过迭代梯度下降需要大量时间来收敛。或者,我们建议使用 CNN 模块来近似优化过程。 为了实现这一点,我们首先需要在给定 x 的情况下生成 ym,如公式 4 所示。然后,需要收集来自 ym0 和 ys 的特征,以便学习映射 ĥ。最后,需要一个卷积块将收集到的特征转换为最终的预测 y。
        根据上述分析,我们设计了 JPU 模块,如图 4 所示。具体来说,每个输入特征图首先由一个常规卷积块处理(图4a),该块被设计用于(1)在给定 x 的情况下生成 ym,以及(2)将 fm 转换为具有缩减维度的嵌入空间。 因此,所有输入特征都映射到同一个空间中,这样可以更好地融合并降低计算复杂度。
        然后,对生成的特征图进行上采样和连接,得到 yc(图 4b)。并行使用具有不同膨胀率(1、2、4 和 8)的四个可分离卷积 [14、9] 从 yc 中提取特征,其中不同的膨胀率具有不同的功能。具体来说,使用扩张率为1的卷积来捕捉ym0与ym的其余部分之间的关系,如图5中的蓝色框所示。或者,膨胀率为 2、4 和 8 的卷积设计用于学习映射 ĥ 以将 ym0 转换为 ys,如图 5 中的绿色框所示。因此,JPU 可以从多级特征图中提取多尺度上下文信息,从而获得更好的性能。这与仅利用最后一个特征图中的信息的 ASPP [6] 显着不同。
        提取的特征对 ym0 和 ys 之间的映射以及 ym0 和 ym 的其余部分之间的关系进行编码。因此,采用了另一个常规卷积块,将特征转换为最终预测(图 4c)。
        值得注意的是,所提出的 JPU 模块共同解决了两个密切相关的联合上采样问题,即(1)基于 Conv3(第 4 卷积阶段)对 Conv4 进行上采样,以及(2)在扩大后的 Conv4(第 5 卷积阶段)的指导下对 Conv5 进行上采样)。

4 实验(Experiment)

在本节中,我们首先介绍实验中使用的数据集以及实现细节。然后,我们进行系统的消融研究(ablation study),从性能和效率的角度展示所提出的 JPU 的有效性。最后,为了与最先进的方法进行比较,我们报告了两个分割数据集 Pascal Context [23] 和 ADE20K [40] 的性能,它们被广泛用作分割基准。此外,我们还展示了一些视觉结果来证明我们方法的优越性。

4.1 实验设置 (Experimental Settings)

Dataset Pascal 上下文数据集 [23] 基于 PASCAL VOC 2010 检测挑战,提供额外的像素级语义注释。它有 4,998 张图像用于训练(train)和 5,105 张图像用于测试(val)。继之前的工作 [18, 5, 36] 之后,我们使用最频繁的 59 个对象类别加上背景(总共 60 个类别)作为语义标签。
        Implementation Details 我们的方法在 PyTorch [25] 中实现。对于 Pascal 上下文的训练,我们遵循 [36] 中提出的协议。具体来说,我们最初将学习率设置为 0.001,然后通过遵循“poly”策略(幂 = 0.9)逐渐降低到 0。对于数据增强,我们随机缩放(从 0.5 到 2.0)并左右翻转输入图像。然后将图像裁剪为 480 × 480 并以批量大小 16 进行分组。该网络使用 SGD 训练了 80 个 epoch,其中动量(momentumn)设置为 0.9,权重衰减(weight decay)设置为 1e-4。所有实验均在具有 4 个 Titan-Xp GPU(每个 GPU 12G)的工作站中进行。我们采用逐像素交叉熵作为损失函数。ResNet-50 和 ResNet-101 被用作主干,它们在大多数现有的分割方法中被广泛用作标准主干。

4.2. 消融研究(Ablation Study)

为了展示所提出方法的有效性,我们以 ResNet-50 为骨干对 Pascal Context 数据集进行了系统的消融研究,如表 1 所示。我们报告了像素精度 (pixAcc) 和平均联合交点 (mIoU) 的标准评估指标。值得注意的是,没有对 val 图像应用多尺度测试和左右翻转。

Dilated Convolution 对于 DilatedFCN 中的方法,去除了最后两个卷积阶段的下采样操作,导致输出步幅(OS)为 8。表 1 中的 Encoding-8-None 代表原始的 EncNet [36]。为了显示空洞卷积的效果,我们将 EncNet 的主干替换为原始 FCN 的主干(与我们的方法相同),结果 OS 为 32。然后,我们使用双线性插值(bilinear interpolation)将最后一个特征图上采样 4 倍,然后将其输入编码头,记为 Encoding-32-Bilinear。如表 1 所示,Encoding-32-Bilinear 的性能明显低于 Encoding-8-None,这表明替换 DilatedFCN 主干中的扩张卷积并非易事。
        Upsampling Module 为了展示所提出的 JPU 的有效性,我们将其与其他经典的上采样方法、双线性上采样和特征金字塔网络 (FPN) [20] 进行了比较。如表 1 所示,FPN 大大优于双线性插值。即使与 EncNet 相比,FPN 在 pixAcc 和 mIoU 中也取得了相当的性能。通过用我们的 JPU 替换 FPN,我们的方法在 mIoU 方面优于 FPN 和 EncNet 1% 以上,达到了最先进的性能。
        视觉结果如图 6 所示。Encoding-32-Bilinear(图 6c)成功地捕获了全局语义信息,从而对鸟和天空进行了粗略的分割。但是,鸟的边界不准确,分支的大部分都没有被剔除。当用 FPN 代替双线性插值时(图 6d),鸟和树枝被成功标记出来,边界准确,显示了低级和高级特征图结合的效果。使用扩张卷积可以获得更好的结果(图6e)。至于我们的方法(图 6f),它准确地标记了主分支和侧枝,这表明了所提出的联合上采样模块的有效性。特别是侧拍展示了 JPU 从多级特征图中提取多尺度上下文的能力。因此,我们的方法可以获得更好的性能。

推广到其他方法(Generalization to Other Methods) 为了展示所提出的 JPU 的泛化能力,我们将 EncNet 替换为 DilatedFCN 中的两种流行方法,即 DeepLabV3 (ASPP Head) [6] 和 PSPNet [38]。如表 1 所示,我们从 DeepLabV3 和 PSP 转换而来的方法始终优于相应的原始方法。
        FPS 为了比较计算复杂度,我们采用每秒帧数 (FPS) 作为评估指标(evaluation metric),在 Titan-Xp GPU 上以 512 × 512 图像作为输入进行测量。如表 2 所示,报告的 FPS 是 100 次运行的平均值。对于 ResNet-50,我们的方法 (Encoding-JPU) 的运行速度大约是 EncNet (Encoding-None) 的两倍。将主干更改为 ResNet-101 时,我们的方法运行速度是 Enc-Net 的三倍以上。我们方法的速度也与 FPN 相当,但我们的方法实现了更好的性能。对于 DeepLabV3 (ASPP) 和 PSP,我们的方法可以在一定程度上加速它们,同时具有更好的性能。

4.3 与其他方法的比较(Comparsion with Other Methods)

Pascal Context 在表 1 中,我们的方法使用 ResNet-50 作为主干,没有进行多尺度评估,并且按照 [36] 在不包括背景的 59 个类上计算指标。为了与最先进的方法进行公平比较,我们对多个尺度的预测进行平均,并计算包括背景在内的 60 个类别的指标,然后在表 3 中报告。以 ResNet-50 作为主干,我们的方法比 DeepLabV2(带有 COCO 预训练)和 RefineNet 的表现要好很多,它们分别采用 ResNet-101 和 ResNet-152 作为主干。此外,与以 ResNet-101 为骨干的 EncNet 相比,我们的方法 (ResNet-50) 实现了具有竞争力的性能。通过用更深的网络 ResNet-101 替换 ResNet-50,我们的方法在 mIoU 上获得了额外 1.9% 的改进,其性能显着优于 EncNet (ResNet-101) 和 DUpsampling (Xception-71),并达到了最先进的水平表现。值得注意的是,Xception-71 是比 ResNet-101 更强大的主干。为了完整起见,我们还报告了 59 个类别(无背景)的 mIoU,分别为 52.10%(ResNet-50)和 54.03%(ResNet-101)。

ADE20K ADE20K数据集 [40] 是一个场景解析基准(scene parsing benchmark),其中包含 150 个东西/目标(stuff/object)类别。该数据集包括用于训练(train)、验证(val)和测试(test)的 20K/2K/3K 图像。
        我们在训练集上训练我们的网络 120 个 epoch,学习率为 0.01。然后,我们在 val 集上评估模型,并在表 4 中报告 pixAcc 和 mIoU。当使用 ResNet-50 作为主干时,我们的方法在 mIoU 方面比 EncNet (ResNet-50) 高出 1.64%,同时与 RefineNet (ResNet-152) 相比实现了更好的性能。通过用 ResNet-101 替换 ResNet-50,我们的与 EncNet (ResNet-101) 和 PSPNet (ResNet-269) 相比,该方法获得了具有竞争力的性能。我们的方法 (ResNet-101) 的性能比 EncNet 稍差,我们将此归因于训练图像的空间分辨率。具体来说,在我们的方法中,训练图像被裁剪为 480 × 480,以便在具有 12G 内存的 GPU 中处理 4 个图像。然而,EncNet 在内存大于 12G 的 GPU 上使用 576×576 图像进行训练。

然后,我们在训练集和验证集上微调我们的网络,再进行 20 个 epoch,学习率为 0.001。测试集上的预测被提交到评估服务器(evaluation server)。如表 5 所示,我们的方法优于 2017 年 COCO-Place 挑战赛的两个获奖作品。此外,与 PSPNet 和 EncNet 相比,我们的方法也取得了更好的性能,尽管它在验证集上的表现更差。值得注意的是,Final Score 是评估服务器中使用的指标,它是 pixAcc 和 mIoU 的平均值。
        Pascal Context 数据集和 ADE20K 数据集的视觉结果如图 7 所示。更多结果显示在补充材料中。

5 结论(Conclusion)

在本文中,我们分析了扩张卷积和步幅卷积之间的区别和联系。在分析的基础上,我们将提取高分辨率特征图的任务制定为联合上采样问题,并提出了一种新颖的 CNN 模块 JPU 来解决该问题。通过用我们的 JPU 替换耗费时间和内存的扩张卷积,计算复杂度降低了三倍以上,而不会损失性能。消融研究表明,所提出的 JPU 优于其他上采样模块。通过插入 JPU,几种现代语义分割方法在运行速度比以前快得多的同时实现了更好的性能。两个分割数据集的结果表明,我们的方法实现了最先进的性能,同时显着降低了计算复杂度。

参考链接:

如何理解单一尺度signal-scale和多尺度multi-scale:https://www.zhihu.com/question/268644800/answer/341643540

如何理解特征提取中的low-level feature和high-level feature:https://www.zhihu.com/search?type=content&q=high-level%20feature%20maps
multi-path network:
    这种结构可以实现将粗糙的较高层次的语义特征与精细的较低层次的语义特征结合起来,来生成高分辨率的语义分割图片;
    每一个refineNet模块都有四部分组成,第一个是残差卷积单元,用来调整预训练的权重;第二个是多分辨率融合单元,实现不同分辨率特征图的融合;第三部分是链式残差池化,用来捕获background context;最后一个是输出卷积单元,处理结果用于最终的预测。
    论文:https://arxiv.org/abs/1611.06612?context=cs.CV
    简书链接:https://www.jianshu.com/p/f7457d9380ad

ablation study消融研究:这个想法是通过删除部分网络并研究其性能来了解网络。
    参考链接:https://www.icode9.com/content-4-834801.html

@meng

深度学习(9):FastFCN论文翻译与学习相关推荐

  1. 深度学习(12):SemanticKITTI论文翻译与学习

    SemanticKITTI论文是发表在CVPR 2019上的一篇在KITTI Vision Odometry Benchmark数据集上制作语义分割数据集SemanticKITTI的文章,为基于车载激 ...

  2. 深度学习(20):nerf论文翻译与学习

    目录 1 Introduction 2 Related Work 3 Neural Radiance Field Scene Representation 4 Volume Rendering wit ...

  3. 深度学习(10):PointNet论文翻译与学习

    PointNet:用于 3D 分类和分割的点集的深度学习 PointNet: Deep Learning on Point Sets for 3D Classification and Segment ...

  4. Deep Residual Learning for Image Recognition(ResNet)论文翻译及学习笔记

    [论文翻译]:Deep Residual Learning for Image Recognition [论文来源]:Deep Residual Learning for Image Recognit ...

  5. 深度学习 机器视觉经典论文翻译

    Deep Learning Papers Translation(CV) Image Classification AlexNet ImageNet Classification with Deep ...

  6. trans【Total3DUnderstanding】论文翻译+解读学习 2020.10.14

    Total3D Understanding 摘要 1 Introduction 2 related work 3 Method 3.1 3D目标检测和布局估计 3.2. Mesh Generation ...

  7. 【论文翻译】学习新闻事件预测的因果关系

    一.摘要 本文在这项工作中解决的问题是产生一个可能由给定事件引起的可能的未来事件. 论文提出了一种使用机器学习和数据挖掘技术建模和预测未来新闻事件的新方法.论文的Pundit算法概括了因果关系对的例子 ...

  8. TSDB学习 ---- Facebook TSDB 论文翻译

    转载:https://developer.aliyun.com/article/174535 本文为Facebook官方论文的翻译,原文地址http://www.vldb.org/pvldb/vol8 ...

  9. 怎么把俄语论文翻译成中文

    我们知道,论文翻译主要用于学习国外先进成果.参加国际学术研讨会,促进中外学术文化交流.市场上多见于英语论文翻译,其专业的翻译公司也不少.但是,相较于冷门的俄语论文翻译,北京哪个翻译公司比较专业,怎么把 ...

最新文章

  1. 千万级饿了么交易系统架构 5 年演化史!
  2. R语言构建LogisticRegression模型并计算AUC指标
  3. curl请求模拟post发送json
  4. 【强化学习】数据科学,从计算到推理
  5. POJ3614Sunscreen(优先队列+贪心)
  6. 机器阅读理解中文章和问题的深度学习表示方法
  7. 还在直接操作Redis?赶快来试试它....
  8. thinkphp 又一问题
  9. 设windows 2003远程访问服务器
  10. php判断合数,素数(质数)、合数计算器
  11. windows系统设置定时开关机的方法
  12. 机器学习性能改善备忘单:32个帮你做出更好预测模型的技巧和窍门
  13. win10 按用户名访问计算机,win7访问win10系统时需要输入用户名密码的两种解决方法...
  14. Android malware样本SLocker Mobile Ransomware
  15. MAC地址修改,注册表版
  16. WebAssembly在白鹭引擎5.0中的实践
  17. 吃什么对眼睛好 你吃对了吗
  18. 怎么理解cpu load?
  19. php梯形评论,PHP梯形的上底.下底.高,点击计算面积按钮,输出梯形面积.
  20. mysql不停機添加節點_MySQL 5.7主从不停机添加新从库

热门文章

  1. 每日一课 | 在Python中获取列表的长度和大小
  2. 物联网核心技术M2M的构成、基本特征和应用类别
  3. vue中下载图片到本地
  4. 京东2021年618项目规划——附下载
  5. DirectShow SDK笔记【关于DirectShow(2)】
  6. flink生成Watermark之WatermarkStrategy
  7. vue之router莫名其妙的bug
  8. python记录鼠标键盘操作自动执行重复工作
  9. android LRUCache解析
  10. 人机猜拳代码python_python 实现人和电脑猜拳的示例代码