基于深度空时特征编码的视频显著性检测*

2019-01-23 11:49王春雨
通信技术 2019年1期
关键词:光流编码显著性

王 军 ,张 磊 ,胡 磊 ,王春雨

(1.中国人民解放军陆军工程大学,江苏 南京 210007;2.信阳师范学院,河南 信阳 464000)

0 引 言

视频显著性检测旨在提取视频中人眼最感兴趣的目标区域,并将其从背景中分离出来。相对于图像显著性,视频中运动的目标能引起人眼更多的关注。视频显著性检测不仅要考虑视频中单帧图像的空间特征,还要考虑时域上运动特征的影响,即对时间线索的处理。作为一项预处理过程,视频显著性检测被广泛应用于视频质量评估、目标跟踪以及视频压缩等领域。

目前,较成熟的视频显著性检测算法相对较少,而现有算法一般将空域上单帧图像的显著区域与时域上的运动特征进行简单结合来计算视频显著性。例如,Mahadevan等人[1]通过将动态纹理特征融入到传统的显著性模型中构建视频显著性模型;Zhou等人[2]分别计算颜色和运动等多种特征对比度,然后与位置特征进行融合来计算视频显著性;Fang等人[3]基于颜色和运动直方图特征,分别计算空间和时间显著图,再进行加权融合;Wang等人[4]结合颜色和运动特征构造空时梯度流场计算视频显著性。这些算法由于只用到了人为设计的低层特征进行显著性计算,易受到外界干扰如光照、噪声和复杂背景等的影响,算法的准确率较低。近年来,不少学者尝试将深度特征融入显著性检测计算框架中。文献[5]首先利用卷积神经网络提取视频序列的深度空时特征,然后基于条件随机场进行显著性计算。文献[6]设计了两个阶段的深度网络,分别提取视频中的空域特征和时域上的运动特征进行视频显著度估计。但是,因为实际的视频场景复杂多变,而目前尚缺乏大型可靠的视频显著性数据集,因此上述做法均不能很好地学习到视频序列的动态空时信息,导致其在复杂的运动模式下检测效果不佳。总的来讲,目前视频显著性算法主要存在以下两个亟待解决的问题:一是缺乏鲁棒的空时特征提取方法,二是缺乏有效的空间与时间显著性融合模型。

针对上述问题,本文首先基于FlowNet[7]提取深度光流场,并运用全局对比度计算得到时间特征线索。其次运用语义显著性检测网络提取每帧图像的空间显著性,得到空间特征线索。最后,受文献[8]的启发,基于自编码网络设计一种空时显著性融合模型。该模型能够分别从空间和时间两条显著性线索出发,通过逐层编码实现对空间和时间显著性的有效融合,同时能够考虑前后相邻视频帧对当前帧的影响,使得最终结果更加准确。在公开数据集上的实验结果表明,本文所提算法在检测精度上优于目前的主流算法,具有较强的鲁棒性。

1 光流场及时间显著性

1.1 基于深度卷积网络的光流特征提取

在计算机视觉中,光流法广泛应用于运动目标检测、运动分割、目标跟踪等研究。光流被定义为由观察者与场景目标间的相对运动引起的视觉感知运动模式,即各像素点的运动速度。视频中各像素点的光流构成光流场。当人眼观察运动的物体时,物体的运动景象以连续变化的图像序列形式呈现在视网膜上,类似于连续变化的信息流不断流过一个图像平面,因此形象地称之为光流。抽象来讲,就是运动物体在空间产生的三维运动场被投影到二维平面上形成的二维运动场。

光流的计算基于两个前提假设:(1)假定相邻视频帧之间像素点的亮度保持不变;(2)假定相邻视频帧之间物体的相对运动很“微小”。光流法的目标是求解视频帧之间的运动对象的光流信息,即找到视频图像中每个像素点的运动向量:

u、v分别表示像素点在水平和垂直方向的移动分量。近年来,有不少学者将深度学习技术引入光流计算,并取得了良好的效果。深度网络能够通过大量的样本训练,从中学习到视频数据中不同的运动特征,从而能够在复杂视频场景中提取更加精确的运动信息,为解决其他更加高级的视频任务提供可靠的保证。其中,最具代表性的深度光流检测网络为FlowNet,如图1所示。给定视频序列中两幅相邻的图像帧It和It+1,FlowNet通过一系列卷积操作在终端输出每个像素点运动位移信息,再将其可视化即可得到光流图。

图1 光流检测

1.2 基于运动光流的时间显著性计算

视频显著性检测旨在从视频序列中确定最显著的目标区域。相对于图像显著性检测而言,如何提取精确的运动信息并合理利用,是视频显著性检测的关键。为了提取更加准确的运动信息,本文首先基于FlowNet提取相邻视频帧之间深度光流场。但是,在计算运动显著图时,如果只用到动态光流特征,则对于前景与背景相对运动较小或者背景运动较复杂的场景会出现偏差[1-4]。因此,为了有效利用光流场中的运动信息计算时间显著性,首先运用SLIC算法[9]将每帧图像分割为一系列超像素。一般情况下,视频中的显著对象在外观特征或运动特征上与背景存在着较大差异,因此结合颜色、位置与运动特征来描述每个超像素,即第t帧第i个超像素Ri可以描述被为下列一个7维空时特征向量:

其中,Li、ai、bi为超像素Ri中所有像素在Lab颜色空间的平均值;xi、yi为超像素Ri中所有像素的平均位置坐标;ui、vi为超像素Ri中所有像素在光流场中水平与垂直分量的平均值。可以看出,该向量集成了超像素的颜色、位置及运动信息。然后,借鉴文献[10],用全局对比度模型求得超像素Ri的显著值:

其中Nt表示第t帧图像分割形成的超像素个数,ξ(Ri,Rj)为超像素Ri和Rj之间的空间距离权重,定义为 ξ(Ri,Rj)=exp(-||xi-xj||/2σd2),xi为超像素 Ri内所有像素的平均空间坐标,σd为控制参数,文中取0.25。最后,用Sigmoid函数抑止背景噪声,并对整体的显著值进行平滑和优化:

图2 基于运动特征的显著图示例

2 空间显著性计算

上文基于视频帧之间的光流场,通过图像分割和超像素空时特征的对比度,计算得到了时间线索上的运动显著图。然而,视频中的显著目标除了具有时间域上的运动属性外,还应具备空间上语义层次的整体属性。为了能够从语义层次检测出视频序列中的显著目标区域,根据文献[11]构建的显著性检测网络中计算每一帧视频图像在空间上的语义显著图,如图3所示。

图3 空间显著性检测

3 空时显著性融合

由上述过程可以有效地得到时间域上的运动显著图和空间域上的语义显著图。由于它们利用视频图像中不同的信息计算得到,因此具有互补性。若能有效地对其进行融合,必将进一步提高视频显著性检测的性能。

目前,已有不少的显著性融合模型,如通过建立一些显著图度量指标来选取其中更好的显著图作为结果,或者通过加权和的方式对显著图进行融合[11]。但是,由于视频序列的连续性,这些融合方法都是单帧处理,没有考虑到相邻帧之间的影响。本文受文献[8]启发,设计栈式自编码网络(Stacked Autoencoder Network,SAE),并学习一种非线性变换来充分挖掘时间域上的显著图和空间域上的显著图之间的互补信息,从而达到提高性能的目的。该SAE网络包含4个编码层和4个译码层,如图4所示。下面以当前视频帧t上像素p处显著值的融合过程为例进行说明。

图4 本文空时显著性融合网络

从空时两条显著性线索出发,级联当前超像素p的空时显著值及其在本视频帧内8个直接相邻像素点的空时显著值和前后相邻视频帧的2个时间相邻点的空时显著值,作为当前像素p的“空时显著特征”,即当前视频帧像素p处的显著性特征可以被描述为一个22维的由空时相邻点显著值级联而成的特征向量si。然后,该特征向量被送入SAE网络中的编码层,编码层通过编码逐步挖掘当前像素p的显著性,并由最后一个编码层输出像素p的最终显著值。后边的译码层能够以此显著值为线索,逐步恢复出原始特征向量si。

由此可见,由SAE网络中最后一个编码层输出的显著值与原始特征向量紧密相关,通过学习,该网络建立了从原始空时显著性特征向量到最终显著值之间的非线性映射关系。由于该特征向量考虑了像素p的空时邻居的显著值对其的影响,因此最终能够得到一副更加精确的显著图。

SAE网络中的编码层单元数依次为11、5、3、1,译码层中的单元数与其对应的编码层中的单元数相等。其中,第一个编码层以22维空时特征向量si作为输入,后边的编码层以前一个编码层的输出作为输入:

其中 N ( ⋅)为归一化函数,以此类推,最后一个编码层输出的显著值大小为:

从数据集中随机采集50 000个样本进行训练,每个样本都用一个22维度的空时显著性特征向量进行表示。训练过程中,采用逐层训练的策略,每个编码层与译码层的参数可以通过最小化损失函数得到:

其中ψ1为稀疏正则项;ψ2为2ℓ范数正则项;γ1、γ2和λ为控制参数,根据文献[8]分别设置为1.0、0.001和 0.05。

4 实验与分析

4.1 实验设置

本文在NTT[12]数据集上测试各算法。NTT包含10段视频,每段视频中包含多个运动目标,且运动程度剧烈,具有一定的挑战性。数据集中每一帧视频序列都有像素级别的真值标注。本文主要结合以下典型算法进行比较与分析:SA[1]、RW[2]、MBD[3]、GF[4]、MDF[5]、DLV[6]和 FYM[11]。 这 里 参 考文献[1-6],采用视频显著性领域中常用的P-R曲线对各算法进行性能评估。

4.2 静态特征和运动特征的影响

为进一步分析运动特征和空间特征对本文算法的贡献程度,图5给出了本文算法中的空间线索、时间线索和空时融合后的算法性能曲线对比。从图5可以看出,经过SAE网络融合后的算法结果(记为Ours-ST)要明显优于单一线索,说明静态特征和运动特征均是视频显著性检测中的重要部分。

图5 空时特征性能曲线以及融合后的性能曲线对比

4.3 本文融合算法性能分析

为充分说明所构建的空时显著性融合网络的有效性,图6给出本文算法融合结果的P-R曲线(记为Ours)与直接相加融合的结果(记为A-Fusion)、文献[11]提出的可变权重加权融合的结果(记为W-Fusion)。可以看出,相对于直接融合和加权融合,本文基于SAE网络融合的性能曲线更加饱和,充分说明本文所提出的空时显著性融合方法具有有效性。

图6 本文空时融合算法性能分析

4.4 本文算法与其他算法的对比

图7 给出了本文算法与其他算法在两大数据集上的P-R曲线。从图7可以看出,本文所提算法表现优异,在NTT数据集上有着更加饱和的P-R曲线。无论是在精度还是召回率上相对于其他算法都有明显改进。

图7 本文算法与其他算法的对比

图8 给出3段视频检测效果示例(每3行均来自同一个视频中的连续3帧)。可以看出,GF算法因其梯度流场的计算是基于水平和垂直方向梯度值累加,所以检测结果容易受到水平和垂直方向上纹理的影响,导致其结果中存在一定程度的背景噪声(如第1段视频和第2段视频)。RW算法因其时间显著性的线索计算是基于全局对比度,所以其对于较复杂的场景检测效果不太好(如第1段视频)。FYM算法是基于空时显著性线索的加权融合,因此其对每个线索上显著图的质量依赖性较强,对较简单的场合检测效果较好,但对于较复杂场景检测效果欠佳。而本文算法在上述场景下均取得了较好的检测效果,直观说明了本文所提算法的优异性。

图8 本文算法与其他算法的检测结果示例

5 结 语

本文针对目前视频显著性检测算法中存在的问题,首先基于FlowNet计算相邻视频帧之间的深度光流场,并将光流场中的运动信息嵌入全局对比度模型,从而有效提取时间特征线索。其次,基于卷积神经网络计算每一帧的语义显著图,提取空间特征线索。最后,为进一步提升视频显著性检测的性能,充分利用空时线索之间的互补性,基于栈式自动编码网络构建了空时显著性融合模型,实现了对时间域上的显著图和空间域上的语义显著图的有效融合。实验表明,本文所提算法性能优于目前主流的视频显著性检测算法,具有较强的鲁棒性。

猜你喜欢
光流编码显著性
对统计结果解释和表达的要求
利用掩膜和单应矩阵提高LK光流追踪效果
基于改进Cycle-GAN的光流无监督估计方法
生活中的编码
一种多尺度光流预测与融合的实时视频插帧方法
本刊对论文中有关统计学表达的要求
《全元诗》未编码疑难字考辨十五则
基于自适应纹理复杂度的仿生视觉导航方法研究
子带编码在图像压缩编码中的应用
基于区域特征聚类的RGBD显著性物体检测