点击上方“小白学视觉”,选择加"星标"或“置顶

重磅干货,第一时间送达

下载论文PDF和源代码:

链接:https://pan.baidu.com/s/17oy5JBnmDDOtKasfPrWNiQ 提取码:lk5z

导读

来自NVIDIA的SOTA语义分割文章,代码开源。

论文:https://arxiv.org/abs/2005.10821

代码链接:

https://github.com/NVIDIA/semanic-segmentation

有一项重要的技术,通常用于自动驾驶、医学成像,甚至缩放虚拟背景:“语义分割。这是将图像中的像素标记为属于N类中的一个(N是任意数量的类)的过程,这些类可以是像汽车、道路、人或树这样的东西。就医学图像而言,类别对应于不同的器官或解剖结构。

NVIDIA Research正在研究语义分割,因为它是一项广泛适用的技术。我们还相信,改进语义分割的技术也可能有助于改进许多其他密集预测任务,如光流预测(预测物体的运动),图像超分辨率,等等。

我们开发出一种新方法的语义分割方法,在两个共同的基准:Cityscapes和Mapillary Vistas上达到了SOTA的结果。IOU是交并比,是描述语义分割预测精度的度量。

在Cityscapes中,这种方法在测试集上达到了85.4 IOU,考虑到这些分数之间的接近程度,这相对于其他方法来说是一个相当大的进步。

在Mapillary上,使用单个模型在验证集上达到了61.1 IOU,相比于其他的使用了模型集成最优结果是58.7。

结果预测

研究过程

为了开发这种新方法,我们考虑了图像的哪些特定区域需要改进。图2显示了当前语义分割模型的两种最大的失败模式:细节错误和类混淆。

图2,举例说明语义分割的由于尺度原因出现的常见错误模式。在第一行中,在缩小了0.5x的图像中,细细的邮箱被分割得不一致,但是在扩大了2.0x的图像中,预测得更好。在第二行中,较大的道路/隔离带区域在较低的分辨率(0.5x)下分割效果较好

在这个例子中,存在两个问题:细节和类混淆。

  • 第一张图片中邮箱的细节在2倍尺度的预测中得到了最好的分辨,但在0.5倍尺度下的分辨很差。

  • 与中值分割相比,在0.5x尺度下对道路的粗预测要比在2x尺度下更好,在2x尺度下存在类混淆。

我们的解决方案在这两个问题上的性能都能好得多,类混淆几乎没有发生,对细节的预测也更加平滑和一致。

在确定了这些错误模式之后,团队试验了许多不同的策略,包括不同的网络主干(例如,WiderResnet-38、EfficientNet-B4、xcepase -71),以及不同的分割解码器(例如,DeeperLab)。我们决定采用HRNet作为网络主干,RMI作为主要的损失函数。

HRNet已经被证明非常适合计算机视觉任务,因为它保持了比以前的网络WiderResnet38高2倍分辨率的表示。RMI损失提供了一种无需诉诸于条件随机场之类的东西就能获得结构性损失的方法。HRNet和RMI损失都有助于解决细节和类混淆。

为了进一步解决主要的错误模式,我们创新了两种方法:多尺度注意力和自动标记。

多尺度注意力

在计算机视觉模型中,通常采用多尺度推理的方法来获得最佳的结果。多尺度图像在网络中运行,并将结果使用平均池化组合起来。

使用平均池化作为一个组合策略,将所有尺度视为同等重要。然而,精细的细节通常在较高的尺度上被最好地预测,大的物体在较低的尺度上被更好地预测,在较低的尺度上,网络的感受野能够更好地理解场景。

学习如何在像素级结合多尺度预测可以帮助解决这个问题。之前就有关于这一策略的研究,Chen等人的Attention to Scale是最接近的。在这个方法中,同时学习所有尺度的注意力。我们将其称为显式方法,如下图所示。

图3,Chen等人的显式方法是学习一套固定尺度的密集注意力mask,将它们结合起来形成最终的语义预测。

受Chen方法的启发,我们提出了一个多尺度的注意力模型,该模型也学会了预测一个密集的mask,从而将多尺度的预测结合在一起。但是在这个方法中,我们学习了一个相对的注意力mask,用于在一个尺度和下一个更高的尺度之间进行注意力,如图4所示。我们将其称为层次方法。

图4,我们的分层多尺度注意力方法。上图:在训练过程中,我们的模型学会了预测两个相邻尺度对之间的注意力。下图:推理以链式/分层的方式完成,以便将多个预测尺度组合在一起。低尺度注意力决定了下一个更高尺度的贡献。

这种方法的主要好处如下:

  • 理论训练成本比Chen方法降低了约4x。

  • 训练只在成对的尺度上进行,推理是灵活的,可以在任意数量的尺度上进行。

表3,层次多尺度注意力方法与Mapillary验证集上其他方法的比较。网络结构为DeepLab V3+和ResNet-50主干。评估尺度:用于多尺度评估的尺度。FLOPS:网络用于训练的相对flops。这种方法获得了最好的验证集分数,但是与显式方法相比,计算量只是中等。

图5显示了我们的方法的一些例子,以及已学习的注意力mask。对于左边图片中邮箱的细节,我们很少关注0.5x的预测,但是对2.0x尺度的预测非常关注。相反,对于右侧图像中非常大的道路/隔离带区域,注意力机制学会最大程度地利用较低的尺度(0.5x),以及更少地利用错误的2.0x预测。

图5,两种不同场景的语义和注意力预测。左边的场景说明了一个精细的细节问题,而右边的场景说明了一个大的区域分割问题。白色表示较高的值(接近1.0)。给定像素在所有尺度上的注意力值总和为1.0。左:道路边的细邮箱在2倍的尺度下得到最好的分辨率,注意力成功地关注了这个尺度而不是其他尺度,这可以从2倍注意力图像中邮箱的白色中得到证明。右图:大的道路/隔离带区域在0.5x尺度下的预测效果最好,并且该区域的注意力确实成功地集中在0.5x尺度上。

自动标记

改进城市景观语义分割结果的一种常用方法是利用大量的粗标记数据。这个数据大约是基线精标注数据的7倍。过去Cityscapes上的SOTA方法会使用粗标注标签,或者使用粗标注的数据对网络进行预训练,或者将其与细标注数据混合使用。

然而,粗标注的标签是一个挑战,因为它们是有噪声的和不精确的。ground truth粗标签如图6所示为“原始粗标签”。

图6,自动生成粗图像标签的例子。自动生成的粗标签(右)提供了比原始的ground truth粗标签(中)更精细的标签细节。这种更精细的标签改善了标签的分布,因为现在小的和大的物品都有了表示,而不是只在主要的大的物品上才有。

受最近工作的启发,我们将自动标注作为一种方法,以产生更丰富的标签,以填补ground truth粗标签的标签空白。我们生成的自动标签显示了比基线粗标签更好的细节,如图6所示。我们认为,通过填补长尾类的数据分布空白,这有助于泛化。

使用自动标记的朴素方法,例如使用来自教师网络的多类概率来指导学生,将在磁盘空间上花费非常大的代价。为20,000张横跨19个类的、分辨率都为1920×1080的粗图像生成标签大约需要2tb的存储空间。这么大的代价最大的影响将是降低训练成绩。

我们使用硬阈值方法而不是软阈值方法来将生成的标签占用空间从2TB大大减少到600mb。在这个方法中,教师预测概率 > 0.5是有效的,较低概率的预测被视为“忽略”类。表4显示了将粗数据添加到细数据和使用融合后的数据集训练新学生的好处。

表4,这里显示的基线方法使用HRNet-OCR作为主干和我们的多尺度注意方法。我们比较了两种模式:用ground truth 细标签 + ground truth粗标签训练到ground truth 细标签 + auto-粗标签(我们的方法)。使用自动粗化标签的方法在基线上提高了0.9的IOU。

图7,自动生成粗图像标签的例子

最后的细节

该模型使用PyTorch框架在4个DGX节点上对fp16张量核进行自动混合精度训练。

论文:https://arxiv.org/abs/2005.10821

代码:https://github.com/nvidia/semanic-segmentation

英文原文:https://developer.nvidia.com/blog/using-multi-scale-attention-for-semantic-segmentation/

下载1:OpenCV-Contrib扩展模块中文版教程

在「小白学视觉」公众号后台回复:扩展模块中文教程即可下载全网第一份OpenCV扩展模块教程中文版,涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。

下载2:Python视觉实战项目52讲

在「小白学视觉」公众号后台回复:Python视觉实战项目即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目,助力快速学校计算机视觉。

下载3:OpenCV实战项目20讲

在「小白学视觉」公众号后台回复:OpenCV实战项目20讲即可下载含有20个基于OpenCV实现20个实战项目,实现OpenCV学习进阶。

交流群

欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器、自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN、算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~

85.4% mIOU!NVIDIA:使用多尺度注意力进行语义分割,代码已开源!相关推荐

  1. ICLR 6-6-6!自注意力可以替代CNN,能表达任何卷积滤波层丨代码已开源

    鱼羊 十三 发自 凹非寺 量子位 报道 | 公众号 QbitAI 像素层面上,CNN能做的,自注意力(self-attention)也都能做. 统御NLP界的注意力机制,不仅被迁移到了计算机视觉中,最 ...

  2. Dynamic Routing-中科院西交旷视(孙剑团队)提出用于语义分割的动态路由网络,精确感知多尺度目标,代码已开源!...

    关注公众号,发现CV技术之美 ▊ 写在前面 近年来,大量手工设计和基于搜索的网络被用于语义分割.然而,以前的工作(如FCN.U-Net和DeepLab系列)希望在预定义的静态网络结构中处理不同规模的输 ...

  3. MS-TCT:InriaSBU提出用于动作检测的多尺度时间Transformer,效果SOTA!已开源!(CVPR2022)...

    关注公众号,发现CV技术之美 本篇分享 CVPR 2022 论文『MS-TCT: Multi-Scale Temporal ConvTransformer for Action Detection』, ...

  4. 【语义分割】评价指标:PA、CPA、MPA、IoU、MIoU详细总结和代码实现(零基础从入门到精通系列!)

    文章目录 引言 1 混淆矩阵 2 语义分割 PA:像素准确率 CPA:类别像素准确率 MPA:类别平均像素准确率 IoU:交并比 MIoU:平均交并比 3 综合实例 步骤一:输入真实.预测图片 步骤二 ...

  5. 语义分割评价指标mIOU

    mIOU定义 Mean Intersection over Union(MIoU,均交并比),为语义分割的标准度量.其计算两个集合的交集和并集之比,在语义分割问题中,这两个集合为真实值(ground ...

  6. 语义分割评估指标MIOU

    1.MIOU定义 Mean Intersection over Union(MIoU,均交并比):为语义分割的标准度量.其计算两个集合的交集和并集之比,在语义分割的问题中,这两个集合为真实值和预测值. ...

  7. 语义分割MIoU代码解析

    1. MIoU 源码解析TensorFlow 和 PyTorch 源码解析 2.[语义分割]语义分割评估指标mIOU 3. 语义分割代码阅读-评价指标mIoU的计算 4. 深度学习计算机视觉图像分割领 ...

  8. 多尺度注意力机制的语义分割

    多尺度注意力机制的语义分割 Using Multi-Scale Attention for Semantic Segmentation 在自动驾驶.医学成像甚至变焦虚拟背景中,有一项重要的技术是常用的 ...

  9. 基于多尺度注意力网络单图像超分(MAN)

    引言 Transformer的自注意力机制可以进行远距离建模,在视觉的各个领域表现出强大的能力.然而在VAN中使用大核分解同样可以得到很好的效果.这也反映了卷积核的发展趋势,从一开始的大卷积核到vgg ...

最新文章

  1. 微信小程序获取多选框选中值和选中值对应的id
  2. 10、Mapreduce的一些场景
  3. Java程序员进阶的 3 个层次,你处于哪个?
  4. 鸿蒙安卓哪个app好,可以放下对华为鸿蒙的担忧了,操作和EMUI相似,能兼容安卓APP - 区块网...
  5. boost::math::inverse_gamma_distribution用法的测试程序
  6. c语言编译 64位,cmake – 编译32位和64位
  7. unsigned char s1 : 2的用法
  8. 终极神器盘点的FreeEIM
  9. 金税盘怎么安装在电脑上_金税盘处于锁死期不能开票怎么办?
  10. 【数据结构笔记26】根据一棵树的先序/中序遍历Push与Pop内容,输出这棵树的先序、中序、后序遍历数组(不需要真的建立出树)
  11. 【Silverlight】Bing Maps学习系列(二):通过Bing Maps Silverlight Control如何显示地图...
  12. web开发时碰到的问题以及心得经验
  13. CADD课程学习(7)-- 模拟靶点和小分子相互作用 (半柔性对接 AutoDock)
  14. html如何将搜索图标放入搜索框中
  15. 嵌入式系统开发与应用——ARM 开发环境搭建及GPIO控制LED实验
  16. [CTF]CTFSHOW文件包含练习笔记
  17. WPF——OXY绘图_old
  18. vue3使用datav
  19. 为何能力越强越不被重用?不懂这3点,你到哪里都混不好,不服不行
  20. 解决vue项目在ie、360兼容模式下空白页面问题

热门文章

  1. 刘群:华为诺亚方舟NLP预训练模型工作的研究与应用 | AI ProCon 2019
  2. PythonR爬取分析赶集网北京二手房数据(附详细代码)
  3. 李彦宏:从没觉得百度模仿谷歌;马化腾:做ICO数字货币有很多风险
  4. 开工了!三位大咖给你指路:未来 3~5 年内,哪个方向的机器学习人才最紧缺?
  5. PageHelper 使用 ThreadLocal 的线程复用问题
  6. 别再乱打日志了,这样才是定位 bug 打日志的方式!
  7. 拒绝躺平,Redis选择实现了自己的VM
  8. 面试题必问: 遇到过线上问题没,你是怎么排查的?
  9. 单元测试框架怎么搭?快来看看新版Junit5的这些神奇之处吧!
  10. 如何提升微服务的幸福感