AI学术 | 一键视频“抠图”只差SiamMask代码?
瑞莱智慧RealAI致力于研究和推广安全、可靠、可解释的新一代人工智能,聚焦AI基础技术的自主研发,追踪国内外AI技术领域前沿研究进展,通过本微信公众号不定期分享最新AI技术成果。
-正文-
视觉目标跟踪Visual Object Tracking作为计算机视觉领域的一个重要研究方向,在视频监控、人机交互、无人驾驶等实际场景中应用广泛。随着近年来人工智能热度走高,目标跟踪算法也成为热门的学习方向。
从跟踪对象上来看,目标跟踪包括单目标跟踪和多目标跟踪Multiple Object Tracking(MOT)。 一般,我们常说的目标跟踪是指单目标,本文主要研究的也是单目标跟踪。
其主要任务是在给定某视频序列初始帧的目标大小与位置的情况下,预测后续帧中该目标的大小与位置。
目前,常见的目标追踪方法有两类,相关滤波类方法Correlation Filter(简称CF)和基于卷积神经网络CNN和深度特征的方法。两种方法对比,前者在实时性上更胜一筹,但跟踪精度较差,对快速变形和快速运动情况的跟踪效果不好。后者在跟踪精度上有很大的提升,但实时性能有待提高。
其中,基于全卷积孪生网络的SiamFC 算法是目前最为主流的追踪方法。该方法的网络结构如图1所示。
参考论文:Bertinetto L , Valmadre J , Henriques, João F, et al. Fully-Convolutional Siamese Networks for Object Tracking[J]. 2016.
图1 SiamFC 网络结构图
我们通过训练环节来对上图进行解释。首先在ILSVRC15 (ImageNet Large Scale Visual Recognition Challenge ) 数据集上,选取很多组pair图片作为训练集,如下图给出的图片样例:
图2 训练样本示例图
如图2的左图所示,小图对应于图1中目标模板z(127×127×3),下面的大图对应图1的搜索图区域x(255×255×3),两者都有红色标注的目标框区域图,分别将两个大小不一的目标模板图和待搜索图,送到相同的神经网络φ中,最终从φ中出来127×127×3和255×255×3的目标图和待搜索图,得到了6×6×128和22×22×128的特征图feature map。之后,这两个特征图进行 cross-correlation操作,类似于卷积操作,得到17×17×1的响应图。
进一步理解,6×6×128作为真实帧目标提取的特征图,而22×22×128为待搜索区域的特征图,两者进行卷积,得到17×17×1响应图,响应图的每个像素值就代表了22×22×128搜索图中每个位置与6×6×128目标模板图的相似程度,像素值越高,证明两者越相似。在图1中,x的红色区域和蓝色候选目标区域图(都是127×127×3),分别映射到17×17×1中的红色点和蓝色点。响应图中像素值最大的点映射回搜索图就是目标框的中心点。
通常来讲,目标跟踪面临几大难点:外观变形、光照变化、背景相似等外界物理干扰,以及快速运动、运动模糊下跟踪精度与实时性之间的平衡,同时还缺乏训练样本。这些问题让tracking变得很难。
而在今年,CVPR出了一篇亮眼的视觉跟踪方面的论文,由中科院王强博士提出对视觉目标跟踪(VOT)和视频目标分割(VOS)的统一框架SiamMask,开源快速同时可进行目标跟踪与分割算法,在跟踪任务上可达到最优性能。
参考论文:Wang Q , Zhang L , Bertinetto L , et al. Fast Online Object Tracking and Segmentation: A Unifying Approach[J]. 2018.
以往大多数目标跟踪得到的结果是目标的包围框,在尺度变化、遮挡的一些干扰情况下跟踪失效。而SiamMask代码可将跟踪目标分割,并“实时”给出目标的像素级标注。
图3 目标跟踪效果对比
图3中,左侧是初始化的操作,在视频第一帧给出目标的包围框,右侧为普通的跟踪算法计算得到估计的包围框(红色)和SiamMask估计的目标分割mask(绿色)。不难发现,SiamMask下的跟踪标注几乎没有偏差,即便存在遮挡的情况。
这套SiamMask代码在SiamFC跟踪算法的基础上进行了改进,图4 为SiamMask 网络结构图。
图4-1 SiamMask 网络结构图
图4-1最左侧上图为目标图像(127×127×3),下面的大图为待搜索图像(255×255×3),即搜索目标位置视频中的一帧,经过神经网络,得到了15×15×256和31×31×256的特征图feature map,之后经过卷积操作,生成Row(response of a candidate window,候选窗口响应),网络后面有三个head。预测box(目标位置)的head和预测响应score(目标出现概率)的head在SiamFC算法中已经存在,SiamMask算法增加预测目标mask(目标二值掩码)的head。
图4-2 SiamMask 网络结构图
另外也可以直接去掉预测box的head,提高计算速度,包围框也可以通过mask计算得到。网络结构如图4-2所示。
代码地址(可自行查看):
https://github.com/foolwood/SiamMask
视频展示:
视频中展示了 SiamMask 的效果,只需滑动鼠标选择目标的包围框,就可以同时实现目标的跟踪与分割。这种像素级标注应用到视频编辑中,即便是添加特效的情况下也可以不覆盖跟踪目标,通过分割跟踪目标轻松实现“抠图”。
SiamMask已来,一键视频“抠图”或许成为可能。想想春节期间浙江卫视和北京卫视如果利用这套算法,让某吴姓演员从节目中消失完全不费吹灰之力,这对后期而言简直就是福音般的存在啊!
(本文由瑞莱智慧RealAI整理撰写,如需转载请联系邮箱contact@realai.ai)
推荐阅读
☞ 瑞莱智慧喜获“中关村前沿科技大赛”人工智能领域TOP10
☞ “看图说话”(Image Caption)——如何生成多样化的图片描述?
☞ 特朗普签署启动美国AI计划,加速与中国、加拿大竞争,争夺全球领导权
明星创业团队招人啦!
RealAI诚聘各岗位优秀人才加入,共同推动新一代人工智能发展落地。
简历投递邮箱:hr@realai.ai
邮件标题:应聘岗位+工作年限 +最高学历+姓名。
岗位详情见
https://realai.ai/recruit.html#about
(点击“阅读原文”查看详情)