梁丽娜,姚 睿,迟文浩,周 勇,赵佳琦
(中国矿业大学计算机科学与技术学院,徐州,221116)
视频目标分割(Video Object Segmentation,VOS)从一个给定的视频序列中分离每个视频帧的前景目标和背景图像,是计算机视觉的重要研究领域,在视频后期制作、智能汽车应用、道路监控等方面都发挥了极大的作用.现阶段相关数据集不多,具有像素级注释的序列数远小于实际数据,不利于训练.此外,由于相机抖动、物体运动、照明变化、景物遮挡、运动模糊、阴影效果等复杂因素的影响,分割主要视频目标仍然是一项挑战性的任务,在实际应用中的适用性也有待提高.
视频是由具有时间相关性的一系列图片组成的序列,因此视频目标分割也是对带有时间和运动信息的每帧静态图像的分割,过去视频分割采用的帧间差分法、背景差分法等算法已不能满足具有复杂背景和目标的分割要求.Shelhamer et al[1]提出全卷积神经网络(Fully Convolution Net⁃works,FCN),将深度学习引入静态图像分割,视频目标分割也进入了深度学习的时代.Cheng et al[2]提出一种端到端的可训练网络SegFlow,采用双分支网络结构用于同时预测视频中的像素级目标分割和光流.光流法是获取运动信息的普遍方法,但是对于长时间的运动遮挡估计不准.Tok⁃makov et al[3]介绍了一种双流神经网络,结合两个互补的信息来源:外观和运动,并带有可视记忆模块,实现为双向卷积门控循环单元(Gated Re⁃current Unit,GRU),但模型的训练周期较长,需要训练300万次.Hu et al[4]提出一种递归神经网络方法MaskRNN,这是一个处理视频中多个目标的实例级分割的框架,使用的是自下而上的方法,首先使用具有预测分割掩模和目标定位功能的组合网络分别跟踪和分割每个目标,最后组合二值图像获得结果,但当目标快速移动时选用的边界框内可能没有所需目标,会导致传播错误.
Yang et al[5]提出OSMN(Object Segmenta⁃tion via Network Modulation)模型,使用单个前向传递来使分割模型适应特定目标的外观.具体地,通过设计视觉调制器网络和空间调制器网络来实现任意的视频目标分割,可以取得较好的效果.但是,分割精度可进一步提升:一方面,由于空间调制网络使用前一帧的二值图像作为空间位置输入,在目标快速移动或不连续时,相邻帧间的目标位置会有较大的不同,此时使用前帧来计算可能使结果发生较大误差;
另一方面,OSMN模型中的最后三阶段卷积层进行融合,对其特征进行上采样得到与原图分辨率大小相同的特征图进行目标分割,但上采样会使目标边缘细节模糊,从而降低目标分割的清晰度.
为了提高分割的准确性,本文提出新的分割框架,由四部分组成:视觉调制器、空间感知模块、全卷积神经网络和细化残差模块.首先,对第一帧使用卷积网络获取外观轮廓等特征信息作为视觉指导;
其次,使用空间感知器(本文使用单次视频目标分割(One⁃Shot Video Object Segmenta⁃tion,OSVOS)[6]和目标跟踪算法Staple[7])分割或追踪目标,并编码为高斯热图以感知空间信息;
最后,对二者运用条件批量归一化(Conditional Batch Normalization,CBN)[8]的思想,将获取的视觉和空间信息融合,并添加细化残差模块对特征图进行进一步细化,改善预测边界模糊,提高视频目标分割的准确率.实验结果表明,本文方法在DAVIS 2016数据集上的准确率为83.6%,在DAVIS 2017数据上的准确率为56.8%.
本文的贡献:(1)引入空间感知器,减少空间位置的误差,提升空间调制器网络的准确性;
(2)构建多级细化残差模块,改善特征图的边缘细节,提高目标分割的准确度;
(3)在DAVIS 2016和DAVIS 2017数据集上获得了良好的性能.
现有的视频分割方法根据其学习方式大致分为三种:无监督学习,指在没有获得样本标签的情况下分割所要寻找的主要目标;
弱监督学习,在输入中给出弱标签(和完全标签掩模相比,所含的信息量少,例如位置标签、类别标签)训练算法;
半监督学习,在输入中只给出第一帧或某几帧的完全注释掩模,指导序列的全部视频帧.
给定视频中参考帧的目标掩模,半监督VOS方法通常比无监督VOS方法和弱监督VOS方法的性能更佳,还可以处理视频帧中含有多目标的复杂情况,引起了计算机视觉领域的广泛关注.半监督VOS方法大多基于深度学习,最近的半监督VOS方法主要有三种策略:基于传播的方法、基于检测的方法以及混合方法.
基于传播的方法将VOS任务表述为从第一帧到后续帧的掩码传播问题[9],它依赖像素间的时空关系,相邻帧间目标的位移和形变平滑就可以获得相对精确的结果,但物体短暂被遮挡时后续帧无法在前帧中找到目标,容易造成较大误差.为了利用两个相邻帧之间的时间一致性,许多基于传播的方法[2,9-10]常使用光流估计将前一帧的掩码转移到当前帧,但是密集且精确的光流估计的计算成本通常很昂贵,因此严重限制了它们的处理速度.例如,SFL[2]同时预测视频中的像素级目标分割和光流,运行速度仅为每帧7.9 s.
基于检测的方法[6,11-13]将VOS任务作为像素级目标检索问题进行处理,并在第一帧中标注目标掩码.通常采用两阶段学习策略:训练离线模型以提取通用目标上的语义区域;
通过在带有注释目标掩码的第一帧上对特定目标进行微调,使离线模型专注于特定目标.该方法的优点是在整个处理过程中独立处理所有帧,无需时序信息,不会引起时间上的传播错误,但当目标形变巨大无法检测识别时性能较低;
同时第一帧的微调通常很耗时.一个典型的例子是OSVOS[6]方法,可以每秒10帧的速度运行,但要实现高精度的话,每个视频的第一帧微调都需要10 min以上.
混合方法[5,14]可以同时利用检测和传播方法的优势.文献[5,14]提出利用第一帧的视觉引导和前一帧的空间先验的网络,二者进行融合后输出最终结果.此外,一些方法还试图利用所有先前的信息[15-16].Xu et al[15]提出一种序列到序列网络来学习视频中的长期信息.Voigtlaender and Leibe[16]采用在线自适应的思想,并使用中间输出不断更新检测器.本文使用的就是一种混合方法,综合视频目标分割性能和处理速度的因素,提出基于空间感知与细化残差的VOS方法.
本文模型包括四个部分:视觉调制器、空间感知模块、全卷积神经网络和细化残差模块,如图1所示.后两个模块统一为细化残差分割网络.
首先使用视觉调制器网络,仅对第一帧图片进行掩码操作并为所有调制层产生一个尺度参数向量;
其次,对于空间感知网络,输入一张图像帧,利用空间感知器获得当前帧的位置信息并输入空间调制器;
最后,对于细化残差分割网络,采用VGG⁃16网络框架作为主分割网络用于提取特征和输出预测掩模,并运用CBN的思想融合视觉和空间信息.VGG⁃16由13个卷积层和三个全连接层组成,其中卷积核的大小为3×3,在中间添加2×2大小的池化核用于最大池化操作,可将特征图缩小为一半.鉴于本文实现的分割任务,将VGG⁃16的全连接层去除,替换为卷积层,并对于特征图进行上采样以获得与原始图像大小相同的图像.分割网络在对应网络层后添加调制层,融合尺度参数,使网络更好地学习目标特征.另外,在最后添加细化残差模块,进一步提升边缘清晰度,提高分割精度.下面具体介绍时空感知网络和细化残差分割网络.
图1 本文模型Fig.1 The overview of the proposed model
2.1 视觉调制器视觉调制器用经典的VGG⁃16网络作为模型,由于ImageNet是目前人工标记数量最多的图像数据库,所以模型的初始化采用ImageNet的预训练模型,可以学习到大量的目标并且提高训练速度.将视频序列的第一帧及其完全注释图像作为视觉引导输入视觉调制器,可以学习所要分割目标的类别、形状、纹理等信息并输出信道方面的尺度参数,产生的参数加入网络层可以让网络更关注于相应的特征.
2.2 空间感知模块空间感知模块由空间感知器和空间调制器组成.在输入第t帧图像之后,空间感知器分割或跟踪目标并将其编码为具有二维高斯分布的热图,给出目标位置信息;
之后作为目标位置下采样到不同尺度,生成空间调制器.
空间感知器的任务是给出目标位置信息.OSMN中空间引导信息是通过前一帧目标位置的缩放和移位生成的,移位是超参数,无法动态调整;
而在实际视频目标分割场景中,目标具有快速运动、遮挡以及相似目标的特点,固定移位会导致目标漂移,因此找出准确的目标位置(即空间感知器的任务)可以提升目标的分割性能.空间感知器有两种方法:视频目标跟踪(Video Object Tracking,VOT)和视频目标分割(VOS),都可以获得目标的位置信息,只是视频目标分割的位置更精确.因此本文使用VOT方法Staple[7]和VOS方法OSVOS[6]来分析空间感知器的位置信息.
Staple是基于相关滤波跟踪器的VOT方法,结合两个对互补因素敏感的图像块表示方法以学习一个对颜色变化和变形本身都鲁棒的模型,输出目标边界框.首先,在大小为M×N的输入图像块x(以目标为中心)与来自训练集的y标签之间找到预测函数f(x)=y来训练分类器,样本图像块一般通过中心随机抽样得到.核相关滤波器跟踪器使用循环矩阵,把x的所有循环移位xm,n(m,n)∈{0,…,M-1} ×{0,…,N-1} 作为样本图像块,标签ym,n可以采用任何形状,如二维高斯分布.则训练问题可以看作最小化θ上的目标函数:
式中,ℓ(·)损失函数被定义为二次损失ℓ(a,b)=‖a-b‖2,θ代表参数,λ是正则化参数.Staple方法使用目标模板和直方图获得目标位置,即预测函数f(x)=(1-ξ)fs(x)+ξfh(x).其中,fs(x)是目标模板函数,fh(x)是目标直方图函数,ξ是组合模板和直方图模型的因子参数.
目标模板函数fs(x)和目标直方图函数fh(x)中的参数是通过学习而得.fs(x)中的参数由多通道最小二乘相关滤波器在线学习,而后用新的参数获得模板函数的分数;
而fh(x)直方图分数对对象和背景区域的每个特征像素独立地应用线性回归,获得每个图像的目标位置分数.在搜索过程中,当在新的框架中搜索目标的位置时,在平移/缩放而不是纵横比/方向上变化的矩形窗口,即不是在平移/缩放中联合搜索,而是首先平移并且随后进行缩放上的搜索.对于平移和缩放,仅搜索上一个位置周围的区域,使用汉明窗口进行搜索以及训练,这是一个隐含的运动模型,并且在新一帧来到时更新目标模板函数fs(x)和目标直方图函数fh(x).采样若干图像块(It,b()It是第t帧的图像,b∈R4是边界框),使用这两个目标判别函数的聚合得分作为密集预测的最优候选边界框b*=arg maxb f(It,b).这里只给出目标区域的热图,如图2所示.
图2 当前目标图像(上图)和目标区域热图(下图)Fig.2 The current object image (up) and the heat map of the object area (down)
OSVOS是基于FCN的视频目标分割方法,FCN将传统的卷积神经网络(Convolutional Neu⁃ral Networks,CNN)用于分类的全连接层转换成卷积层,具体操作是将最后的全连接层变成卷积核大小为1的卷积层,此后很多分割网络都是基于此演变而来,如SegNet[17]在FCN基础上增加了解码器,PSPNet[18]提出池化金字塔结构.本文需要解决的是半监督视频分割问题且使用的数据集主要为DAVIS,所以在获得当前帧分割问题上采用经典的OSVOS网络模型进行分析,而其他的分割方法也可以作为空间感知器.OSVOS经过网络获得的分割结果编码为在图像平面上具有二维高斯分布的热图,是目标区域的空间信息.
下面分析空间信息对最终视频目标分割的性能,如图3所示,以两个序列为例进行对比.bmx⁃trees序列中包含了目标快速运动、遮挡和尺度变化情况,而camel序列中包含了相似目标干扰、外观翻转等情况.由于要考察目标空间信息的准确性,使用目标的中心位置误差(Center Location Error,CLE)来衡量,CLE计算真实值与估计目标中心位置之间的平均欧几里得距离.此外,真实值是通过序列中真实值掩码的中心位置获得.从图3b和图3d可以看出,Staple比OSVOS中目标的位置更准确,特别在目标快速运动、相似干扰的情况下,CLE表现的性能更好.需要注意的是,所有VOT和VOS方法都可以获得目标位置信息,这里只显示目标位置的重要性,更好的目标位置会获得更好的视频目标分割性能.本文使用Sta⁃ple方法来获得目标位置信息.
图3 序列图像bmx-trees的掩码和边界框(黄色框)(a)和中心位置误差曲线(b);
序列图像camel的掩码和边界框(黄色框)(c)和中心位置误差曲线(d)Fig.3 The mask and bounding box (yellow box)(a)and the center position error curve (b)of the sequence bmx-trees,the mask and bounding box (yellow box)(c)and the center position error curve (d)of the sequence camel
接下来,空间感知器将目标热图作为空间引导下采样到不同尺度以匹配分割网络中不同阶段的特征图,然后对每个下采样热图进行计算获得偏置参数oc=ηcm,其中m是相应调制层的下采样目标热图,ηc是第c个通道的缩放参数,这是通过计算有效的1×1卷积实现的.
本文方法对于经过Staple方法输出当前图像的轮廓精度没有太高要求,只需粗略的定位和大小即可拥有足够的信息来推断目标掩模,并且可以避免视频中物体有较大移动时产生错误传播.对比加入掩模输入的OSMN,输入前一帧的掩模会导致位置错误,所以本文模型中的空间感知器只使用前馈推理,大大减少了工作量.
2.3 细化残差分割网络主分割网络使用的是全卷积神经网络,在每个卷积层之后添加调制层以融合视觉信息和空间位置信息,并构建细化残差模块,实现视频目标分割.此方法受到CBN的启发,其中每个批量归一化的缩放和位移参数由第二控制器网络(即调制网络)生成.具体地,视觉调制器产生的尺度参数可以得到不同信道的权重,以便网络更好地关注重要信道包含的特征,而空间感知网络产生元素的偏置参数可以将得到目标的空间信息输入调制层.
实验发现低级特征对调制操作非常敏感,因此在VGG⁃16的前四层不进行调制操作,而剩余的卷积层都添加调制层,最终形成九个调制层.
网络每个阶段之间通过池化操作对特征图进行下采样,连接池化层前的卷积层来形成跳跃路径.对不同阶段的特征图进行上采样操作,将来自不同跳跃路径的特征图连接起来,线性融合到一个图像维度大小相同的单个输出上,这样可以获得多尺度的特征,使结果更加准确.
在视觉调制器和空间调制器与VGG⁃16卷积编码之后,获得图像特征图,但这些多分辨率特征图进行融合时,如果直接进行上采样会有较大的损失,因此提出细化残差模块,如图4所示.
图4 多层细化残差模块框架Fig.4 The framework of multi-layer refinement residual module
图4的上半部分为分割网络的解码过程.首先使用全局卷积模块提升网络的分类和密集像素定位能力,还可提高处理效率.设置卷积核尺寸为7,输出的通道数为512,可以融合所有通道的信息达到细化的效果.然后执行三个细化残差模块使特征图的分辨率逐次提升,最后是3×3核的卷积层和Softmax层以实现当前帧的分割掩码.三个细化残差模块的框架是相同的.细化残差模块有两个输入:实线和虚线(图4),实线是从全局卷积模块或细化残差模块而来,而虚线是从图1中的编码模块卷积输出而来.实线输入进行2倍的上采样,之后与卷积层(3×3核)和残差模块进行融合,这里的融合为加操作,再执行一次残差模块.残差模块包括两次的卷积层(3×3核)和Lea⁃kyReLU激活函数,再进行加操作.其中激活函数的作用是引入非线性变换,目前多采用ReLU,Sigmoid,Tanh函数.ReLU的收敛速度较快,可以缓解梯度消失现象,在深度学习中的应用非常广泛.但ReLU也有缺点,在输入为负数时直接将其变为0可能导致在后续过程中神经元失活,为避免这种情况,使用LeakyReLU激活函数.
3.1 实验数据集在初始训练模型时,用Mask⁃Track的思想,利用静态图像来训练模型.理论上,学习的物体类型越多,测试时分割效果就越好,但是大多数视频语义分割数据集都很小,只包含非常有限的几个类别,所以在预训练时通过使用最大的公共语义分割数据集MS⁃COCO来处理这个挑战,其中有80个目标类别.
再训练和测试时需使用视频目标分割数据集,目前有关数据集很少,只有数百个带标注的视频,DAVIS数据集是常用的视频分割数据集之一,其视频序列时长约2~4 s,包含遮挡、快速运动、多目标等在长视频中会遇到的多种情况,可以解决大部分实际问题.DAVIS 2016含有50个高质量的视频序列,共3455帧具有像素级别的完全注释,视频帧率为24 fps,分辨率有1080 p和480 p两种,适用于单目标分割.当视频中含有多个目标时使用DAVIS 2017数据集,DAVIS 2017数据集将单目标分割扩展到多实例分割,每个序列为多目标注释.有150个视频序列,共10459个视频帧.其中60个视频序列为训练集,30个序列为验证集,均有全部的注释信息.两个测试集各30个序列只有第一帧的完全注释,其余帧未注释.
3.2 评估指标评估视频分割的结果一般使用区域相似度J和轮廓精确度F[19].J是通过计算网络分割输出得到的二值掩模M和此帧的真实标注掩模G的交集比并集得来:
轮廓精确度F的定义如下,其中Pc为划分像素的精确率,Rc为召回率:
式(4)中TP为正确分类的像素[20],FP为错误分类到目标的像素;
式(5)中FN为将原本的目标像素分类错误的数量.直观上,区域相似度度量标注错误像素的数量,而轮廓精确度度量分割边界的准确率.
3.3 实验结果与分析分别在DAVIS 2016和DAVIS 2017数据集上测试本文算法的准确性.
在DAVIS 2016数据集上的实验结果如表1所示,黑体字表示最优性能.本文方法与其余的视频分割方法相比具有很强的竞争力:不使用在线微调时与基准网络OSMN相比,本文方法使用空间感知器(OSVOS和Staple)的性能分别提升4.8%和5.2%;
与同为基于检测的方法PML[12]和PLM[11]相比,使用空间感知器(Staple)时的性能分别提升3.7%和9.0%.OSVOS在不进行微调时仅有52.5%的准确率,经过微调后提升到79.8%,可见对于视频目标分割任务,微调有明显的正向作用.而使用在线微调时,本文网络获得了83.0% 和83.6% 的性能,优于实例级分割Mask⁃RNN和经典的OSVOS,MaskTrack.
表1 本文方法和对比方法在DAVIS 2016数据集上的实验结果对比Table 1 Experimental results of our method and other methods on DAVIS 2016 dataset
在DAVIS 2017数据集上的实验结果如表2所示.本文方法的准确率为56.8%,比OSMN的52.5%提升4.3%,与其他方法相比也毫不逊色.多目标分割比单目标分割的挑战性更大,实验结果普遍较低,OSVOS在微调后也仅有56.6%.FAVOS[21]通过跟踪目标的组成部分最终可以得到完整的分割结果,但出现了相似目标可能丢失的问题.
分析细化残差模块的性能,如表1中的w/o br,结果显示细化残差模块的JMeans提升1.6%,FMean提升1.4%.同时,即使没有使用细化残差模块(即使用空间感知器),本文方法的JMeans也比OSMN方法提升3.2%,FMean提升7.7%.此外,在处理多目标问题时也有良好的性能.
图5是不同方法对DAVIS 2016数据集的部分视频帧进行分割的结果比较:可以看到,对于drift⁃chicane序列的第5帧和第41帧,OSMN在车转弯前将烟雾错误地识别成汽车,转弯后又将汽车的一部分识别为烟雾,导致区域变小;
而本文方法能有效地判别目标位置和大小.对于Paraglid⁃ing⁃launch序列的第32帧和第73帧,可以看到本文算法对伞绳的分割更好,说明细化残差模块可以有效地处理边界模糊的情况,但与标签图像相比,性能还有待提高.
图5 不同方法对DAVIS 2016数据集的drift-chicane序列的第5帧(a)和第41帧(b),Paragliding-launch序列的第32帧(c)和第73帧(d)进行图像分割的结果Fig.5 The segmentation results of the 5th frame (a)and the 41st (b)of the drift-chicane sequence,the 32nd (c)and the 73rd frame of the Paragliding-launch sequence (d)on the DAVIS 2016 dataset by different methods
图6为本文方法对DAVIS 2016数据集的部分视频帧进行分割的定性结果:第一行为原始视频帧图像,第二行为该帧的真实标签,第三行为本文方法获得的结果.选取blackswan,breakdance,parkour,kite⁃surf序列,可以看到,整体表现优异,边缘细致清晰,但在风筝线部分出现断点情况.
图6 本文方法对DAVIS 2016数据集的一些视频帧进行分割的定性结果:(a)原始视频帧图像;
(b)该帧的真实标签;
(c)本文方法的分割结果Fig.6 The qualitative segmentation results of some video images of the DAVIS 2016 dataset:(a)the original color image of the video frame,(b)the ground truth of the image,(c)segmentation results by our method
图7为本文算法对DAVIS 2017数据集的部分视频帧进行分割的定性结果:第一列和第二列为bmx⁃trees序列的第15帧和第37帧,此序列的背景较为模糊,但本文方法仍然可以很好地分离目标与背景,在碰到树木时也可以有效分割;
第三列和第四列为pigs序列的第17帧和第48帧,当三只猪距离较远时本文方法的分割结果优秀,但重叠时会出现识别失误.
图7 本文方法对DAVIS 2017数据集的一些视频帧进行分割的定性结果:(a)原始视频帧图像;
(b)该帧的真实标签;
(c)本文方法的分割结果Fig.7 The qualitative segmentation results of some video images of the DAVIS 2017 dataset:(a)the original color image of the video frame,(b)the ground truth of the image,(c)segmentation results by our method
本文将调制网络前向传播得到的参数加入调制层,使网络关注于前景目标;
将空间感知器获得的当前帧的目标位置信息作为空间输入,改进了OSMN方法使用前帧掩模可能导致传播漂移的不足.在网络后端使用细化残差模块获得更多的特征,改善了边界模糊问题,进一步提高了分割的准确率.实验结果表明,本文方法可以有效地分割视频目标,提升了准确率;
但对于线状物体和重叠等复杂情况仍有改进的空间,未来可以考虑引入注意力机制等方法.
扩展阅读文章
推荐阅读文章
老骥秘书网 https://www.round-online.com
Copyright © 2002-2018 . 老骥秘书网 版权所有