Video Object Segmentation[VOS][视频目标分割]

这篇具有很好参考价值的文章主要介绍了Video Object Segmentation[VOS][视频目标分割]。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

点击这里跳过前言
前言: 本文写作的动机,是笔者最近开始接触video处理,希望能从社区中找到快速入门的文档,但是翻来覆去,对于VOS任务的文档都很少,质量也不高,因此笔者在阅读过VOS综述和文章后,写下这篇VOS的review。希望能够帮助读者快速入门VOS以及Video Processing相关领域。

不定期更新最新工作。


VOS主要分成三种路径

  • 无监督方法
  • 有监督方法
  • 半监督方法[Semi-Segmentation]

目前,主流的深度学习工作都集中在Semi-Segmentation。半监督学习常见的数据集为DAVIS,这种数据集中的每一个视频的第一帧有annotation,模型需要在剩下的帧中推理出mask。
本文就在DAVIS数据集上介绍各种常见的Semi-VOS方法。



下面是文章的正文
本文章只介绍Semi-SEG的方法,对于Semi-SEG,主要分为以下4种方法

  • based on Feature matching
    这种方法使用第一帧有annotation的img-label对微调一个网络,并在剩下的视频帧中分割出foreground。
    这种方法忽略掉了frame之间的相关性,当作小样本[或者one-shot]的Image-segment任务。

  • based on Long-term Feature-matching
    相比based on Feature matching而言,虽然也是一种matching的方法,但是这种方法在预测当前帧t+1的mask时,采用不同的方法融合前面几帧或者所有帧的信息。

  • based on Optical-Flow
    使用t+1和t帧的光流信息,预测t+1帧的mask

  • based on Mask Propagation
    这种方法也是使用之前帧的mask信息,但是区别于第二种based on Long-term infromation方法,第二种方法是将之前帧的信息融合成为一个feature,使用该feature给mask预测提供指导性的信息。但是Mask Propagation的任务基于一个assumption: t和t+1的mask相差应该不大,只需要将t帧的mask经过一定的修正就可以得到t+1帧的mask。


本文按以下目录组织。

1. based on Feature matching[基于特征匹配]

一篇经典论文是One-Shot Video Object Segmentation。属于典型的Feature matching的方法。在介绍的同时,以这篇论文为例,什么是online,什么是offline。

该工作首先在ImageNet上训练一个模型,然后再在DAVIS数据集上进行fine-tuning,前面这两步都是offline的,也就是,在用户使用该网络的时候,不需要再进行上述训练。

在推理阶段,接受一个video sequence,第一帧是有annotation的。使用第一帧online地fine-tuning网络,得到一个适应于当前推理任务的网络,再用该网络对该video的后续frame进行推理。”One-Shot”只使用第一帧的标注数据来微调网络,然后在剩余的frames上inference。

该方法并不考虑视频帧之间的关系,简单地将每一帧看作独立的test data来进行推理。
video object segmentation,Computer Vision Notebook,音视频,人工智能,python3.11,python,ai

Workflow of OSVOS.

video object segmentation,Computer Vision Notebook,音视频,人工智能,python3.11,python,ai

Pipeline of OSVOS.

Details of the model:
模型选用FCN模型,并且设计为了两支,上面的Foreground Branch用来就是按照上述方法来预测前景,Contour Branch是使用其他数据集[边缘检测数据集]来offline训练的一个边缘检测的模型。最终上面的一张图得到了foreground,下面一张图得到了edge of each frame,两张图一起投票决定哪些pixel属于最终的segmentation image。

论文连接如下

https://arxiv.org/pdf/1611.05198.pdf

ADVANTAGE & disadvantage:

优点就是这种detect的方法不考虑帧之间的连续性,因此能够抗拒运动变化较大的物体。但是对于外形改变[跳舞的人]/相似物体误检无法抗拒。

2. based on Long-term feature-matching[基于长距离特征匹配]

这种方法,相比1.x的based on Feature matching而言,虽然也是一种matching的方法,但是这种方法在预测当前帧t+1的mask时,要融合前面几帧或者所有帧的信息,这种融合方式和3.x的mask Propagation也有区别,并不是将上一帧的mask作为下一帧的rough mask来修正[或者作为一种guide],而是直接将其编码成一种深层信息来给当前帧的预测使用。

2.1 Space-Time Memory

许多人认为这也是一篇mask-Propagation[见本文4.x]的工作。但是实际上这篇工作并不是将Mask给propagation了。而是将previous frames的特征存储到space-time memory,并使用当前帧的信息进行查询。将VOS工作变成了query问题。之前帧的mask并没有被propagation[传播]起来,而是作为了一种融合的feature,用来给当前frame进行match。

该工作的motivation是,在分割当前帧时,视频中前序帧中的信息对current frame的分割的影响,希望能够将之前分割好的帧的信息用来指导当前帧的分割。

Video Object Segmentation using Space-Time Memory Networks,该篇工作如下所述

该模型的pipeline如下图。左边用来融合前序帧的信息,右边用来融合当前帧的RGB图像和左边得到的feature。
其中memory部分的ENCm是用来处理previous frame的。input为一个frame和一个mask,编码成一个Key和一个value。key和value一起送入Space-time Memory Read模块,ENCq模块用来编码current frame,编码的结果为一个Key和一个Value,也送入Space-time Memory Read模块。
video object segmentation,Computer Vision Notebook,音视频,人工智能,python3.11,python,ai

Pipeline of Space-Time Memory.

Space-time Memory Read模块接受两个Key和两个value。模型的detail如下图所示。首先K_q和K_m做一个注意力机制[multiple+softmax],将得到的feature map作为spatial-attention weight加到V_m身上。并和V_q拼接到一起,通过Read模块后输出到Decoder中去。

因此两个Key只是用来提供注意力权重,最终还是V_q和V_m[被注意力过后]相加后送入到Decoder。这种方法很好地利用到了之前已经分割出的mask。
video object segmentation,Computer Vision Notebook,音视频,人工智能,python3.11,python,ai

Architucture of Space-time Memory Read.

2.2 Space-Time Variants

这是2.1工作的变体,文章叫做__Efficient Regional Memory Network for Video Object Segmentation

__。该文章在2.1的基础上进行了两个方面的创新。

  • 在3.2的基础上加入了光流[见Section 3.x]。
  • 2.1的工作是Global2Global的算法,这种算法可能会将将外形相似的物体检测出来,比如我们想track一下CAR1,但是可能track到CAR2上,因此提出了一种Local2Local的方法。这两种的区别如下图所示。

video object segmentation,Computer Vision Notebook,音视频,人工智能,python3.11,python,ai

Difference between G2G & L2L.
该工作的pipeline如图所示,在MemoryEncoder上,不是直接编码出Keys和Values,而是编码出带有原图Attention的feature map,和原图相乘后得到Key和Value,再送入Memory Reader中。同样的,加入FlowNet。

再来看中间一支的光流算法,通过光流算法以后得到光流图,光流图和上一帧的Mask一起送入编码,得到了在当前帧上的Attention的feature map。和当前帧相乘以后得到的feature map再送入Memory中来查询。

其实这篇工作相比于2.1最大的贡献就是提供了一种local2local的attention机制,对于Memory frame的attention直接使用之前帧编码出attention weight,对于current frame的attention则是通过Optical Flow和上一帧的mask一起编码出attention weight。

video object segmentation,Computer Vision Notebook,音视频,人工智能,python3.11,python,ai

Pipeline of RMNet.

3. based on Optical Flow[基于光流]

该方法不是特别流行,但是经常在其他的方法中配合使用。

为不影响行文,Optical Flow的介绍放在本文最后

frame t+1和frame t的光流图其实就揭示了所有像素点在t和t+1之间是如何流动的,如果已经知道了frame t的mask,那么结合光流图,就可以指导frame t+1的mask是什么了,这种方法的代表作品为_

FusionSeg: Learning to combine motion and appearance for fully automatic
segmentation of generic objects in video

Motion Branch输入的optical flow image是光流图

video object segmentation,Computer Vision Notebook,音视频,人工智能,python3.11,python,ai

Pipeline of FusionSeg.
在其他的方法中,也大量使用到了Optical Flow,有的是用来作为feature information,有的是用来作为local attention机制。

4. based on Mask-Propagation[基于掩膜引导]

4.1 MaskTrack

ABSTRACT: 将seg任务转换成了一个estimate任务,t时刻预测得到的mask作为t+1时刻的粗糙mask,模型能够从粗糙的mask和当前的image中学会如何估计出当前帧的精确的mask。

在推理阶段,首先在线微调网络,将第一帧图像通过各种数据增广策略[主要起作用的是仿射变换和刚性变换,主要变换的对象是mask,这样就可以模拟出一个粗糙的mask,使用粗糙的mask和img来微调网络,使网络能够学习到如何根据RGB图像和粗糙的mask得到精确的mask]

真正开始推理的时候,就是offline的,将当前的RGB和上一帧的mask合成四通道,输入到网络中,得到当前帧的estimate mask[其实也就是准确的mask]

该方法还是online+offline。

video object segmentation,Computer Vision Notebook,音视频,人工智能,python3.11,python,ai

Pipeline of MaskTrack.

4.2 Reference-Guided Mask Propagation

该工作名为__Fast Video Object Segmentation by Reference-Guided Mask Propagation__。

该模型pipeline如下所示。在预测当前帧时,将当前帧的RGB和之前某一帧的mask拼接成四通道feature,在上半支输入。将第一帧的RGB和frame拼接起来输入到下半支。这样充分利用到了Mask Propagation[某一帧的mask]和Reference-Guided[第一帧的RFB和mask]

video object segmentation,Computer Vision Notebook,音视频,人工智能,python3.11,python,ai

Pipeline of CFBI.

论文连接为
https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=8578868

4.3 Fore&back GROUND Integration

Collaborative Video Object Segmentation by Foreground-Background Integration,这篇文章在总体的设计上和4.x中的其他文章一致,在这里也是用第一帧和上一帧的mask作mask Propagation,只是这篇文章在网络设计上更加优秀,提出了background embedding。并且在pixel-level embedding的之外,提出了instance-level embedding,作为一种attention机制来辅助pixel embedding。
video object segmentation,Computer Vision Notebook,音视频,人工智能,python3.11,python,ai

5. Appendix[Intro of Optim Flow]

在介绍下面这种方法之前,先要理解一下什么是Optimal Flow[光流],光流就是pixel的流动。一般用一张光流估计图来表示两个相邻帧之间的Optimal Flow,这张光流图一般尺寸为[2,height,width],是一个双通道的图,其中每一个pixel的两个通道分别代表该像素点的x方向偏移量和y方向偏移量。光流估计有许多传统方法,也有深度学习的方法。介绍一下一个基础的FlowNet[based on CNN]。
video object segmentation,Computer Vision Notebook,音视频,人工智能,python3.11,python,ai

Pipeline of FlowNetSimple.

上面这张图将两个相邻的frame在输入前concatenate到一起,然后送入全连接CNN网络,解码后得到输出的光流图

下面这张图方法差不多,但是是在高维的feature map上进行concatenate,解码后得到光流图。

video object segmentation,Computer Vision Notebook,音视频,人工智能,python3.11,python,ai

Pipeline of FlowNetCorr.

 
 
 
 

**Copyright@LiuThree**文章来源地址https://www.toymoban.com/news/detail-848897.html

到了这里,关于Video Object Segmentation[VOS][视频目标分割]的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 小目标分割论文阅读TPAMI-《Small-Object Sensitive Segmentation Using Across Feature Map Attention》

    paper:Small-Object Sensitive Segmentation Using Across Feature Map Attention code:https://github.com/ShengtianSang/AFMA 要解决的问题 :小目标分割困难——图像分割领域中,常采用卷积和池化等操作来捕获图像中的高级语义特征,但同时降低了图像/特征的分辨率,造成图像中的一些小对象(小目标)信

    2024年02月10日
    浏览(42)
  • 2023-一种无监督目标检测和实例分割方法【Cut and Learn for Unsupervised Object Detection and Instance Segmentation】

    Facebook 目标检测和分割依赖海量数据的标注,模型训练耗时最大的是数据采集和标注过程,无监督学习在目标检测和分割中的应用较少。 这篇文章提出提出了Cut-and-LEaRn(CutLER),一种用于训练无监督对象检测和分割模型的简单方法。利用自监督模型的特性在没有监督的情况

    2024年02月06日
    浏览(51)
  • 【深度学习 video detect】Towards High Performance Video Object Detection for Mobiles

    尽管在桌面GPU上取得了视频目标检测的最近成功,但其架构对于移动设备来说仍然过于沉重。目前尚不清楚在非常有限的计算资源下,稀疏特征传播和多帧特征聚合的关键原则是否适用。在本文中,我们提出了一种适用于移动设备的轻量级视频目标检测网络架构。我们在稀疏

    2024年02月13日
    浏览(46)
  • 论文阅读:YOLOV: Making Still Image Object Detectors Great at Video Object Detection

    发表时间:2023年3月5日 论文地址:https://arxiv.org/abs/2208.09686 项目地址:https://github.com/YuHengsss/YOLOV 视频物体检测(VID)具有挑战性,因为物体外观的高度变化以及一些帧的不同恶化。有利的信息是,与静止图像相比在视频的某一帧中检测,可以从其他帧中获得支持。因此,如

    2024年02月01日
    浏览(37)
  • Html代替<iframe>标签的三种方法<object>, <embed>和<video>

    某平台对 iframe 标签做了些许限制但是前端代码有bug导致提交不了代码, 最开始想着是不是能够在本地替换 js 文件从而绕过bug 简单搜索后找到了 chrome浏览器F12调式,修改替换js文件这篇博客, 简单试了下虽然能替换成功但是效果不理想, 改不了平台就只能适应平台了, 反手就改

    2024年02月15日
    浏览(64)
  • Object Class Aware Video Anomaly Detection through Image Translation 论文阅读

    文章信息: 原文链接:https://arxiv.org/abs/2205.01706 源代码:无 发表于:CRV 2022 半监督视频异常检测(VAD)方法将异常检测任务表述为对学习到的正常模式的偏离进行检测。 该领域中的先前工作(基于重建或预测的方法)存在两个缺点 : 1)它们专注于低级特征,特别是整体方

    2024年01月23日
    浏览(43)
  • 论文阅读 (88):Adversarial Examples for Semantic Segmentation and Object Detection

    题目 :用于语义分割和目标检测的对抗样本 核心点 :将对抗性样本的概念扩展到语义分割和对象检测,并提出 稠密对抗生成算法 (Dense adversary generation, DAG)。 引用 : 令 X mathbf{X} X 表示包含 N N N 个识别目标 T = { t 1 , t 2 , … , t N } mathcal{T}={t_1,t_2,dots,t_N} T = { t 1 ​ , t 2 ​

    2024年02月01日
    浏览(54)
  • 最强视频无损放大工具 HitPaw Video Enhancer 视频修复增强工具和Topaz Video Al对比

    最强视频无损放大工具 HitPaw Video Enhancer 视频修复增强工具 由 心语家园(https://www.xinyucn.cc/)独家或原创发布,你可通过右上角“私信本站”联系我们。 如果你网上搜索视频无损放大工具,找到的一定是Topaz Video Al。但是我要推荐的还是HitPaw Video Enhancer,为何,因为Topaz Vi

    2024年02月05日
    浏览(133)
  • uniapp视频video

    播放暂停视频 不允许快进,可以后退 视频后退不会影响最高观看时长,例如看了10分钟,后退5分钟,观看时长依然是600秒 监听退出记录观看时间,下次进来接着看 视频看完积分 自定义视频是否有倍速

    2024年02月11日
    浏览(38)
  • 实现video视频缓存

    要实现视频被播放过后本地有缓存,下次播放无需网络即可播放,你可以利用浏览器的本地存储功能(如localStorage或IndexedDB)来实现。 你可以在视频播放结束时,将视频的URL以及相关信息存储在本地存储中。然后,在下次需要播放视频时,首先检查本地存储中是否存在该视频

    2024年03月09日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包