Learning Video Salient Object Detection Progressively from Unlabeled Videos笔记总结

news/2024/7/10 0:38:54 标签: 目标检测, 人工智能, 计算机视觉

由于视频显著性检测的带有标签的视频数据集是比较困难的,因此本文提出了一种不需要标签数据的VSOD方法。

一、摘要

那么如何去实现无标签数据的视频显著性检测呢?

本文想到一个方法,即渐进式的,先定位显著对象后分割显著对象。
而定位显著对象我们可以在SOD上完成,但由于SOD中是缺乏动态的运动信息的,因此可以在SOD期间引入动态显著性,但保留相同的精细分割过程。
具体过程其实是一个生成时空位置标签的算法,该算法可以生成高显著性的位置标签并且跟踪相邻帧的显著对象。接着根据这些生成的标签,利用一个双流定位网络,引入一个光流分支去完成视频显著对象定位。

二、实现流程

由于以往的VSOD方法在处理场景丰富的大规模数据集时是比较困难的,因此本文为了克服这一点,使用场景丰富的SOD数据集去完成VSOD。
即,利用SOD数据集去实现VSOD,经过研究,发现同时具有静态信息和动态信息的位置有很大可能是显著区域。

2.1 如何利用SOD去实现VSOD?

在这里插入图片描述
如图,我们分别使用的SOD数据和未标记的视频数据,将SOD解耦为谷底的定位和分割,利用SOD和VSOD之间的定位差异性和分割相似性来将知识从图像转移到视频。那么如何进行知识转移呢?
可以用粗定位和精细分割实现知识转移:
①利用在SOD数据集上训练的CLM,它可以分别从帧和光流图像中预测静态位置图和动态位置图。
②通过预测的静态位置图和动态位置图,设计一个生成时空位置标签的方法。
③提出一种光流跟踪方法去获取相邻帧中相同显著对象的时空位置图。(这些位置图也被认为是视频显著对象位置图)
④提出一个双流定位网络,利用这些帧和相应的时空位置图来定位视频显著对象。
⑤基于SOD和VSOD在显著对象分割上的相似性,可以直接用在SOD数据集上训练的精细分割模型来实现VSOD的精确分割。

2.2 知道了知识转移的大致流程,那么如何去实现呢?

在这里插入图片描述
如图,即我们的算法框架,它包含了图像SOD、生成时空位置标签和VSOD。
其中图像SOD包含生成时空位置标签的CLM和用于最终视频显著对象分割的FSM。
时空位置标签通过训练的CLM生成,并且基于生成的时空位置标签,训练能定位所有帧的显著对象区域的双流定位网络。
最终VSOD通过训练好的双流定位网络和FSM实现。

2.3 那么他们具体如何工作呢?

  1. CLM和FSM由图像SOD数据集DUSTR训练,CLM是为了突出包含高显著性区域,它可以从视频帧中识别静态显著性区域,并从光流图像中识别动态显著性区域,而一个对象同时在静态显著性区域和动态显著性区域时,这个对象则可以被认为是视频显著对象。
  2. 并且基于静态显著性区域和动态显著性区域的相似性,就能识别高显著性帧,从而定位视频显著区域。
  3. 由于相邻帧视频之间的连续性,则可以利用相邻帧跟踪方法定位相邻帧中包含相同显著对象的显著区域。
  4. 用一个双流定位网络,通过使用高显著性帧及其相邻的光流图像作为输入、CLM作为时空位置标签预测的显著区域去学习视频显著对象的位置。
  5. 接着可以用FSM进行精细分割。

三、算法框架详细介绍

上面也说了,该算法由图像SOD、生成时空位置标签和VSOD组成。

3.1 图像SOD

图像SOD可分为两部分:CLM和FSM。而为了帮助VSOD充分利用在图像上学习的定位和分割知识,需要走三步:CLM、FSM和基于注意力的采样器。

在这里插入图片描述

  1. 其中CLM是一种定位显著对象的网络,它基于特征金字塔(FPN)。身体注意力位置图被视为CLM的标签,以引导模型去聚焦于包含显著对象的粗糙区域(这些区域通过膨胀操作和高斯模糊操作生成)。
  2. CLM输出的身体注意力位置图被用来增加图像中与显著对象相关区域的分辨率,这样就能放大显著对象细节,接着把处理后的图像作为FSM的输入,使其更好的完成图像分割。
  3. 在细粒度分类任务中提出了基于注意力的采样器,去放大显著对象的细节。它主要是通过计算原始图像和采样图像的坐标之间的映射函数,对具有高关注度的基于注意力地图的区域进行更密集的采样。而恢复过程则是利用该映射函数将预测的采样分割结果恢复到原始形式。

3.2 生成时空位置标签

  1. 生成时空位置标签
    时空显著对象:能在静态帧中吸引人类注意力,并在连续帧中保持明显的运动的对象。
    高显著性帧:视频中每个对象都是时空显著对象。

时空位置标签的生成由外观显著性预测分支、动态显著性预测分支和高显著性帧判别器组成。
对于静态显著性分支:用图像数据集上训练的CLM来找到静态显著性区域。
对于动态分支:去估计视频帧的光流,并对其进行渲染。
高显著性帧判别器:经过渲染后能很容易利用CLM检测动态显著性区域,因此可以用高显著性帧判别器来确定静态显著性区域和动态显著性区域是否相似(可以利用IOU判别)。

由于动态显著性区域可能会因为显著对象的局部运动而没有包含完整的对象,但是静态显著性区域由训练好的CLM获得,他有很大的概率包含完整的对象,因此可以用这些高显著性帧和他们相应的显著对象位置图作为训练数据的一部分,用于后面的双流定位网络。

  1. 跟踪相邻帧
    在这里插入图片描述
    为什么要跟踪视频帧呢?
    在获得带有显著对象位置图的高显著性帧之后,基于对应的光流信息可以生成相邻帧的显著对象位置图。但如果在双流定位网络输入时只有这种高显著性帧的话,那么训练模型就只在这种帧上表现良好但在其他没有高显著性对象的帧上表现不好。
    那么如何实现跟踪效果呢?
    由于视频帧有连续性,因此这些高显著性帧的相邻帧中视频显著对象很可能和高显著性帧的视频显著对象相同。因此可以将这些帧添加到训练数据中。如上图。

3.3 双流定位网络

在这里插入图片描述
上图即为双流定位网络的详细说明,他可以有效的适用这种稀疏时空位置标签的数据结构,并且通过光流图像引入了运动信息。
他有三个模块组成:静态特征提取分支、动态特征提取分支和特征融合模块。
其中静态分支和动态分支是基于图像SOD数据集训练的CLM,输入分别是RGB图像和五个光流图像。
那么这如何获得光流图像呢?
从上图可以看出我们会从当前帧的前五帧和后五帧中随机选取五张图,与当前帧做对比计算当前帧的光流图像。
那么为什么要输入五个光流图呢?
因为只输入一个的话网络的结果很容易受到光流图像的质量的影响,但输入五张的话就会包含或多或少不同的运动信息,使结果变得更好。

特征融合模块的结构类似于FPN的解码器,不同的是在每层的特征融合之后引入了Side-out aggregation(SA)模块。

四、实验结果

在这里插入图片描述
在这里插入图片描述


http://www.niftyadmin.cn/n/205323.html

相关文章

Barra模型因子的构建及应用系列八之Earning_Yeild因子

一、摘要 在前期的Barra模型系列文章中,我们构建了Size因子、Beta因子、Momentum因子、Residual Volatility因子、NonLinear Size因子、Book-to-Price因子和Liquidity因子,并分别创建了对应的单因子策略,其中Size因子和NonLinear Siz因子具有…

Go的IO -- Go语言设计与实现

Go合IO的不解之缘 协程是Go的很大的一个优势。Go天然支持高并发,那么我们来研究一下这个高并发的秘诀在哪里? 执行体调度得当。CPU 不停的在不同的执行体( Goroutine )之间反复横跳!CPU 一直在装填和运行不同执行体的…

虚拟化内核概念

虚拟化与云计算 2022年9月13日 13:51 VMM X86系统是完全运行在裸机上的。X86提供四个特权等级,分别是ring 0-1,ring 0 的级别是最高的。 在LinuxX86中,操作系统需要直接访问内存和硬件所以需要运行在ring0上,而应用程序需要运行在…

Linux安装Typora且设置文件默认打开方式

目录Linux安装Typora且设置文件默认打开方式一、安装Typora二、添加快捷方式三、设置Typora为markdown文件默认打开方式Linux安装Typora且设置文件默认打开方式 一、安装Typora 下载软件安装包: 官网链接 这里选择Linux(ARM) 解压文件夹&am…

《Web应用开发》头歌

目录 一、实验一HTML基础 HTML——表单类的标签 第1关:表单元素——文本框 第2关:表单元素——密码框 第3关:表单元素——单选框 第4关:表单元素——多选框 第5关:表单元素——checked属性 第6关:表…

C++ Primer第五版_第十二章习题答案(21~30)

文章目录练习12.21练习12.22练习12.23练习12.24练习12.25练习12.26练习12.27头文件实现主函数练习12.28练习12.29练习12.30头文件实现主函数练习12.21 也可以这样编写 StrBlobPtr 的 deref 成员: std::string& deref() const {return (*check(curr, "deref…

C++类和对象_06----多态

目录1 多态的基本概念1.1 多态的构成条件1.2 静态多态1.3 动态多态1.4 虚函数重写注意事项1.5 总结1.5.1 多态满足条件1.5.2 多态使用条件1.5.3 重写2 纯虚函数和抽象类2.1 纯虚函数2.2 抽象类特点2.2.1 抽象类特点(1)无法实例化对象2.2.2 抽象类特点(2)子类必须重写抽象类中的…

day32 ● 122.买卖股票的最佳时机II ● 55. 跳跃游戏 ● 45.跳跃游戏II

● 122.买卖股票的最佳时机II ● 55. 跳跃游戏 ● 45.跳跃游戏II 贪心算法是一种基于贪心策略的算法,在解决某些问题时非常有效。其基本思路是局部最优解能导致全局最优解。在这篇报告中,我们将使用贪心算法解决三个问题:122.买卖股票的最佳…