DeepSnake—浙大提出实例分割新方法,准确高速获取物体边缘轮廓

DeepSnake—浙大提出实例分割新方法,准确高速获取物体边缘轮廓

From: ZJU编译: T.R.

实例分割是计算机视觉领域重要任务,广泛应用于自动驾驶、视频分析、图像操作和机器人抓取等领域。但目前大多数方法都是基于逐像素的分割计算,这种类方法不仅会受到bbox不精确的影响,同时还会在后处理过程中耗费庞大的计算量。而基于轮廓的实例分割方法不会受到bbox的限制,并且含有更少的参数量,但已有基于轮廓方法无法完整地探索轮廓的空间拓扑结构,并且大多基于人工优化函数来进行计算。

为了充分探索基于轮廓的实例分割方法,来自浙江大学的研究人员对snake方法进行了有效的改进,通过引入圆卷积结构处理输入轮廓顶点,并基于学习到的特征得到每个顶点需要调整的偏移量以尽可能地准确包围实例,而后通过迭代得到更为精确的轮廓结果。实验表明这种方法可以更加迅速准确地进行实例分割。

DeepSnake—浙大提出实例分割新方法,准确高速获取物体边缘轮廓

在给定初始轮廓的前提下算法抽取每个顶点的图像特征,由于轮廓可视为一个圆形图结构,可以使用圆卷积来获取轮廓特征。上图中的蓝色、黄色和绿色节点分别表示了输入特征、卷积核以及输出特征。最终回归出每个顶点处的偏移量从而调整轮廓逼近目标的边界。

DeepSnake 的基本思想

DeepSnake的主要功能是通过深度学习给出输入初始轮廓顶点需要调整的偏移量,以得到更为准确的实例分割结果。在对基于轮廓的实例分割方法研究过程中,发现物体的轮廓其实是一个圆形的图结构,其中每个顶点都有两条边连接相邻的顶点,这意味着可以利用一维卷积来对顶点特征进行学习。由于闭合的轮廓可以视为周期性结构,于是研究人员引入了圆卷积来处理。与通常的图卷积方法不同,圆卷积核不仅可以编码每个顶点的特征还能编码临近顶点间的关系,具有更强的表达能力。

传统的snake算法将轮廓的顶点坐标视为一系列变量,并优化这些变量的能量函数来迭代顶点坐标。通过有效的能量函数设计,理论上可以将轮廓优化到目标边界上。但由于基于手工设计的能量函数一般都是非凸的,轮廓的优化过程易于陷入居于最优解。与之不同的是,DeepSnake则直接从数据中学习出目标的边界轮廓。对于包含N个顶点的轮廓{xi | i=1,…,N},首先为每个顶点建立特征矢量。这一特征矢量为fi=[F(xi); x’i ],其中前半部为基于CNN从输入图像上学习到的特征图,而后一个则是通过变换后得到的旋转不变坐标。

在得到每个点的特征矢量后,DeepSnake便利用圆卷积进行特征学习,下图显示了圆卷积的基本过程。

DeepSnake—浙大提出实例分割新方法,准确高速获取物体边缘轮廓

蓝色顶点通过黄色卷积核的作用得到了绿色的特征输出,输出特征与输入顶点特征的长度相同。在实验中圆卷积的核大小被设置为9.

轮廓上的特征可以被视为一维离散信号并可利用标准卷积进行处理。为了避免破坏轮廓的拓扑结构,研究人员将轮廓上的特征视为周期性信号:

DeepSnake—浙大提出实例分割新方法,准确高速获取物体边缘轮廓

并提出了下面的圆卷积方法来学习特征,其中的k为圆核函数:

DeepSnake—浙大提出实例分割新方法,准确高速获取物体边缘轮廓

与常见的卷积算法类似,这种圆卷积方法可以方便地提取顶点特征并集成到相应的网络结构中。在圆卷积进行特征学习后,DeepSnake利用1x1卷积层对每个顶点的输出特征进行处理,为每个顶点预测出与目标轮廓间的偏移量,这一偏移量将用于调整轮廓形状不断逼近目标。

这种算法比一般的图卷积方法可以更好的探索轮廓的圆形结构特征,更重要的是他具有目标级别的结构预测能力,特别是对于那些初始化时远离目标位于背景上的顶点来说,这种方法可以更为有效的预测出需要调整的偏移量。而标准的CNN则由于初始化顶点归属物体的不确定性,难以预测出较为准确的偏移量。

DeepSnake—浙大提出实例分割新方法,准确高速获取物体边缘轮廓

上图显示了DeepSnake的基本网络架构,其中包含了三个重要的部分。第一部分为主干部分,包含了8个圆卷积层和相应的残差连接;第二部分为融合部分,融合了多尺度的轮廓信息,随后与主干信息叠加送入到最后的预测部分;第三部分预测模块由1x1卷积构成,用于预测逐顶点需要调整的偏移量。

完整的实例分割流程

在拥有了可以调整顶点位置,预测偏移量的DeepSnake算法后就可以构建出完整的实例分割框架了。下图展示了从输入图像、轮廓初始化到最终预测偏移量和计算轮廓结果的过程。

DeepSnake—浙大提出实例分割新方法,准确高速获取物体边缘轮廓

首先基于目标检测(CenterNet)得到的bbox,将每个边的中点提取出来构建出一个方块形的轮廓。而后第一次利用DeepSnake来计算这四个顶点需要的偏移量以获取图像中目标的极值点(最左,最上,最下,最右边点);在实际计算中,研究人员将四个中点构成的方块型轮廓上采样为40个点,以便涵盖更为丰富的上下文信息。

在获得了4极值点后也就得到了新的bbox,随后在每个点依照bbox的方向向两边生成1/4边长的线段,如果在生成过程中遇到bbox的顶点就停止。依次连接这四个线段的八个端点就可以获得一个八边形轮廓。

此时通过在八边形轮廓上进行采样就可以得到包含N个点的目标初始轮廓(N=128), DeepSnake将这N个点构成的轮廓作为输入预测出需要调整的偏移量。然而一次性预测出准确的偏移量还存在一定的困难,研究人员将迭代地进行三次预测以不断提高预测精度。通过这种方式可以不断地提高目标边缘的预测精度并解决目标检测器带来的初始定位误差。

实验结果

研究人员最终在Cityscape、Kins和Sdb上进行了实验,并对初始网络结果、初始化轮廓方法和圆卷积进行了消融性分析。下表显示了三个部分对于最终结果的贡献情况。网络架构中的全局融合模块带来了1.4AP的提升;其中通过极值点的方法初始化轮廓不仅解决了目标检测误差,同时也有效处理了过于靠近的物体,带来了1.3的AP提升;

DeepSnake—浙大提出实例分割新方法,准确高速获取物体边缘轮廓

而后圆卷积的引入相比于图卷积提升了0.8AP,并且在迭代中两个迭代就超过了图卷积三个迭代0.6AP,显示了圆卷积强大的形变适应能力。下图中也显示了圆卷积对于物体边界的变形适应能力。

DeepSnake—浙大提出实例分割新方法,准确高速获取物体边缘轮廓DeepSnake—浙大提出实例分割新方法,准确高速获取物体边缘轮廓

与各种先进的算法相比,基于DeepSnake的分割算法显示出了良好的性能优势:

DeepSnake—浙大提出实例分割新方法,准确高速获取物体边缘轮廓

在复杂的Cityscape、Kins和Sdb数据集上都得到了十分优秀的实例分割结果:

DeepSnake—浙大提出实例分割新方法,准确高速获取物体边缘轮廓
DeepSnake—浙大提出实例分割新方法,准确高速获取物体边缘轮廓

如果想要了解这一算法的细节实现和圆卷积的细节,请参看论文:

https://arxiv.org/pdf/2001.01629v1.pdf

不久之后还有代码可以配合学习:

https://github.com/zju3dv/snake/

ref:

https://github.com/zju3dv

http://www.cad.zju.edu.cn/zhongwen.html

http://www.zjucvg.net/publication.html

http://www.cad.zju.edu.cn/home/xzhou/

DeepSnake—浙大提出实例分割新方法,准确高速获取物体边缘轮廓

关于我门

将门是一家以专注于

发掘、加速及投资技术驱动型创业公司的新型创投机构,旗下涵盖将门创新服务、将门技术社群以及将门创投基金。将门成立于2015年底,创始团队由微软创投在中国的创始团队原班人马构建而成,曾为微软优选和深度孵化了126家创新的技术型创业公司。

将门创新服务专注于使创新的技术落地于真正的应用场景,激活和实现全新的商业价值,服务于行业领先企业和技术创新型创业公司。

将门技术社群专注于帮助技术创新型的创业公司提供来自产、学、研、创领域的核心技术专家的技术分享和学习内容,使创新成为持续的核心竞争力。

将门创投基金专注于投资通过技术创新激活商业场景,实现商业价值的初创企业,关注技术领域包括机器智能、物联网、自然人机交互、企业计算。在近四年的时间里,将门创投基金已经投资了包括量化派、码隆科技、禾赛科技、宽拓科技、杉数科技、迪英加科技等数十家具有高成长潜力的技术型创业公司。

如果您是技术领域的初创企业,不仅想获得投资,还希望获得一系列持续性、有价值的投后服务,欢迎发送或者推荐项目给我“门”: [email protected]

DeepSnake—浙大提出实例分割新方法,准确高速获取物体边缘轮廓


分享到:


相關文章: