参考代码:暂无

1. 概述

导读:这篇文章提出了一种交互式的视频目标分割算法,方法由两个网络组建部分构成:交互式子网络(interaction)和分割子网络(propagation)。交互子网络用于将用户提供的交互信息(涂鸦、bounding box等)转化为前景目标;分割子网络将分割的目标mask在原帧与邻近帧之间传递,实现目标分割。而这两个子网络是组合进行训练的,防止了单独进行训练带来的不稳定情况。此外,在网络改进的基础上还提出了一种multi-round的训练方法,就是在多次训练round中添加交互信息,指导达到想要的效果,也是为实际中多次交互分割进行模拟,期待达到更好的性能。这篇文章的方法在DAVIS 2018数据集上速度与精度方面均超越了先前的分割方法。

文章算法的运行过程(往复地)见下图1所示:

2. 方法设计

这篇文章的算法是基于ResNet-50的编解码结构网络,输入部分使用了RoI Align操作使得网络可以更加关注有效区域,给出的网络结构见下图(a)(b)图所示:

对于其中的decoder模块其结构为:

在实际的运算过程中,训练的时序会前后颠倒,也就是进行往复训练,其中会使用用户的交互信息进行修正。这也是文章指出的使用可信赖的视觉信息来生成效果更好的结果,而这一部分可信赖的信息就是来自于交互子网络部分,文章指出其是通过Feature Aggregation Module进行融合的,从而将交互信息引入到目标分割网络中去。

对于多类分割的情况,文章会首先预测出每个类的分割结果,之后再将这些结果经过soft aggregation融合起来得到最后结果。

2.1 网络细节

交互子网络
交互子网络的输入有6个channel,除了输入的RGB RoI之外还有另外3个通道:前一round的mask输出概率图(其中的值介于0到1之间)、2份代表正负样本区域的二值标注图,从而得到对应的输入数据Xi∈R6∗H∗wX_i\in R^{6*H*w}Xi​∈R6∗H∗w,其中对于第一round(由于没有对应的mask),因而这里的输入概率图中的所有像素全部被置位0.5。最后,得到的输出结果为Yi^∈RH∗W\hat{Y_i}\in R^{H*W}Yi​^​∈RH∗W。

分割子网络
这一部分的分割子网络与交互子网络输入类似,不错这里由6个channel变为了5个channel,除了RGBchannel多出来的为:前一帧的分割mask与前一轮的分割mask,则输入为Xp∈R5∗H∗WX_p\in R^{5*H*W}Xp​∈R5∗H∗W。

Feature Aggregation Module
为了有效利用用户交互的信息,文章针对应的设计了这个模块,它是将交互网络编码器的输出当做是clue或者成为reference,其结构见下图所示:

在上面的结构中分割子网路与交互子网络的特征经过池化、全连接等操作之后可到一个在每个channel上2维的特征,之后经过softmax保证2维度上的值相加为1,之后使用这两维度的值作为权值将之前输入的两个特征做channel-wise的加权和,之后再送入到decoder中去。

Region of Interest
在分割算法中对于小目标与过大的目标处理起来是有难度的,但是知道图像中的RoI的位置这样就好办很多了。在这篇文章中使用了3个clue:用户的交互信息、前一round的mask输出、前一帧的mask输出,从而就可以得到一个box的RoI,之后将其经过双线性插值得到256∗256256*256256∗256的图像送入encoder中。反向映射也参考这部分工作。

2.2 网络训练与数据合成

训练策略
为了更好适应用户在测试过程中多次进行交互,并且对这些交互进行反馈,文章在训练的过程中人为地去模拟了这个过程提出了multi-round的训练策略,在这个策略中将分割与交互子网络联合训练,其运算流程示意图见下图所示:

用户交互信息的合成
对于用户的交互信息这里选用的是涂鸦的形式,是首先抽取目标区域,之后提取这个区域的骨架作为用户的交互信息,之后按照训练的round进行单独处理:

  • 1)first round:使用前景区域作为交互信息的采样区域;
  • 2)other round:使用与GT mask相比较得到的错误正负区域做为采样区域;

3. 实验结果

DAVIS 2018:

消融实验:

《Fast User-Guided Video Object Segmentation by Interaction-and-Propagation Networks》论文笔记相关推荐

  1. 论文笔记之Understanding and Diagnosing Visual Tracking Systems

    Understanding and Diagnosing Visual Tracking Systems 论文链接:http://dwz.cn/6qPeIb 本文的主要思想是为了剖析出一个跟踪算法中到 ...

  2. 《Understanding and Diagnosing Visual Tracking Systems》论文笔记

    本人为目标追踪初入小白,在博客下第一次记录一下自己的论文笔记,如有差错,恳请批评指正!! 论文相关信息:<Understanding and Diagnosing Visual Tracking ...

  3. 论文笔记Understanding and Diagnosing Visual Tracking Systems

    最近在看目标跟踪方面的论文,看到王乃岩博士发的一篇分析跟踪系统的文章,将目标跟踪系统拆分为多个独立的部分进行分析,比较各个部分的效果.本文主要对该论文的重点的一个大致翻译,刚入门,水平有限,如有理解错 ...

  4. 目标跟踪笔记Understanding and Diagnosing Visual Tracking Systems

    Understanding and Diagnosing Visual Tracking Systems 原文链接:https://blog.csdn.net/u010515206/article/d ...

  5. 追踪系统分模块解析(Understanding and Diagnosing Visual Tracking Systems)

    追踪系统分模块解析(Understanding and Diagnosing Visual Tracking Systems) PROJECT http://winsty.net/tracker_di ...

  6. ICCV 2015 《Understanding and Diagnosing Visual Tracking Systems》论文笔记

    目录 写在前面 文章大意 一些benchmark 实验 实验设置 基本模型 数据集 实验1 Featrue Extractor 实验2 Observation Model 实验3 Motion Mod ...

  7. Understanding and Diagnosing Visual Tracking Systems

    文章把一个跟踪器分为几个模块,分别为motion model, feature extractor, observation model, model updater, and ensemble po ...

  8. CVPR 2017 SANet:《SANet: Structure-Aware Network for Visual Tracking》论文笔记

    理解出错之处望不吝指正. 本文模型叫做SANet.作者在论文中提到,CNN模型主要适用于类间判别,对于相似物体的判别能力不强.作者提出使用RNN对目标物体的self-structure进行建模,用于提 ...

  9. ICCV 2017 UCT:《UCT: Learning Unified Convolutional Networks forReal-time Visual Tracking》论文笔记

    理解出错之处望不吝指正. 本文模型叫做UCT.就像论文题目一样,作者提出了一个基于卷积神经网络的end2end的tracking模型.模型的整体结构如下图所示(图中实线代表online trackin ...

  10. CVPR 2018 STRCF:《Learning Spatial-Temporal Regularized Correlation Filters for Visual Tracking》论文笔记

    理解出错之处望不吝指正. 本文提出的模型叫做STRCF. 在DCF中存在边界效应,SRDCF在DCF的基础上中通过加入spatial惩罚项解决了边界效应,但是SRDCF在tracking的过程中要使用 ...

最新文章

  1. PHP artisan
  2. 编码和解码、调制与解调
  3. 什么是空中下载技术?学嵌入式必看!
  4. openwrt dhcp 无法获取ip_电脑的 ip 是怎么来的呢?我又没有配置过
  5. Python入门进阶篇(六)字典的介绍
  6. 计算机网络之网络层:6、IPv6
  7. linux添加svn分支,TortoiseSVN 分支创建与合并
  8. 【广州】openGauss Meetup (12月19日)| 活动预告
  9. 若依前后端分离前端使用Vue3启动教程
  10. Sublime Text 3 Plugin Better!
  11. Spark实现协同过滤CF算法实践
  12. c语言中队列的作用,循环队列的实现(C语言)
  13. 抖音自动清关注服务器,各位有保留抖音自动关注的代码吗
  14. linux中fb0和fb1同时显示数据,Linux frame buffer驱动设计与实现
  15. maven集成tomcat7
  16. 卡尔曼滤波系列——(二)扩展卡尔曼滤波
  17. Internet选项里没有常规选项卡
  18. 用Matplotlib画两张花里胡哨的图
  19. IM群聊消息的已读未读功能在存储空间方面的实现思路探讨
  20. 新手转行学大数据开发难吗?新手学需要注意的6个方面!

热门文章

  1. 富文本编辑vue插件vue-quill-editor
  2. android 按键铺满屏幕,安卓全屏状态下键盘充满屏幕留不出ui控件的解决办法附edittext和键盘的属性...
  3. sharesdk分享qq空间-错误码1001
  4. Taday——文件操纵(1)
  5. CVPR2016 论文快讯:人脸专题
  6. 云适配陈本峰谈前端:移动端浏览器很快就会赶上PC浏览器
  7. 一文带你看懂JAVA IO流,史上最全面的IO教学啦(附送JAVA IO脑图
  8. STM32 IAP 在线升级详解
  9. sd卡照片清除用什么软件可以找回
  10. 陶渊明田园诗的艺术风格