一种基于卷积神经网络的视频语义场景分割方法与流程

文档序号:13472869阅读:437来源:国知局
一种基于卷积神经网络的视频语义场景分割方法与流程
本发明属于图像处理和机器视觉中的视频场景分割
技术领域
,更具体地,涉及一种基于卷积神经网络的视频语义场景分割方法。
背景技术
:通常情况下,人们并不从视频镜头层面上来理解视频内容,而更习惯从场景层次上去理解视频内容,这是因为镜头只是视频结构中的一个组成单元,不能完整的表达语义信息,容易造成信息的丢失。但场景是一个镜头类的集合,包含着大量的语义信息,因此更加符合人们的理解习惯,也使得视频场景分割的研究更具有现实意义。将内容上有联系的一系列镜头结合起来,用来描述视频中含有某一语义信息的事件或者活动,我们称之为镜头聚类。得到的镜头簇也可称之为场景、事件、情节、故事单元等。显而易见,场景聚类具有时序相关的特性,按照摄像拍摄手法的不同可以分为三种形式:连续场景、交叉场景和混合场景。正是因为场景没有标准的定义,视频的类型又丰富多样,因此目前仍没有一个行之有效的场景分割方法。但研究者们提出的各种视频场景分割方法也给该问题提供了解决思路。一般地,视频场景分割可以分为传统的场景分割和利用机器学习的场景分割两种。传统的视频场景分割不需要加入人工标记,主要采用视频关键帧底层图像特征,如基于谱聚类和基于分层聚类的视频场景分割方法。该类方法缺乏很好的可伸缩性,大多数情况下都需要人工的方式来完成关键帧特征的选取以及最终聚类数目的确定,对于聚类的效率和聚类质量有着直接影响。其次视频底层结构与高层结构之间还存在着语义鸿沟的问题。目前大多数视频场景分割都是基于传统分割方法,首先提取镜头关键帧的单特征或者多特征,然后进行多特征融合,利用相似度比较方法进行聚类,最后得到场景分割结果。虽然算法结构简单,时间性能较好,但特征提取过程和融合的过程中容易造成信息的丢失,并且未考虑到视频场景分割的时序性问题,因此对于略为复杂的场景分类情形效果较差。技术实现要素:针对现有技术的以上缺陷或改进需求,本发明提供了一种基于卷积神经网络的视频语义场景分割方法,由此解决现有视频场景分割方法在特征提取过程和融合的过程中容易造成信息的丢失,并且未考虑到视频场景分割的时序性问题而导致的对场景分类效果较差的技术问题。为实现上述目的,本发明提供了一种基于卷积神经网络的视频语义场景分割方法,包括:对待分割视频进行镜头分割得到分割后的镜头,取每个镜头的中间帧作为镜头关键帧;取待分割视频中的部分视频帧作为网络训练样本集,取镜头关键帧作为测试样本集,并对网络训练样本集中的图像以及测试样本集中的图像进行缩小;基于缩小后的网络训练样本集以及缩小后的测试样本集对卷积神经网络进行训练,输出每个镜头关键帧的语义特征向量;利用每个镜头关键帧的语义特征向量以及镜头时序特征,计算镜头之间的距离,然后逐一比较镜头之间的距离,将镜头距离小于预设阈值的镜头作为同一镜头簇,最后将每个镜头簇的末尾镜头的最后一帧作为场景边界,由此完成场景分割。优选地,镜头关键帧的语义特征向量表示为:f=(f1,f2,…,fi,…,fn),其中,yi表示镜头关键帧的第i个特征,fi表示镜头关键帧经标准化后的第i个特征,n表示语义特征向量的维数。优选地,所述利用每个镜头关键帧的语义特征向量以及镜头时序特征,计算镜头之间的距离,包括:由得到镜头p与镜头q之间的语义特征向量之间的距离d1,其中,fp表示镜头p关键帧的语义特征向量,fq表示镜头q关键帧的语义特征向量,fp(j)表示镜头p关键帧的语义特征向量中的第j个特征,fq(j)表示镜头q关键帧的语义特征向量中的第j个特征;由得到镜头p与镜头q之间的时序特征距离,其中,mp表示镜头p的中间帧序号,mq表示镜头q的中间帧序号,l表示待分割视频总帧数;由d=d1+αd2得到镜头p与镜头q之间的镜头距离,其中,α表示时序特征的加权系数。优选地,所述逐一比较镜头之间的距离,将镜头距离小于预设阈值的镜头作为同一镜头簇,最后将每个镜头簇的末尾镜头的最后一帧作为场景边界,由此完成场景分割,包括:(1)分别将每个镜头作为一个镜头簇;(2)依次计算第一个镜头簇中的镜头与预设范围内的镜头簇中的镜头之间的镜头距离,将镜头距离小于预设阈值的镜头作为同一个目标镜头簇;(3)以目标镜头簇内的最后一个镜头作为起点,依次计算该最后一个镜头与预设范围内的镜头簇中的镜头之间的镜头距离,将镜头距离小于预设阈值的镜头归为目标镜头簇;(4)重复执行步骤(3),直至搜索不到满足镜头距离小于预设阈值的镜头;(5)以目标镜头簇的下一个镜头作为起点,重复执行步骤(2)~步骤(4),直至搜索结束;(6)将每个目标镜头簇的末尾镜头的最后一帧作为场景边界,以此完成场景分割。优选地,所述预设范围为:其中,stotal表示镜头总帧数,smin表示最短的镜头帧数,smax表示最长的镜头帧数,videorate表示帧率,m表示视频帧数。总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:1、本发明利用卷积神经网络提取图像特征,既保证了镜头信息的完备性,又避免了特征选取不当以及多特征融合造成的信息丢失,本发明具有较高的特征提取准确率。2、本发明提出了基于语义向量的镜头重叠链方法,更好的利用了关键帧的高层语义和视频流的时序关系,有利于视频场景分割正确率的提高。附图说明图1是本发明实施例提供的一种基于卷积神经网络的视频语义场景分割方法的流程示意图;图2是本发明实施例提供的一种卷积神经网络结构示意图;图3是本发明实施例提供的一种卷积神经网络中每一层的可视化结果示意图;图4是本发明实施例提供的一种样例视频的场景分割效果图。具体实施方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。针对现有的视频场景分割方法中,特征提取或者融合过程导致的场景语义分类错误,聚类算法未考虑到场景的时序特性等不足之处,本发明提供了一种基于卷积神经网络的视频语义场景分割方法,能最大限度完善场景语义分类的不足以及提高聚类的准确率。视频场景分割的目的在于得到一段视频流中场景的聚类结果,将一段视频线切分为多个相互独立的镜头,然后根据镜头相似性得到多个镜头簇也称为场景。其他的基于机器学习的视频场景分割方法,利用镜头的单特征或多特征融合的方式,对测试视频中的目标物体进行分类,通过比较两个镜头中目标物体的相似度从而判断是否属于同一场景。这种借助目标物体来区分是否属于同一场景的方式,容易出现较大的误差。本发明结合卷积神经网络提取图像特征,将镜头的特征表示为由场景相似度组成的语义概念矢量,这种表示形式既可以得到较为完善的图像特征,又可以获得初步的场景分类结果,对后续的场景聚类步骤有重要意义。如图1所示为本发明实施例提供的一种基于卷积神经网络的视频语义场景分割方法的流程示意图,在图1所示的方法中,包括以下步骤:s1:对待分割视频进行镜头分割得到分割后的镜头,取每个镜头的中间帧作为镜头关键帧;其中,镜头分割可以采用以下方式实现:为了便于对本发明实施例的理解,以imagelab视频场景分割数据集raidataset中的第三部视频为例,数据集网址为:http://imagelab.ing.unimore.it/imagelab/researchactivity.asp?idactivity=19,在镜头分割过程中,提取视频每一帧的颜色直方图,其中颜色直方图是将图像的rgb三通道分别划分为32个灰度级。然后在进行镜头边界检测时,利用两帧之间的距离来表示两帧或相隔数帧之间是否发生了突变和渐变。假设给出一段视频的两个连续镜头,e表示前一个镜头的结束帧,s表示后一个镜头的起始帧。f表示颜色特征,计算两帧之间的差异公式如下:其中,n=(e+s)/2表示两个镜头的帧间位置,d(f(n-w),f(n+w))为第i帧和第j帧的帧间距离,距离计算公式利用了卡方距离和欧氏距离的加权和:根据实际设置w的初始值为0.5。同时为了纠正由于某些原因导致属于同一镜头的两帧间距离超过阈值这一误检。算法定义了一个误差峰值t,当两者之间的距离仍大于此峰值时,则认为镜头在此处确实发生了突变或渐变。通过计算各变化候选区域与相邻视频帧的差异极值,达到修正误检帧的效果。具体计算公式如下:c={ti=(fi,li)}其中,fi代表变化候选区域首帧所在的位置,li代表区域尾帧的位置。在检测渐变区域时,从变化区域的最后一帧开始至少要大于ts帧后才进行变化检测。在ts帧之外,重复上述的合并验证过程,当w=0.5时检测突变区域;检测突变区域时,不断增大w的值以寻找有显著性变化的位置从而确定最后的渐变镜头区域。具体过程如下:step1:初始化参数:帧间差异阈值为t=80,误检的峰值阈值为tp=40,ts=20,两帧中值w=0.5,最大帧中值为1.5,镜头候选变化集记为c,镜头变化集记为tr;step2:当w=0.5时,检测的是镜头是否发生了突变;具体方法是:遍历整个视频流的视频帧,提取所有视频帧的rgb颜色直方图,利用卡方距离和欧式距离计算相邻两帧帧间差异值。若差异值大于阈值t,则认为该位置可能发生了镜头突变,并将该变化域放入到候选变化集中。由于在录制视频过程中可能会存在镜头剧烈抖动的情况,进而可能导致本来没有发生变化的两帧之间的差异值超过阈值t。故而,还要对候选变化集做一个误差检测,即计算差异峰值peak。对候选变化集中的每一个变化域求取最大差异值max,然后计算候选变化域开始前的最后一帧与变化域的第一帧的差异值和候选变化域的最后一帧与变化域结束后的第一帧的差异值的较小值min,然后将最大差异值max减去min得到差异峰值peak。若该值大于阈值tp,则认为在此变化域处确实发生了突变,并将此变化域放入到镜头变化集tr中。同时,在此变化域后面设置一个安全区域ts,对于在此安全区域范围内的视频帧或者候选变化域不再进行镜头边界检测。直至遍历整个候选变化集,从而完成突变镜头边界检测。step3:完成突变检测后,逐步增加w的值,增加步长为0.5,从而进行渐变镜头边界检测,原理与突变检测基本一致,但是有几个细节地方在此做出说明:此处求取的是相隔2w帧的两帧帧间差异值;在计算峰值peak时,求取min时,计算的是变化域开始前的倒数第2w帧与变化域的第一帧的差异值和变化域结束后的第2w帧与变化域的最后一帧的差异值的较小值;step4:在完成突变检测和渐变检测之后,按照镜头变化集,将部分合并起来,得到最终镜头分割结果。在上述镜头分割之后,针对已分割好的镜头,取每个镜头中间帧作为镜头关键帧,选取方式见公式(1):其中,frame表示每一个镜头的视频帧集合,length表示该镜头的长度,keyframe则代表该镜头的关键帧。s2:取待分割视频中的部分视频帧作为网络训练样本集,取镜头关键帧作为测试样本集,并对网络训练样本集中的图像以及测试样本集中的图像进行缩小;其中,在步骤s2中可以利用双三次插值算法对样本集图像进行缩小,原理如下:对于每一个待求像素点x,其像素值可由其相邻左右各两个像素加权求得:其中,对于不同的s值有三次插值基函数如下:先利用公式(2)(3)可以对每个4×4窗口内每个纵列求临时插值像素点,然后对这四个临时像素点利用同样的原理求得最终的待求像素点像素,从而实现图像缩小。s3:基于缩小后的网络训练样本集以及缩小后的测试样本集对卷积神经网络进行训练,输出每个镜头关键帧的语义特征向量;其中,在步骤s3中主要包括卷积神经网络初始化、卷积神经网络前向传播、卷积神经网络反向传播以及语义向量获取。卷积神经网络初始化:搭建好网络结构后,包含输入层、卷积层、池化层和输出层。对于输出层,先设置n维场景语义向量,训练集中样本属于哪个场景语义就将向量对应位置置1,反之置0。然后需要对权值参数进行初始化,即初始化卷积核。卷积核内权值参数全部随机初始化至内,其中ni和ni+1分别代表该层和下一层内卷积核内参数数量,而偏置参数则统一初始化为0。卷积神经网络前向传播:卷积层的计算方式如下:其中,*代表卷积操作,x(l,k)表示第l层第k组特征映射,x(l-1,p)表示第l-1层第p组特征映射,w(l,k,p)表示第l-1层中第p组特征映射到第l层中第k组特征映射中的卷积核,b(l,k)表示第l层第k组偏置,nl-1表示第l-1层的特征映射个数。池化层与卷积层不同之处在于,如果采用平均池化,则是取每个窗口内的平均值,并设置合适步长使每个窗口不重合,通过这种方式可以较好的保留图像背景信息。如果采用最大值池化,则需要对每个窗口取其窗口内最大值作为输出,通过这种方式可以较好地保留图像细节信息。对于其相邻卷积层每个m×m的池化区域有计算公式如下:g_max(x)=xmax(7)最后全连接层处的计算方式类似于卷积层的形式:f(w,b,x)=a=f(∑wx+b)(8)卷积神经网络的损失函数取均方误差:其中y为真实样本标签,a为实际输出,m×m表示池化区域的尺寸,xk表示每个池化区域第k个像素点,xmax表示每个池化区域的最大像素点,w表示各层的权值矩阵,w表示权值矩阵w中的每一个权值,x表示输入样本。卷积神经网络反向传播:反向传播是利用误差不断修正权值和偏置参数的过程。(a)全连接层到池化层。记z=∑wx+b,全连接层处的参数梯度求解如下:其中,j(w,b,x,y)表示在输入为x,输出标签为y的情况下,现有的权值矩阵w和偏置b带来的均方误差。(b)池化层到卷积层。对于平均池化,其实质上是对于上一层特征映射采用全1矩阵进行卷积的过程,因此误差值应该是等值传递的,然后再除以均值化所计算用的窗口大小m2。另外,误差传递至池化层时,误差矩阵大小将与其池化层内每个特征映射大小一致,因此需要先将误差矩阵大小扩大。这里可以使用克罗内克积对误差矩阵进行扩展,计算方式如下:此处a即为池化层处的大小为x×y的误差矩阵,b为m×m的全矩阵,由此可得卷积层输出处的误差传递矩阵又由于卷积层处设有激励函数,因此此时卷积层l的误差传递矩阵变成了:其中,xl表示第l层的输入矩阵,xl+1表示第l+1层的输入矩阵,即第l层的输出矩阵。(c)卷积层到池化层/输入层。从卷积层到池化层的误差传递矩阵将变成:其中代表相关操作。因此卷积层出的权值和偏置梯度可以根据相邻两层的误差传递矩阵通过卷积求得,具体方式如下:其中,rot180表示矩阵旋转180°,n为样本数,wl和bl分别表示第l层的权值和偏置矩阵,最后对每个权值和偏置进行更新:其中,μ表示权值更新速率。语义向量获取:每个镜头关键帧在经过卷积神经网络后可得到一组n维特征向量y,然后通过如下公式即可得到镜头关键帧最终的语义特征向量f:f=(f1,f2,…,fi,…,fn),其中,yi表示镜头关键帧的第i个特征,fi表示镜头关键帧经标准后的第i个特征,n表示语义特征向量的维数。s4:利用每个镜头关键帧的语义特征向量以及镜头时序特征,计算镜头之间的距离,然后逐一比较镜头之间的距离,将镜头距离小于预设阈值的镜头作为同一镜头簇,最后将每个镜头簇的末尾镜头的最后一帧作为场景边界,由此完成场景分割。其中,在步骤s4中,利用每个镜头关键帧的语义特征向量以及镜头时序特征,计算镜头之间的距离,具体包括:由得到镜头p与镜头q之间的语义特征向量之间的距离d1,其中,fp表示镜头p关键帧的语义特征向量,fq表示镜头q关键帧的语义特征向量,fp(j)表示镜头p关键帧的语义特征向量中的第j个特征,fq(j)表示镜头q关键帧的语义特征向量中的第j个特征;由得到镜头p与镜头q之间的时序特征距离,其中,mp表示镜头p的中间帧序号,mq表示镜头q的中间帧序号,l表示待分割视频总帧数,且d2∈(0,1);由d=d1+αd2得到镜头p与镜头q之间的镜头距离,其中,α表示时序特征的加权系数,可以由实际需要进行确定。其中,在步骤s4中,逐一比较镜头之间的距离,将镜头距离小于预设阈值的镜头作为同一镜头簇,最后将每个镜头簇的末尾镜头的最后一帧作为场景边界,由此完成场景分割,包括:(1)分别将每个镜头作为一个镜头簇;(2)依次计算第一个镜头簇中的镜头与预设范围内的镜头簇中的镜头之间的镜头距离,将镜头距离小于预设阈值的镜头作为同一个目标镜头簇;(3)以目标镜头簇内的最后一个镜头作为起点,依次计算该最后一个镜头与预设范围内的镜头簇中的镜头之间的镜头距离,将镜头距离小于预设阈值的镜头归为目标镜头簇;(4)重复执行步骤(3),直至搜索不到满足镜头距离小于预设阈值的镜头;(5)以目标镜头簇的下一个镜头作为起点,重复执行步骤(2)~步骤(4),直至搜索结束;(6)将每个目标镜头簇的末尾镜头的最后一帧作为场景边界,以此完成场景分割。其中,预设范围为:其中,stotal表示镜头总帧数,smin表示最短的镜头帧数,smax表示最长的镜头帧数,videorate表示帧率,m表示视频帧数。为了便于对本发明提出的一种基于卷积神经网络的视频语义场景分割方法的理解,下面以一个具体的实施例对本发明方法进行验证。在本发明实施例中,随机选取来自9个场景部分视频帧作为网络训练集,设定了9维语义向量。取每个镜头的关键帧灰度图像作为测试集,再利用双三次插值算法将样本集图像进行缩小至28×28,最后拉伸为一条长为784的一维向量。卷积网络结构包含输入层、卷积层、池化层和输出层。对于输出层,先设置9维场景语义向量,训练集中样本属于哪个场景语义就将向量对应位置置1,反之置0。然后需要对权值参数进行初始化,即初始化卷积核。卷积核内权值参数全部随机初始化至内,其中ni和ni+1分别代表该层和下一层内卷积核内参数数量,而偏置参数则统一初始化为0。网络结构如图2所示,参数如下:c1:6个5×5的卷积核,步长为1,采用sigmoid激励函数;s1:2×2的滤波器,采用平均池化方式;c2:12个5×5的卷积核,步长为1,采用sigmoid激励函数;s2:2×2的滤波器,采用平均池化方式;f1:全连接层,192个节点,也采用sigmoid激励函数。卷积网络训练效果如图3所示。利用每个镜头关键帧的语义特征向量以及镜头时序特征,计算镜头之间的距离,其中以卷积网络训练所输出的9维向量作为语义特征,两语义特征之间的距离用巴氏距离衡量:其中,p和q分别表示两镜头的语义向量。另外,两镜头的时序特征距离计算如下:其中m是镜头的中间帧序号,l是总帧数,d2∈(0,1)。因此,镜头间距离d=d1+αd2。α={0,5,10,15,20,25,30},优选30。通过改进镜头重叠链的搜索方式,其具体搜索方式如下:(1)先将每个镜头各自作为一个镜头簇,从第一个镜头簇开始逐一比较镜头之间的距离,若镜头簇距离小于阈值thresh(优选为1),则将其作为同一镜头簇;(2)以该镜头簇内最后一个镜头作为起点进行下一轮比较;(3)对于每一个镜头簇,每一轮仅与规定范围r内的镜头作比较,直至搜索完毕;其中,stotal指的是镜头总帧数,smin指的是最短的镜头帧数,smax指的是最长的镜头帧数,videorate则是帧率,n表示视频帧数。(4)将每个镜头簇的末尾镜头的最后一帧作为场景边界,由此完成场景分割。最终场景分割的结果如表1,而视频分割效果见图4。表1场景序号起始时间(分秒)结束时间(分秒)100:0000:24200:2500:39300:4000:53400:5401:12501:1301:34601:3501:48701:4902:16802:1702:40902:4103:171003:1804:221104:2304:411204:4205:101305:1105:371405:3806:211506:2207:371607:3809:30本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1