CVPR2020 | 即插即用!将双边超分辨率用于语义分割网络,提升图像分辨率的有效策略...

点击上方“AI算法修炼营”,选择“星标”公众号

精选作品,第一时间送达

CVPR2020 | 即插即用!将双边超分辨率用于语义分割网络,提升图像分辨率的有效策略..._第1张图片

本文是收录于CVPR2020的工作,文章利用低分辨率的输入图像通过超分辨率网络生成高分辨率的图像,从而给语义分割模型提供额外的信息进而分割性能,其FA模块和视觉注意力机制比较类似,而且它额外增加的模块在部署阶段可以去掉,几乎不会增加计算量,是一种提高分辨率的有效策略

论文地址:http://openaccess.thecvf.com/content_CVPR_2020/papers/Wang_Dual_Super-Resolution_Learning_for_Semantic_Segmentation_CVPR_2020_paper.pdf

代码地址(即将开源):https://github.com/wanglixilinx/DSRL

现当前最先进的语义分割方法通常使用高分辨率输入来获得高性能,这带来了巨大的计算量,并限制了它们嵌入式等计算资源受限设备上的应用。本文提出了灵活而简单的双支路网络框架(DSRL)可以很好的提高网络精度的同时不引入额外的计算量。

该方法由三部分组成:语义分割超分辨率(SSSR),单图像超分辨率(SISR)和特征相似性(FA)模块,可以保持高分辨率表示和低分辨率输入,同时降低模型计算的复杂性。此外,它可以容易地推广到其他任务,例如人体姿势估计。对于CityScapes数据集上的语义分割任务,该方法可以在具有相似FLOP的情况下实现mIoU≥2%的提高,并保持70%FLOP的性能。对于人体姿势估计,该方法可以在相同的FLOP情况下获得≥2%的mAP,并在FLOP减少30%的情况下保持mAP。

简介

对于语义分割这类逐像素的任务而言,同时保持高效的推理速度和出色的性能是一个挑战,尤其是在计算资源有限的移动设备上。在语义分割中,高分辨率深层特征表示在语义分割性能提升上起着至关重要的作用。

当前,有两条主线可以保持高分辨率的表示。一种方法是通过使用空洞卷积替换标准卷积来维护高分辨率表示,例如DeepLab系列方法。另一种是通过结合自上而下的路径和横向连接(如UNet等编码器-解码器框架)来产生更高分辨率的特征图。但是,这些方法通常需要昂贵的计算成本。此外,它们通常以原始的高分辨率图像作为输入,这进一步增加了计算量。最近,轻量级分割网络由于其在资源受限的设备中的应用优势而也引起了很多关注。然而,它们的性能远远不如最新的方法。为了缩小精度差距,这些方法通常与高分辨率输入(例如1024×2048或512×1024)结合使用,这也带来了不错的效果。但是,一旦限制了输入大小,无论大型网络还是轻量网络,其性能都会下降。

CVPR2020 | 即插即用!将双边超分辨率用于语义分割网络,提升图像分辨率的有效策略..._第2张图片

图1 CityScapes验证集上不同网络的准确性与输入大小的关系。绿点表示具有不同输入大小的DeepLab-v3 +的结果:256×512、320×640、384×768、448×896、512×1024和1024×2048,蓝色三角形标记ESPNetv2的结果。红色表示分别基于DeepLabv3 +和ESPNetv2的方法的结果。

从图1可以看出,当输入分辨率从512×1024降至256×512时,两个网络的精度都会降低10%以上。因此,在本文中,设计了一个清晰而简单的框架来缓解这一难题。具体来说,在图像超分辨率的驱动下,将具有低分辨率图片输入通过超分辨率网络重建出高分辨率图像,因此本文提出了一种新颖的双重超分辨率学习Dual Super-Resolution Learning(DSRL)方法来保持高分辨率表示。这种学习方法被统一在two-stream框架中,该框架由语义分割超分辨率(SSSR),单图像超分辨率(SISR)和特征相似性(FA)模块组成。更具体地说,将超分辨率的思想整合到现有的语义分割pipline中,从而制定了语义分割超分辨率(SSSR)分支。然后,通过具有特征相似性(FA)模块进行SISR分支的细粒度结构表示,进一步增强了SSSR分支的高分辨率功能。此外,这两个部分共享相同的特征提取器,并且在训练过程中使用重建监督对SISR分支进行了优化,在推理阶段可以将其从网络中自由删除,从而节省了开销。

主要贡献:

(1)提出了一种双重超分辨率学习框架来保持高分辨率表示,可以在保持推理速度的同时提高性能;

(2)验证DSRL框架的通用性,可以很容易地扩展到其他任务

(3)证明了该方法在语义分割和人体姿势估计方面的有效性。使用差不多的计算量,可以提高≥2%的精度。

本文方法:Dual Super-Resolution Learning

CVPR2020 | 即插即用!将双边超分辨率用于语义分割网络,提升图像分辨率的有效策略..._第3张图片

图2.提出的DSRL框架概述,包括三个部分:语义分割超分辨率(SSSR)分支,单图像超分辨率(SISR)分支和特征相似性(FA)模块。编码器在SSSR分支和SISR分支之间共享。该体系结构将通过三个损失函数进行优化:SISR分支的MSE损失,FA损失和特定任务的损失,例如语义分割的交叉熵损失。

由于采用传统的编码器解码器结构,大多数现有方法只能将特征映射上采样到与输入图像相同的大小以进行预测,该尺寸可能小于原始图像。一方面,这可能导致有效标签信息的丢失。另一方面,仅依靠解码器很难恢复原始细节,这限制了性能的提高。

同时,以前的语义分割工作中存在的问题是输入分辨率大的情况下精度高,但是计算量也高,降低输入分辨率则精度也会降低,本文提出的方法减轻了这种情况:原理是从低分辨率的输入重建高分辨率的图像。之前类似的工作有四种:1.前上采样超分辨率,就是将输入双线性上采样到高分辨率然后微调网络。2.后上采样超分辨率,就是用网络后端的可学习的上采样层代替前上采样,可以很大程度减少计算复杂度。3.进步上采样超分辨率,是方法2的改进,它针对减少计算复杂度,用渐进的重建高分辨率图像并根据多尺度的单图像分辨率需要进行裁剪。4.迭代式上下采样超分辨率,采用迭代式上下采样产生媒介图像,然后结合它们去重建最后的高分辨率图像。考虑到计算量问题,本文遵循2方法的理念。

1、 Semantic Segmentation Super-Resolution(SSSR)

对于语义分割,只需附加一个额外的upsampling模块即可产生最终的预测mask,整个过程称为语义分割超分辨率(SSSR)。例如,输入512×1024大小的图片,将输出1024×2048大小,比输入图像大2倍。其他语义分割方法训练和测试图片尺寸一般为512×1024,然后在后处理阶段将其放大为1024×2048,然而本文的方法可以充分利用ground truth,避免了预处理导致的有效标签信息丢失。额外的语义分割upsampling上采样模块由一堆反卷积层组成,然后是BatchNorm和ReLU层,只需要较少的参数。

CVPR2020 | 即插即用!将双边超分辨率用于语义分割网络,提升图像分辨率的有效策略..._第4张图片

2、Single Image Super-Resolution(SISR)

如上所述,仅依靠解码器模块还不足以恢复使用原始图像作为输入获得的类似高分辨率语义特征表示。由于解码器是简单的双线性上采样层或子网络,由于输入图片的分辨率较低(例如512×1024),因此不会包含任何其他信息。 

SISR旨在从低分辨率输入中构建高分辨率图像。这意味着SISR可以在低分辨率输入下有效地重建图像的细粒度结构信息,这对于语义分割总是有帮助的。为了显示更好的理解,在图3中可视化了SSSR和SISR的功能。通过比较图3中的(b)和(c),可以轻松地发现SISR包含更完整的对象结构。尽管这些结构没有明确类别,但是可以通过像素与像素或区域与区域之间的关系有效地对它们进行分组。众所周知,这些关系可以隐式地传递语义信息,从而有利于语义分割的任务

CVPR2020 | 即插即用!将双边超分辨率用于语义分割网络,提升图像分辨率的有效策略..._第5张图片

图3.同一输入(0.5倍)下SSR和SISTER的特征层可视化图。(a)输入图像,(b)SSSR特征可视化(c)SISR特征可视化。

因此,利用从SISR提取的高分辨率特征来指导SSSR的高分辨率表示的学习,这些细节可以通过内部像素之间的相关性或关系进行建模,关系学习可以弥补解码器的简单设计问题。对于SISR分支,它与SSSR共享特征提取器,如图4(b)所示。整个分支都在原始图像的监督下进行训练,并将在推理阶段自由删除。具体的设计细节参考了论文《Real-time single image and videosuper-resolution using an efficient subpixel convolu-tional neural network》。

3、Feature Affinity Learning(FA)

因为SISR比SSSR包含更多的完整结构的信息,用此模块来指导SSSR去学习高分辨率的表征。FA旨在学习SISR和SSSR分支之间的相似度矩阵的距离,其中,相似度矩阵主要描述像素之间的成对关系。

FA为了学习SISR和SSSR之间相似矩阵的距离,如下式。

CVPR2020 | 即插即用!将双边超分辨率用于语义分割网络,提升图像分辨率的有效策略..._第6张图片

相似矩阵的定义

CVPR2020 | 即插即用!将双边超分辨率用于语义分割网络,提升图像分辨率的有效策略..._第7张图片

Sij代表两个特征图任意两个像素点的关联,p和q代表正则化方式,这里p=2,q=1(就是L1正则和L2正则)。

损失函数

用于语义分割的交叉熵误差:

CVPR2020 | 即插即用!将双边超分辨率用于语义分割网络,提升图像分辨率的有效策略..._第8张图片

用于SISR的均方误差:

CVPR2020 | 即插即用!将双边超分辨率用于语义分割网络,提升图像分辨率的有效策略..._第9张图片

其中SISR(·)和Y代表超分辨率输出及其对应的ground truth,pi和yi代表像素i的分割预测概率和对应类别,N表示像素数。w1和w2设置为0.1和1.0,使这些损失值范围固定可以相互比较。

相似矩阵距离误差:

CVPR2020 | 即插即用!将双边超分辨率用于语义分割网络,提升图像分辨率的有效策略..._第10张图片

实验与结果

数据集:Cityscapes Dataset、CamVid

评价指标:mIoU

1、消融实验

在分别代表轻量级网络和大型网络的ESPNetv2和DeepLabv3 +上进行了实验,并在Cityscape验证集上评估了mIoU。将图像的尺寸调整为256×512,作为加速实验训练的输入。如表1所示,以ESPNetv2为例,可以看到SSSR可以将性能从54.5%提高到55.7%,因为它减少了ground truth的定标时间。通过添加SISR分支,可以将mIoU有效提高2.4%。在结合FA损失的同时,性能可以进一步提高到59.5%(比baseline高5.0%),因此表明在SISR和SSSR之间传输结构信息是必要的。DeepLabv3 +上的结果也可以得出相同的结论,这始终证明了所提出的DSRL的有效性。

CVPR2020 | 即插即用!将双边超分辨率用于语义分割网络,提升图像分辨率的有效策略..._第11张图片

为了更好地理解DSRL,还可视化了baselineESPNetv2和DSRL之间的最终分割特征。如图5(c)所示,本文的方法可以显着提高边界的清晰度,并改善道路,汽车等不同类别的完整性,从而无疑增强了模型的最终判别能力。

CVPR2020 | 即插即用!将双边超分辨率用于语义分割网络,提升图像分辨率的有效策略..._第12张图片

不同分辨率大小输入图片的影响

CVPR2020 | 即插即用!将双边超分辨率用于语义分割网络,提升图像分辨率的有效策略..._第13张图片

2、定性评估

CVPR2020 | 即插即用!将双边超分辨率用于语义分割网络,提升图像分辨率的有效策略..._第14张图片

CVPR2020 | 即插即用!将双边超分辨率用于语义分割网络,提升图像分辨率的有效策略..._第15张图片

3、对比实验

CVPR2020 | 即插即用!将双边超分辨率用于语义分割网络,提升图像分辨率的有效策略..._第16张图片

CVPR2020 | 即插即用!将双边超分辨率用于语义分割网络,提升图像分辨率的有效策略..._第17张图片

4、Human Pose Estimation的迁移实验

数据集:MS COCO

评价指标:AP

baseline:HRNet

CVPR2020 | 即插即用!将双边超分辨率用于语义分割网络,提升图像分辨率的有效策略..._第18张图片

表5总结了baselineHRNet方法和所提出的DSRL方法之间的性能比较。以不同的分辨率作为输入,本文的方法始终超过HRNet 1.2%至3.3%。

CVPR2020 | 即插即用!将双边超分辨率用于语义分割网络,提升图像分辨率的有效策略..._第19张图片

更多实验细节,可以参考原文。


你可能感兴趣的:(CVPR2020 | 即插即用!将双边超分辨率用于语义分割网络,提升图像分辨率的有效策略...)