【VIS】Video Instance Segmentation

2023-10-08 22:49

本文主要是介绍【VIS】Video Instance Segmentation,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

论文地址:http://openaccess.thecvf.com/content_ICCV_2019/papers/Yang_Video_Instance_Segmentation_ICCV_2019_paper.pdf

代码地址:https://github.com/ youtubevos/MaskTrackRCNN
新数据集:YouTube-VIS,地址:https:// youtube-vos.org/dataset/vis

字节跳动的大佬又开辟了新的task:Video Instance Segmentation,但今天看到已经算晚的了,2019年都已经办过比赛了。今天读一读这篇论文。

按照作者的定义,VIS是一个 aims at simultaneous detection, segmentation and tracking of object instances in videos.可算是把所有能用的方法都融合的很难的task了。

Problem Definition

这个任务的目标就是,把视频帧的每一个实例分割出来。与VOS不同的是,VOS不需要知道分割前景的label,VIS不仅要连续追踪,分割,而且要做到实例分割,那么就有一个难点:有的实例不是第一帧会出现的,这是与VOS不同的。

Evaluation Metrics

作者借用了实例分割使用的AP和AR两个指标,迁移到本任务里。

AP is defined as the area under the precision-recall curve. The confidence score is used to plot the curve. AP is averaged over multiple intersection-over-union (IoU) thresholds.

AR is defined as the maximum recall given some fixed number of segmented instances per video.

但是本任务IOU计算和image instance segmentation不同,计算如下,T为某一个视频的总帧数,m是binary segmentation mask.

也就是说,第一帧的时候,后面的都为0,只算第一帧的IOU,第二帧的时候,算第一帧和第二帧,其他为0,以此类推。

作者任务可以达到If the algorithm detects object masks successfully, but fails to track the objects across frames, it will get a low IoU这样的效果。

MaskTrack R-CNN

介绍一下论文作者用的网络,简单来说就是Mask-RCNN再加一个分支叫“Track Head”。

整个网络也是two-stage的,first stage就是对每一帧都产生各自的一系列object Bbox。

在Bbox Head 和 Mask Head 计算的同时,加一个 Track Head(2个全连接层),用于对每一个候选框分配一个instance label。

假设已经计算出了前一帧有N个instance,那么当前帧的候选框所属的label要么属于这N个,要么属于一个新的label。所以把这个当作N+1的分类问题,可以计算一个label n被分配给候选框i的概率:

这是一个多项式逻辑回归。可以看出,在算fi和fn的内积,那么问题来了,fn,fj,j∈[1,N]是哪来的?

其中fi是输入Track Head的当前帧的RoI Align的feature,而其他是前一帧存下来的feature(Memory)。

这里用一个CE Loss来约束Track Head,,y_i是对应实例label。

如果当前帧的候选框i对应的label属于前一帧的N个实例中的一个,那么Memory里的feature会更新;如果是一个新的label,那么Memory里也会添加一个新的feature。

训练的时候,随机挑选一对frames,一个做reference,一个做query。对reference只提取GT里instance region里的feature存到memory里,query frame会先在first stage里选出positive candidate bbox,在对它分配label。作者选择IOU 和GT bbox overlap超过0.7的做为positive。

整个网络的LOSS是: 

但最后,所有cues整合,才能确认最终的对应的instance的分割,也即分配给每个bbox的label的score如下,本文是做一个后处理:

p_i是刚才的概率,s_i是置信度,b_i是bbox,c_i是class。这个方程只在测试时应用,不对训练做贡献。

作者发现,IOU和class consistency比较重要。而置信度只是轻微提升效果。

值得一提的是,Track Head只训了20个epoch,整个网络的处理速度是20fps。

指标的话好像没有那么强,现在看VIS数据集的比赛最高已经mAP0.446 了,哎,大神们动手都太快了。

2020年01月09日

这篇关于【VIS】Video Instance Segmentation的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/168517

相关文章

Apple quietly slips WebRTC audio, video into Safari's WebKit spec

转自:http://www.zdnet.com/article/apple-quietly-slips-webrtc-audio-video-into-safaris-webkit-spec/?from=timeline&isappinstalled=0 http://www.zdnet.com/article/apple-quietly-slips-webrtc-audio-video-

OpenStack实例操作选项解释:启动和停止instance实例

关于启动和停止OpenStack实例 如果你想要启动和停止OpenStack实例时,有四种方法可以考虑。 管理员可以暂停、挂起、搁置、停止OpenStack 的计算实例。但是这些方法之间有什么不同之处? 目录 关于启动和停止OpenStack实例1.暂停和取消暂停实例2.挂起和恢复实例3.搁置(废弃)实例和取消废弃实例4.停止(删除)实例 1.暂停和取消暂停实例

MonoHuman: Animatable Human Neural Field from Monocular Video 翻译

MonoHuman:来自单目视频的可动画人类神经场 摘要。利用自由视图控制来动画化虚拟化身对于诸如虚拟现实和数字娱乐之类的各种应用来说是至关重要的。已有的研究试图利用神经辐射场(NeRF)的表征能力从单目视频中重建人体。最近的工作提出将变形网络移植到NeRF中,以进一步模拟人类神经场的动力学,从而动画化逼真的人类运动。然而,这种流水线要么依赖于姿态相关的表示,要么由于帧无关的优化而缺乏运动一致性

论文精读-Supervised Raw Video Denoising with a Benchmark Dataset on Dynamic Scenes

论文精读-Supervised Raw Video Denoising with a Benchmark Dataset on Dynamic Scenes 优势 1、构建了一个用于监督原始视频去噪的基准数据集。为了多次捕捉瞬间,我们手动为对象s创建运动。在高ISO模式下捕获每一时刻的噪声帧,并通过对多个噪声帧进行平均得到相应的干净帧。 2、有效的原始视频去噪网络(RViDeNet),通过探

HumanNeRF:Free-viewpoint Rendering of Moving People from Monocular Video 翻译

HumanNeRF:单目视频中运动人物的自由视点绘制 引言。我们介绍了一种自由视点渲染方法- HumanNeRF -它适用于一个给定的单眼视频ofa人类执行复杂的身体运动,例如,从YouTube的视频。我们的方法可以在任何帧暂停视频,并从任意新的摄像机视点或甚至针对该特定帧和身体姿势的完整360度摄像机路径渲染主体。这项任务特别具有挑战性,因为它需要合成身体的照片级真实感细节,如从输入视频中可能

Error: label vector and instance matrix must be double的解决方法

在使用uci下载的数据时,建模时出现这个错误的解决方法 首先现在UCI上面下载数据 然后右键另存为就行了。这样我们就从UCI里面下载到了训练数据 在matlab 点 导入数据,数据类型要记得选第二个, 如果选择最后一个table就会出现这个问题 最后附上代码 %%之前先import wine.date IMPORTED DATA 设为Numeric Matrix (数值矩

Learning Temporal Regularity in Video Sequences——视频序列的时间规则性学习

Learning Temporal Regularity in Video Sequences CVPR2016 无监督视频异常事件检测早期工作 摘要 由于对“有意义”的定义不明确以及场景混乱,因此在较长的视频序列中感知有意义的活动是一个具有挑战性的问题。我们通过在非常有限的监督下使用多种来源学习常规运动模式的生成模型(称为规律性)来解决此问题。体来说,我们提出了两种基于自动编码器的方法,以

Segmentation简记-Multi-stream CNN based Video Semantic Segmentation for Automated Driving

创新点 1.RFCN & MSFCN 总结 网络结构如图所示。输入视频得到图像分割结果。 简单粗暴

Attribute Recognition简记1-Video-Based Pedestrian Attribute Recognition

创新点 1.行人属性库 2.行人属性识别的RNN框架及其池化策略 总结 先看看行人属性识别RNN结构: backbone是ResNet50,输出是每一帧的空间特征。这组特征被送到两个分支,分别是空间池化和时间建模。最后两种特征拼接。然后分类(FC)。 LSTM关注帧间变化。受cvpr《Recurrent Convolutional Network for Video-Based Person

Segmentation简记5-AuxNet: Auxiliary tasks enhanced Semantic Segmentation for Automated Driving

创新点 1.分割网络为主任务,深度估计网络为辅任务 2.loss的设计 总结如图所示 网络结构如图所示 其实很容易理解。 backbone是基于ResNet50 分割网络是基于FCN8 深度估计网络与分割网络类似,最后一层是回归深度层。 最有意思的是两种任务的loss的合并。 分割的loss很常见:cross entropy 深度loss:mean absolute error 算法一: