美团无人配送CVPR2020论文CenterMask解读

计算机视觉技术是实现自动驾驶的重要部分,美团无人配送团队长期在该领域进行着积极的探索。不久前,高精地图组提出的CenterMask图像实例分割算法被CVPR2020收录,本文将对该方法进行介绍。

CVPR的全称是IEEE Conference on Computer Vision and Pattern Recognition,IEEE国际计算机视觉与模式识别会议,它和ICCV、ECCV并称为计算机视觉领域三大顶会。本届CVPR大会共收到6656篇投稿,接收1470篇,录用率为22%。

背景

one-stage实例分割的意义

图像的实例分割是计算机视觉中重要且基础的问题之一,其在众多领域具有十分重要的应用,比如:地图要素提取、自动驾驶车辆感知等。不同于目标检测和语义分割,实例分割需要对图像中的每个实例(物体)同时进行定位、分类和分割。从这个角度看,实例分割兼具目标检测和语义分割的特性,因此更具挑战。当前两阶段(two-stage)目标检测网络(Faster R-CNN[2]系列)被广泛用于主流的实例分割算法(如Mask R-CNN[1])。

2019年,一阶段(one-stage)无锚点(anchor-free)的目标检测方法迎来了新一轮的爆发,很多优秀的one-stage目标检测网络被提出,如CenterNet[3], FCOS[4]等。这一类方法相较于two-stage的算法,不依赖预设定的anchor,直接预测bounding box所需的全部信息,如位置、框的大小、类别等,因此具有框架简单灵活,速度快等优点。于是很自然的便会想到,实例分割任务是否也能够采用这种one-stage anchor-free的思路来实现更优的速度和精度的平衡?我们的论文分析了该问题中存在的两个难点,并提出CenterMask方法予以解决。

图1. 目标检测,语义分割和实例分割的区别

one-stage实例分割的难点

相较于one-stage目标检测,one-stage的实例分割更为困难。不同于目标检测用四个角的坐标即可表示物体的bounding box,实例分割的mask的形状和大小都更为灵活,很难用固定大小的向量来表示。从问题本身出发,one-stage的实例分割主要面临两个难点:

  • 如何区分不同的物体实例,尤其是同一类别下的物体实例。two-stage的方法利用感兴趣区域(Region of Interest,简称ROI)限制了单个物体的范围,只需要对ROI内部的区域进行分割,大大减轻了其他物体的干扰。而one-stage的方法需要直接对图像中的所有物体进行分割。
  • 如何保留像素级的位置信息,这是two-stage和one-stage的实例分割面临的普遍问题。分割本质上是像素级的任务,物体边缘像素的分割精细程度对最终的效果有较大影响。而现有的实例分割方法大多将固定大小的特征转换到原始物体的大小,或者利用固定个数的点对轮廓进行描述,这些方式都无法较好的保留原始图像的空间信息。

相关工作介绍

遵照目标检测的设定,现有的实例分割方法可大致分为两类:二阶段(two-stage)实例分割方法和一阶段(one-stage)实例分割方法。

  • two-stage的实例分割遵循先检测后分割的流程,首先对全图进行目标检测得到bounding box,然后对bounding box内部的区域进行分割,得到每个物体的mask。two-stage的方法的主要代表是Mask R-CNN[1],该方法在Faster R-CNN[2]的网络上增加了一个mask分割的分支,用于对每个感兴趣区域(Region of Interest,简称ROI)进行分割。而把不同大小的ROI映射为同样尺度的mask会带来位置精度的损失,因此该方法引入了RoIAlign来恢复一定程度的位置信息。PANet[5]通过增强信息在网络中的传播来对Mask R-CNN网络进行改进。Mask Scoring R-CNN[6]通过引入对mask进行打分的模块来改善分割后mask的质量。上述two-stage的方法可以取得SOTA的效果,但是方法较为复杂且耗时,因此人们也开始积极探索更简单快速的one-stage实例分割算法。
  • 现有的one-stage实例分割算法可以大致分为两类:基于全局图像的方法和基于局部图像的方法。基于全局的方法首先生成全局的特征图,然后利用一些操作对特征进行组合来得到每个实例的最终mask。比如,InstanceFCN[7]首先利用全卷积网络[8](FCN)得到包含物体实例相对位置信息的特征图(instance-sensitive score maps),然后利用assembling module来输出不同物体的分割结果。YOLACT[9]首先生成全局图像的多张prototype masks,然后利用针对每个实例生成的mask coefficients对prototype masks进行组合,作为每个实例的分割结果。基于全局图像的方法能够较好的保留物体的位置信息,实现像素级的特征对齐(pixel-to-pixel alignment),但是当不同物体之间存在相互遮挡(overlap)时表现较差。与此相对应的,基于局部区域的方法直接基于局部的信息输出实例的分割结果。PolarMask[10] 采用轮廓表示不同的实例,通过从物体的中心点发出的射线组成的多边形来描述物体的轮廓,但是含有固定端点个数的多边形不能精准的描述物体的边缘,并且基于轮廓的方法无法很好的表示含有孔洞的物体。TensorMask[11]利用4D tensor来表示空间中不同物体的mask,并且引入了aligned representation 和 tensor bipyramid来较好的恢复物体的空间位置细节,但是这些特征对齐的操作使得整个网络比two-stage的Mask R-CNN还要慢一些。

不同于上述方法,我们提出的CenterMask网络,同时包含一个全局显著图生成分支和一个局部形状预测分支,能够在实现像素级特征对齐的情况下实现不同物体实例的区分。

CenterMask介绍

本工作旨在提出一个one-stage的图像实例分割算法,不依赖预先设定的ROI区域来进行mask的预测,这需要模型同时进行图像中物体的定位、分类和分割。为了实现该任务,我们将实例分割拆分为两个平行的子任务,然后将两个子任务得到的结果进行结合,以得到每个实例的最终分割结果。

第一个分支(即Local Shape分支)从物体的中心点表示中获取粗糙的形状信息,用于约束不同物体的位置区域以自然地将不同的实例进行区分。第二个分支(即Global Saliency分支)对整张图像预测全局的显著图,用于保留准确的位置信息,实现精准的分割。最终,粗糙但instance-aware的local shape和精细但instance-unaware的global saliency进行组合,以得到每个物体的分割结果。

1. 网络整体框架

图2. CenterMask网络结构图

CenterMask整体网络结构图如图2所示,给定一张输入图像,经过backbone网络提取特征之后,网络输出五个平行的分支。其中Heatmap和Offset分支用于预测所有中心点的位置坐标,坐标的获得遵循关键点预测的一般流程。Shape和Size分支用于预测中心点处的Local Shape,Saliency分支用于预测Global Saliency Map。可以看到,预测的Local Shape含有粗糙但是instance-aware的形状信息,而Global Saliency含有精细但是instance-aware的显著性信息。最终,每个位置点处得到的Local Shape和对应位置处的Global Saliency进行乘积,以得到最终每个实例的分割结果。Local Shape和Global Saliency分支的细节将在下文介绍。

2.Local Shape 预测

为了区分位于不同位置的实例,我们采用每个实例的中心点来对其mask进行建模,中心点的定义是该物体的bounding box的中心。一种直观的想法是直接采用物体中心点处提取的图像特征来进行表示,但是固定大小的图像特征难以表示不同大小的物体。因此,我们将物体mask的表示拆分为两部分:mask的形状和mask的大小,用固定大小的图像特征表示mask的形状,用二维向量表示mask的大小(高和宽)。以上两个信息都同时可以由物体中心点的表示得到。如图3所示,P表示由backbone网络提取的图像特征,shape和size表示预测以上两个信息的分支。用Fshape(大小为H x W x S x S)表示shape分支得到的特征图,Fsize(大小为H x W x 2)表示size分支得到的特征图。假设某个物体的中心点位置为(x,y),则该点的shape特征为Fshape(x,y),大小为1 x 1 x S x S,将其reshape成S x S大小的二维平面矩阵;该点的size特征为Fsize(x,y),用h和w表示预测的高度和宽度大小,将上述二维平面矩阵resize到h x w的大小,即得到了该物体的LocalShape表示。

图3. Local Shape预测分支

3. Global Saliency 生成

尽管上述Local Shape表示可以生成每个实例的mask,但是由于该mask是由固定大小的特征resize得到,因此只能描述粗糙的形状信息,不能较好的保留空间位置(尤其是物体边缘处)的细节。如何从固定大小的特征中得到精细的空间位置信息是实例分割面临的普遍问题,不同于其他采用复杂的特征对齐操作来应对此问题的思路,我们采用了更为简单快速的方法。启发于语义分割领域直接对全图进行精细分割的思路,我们提出预测一张全局大小的显著图来实现特征的对齐。平行于Local Shape分支,Global Saliency分支在backbone网络之后预测一张全局的特征图,该特征图用于表示图像中的每个像素是属于前景(物体区域)还是背景区域。

实验结果

1. 可视化结果

图4. CenterMask网络不同设定下的分割结果

为了验证本文提出的Local Shape和Global Saliency两个分支的效果,我们对独立的分支进行了分割结果的可视化,如图4所示。其中(a)表示只有Local Shape分支网络的输出结果,可以看到,虽然预测的mask比较粗糙,但是该分支可以较好的区分出不同的物体。(b)表示只有Global Saliency分支网络输出的结果,可以看到,在物体之间不存在遮挡的情形下,仅用Saliency分支便可实现物体精细的分割。©表示在复杂场景下CenterMask的表现,从左到右分别为只有Local Shape分支,只有Global Saliency分支和二者同时存在时CenterMask的分割效果。可以看到,在物体之间存在遮挡时,仅靠Saliency分支无法较好的分割,而Shape和Saliency分支的结合可以同时在精细分割的同时实现不同实例之间的区分。

2. 方法对比

图5. CenterMask与其他方法在COCO test-dev数据集上的对比

CenterMask与其他方法在COCO test-dev数据集上的精度(AP)和速度(FPS)对比见图5。其中有两个模型在精度上优于我们的方法:two-stage的Mask R-CNN和one-stage的TensorMask,但是他们的速度分别大约4fps和8fps慢于我们的方法。除此之外,我们的方法在速度和精度上都优于其他的one-stage实例分割算法,实现了在速度和精度上的均衡。CenterMask和其他方法的可视化效果对比见图6。

图6. CenterMask与其他方法在COCO 数据集上的可视化对比

除此之外,我们还将提出的Local Shape和Global Saliency分支迁移至了主流的one-stage目标检测网络FCOS,最终的实验效果见图7。最好的模型可以实现38.5的精度,证明了本方法较好的适用性。

图7. CenterMask-FCOS在 COCO test-dev数据集上的性能

未来展望

首先,CenterMask方法作为我们在one-stage实例分割领域的初步尝试,取得了较好的速度和精度的均衡,但是本质上仍未能完全脱离目标检测的影响,未来希望能够探索出不依赖box crop的方法,简化整个流程。其次,由于CenterMask预测Global Saliency的思想启发自语义分割的思路,而全景分割是同时融合了实例分割和语义分割的任务,未来希望我们的方法在全景分割领域也能有更好的应用,也希望后续有更多同时结合语义分割和实例分割思想的工作被提出。

更多细节见论文:CenterMask: single shot instance segmentation with point representation

招聘信息

美团无人车配送中心大量岗位持续招聘中,诚招感知/高精地图/决策规划/预测算法专家、无人车系统开发工程师/专家。无人车配送中心主要是借助无人驾驶技术,依靠视觉、激光等传感器,实时感知周围环境,通过高精定位和智能决策规划,保证无人配送机器人具有全场景的实时配送能力。欢迎感兴趣的同学发送简历至:hr.mad@meituan.com(邮件标题注明:美团无人车团队)

参考文献

  • [1] He K, Gkioxari G, Dollár P, et al. Mask r-cnn[C]//Proceedings of the IEEE international conference on computer vision. 2017: 2961-2969.
  • [2] Ren S, He K, Girshick R, et al. Faster r-cnn: Towards real-time object detection with region proposal networks[C]//Advances in neural information processing systems. 2015: 91-99.
  • [3] Zhou X, Wang D, Krähenbühl P. Objects as points[J]. arXiv preprint arXiv:1904.07850, 2019.
  • [4] Tian Z, Shen C, Chen H, et al. Fcos: Fully convolutional one-stage object detection[C]//Proceedings of the IEEE International Conference on Computer Vision. 2019: 9627-9636.
  • [5] Liu S, Qi L, Qin H, et al. Path aggregation network for instance segmentation[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2018: 8759-8768.
  • [6] Huang Z, Huang L, Gong Y, et al. Mask scoring r-cnn[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2019: 6409-6418.
  • [7] Dai J, He K, Li Y, et al. Instance-sensitive fully convolutional networks[C]//European Conference on Computer Vision. Springer, Cham, 2016: 534-549.
  • [8] Long J, Shelhamer E, Darrell T. Fully convolutional networks for semantic segmentation[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2015: 3431-3440.
  • [9] Bolya D, Zhou C, Xiao F, et al. YOLACT: real-time instance segmentation[C]//Proceedings of the IEEE International Conference on Computer Vision. 2019: 9157-9166.
  • [10] Xie, Enze, et al. “Polarmask: Single shot instance segmentation with polar representation.” //Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2020
  • [11] Chen, Xinlei, et al. “Tensormask: A foundation for dense object segmentation.” Proceedings of the IEEE International Conference on Computer Vision. 2019.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/479646.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何使用ListView实现一个带有网络请求,解析,分页,缓存的公共的List页面来大大的提高工作效率

在平常的开发中经常会有很多列表页面,每做一个列表页就需要创建这个布局文件那个Adapter适配器文件等等一大堆与之相关的附属的不必要的冗余文件。如果版本更新迭代比较频繁,如此以往,就会使项目工程变得无比庞大臃肿。 如果看过这篇文章或者…

从信息检索顶会CIKM'20看搜索、推荐与计算广告新进展

文 | 谷育龙Eric源 | 搜索推荐广告排序艺术我是谷育龙Eric,研究方向有深度学习、搜索推荐,喜欢为大家分享深度学习在搜索推荐广告排序应用的文章。CIKM作为信息检索、数据挖掘等领域的国际一流会议,每年都有很多搜索推荐广告领域的精彩论文。…

复杂风控场景下,如何打造一款高效的规则引擎

| 在互联网时代,安全已经成为企业的命脉。美团信息安全团队需要采用各种措施和手段来保障业务安全,从而确保美团平台上的用户和商户利益不会受到侵害。 本文主要介绍了美团在打造自有规则引擎Zeus(中文名“宙斯”)的过程中&#x…

Android消息队列图片记录

很早之前为了给学生讲明白整个消息队列是怎么个情况,于是大概阅读了一下消息队列的整个工作过程,鉴于网上大部分都是文字说明,没有一个图例,于是做出了下面这张图,权当作以后复习之用,也供大家学习参考&…

Git使用教程:最详细、最傻瓜、最浅显、真正手把手教!

原文连接:https://blog.csdn.net/u011535541/article/details/83379151 转载自 Git使用教程 预警:因为详细,所以行文有些长,新手边看边操作效果出乎你的预料)一:Git是什么? Git是目前世界上最先…

主动学习入门篇:什么是主动学习?有哪些具体应用

文 | 淘系技术部 初类来源 | 知乎在大数据和算力的助力下,深度学习掀起了一波浪潮,在许多领域取得了显著的成绩。以监督学习为主的深度学习方法,往往期望能够拥有大量的标注样本进行训练,模型能够学到更多有价值的知识&#xff08…

LeetCode 59. 螺旋矩阵 II LeetCode 54. 螺旋矩阵

文章目录1. 题目信息2. LeetCode 59 解题3. LeetCode 54. 螺旋矩阵4.《剑指Offer》面试题291. 题目信息 给定一个正整数 n,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的正方形矩阵。 示例:输入: 3 输出: [[ 1, 2, 3 ],[ 8, 9, 4 ],[ 7…

如何查看Activity任务栈以及dumpsys_activity命令的简要使用及介绍

今天看到淘宝客户端的某个页面效果,效果是在两个Activity中做动画,为了知道究竟是不是在同一个Activity中做的效果,就必须采取一种手段来知道是不是同一个Activity.描述一下这个动画效果:列表页面点击图片,图片会滑动到…

论文浅尝 | 基于微量资源的神经网络跨语言命名实体识别

论文笔记整理:谭亦鸣,东南大学博士生,研究方向为跨语言知识图谱问答。来源:EMNLP 2018链接:https://www.aclweb.org/anthology/D18-1034问题背景与动机本文关注小语种/资源匮乏语言的跨语言命名实体识别问题&#xff0…

美团命名服务的挑战与演进

| 本文根据美团基础架构部技术专家舒超在2019 ArchSummit(全球架构师峰会)上的演讲内容整理而成。 命名服务主要解决微服务拆分后带来的服务发现、路由隔离等需求,是服务治理的基石。美团命名服务(以下简称MNS)作为服务…

NeurIPS 2020 | 自步对比学习:充分挖掘无监督学习样本

文 | 葛艺潇源 | PaperWeekly本文介绍一篇我们发表于 NeurIPS-2020 的论文《Self-paced Contrastive Learning with Hybrid Memory for Domain Adaptive Object Re-ID》,该工作提出自步对比学习框架及混合记忆模型,旨在解决无监督及领域自适应表征学习中…

Postman安装与使用

原文链接:https://blog.csdn.net/fxbin123/article/details/80428216 一、Postman背景介绍 用户在开发或者调试网络程序或者是网页B/S模式的程序的时候是需要一些方法来跟踪网页请求的,用户可以使用一些网络的监视工具比如著名的Firebug等网页调试工具。…

LeetCode 35. 搜索插入位置(二分查找)

文章目录1. 题目信息2. 解题2.1 暴力遍历2.2 二分查找1. 题目信息 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 你可以假设数组中无重复元素。 示例 1:输入…

青年人在美团是怎样成长的?

2020年五四青年节,我们采访了美团技术团队9位青年代表,他们是来自清华大学、北京大学、中国科学院大学等国内高校的2位博士研究生和7位硕士研究生。在这个属于青年人的特别的日子里,我们请他们分享了自己在美团成长的故事。 道阻且长&#xf…

它来了它来了!2020深度学习硬核技术干货集锦!

这份干货来自于今天要给大家推荐的一个深度学习与计算机视觉领域知名公众号:「极市平台」。从2016年创立至今,极市平台深耕于DL与CV领域,输出300篇高质量原创文章,并积累了近10万名海内外专业算法开发者。极市平台公众号坚持每日更…

容器的使用和创建虚拟环境 vitualenv

xshell jupter容器的使用方法 #容器相当于子服务器 1 创建指定python版本的虚拟环境 方法1: 1.安装虚拟环境的第三方包 venv pip install venv 2.创建虚拟环境 cd 到存放虚拟环境的地址 在当前目录下创建名为env的虚拟环境: python -m venv env python…

Android中动态的更改selector中某张图片的属性

在我们平常开发的时候会有许多状态按钮,比如state_pressed,android:state_checked,或者就正常状态等等,我们做这样的效果通常需要三个文件,一张是按下的图片,一张是正常状态的图片,一张是管理它…

LeetCode 17. 电话号码的字母组合(回溯)

文章目录1. 题目信息2. 解题1. 题目信息 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 示例:输入:"23" 输出:[&…

细数一行代码改变结局的炼丹骚操作

文 | 陀飞轮&圈圈&年年的铲屎官源 | 知乎tips总结知乎答主:陀飞轮谈一下自己知道的。尽量避开优化器、激活函数、数据增强等改进。。先上完整列表:Deep Learning: Cyclic LR、FloodingImage classification: ResNet、GN、Label Smoothing、Shuff…

推荐收藏 | 美团技术团队的书单

4月23日对于世界文学而言是一个具有象征性意义的日子。1616年的这一天,塞万提斯、莎士比亚、印卡加西拉索德拉维加几位大师相继与世长辞。此外,这一天也是其他一些著名作家的出生和去世的日期,例如:莫里斯德吕翁、哈尔多尔K拉克斯…