何凯明最新成果PointRend解析


关注我的公众号,获取最新动态
mark
何凯明团队的新作:PointRend: Image Segmentation as Rendering

mark

PointRend,是何凯明及其团队对图像分割领域的又一次最新探索,将图像分割当做一个渲染问题,思路清奇,源于经典而高于经典,又是一次突破传统的成功。

作者简介

mark

何恺明,本科就读于清华大学,博士毕业于香港中文大学多媒体实验室。 2011年加入微软亚洲研究院(MSRA)工作,主要研究计算机视觉和深度学习。2016年,加入Facebook AI Research(FAIR)担任研究科学家

论文摘要

我们提出了一种有效的高质量图像的新方法 :对象和场景的分割。通过类比经典计算机图形方法以实现高效渲染 在像素标记任务中面临的过采样和欠采样挑战,我们开发了图像分割作为渲染问题的独特视角。从这个优势,我们 提出了PointRend(基于点的渲染)神经网络模块:该模块根据以下信息在自适应选择的位置执行基于点的分段预测: 迭代细分算法。 PointRend可以灵活地应用于实例和语义分割 通过在现有最新模型的基础上完成任务。 虽然总体思路有许多具体实现 有可能,我们表明简单的设计已经实现 出色的结果。定性地,PointRend在先前方法过度平滑的区域中输出清晰的对象边界。从数量上看,PointRend的收益显着 在实例分割和语义分割方面,COCO和Cityscapes都有所增长。 PointRend的效率可实现输出 与现有方法相比,在内存或计算方面不切实际的分辨率。

传统实例分割是什么样子的

  • 输入图像,

  • 对图像的每个像素点进行预测,推断像素点所属的实例标签,

  • 区分属于不同实例的像素点。

算法有哪些提高

降低资源消耗

算力仅需Mask R-CNN的2.6%。这一思路也进一步降低了消耗的资源,在当前人工智能算法模型在端侧部署的大趋势下,意义更大。

输出224×224分辨率图像,PointRend只需0.9B FLOPs

mark

精确度提高和高输出分辨率

实现准确的分割,下左图是Mask R-CNN效果,右图是PointRend,很震撼,五指的轮廓都可以抠出来:

mark

Mask R-CNN+PointRend实验结果

mark

显然,PointRend新方法完败Mask R-CNN。

PointRend抗锯齿

mark

模块可拓展

PointRend理解为神经网络模块集成,是一种新型神经网络模块

可以在现有模型的基础之上,用于实例分割、语义分割任务。

基于PointRend的DeeplabV3的语义分割

mark

mark

基于PointRend的SemanticFPN

mark

图像分割新思路:将图像分割视作渲染问题

计算机图形学的思路

渲染:渲染器将模型(如 3D 网格)映射到点阵图像,即像素的规则网格。

计算机图形学的思路:对图像平面中被自适应选择点的不规则子集计算出像素值。从而高效渲染出抗锯齿的高分辨率图像。

清奇的思路:类比计算机图形学的思路

图像分割,同样可以视作底层连续实体的占用图,然后从中输出预测标签的矩形网格。

类比计算机图形学的思路,使用细分策略来自适应地选择一组非均匀点,进而计算标签。

PointRend网络架构

mark

图像分割步骤

  • 使用轻量级的分割头,对每个检测到的对象(红框)进行粗略的mask预测。

  • 选择一组点(红色点),用小规模的多层感知器(MLP)为每个点进行独立预测。

  • 对这样的细分算法进行迭代,以从粗到细的方式计算mask。

具体可以分为三个部分:

  • Point Selection(点选择)
  • 逐点 (point-wise) 表示
  • point head(点头):小型神经网络,用于基于逐点特征表示预测标签

1.Point Selection(点选择)

PointRend的核心思想是,在图像平面中自适应地选择预测分割标签的点。

那么这些点主要分布在哪里呢?理论上讲,这些点应该在高频区域分布较广(比如说图像的边缘)。

mark

推断:用于推断的点选择策略受到计算机图形学中自适应细分(adaptive subdivision)这一经典技术的启发。该技术通过计算与其近邻的值显著不同的位置,来高效渲染高分辨率图像(如通过光线追踪);其他位置的值则通过内插已经计算好的输出值来获得(从粗糙网格开始)。

训练:在训练过程中,PointRend 还需要选择点来构建训练 point head 所需的逐点特征。原则上,点选择策略类似于推断过程中使用的细分策略。但是,细分策略使用的顺序步骤对于利用反向传播训练神经网络不那么友好。因此,训练过程使用基于随机采样的非迭代策略。

2.逐点表示

PointRend通过组合低层特征 (fine-grained features) 和高层特征 (coarse prediction),在选定的点上构造逐点特征。

在细粒度特征(fine-grained features)方面,为了让PointRend呈现出精细的分割细节,研究人员为CNN特征图中的每个采样点提取了特征向量。

细粒度特征虽然可以解析细节,但也存在两方面的不足:

  • 不包含特定区域信息,对于实例分割任务,就可能在同一点上预测出不同的标签。
  • 用于细粒度特征的特征映射,可能仅包含相对较低级别的信息。

这就需要粗略分割预测 (coarse prediction) 来进行补充,提供更多全局背景。

这样的粗略预测类似于现有架构的输出。以实例分割为例,coarse prediction可以是Mask R-CNN中 7×7 轻量级mask head的输出。

3.Point Head

对于每个选定点的逐点特征表示,PointRend使用简单的多层感知器进行逐点分割预测。

多层感知器在所有点(所有区域)上共享权重。

并且,由于多层感知器会针对每个点预测分割标签,可以通过特定任务的分割损失进行训练。

3.Point Head

对于每个选定点的逐点特征表示,PointRend使用简单的多层感知器进行逐点分割预测。

多层感知器在所有点(所有区域)上共享权重。

并且,由于多层感知器会针对每个点预测分割标签,可以通过特定任务的分割损失进行训练。

扫码关注公众号,获取最新动态
mark

发布了23 篇原创文章 · 获赞 9 · 访问量 4197

猜你喜欢

转载自blog.csdn.net/qq1225598165/article/details/103649747