一种基于连续拷贝帧序列的拷贝视频检测方法与流程

文档序号:15204775发布日期:2018-08-21 07:26阅读:215来源:国知局

本发明涉及多媒体信息处理技术领域关于拷贝视频检测的方法,是一种能够适应多种不同编辑变换的视频检测方法。



背景技术:

随着网络技术,视频硬件处理技术和软件处理技术的飞速发展,视频数据在众多领域呈现海量增长的趋势。与此同时,互联网用户的快速增加和视频技术的普遍化,社交媒体平台视频共享等因素,使得视频数据的下载,再编辑和重新上传更加方便快捷,互联网上的视频数量和种类呈爆炸型增长。以youtube视频网站为例,每分钟就有超过100小时数据量的视频被下载,在一些社交网站,每天同样有大量的视频被下载和分享,这就导致互联网上充斥着大量的相似或者拷贝视频,且越来越多。相关研究结果显示,在youtube,googlevideo和yahoo_video上基于一些流行的关键词进行视频检索,返回结果中有将近27%的视频是相似视频,这大大降低了视频检索的效率和准确度。这些相似视频中除了部分是完全一模一样的视频之外,更多的是一些经过了视觉变换或者后期制作等再编辑的拷贝视频。常见的拷贝视频编辑变换的方式如图1所示,包括模糊变换、亮度对比度变化、比例变化、内容变化、画中画、拉伸变换、组合编辑以及镜像等。大量拷贝视频的存在会带来许多问题,例如视频内容监管难度增大、视频版权侵犯现象普遍、视频检索效果不理想,视频存储空间浪费等多方面影响。拷贝视频检测技术可以实现对这些相同或者几乎相同的视频的筛选,这对于视频内容监管、视频版权保护和提高检索效率等都有很大的意义。

利用计算机进行拷贝视频检测研究是近年来人们普遍关注的新兴研究课题,主要涉及的关键帧(指按一定的时间间隔提取的视频数据帧,图像处理领域的常用术语,并不是指关键帧的内容有何特殊之处)相似性匹配、视频子序列相似性匹配等技术已经得到了众多学者和机构的关注。特别是关键帧相似性匹配已经作为一项重要任务出现在视频检索权威评测机构trecvid(trecvideoretrievalevaluation)的任务列表中。在2014年第一届全国特定音视频检索识别挑战赛和2016年第一届全国网络舆情大赛中,视频内容拷贝检测也被作为检测任务之一。目前,拷贝视频片段检测技术研究主要集中于基于视频关键帧特征的相似性匹配以及视频子序列的相似性匹配两方面。

基于视频关键帧特征的相似性匹配主要运用关键帧的全局特征和局部特征进行相似性匹配。关键帧的全局特征主要是指颜色、形状、纹理以及空间关系等全局视觉特征,将一幅关键帧某个特征的全局信息用简单的向量进行表示。全局特征的优点是计算量小,对相同内容或者变化不是很大的拷贝视频比较有效,但全局特征极易受到光照、裁剪等因素的干扰,很难应对经过了复杂编辑变换的拷贝视频,因此不够鲁棒。与全局特征相比,局部特征的鲁棒性要高很多,主要包括尺度不变特征转换(scaleinvariantfeaturetransform,sift)、加速鲁棒特征(speededuprobustfeatures,surf)、orb(orientedfastandrotatedbrief)等,可以应对拷贝视频中的光照变换、旋转变换、尺度变换和几何变换等复杂的编辑变换。但是,局部特征点检测算法复杂,特征点数量多,局部描述子维度高,都使得采用局部特征进行关键帧相似性匹配的计算量比采用全局特征大很多,匹配效率较低,在应对大规模数据集时算法的耗时较高。

对于视频子序列相似性匹配方面的研究主要包含两类:基于模板序列匹配的视频子序列相似性匹配和基于帧融合的视频子序列相似性匹配。模板序列匹配是指以待检测视频序列的长度为窗口长度,然后以一个固定步长在参考视频序列中依次滑动,度量窗口内对应视频序列的相似度值,找到整个滑动过程中相似度值最大的位置,如果此时的相似度值大于事先设定的阈值,则此时窗口中的序列即为对应的待检测视频和参考视频中的拷贝序列。基于模板序列匹配的视频子序列相似性匹配方法计算简单、容易实现,但它很难应对帧率改变、插帧、丢帧等视频编辑变换,在视频规模较大时,基于模板序列匹配的方法时间复杂度较高,而且也无法解决待检测视频由拷贝片段和非拷贝片段拼接的情况,适用性较低。基于帧融合的视频子序列相似性匹配方法从待检测视频序列入手,对于待检测视频序列中的每一个关键帧,采用基于关键帧特征的相似性匹配方法在参考视频关键帧中查找与待检测帧最相似的前k个关键帧。为所有的待检测关键帧都得到前k个最相似的参考视频关键帧后,再通过视频子序列的时序信息进行拷贝视频片段的判别和定位。基于帧融合的方法能够应对视频帧率改变、插帧、丢帧等编辑变换,也能够解决视频中只存在部分拷贝片段的情况,但基于帧融合的方法计算复杂,算法实现也比较难。

因此这一系列研究面临拷贝视频检测中的一些典型限制:一是当前绝大多数研究在都采用鲁棒性较高的局部特征进行关键帧的相似性匹配,导致关键帧相似性匹配速度仍然较慢。影响速度的原因主要有两个:(1)视频库的关键帧数量巨大,要在整个库中进行关键帧相似性匹配是一项费时的任务;(2)关键帧的局部关键点数量庞大,关键点描述向量维度高,在关键帧之间进行局部关键点的一一匹配需要耗费大量时间。二是当前绝大多数的拷贝视频检测研究均侧重于待检测视频与参考视频长度相等的情况和待检测视频是参考视频子集的情况,这两种情况中待检测视频是纯拷贝的,没有非拷贝片段。虽然这些方法在解决各自的应用问题时都取得了比较好的效果,但是应用面太窄,适用性不高,当待检测视频本身也为拷贝片段和非拷贝片段拼接且拷贝片段仅为参考视频中的子集时,当前研究方法就无法解决,检测的准确率也会大大降低。

因此,拷贝视频检测的研究现状还不能有效满足视频检索、版权保护、视频内容监管的需要,提出一种快速有效的拷贝视频检测方法尤为重要。



技术实现要素:

本发明要解决的技术问题是提供一种可以应对多种编辑变换的基于连续拷贝帧序列的拷贝视频检测方法,实现对待检测视频由拷贝片段和非拷贝片段拼接情况的有效检测,提高相似关键帧匹配的速度和准确性,满足视频检索、版权保护、视频内容监管的需求。

本发明的具体技术方案是:

第一步,对参考视频进行处理,即提取参考视频的关键帧、提取关键帧特征,并将关键帧的所属参考视频和帧号信息及其特征存储到参考视频数据库中。

具体方法是:

1.1、从参考视频提取关键帧。每隔t秒从参考视频提取一帧关键帧,t为自然数(实验证明t=1时检测速度和准确率效果最好),提取出的关键帧构成关键帧集合r',r'={r'1,r'2,...,r'j,...,r'n},r'j为第j个参考视频关键帧,1≤j≤n,n为参考视频关键帧的数量,是一个大于1的自然数。

1.2、提取参考视频关键帧集合r'中各参考视频关键帧的特征。将r'中各关键帧图像的尺寸归一化(对图像的尺寸进行一系列标准的处理变换,使之变换为一固定尺寸形式的过程)为227×227,得到归一化后的关键帧集合r={r1,r2,...,rj,...,rn},rj为第j个归一化后的参考视频关键帧,然后将归一化后的关键帧与各关键帧图像的图像均值的差值输入到alexnet卷积神经网络模型(见文献“imagenetclassificationwithdeepconvolutionalneuralnetworks[j],advancesinneuralinformationprocessingsystemsconference(nips),2012,25(2):2012.”即alexkrizhevsky的论文:基于深度卷积神经网络imagenet分类第3页-第7页描述的alexnet卷积神经网络模型)中,选择模型中fc7层的4096维向量作为关键帧的特征,得到n个4096维的特征向量,将这n个4096维的特征向量存储在参考视频数据库中。所述alexnet卷积神经网络模型在imagenet数据集(见文献“l.fei-fei,imagenet:crowdsourcing,benchmarking&othercoolthings,cmuvascseminar,march,2010.”即李菲菲在2010年3月在cmuvascseminar上发表论文《imagenet:众包,标杆和其他很酷的东西》中描述的imagenet数据集)上预训练过。参考视频数据库还包含一张参考视频关键帧表,该表包含n个表项,每个表项包含4个域,即关键帧序号、关键帧所属的参考视频标号,关键帧在所属参考视频中的帧序号,关键帧特征的存放路径。

第二步,提取待检测视频的关键帧,并提取关键帧的特征。

具体方法是:

2.1、从待检测视频提取关键帧,每隔t秒从待检测视频提取视频关键帧,t为自然数(实验证明t=1或2时检测速度和准确率效果最好)。提取出的关键帧构成待检测视频关键帧集合q,q={q1,q2,...qi,...,qm},qi为按时间先后排序的待检测视频关键帧,1≤i≤m,m表示待检测视频关键帧的数量,是一个大于1的整数。

2.2、提取待检测视频关键帧集合q中各待检测视频关键帧特征。将所有关键帧图像的尺寸归一化为227×227,然后将其与图像均值的差值输入到alexnet卷积神经网络模型(也已经在imagenet数据集上预训练过)中,选择模型中fc7层的4096维向量作为待检测视频关键帧的特征。提取m个待检测视频关键帧特征,得到m个4096维的特征向量,每个待检测视频关键帧的特征在提取后直接用于计算,因此无需存储到数据库中。

第三步,基于参考视频关键帧特征和待检测视频关键帧特征,进行关键帧的相似性计算和最相似关键帧匹配。方法为:

3.1、依次访问参考视频关键帧表中的关键帧特征存放路径并读取关键帧特征,将n个参考视频关键帧的4096维特征向量组合在一起,构成一个4096×n的参考视频关键帧特征矩阵。

3.2、将第二步得到的待检测视频关键帧集合q的m个4096维特征向量组合在一起,构成一个4096×m的待检测视频关键帧特征矩阵。

3.3、采用近似最近邻搜索算法(见文献anoptimalalgorithmforapproximatenearestneighborsearching[c],acm-siamsymposiumondiscretealgorithms.societyforindustrialandappliedmathematics,1994:573-582,即1994年aryas的论文:《近似最近邻搜索的优化算法》中第574页-第579页描述的近似最近邻搜索算法,对待检测视频关键帧特征矩阵中的每一行在参考视频关键帧特征矩阵中搜索欧式距离最小的行向量,即找到距离待检测关键帧qi最近的一个关键帧j*为最相似关键帧序号,并计算出qi和之间的距离得到待检测视频关键帧集合q的最相似参考视频关键帧序号列表r*。具体方法如下:

3.3.1初始化变量i=1。

3.3.2初始化变量j=1,初始化最相似关键帧序号j*=j,初始化最小距离di=di1,di1为第i个待检测视频关键帧与第1个参考视频关键帧r1的距离,

为待检测视频关键帧qi的特征向量,为vq(qi)的第p维,为参考视频关键帧r1的特征向量,为vr(r1)的第p维,1≤p≤4096。

3.3.3计算qi与rj的特征向量的距离dij,为参考视频关键帧rj的特征向量,为vr(rj)的第p维。

3.3.4如果dij<di,则令di=dij,令最相似关键帧序号j*=j,转3.3.5;否则di和j*保持不变,转3.3.5。

3.3.5j=j+1,如果j>n,说明已经计算和比较完所有参考视频关键帧与qi的特征向量距离,最小距离为最相似关键帧为转3.3.6;如果j≤n,转3.3.3。

3.3.6i=i+1。

3.3.7如果i≤m,转步骤3.3.2;否则,说明已经找到所有待检测视频关键帧的最相似参考视频关键帧,所有待检测视频关键帧的最相似参考视频关键帧组成最相似帧列表r*,并得到每个待检测视频关键帧与其最相似参考帧之间的距离,即最相似帧距离d1,d2,...di,...,dm,执行第四步。

第四步,基于待检测视频关键帧集合q的最相似帧列表r*和最相似帧距离d1,d2,...di,...,dm,判断待检测视频关键帧是否为拷贝帧,寻找连续拷贝帧序列,从而判断待检测视频是否为拷贝视频,并对拷贝视频中的拷贝片段进行定位。

具体方法为:

4.1、根据最相似帧距离d1,d2,...di,...,dm,初步判断每个待检测视频关键帧是否为拷贝帧,方法是:

4.1.1归一化q1,q2,...qi,...,qm的最相似帧距离d1,d2,...di,...,dm,并计算归一化最相似帧距离的平均值k。方法如下:

4.1.1.1初始化变量i=1。

4.1.1.2归一化最相似帧距离s为待检测视频关键帧与其最相似帧的欧式距离的总和,

4.1.1.3i=i+1。

4.1.1.4如果i≤m,执行4.1.1.2;否则,说明已经计算完每个待检测视频关键帧的归一化最相似帧距离,执行4.1.1.5。

4.1.1.5计算归一化最相似帧距离的平均值

4.1.2根据待检测视频关键帧的归一化最相似帧距离d1,d2,...,di,...,dm确定待检测视频关键帧q1,q2,...qi,...,qm的拷贝属性值y1,y2,...,yi,...ym。具体方法如下:

4.1.2.1初始化变量i=1。

4.1.2.2如果di<k,则待检测视频关键帧qi的拷贝属性值yi=1(说明qi是拷贝帧),转步骤4.1.2.3;否则,yi=-1(说明qi不是拷贝帧),转步骤4.1.2.3。

4.1.2.3i=i+1。

4.1.2.4如果i≤m,执行4.1.2.2;否则,说明已得到所有的待检测视频关键帧的拷贝属性值y1,y2,...yi,...,ym,执行步骤4.2。

4.2、基于步骤4.1.2得到的待检测视频关键帧q1,q2,...qi,...,qm的拷贝属性结果y1,y2,...yi,...,ym,检测并纠正错判的关键帧拷贝属性。

4.2.1根据关键帧的拷贝属性值,对待检测视频关键帧进行区间划分,得到待检测视频关键帧区间集合w、正区间集合w+和待验证关键帧区间集合w*:先按帧号顺序对待检测视频关键帧进行区间划分,相邻关键帧拷贝属性不一样(yi≠yi+1)的帧号位置i为第j1个区间和第j1+1个区间分界点,区间内的关键帧号是连续的且拷贝属性值均是相同的,都等于yi,yi即为区间的拷贝属性,区间内所包含的关键帧数量为区间的长度从划分出来的待检测视频关键帧的区间中筛选出长度小于l(l为长度阈值,实验证明l=4具有最佳效果)的区间为待验证关键帧区间,若视频中所有拷贝属性为1的区间均为待验证区间或不存在拷贝属性为1的区间,则判定该视频为非拷贝视频,转第五步,反之则为拷贝视频。如果拷贝视频中不存在待验证区间,转4.3;如果拷贝视频中存在待验证区间,转4.2.2。具体方法如下:

4.2.1.1初始化变量i=1。

4.2.1.2初始化变量j1=2,令第一分界点x1=1。

4.2.1.3如果yi≠yi+1,则令第j1分界点转4.2.1.4;如果yi=yi+1,令j1=j1+1,转4.2.1.3;

4.2.1.4i=i+1。

4.2.1.5如果i<m,执行4.2.1.3;否则,说明已经找出所有的区间分界点,完成对待检测视频关键帧区间的划分,分界点个数m=j1+1,第m分界点xm=m,待检测视频关键帧区间集合w={w1,w2,...,wn,...wm-1},wn为第n个区间,1≤n≤m-1,转4.2.1.6。

4.2.1.6初始化关键帧区间个数变量j#=1,初始化待验证关键帧区间计数变量n*=1,初始化待验证区间总数n*=1,初始化正区间计数变量n+=1,初始化正区间总数n+=1,初始化正区间集合w+和待验证关键帧区间集合w*为空集。

4.2.1.7令如果区间内的关键帧属性值为1,则该区间属于正区间集合w+,n+=n++1;如果l(wj#)<l,则为待验证关键帧区间属于待验证区间集合w*,区间的起始边界为结束边界为n*=n*+1。

4.2.1.8j#=j#+1。

4.2.1.9如果j#≤m,执行4.2.1.7,否则,说明已经找出所有待验证区间和正区间,令n*=n*,n+=n+,令待验证区间集合为正区间集合为转4.2.1.10。

4.2.1.10如果即拷贝属性为1的正区间均为待验证区间,则说明该待检测视频为非拷贝视频,转第五步;如果则说明待检测视频为拷贝视频且关键帧区间不存在待验证区间,无需对关键帧的拷贝属性进行重新验证,可直接对拷贝片段进行定位,转4.3;如果且w+≠w*则说明待检测视频为拷贝视频,且存在待验证区间需要验证拷贝属性,转4.2.2。

4.2.2对4.2.1得到的待验证区间集合w*中的待验证区间按长度从小到大的顺序对其拷贝属性的正确性进行验证并纠正错判的关键帧拷贝属性,方法是:

如果区间的长度小于其前后相邻区间的长度,则判定该区间的拷贝属性是错误的,其所包含的待检测视频关键帧即为错判的关键帧,将错判关键帧的拷贝属性值取相反数,即完成对该区间的纠正。在纠正后的基础上再进行下一个待验证区间的判断。检测出错判的关键帧并纠正后,拷贝属性值为1的区间内的待检测视频关键帧即构为连续拷贝帧序列cjj={cjj1,cjj2,...,cjji,...,cjjl}(jj表示第jj个连续拷贝帧序列),l即为该拷贝帧序列的长度,该序列中的第一个关键帧cjj1和最后一个关键帧cjjl的时间位置,即为拷贝片段在待检测视频中的时间起始位置和结束位置。具体方法如下:

4.2.2.1将待验证关键帧区间集合w*内的区间按长度从小到大的顺序进行排列,排列后的待验证关键帧区间集合为w#其中aj为在w*中对应的区间的序号n*,1≤aj≤n*

4.2.2.2初始化变量n*=1,处理对象为排列后的待验证关键帧区间。

4.2.2.3如果区间的长度小于其在待检测视频关键帧区间中前后相邻的区间即的长度,则区间的拷贝属性是错误的,将区间内的关键帧拷贝属性值取反,即将与其前后相邻区间合并为一个区间,使得w、w*和w+得到更新。

4.2.2.4ii=ii+1。

4.2.2.5如果ii≤n*,执行4.2.2.3;否则,说明完成对待验证关键帧区间的重新判断,得到纠正后的关键帧拷贝属性值,并得到更新了的正区间集合z为最终的正区间个数。w+中的正区间内的关键帧构成连续拷贝帧序列cjj,cjj={cjj1,cjj2,...,cjji,...,cjjl},即为该拷贝帧序列的长度,该序列中的第一个关键帧cjj1和最后一个关键帧cjjl的时间位置,即为拷贝片段在待检测视频中的时间起始位置和结束位置。

4.3、对拷贝片段进行判断与定位,方法是:

根据3.3中得到的待检测视频关键帧集合q的最相似参考视频关键帧序号列表r*,记录连续拷贝帧序列cjj中每一个关键帧的最相似参考视频关键帧,找出其中长度最长的连续参考视频关键帧序列ejj,ejj={ei,ei+1,...,ei+b|i≥1,i+b≤l},ei为长度最长的参考视频关键帧序列的第一帧的帧号(i等于第一帧ei所对应的待检测视频关键帧在连续拷贝帧序列cjj中的位置jji),b为该关键帧序列ejj的长度,以ejj作为定位基准,将该序列向前和向后扩展,使得扩展后的序列长度为连续拷贝帧序列的长度l,得到

扩展后的最长最相似参考视频关键帧序列的第一帧ei-i+1和最后一帧ei+l-i+1的时间位置即为拷贝片段在参考视频中的起始位置和结束位置。执行第五步。

第五步,如果待检测视频被判断为拷贝视频,输出“待检测视频为拷贝视频”消息,并输出拷贝片段的在待检测视频和参考视频中的起始位置和结束位置,结束;如果待检测视频被判断为非拷贝视频,输出“待检测视频为非拷贝视频”消息,结束。

采用本发明可以达到以下技术效果:

1、与当前绝大多数研究中基于局部关键点匹配的关键帧相似性匹配方法相比,本发明第二步通过利用alexnet卷积神经网络模型提取关键帧特征,并在第三步基于此特征利用近似最邻近搜索算法进行待检测视频关键帧最相似性参考视频关键帧的匹配,使得进行匹配运算的数据量大大减少,大幅度提高了计算速度;利用alexnet提取到的关键帧特征相对于常用的利用sift、surf构造词袋模型(文献“visualcategorizationwithbagsofkeypoints,workshoponstatisticallearningincomputervisioneccv,2004,44(247):1-22.”译为:基于关键点袋的视觉分类)得到的关键帧特征可以更好地描述关键帧的信息,关键帧相似性匹配的准确率也有大幅的提高。

2、本发明第四步在待检测视频关键帧最相似性帧的匹配结果的基础上判断每一关键帧的拷贝属性,能有效区分拷贝帧和非拷贝帧,并寻找连续拷贝帧序列,从而有效区分拷贝序列和非拷贝序列。因此,采用基于连续拷贝帧序列的方法进行拷贝视频片段的判断与定位可以有效解决待检测视频是由拷贝片段和非拷贝片段拼接的情况。

附图说明

图1为背景技术中介绍的拷贝视频编辑变换示意图。

图2为背景技术中介绍的视频拷贝检测研究中待检测视频与参考视频之间的三种拷贝关系示意图。

图3为本发明总体流程图。

图4为基于alexnet卷积神经网络模型提取的关键帧特征进行关键帧相似性匹配示意图。

图5为第三步得到的待检测关键帧的最相似帧匹配结果示意图。

图6为第四步中4.1.1归一化最相似帧距离得到的结果示意图。

图7为第四步中4.1.2初步判断待检测视频关键帧拷贝属性的结果示意图。

图8为第四步中4.2.1区间划分示意图。

图9为第四步中4.2.2纠正错判关键帧后的结果示意图。

图10为第四步中4.3拷贝片段的判断与定位的示意图。

具体实施方式

图1为背景技术中介绍的拷贝视频编辑变换示意图,图1(a)为源视频,其余均为经过了一定编辑变换的拷贝视频,图1(b)在源视频的基础上进行了高斯模糊,图1(c)在源视频的基础上进行了改变了对比度和亮度,图1(d)为对源视频进行了比例变换,图1(e)对源视频增加了画面内容,图1(f)对源视频进行了画中画编辑,图1(g)对原视频进行了拉伸变换,图1(h)是对原视频进行编辑各种变换的组合,图1(i)是对原视频进行镜像变换。此图说明了拷贝视频编辑变换的种类非常多,要进行拷贝视频检测具有一定的难度,本发明提出的基于连续拷贝帧序列的拷贝视频检测方法可以应对以上多种不同的编辑变换类型。

图2为背景技术中介绍的待检测视频与参考视频之间的拷贝关系示意图,图中i为待检测视频长度与参考视频长度相等且待检测视频为参考视频完整拷贝;图中ii为待检测视频是参考视频一个子集,且待检测视频为完整拷贝;图中iii为待检测视频是部分拷贝,拷贝片段是参考视频中的一个子集。当前研究绝大多数都是解决图中i,ii两种拷贝关系的情况,对于图中iii所示的情况难以应对,本发明提出的基于连续拷贝帧的拷贝视频检测方法可以应对图中iii所示的拷贝关系。

图3为本发明总体流程图,本发明包括以下五个步骤,实验时采用2014年全国第一届特定音视频检索识别挑战赛中“视频拷贝检测”的数据集,包括参考视频和待检测视频,数据集中的待检测视频的编辑变换类型如图1所示:

第一步,对参考视频进行处理,即提取参考视频的关键帧、提取关键帧特征,并将相关信息存储到参考视频数据库中,方法是:

1.1、从参考视频提取关键帧。每隔t秒从参考视频提取一帧关键帧,t为自然数,令t=1,提取出的关键帧构成关键帧集合r',r'={r'1,r'2,...,r'j,...,r'n},r'j为第j个参考视频关键帧,1≤j≤n,n为参考视频关键帧的数量,是一个大于1的自然数。

1.2、如图4所示,提取参考视频关键帧集合r'中各参考视频关键帧的特征。将r'中各关键帧图像的尺寸归一化为227×227,得到归一化后的关键帧集合r={r1,r2,...,rj,...,rn},rj为第j个归一化后的参考视频关键帧,然后将归一化后的关键帧与各关键帧图像的图像均值的差值输入到alexnet卷积神经网络模型中,选择模型中fc7层的4096维向量作为关键帧的特征,得到n个4096维的特征向量,将这n个4096维的特征向量存储在sqlsever2008中的参考视频数据库中。

第二步,提取待检测视频的关键帧,并基于alexnet卷积神经网络模型提取关键帧的特征,实验时以待检测视频video1为例,video1是在待检测视频数据集中随机抽取的一个视频,其编辑变换类型是模糊变换,方法是:

2.1从待检测视频video1中提取关键帧,每隔t秒从待检测视频提取视频关键帧,令t=1。提取出的关键帧构成待检测视频关键帧集合q,q={q1,q2,...qi,...,qm},qi为按时间先后排序的待检测视频关键帧,1≤i≤m,m表示待检测视频关键帧的数量,是一个大于1的整数。

2.2、如图4所示,提取待检测视频关键帧集合q中各待检测视频关键帧特征。将所有关键帧图像的尺寸归一化为227×227,然后将其与图像均值的差值输入到alexnet卷积神经网络模型中,选择模型中fc7层的4096维向量作为待检测视频关键帧的特征。提取m个待检测视频关键帧特征,得到m个4096维的特征向量,待检测视频关键帧的特征在提取后直接用于计算,因此无需存储到数据库中。

第三步,根据提取的关键帧特征,进行待检测视频关键帧的最相似参考视频关键帧匹配,方法是:

3.1、依次访问参考视频关键帧表中的关键帧特征存放路径并读取关键帧特征,将n个参考视频关键帧的4096维特征向量组合在一起,构成一个4096×n的参考视频关键帧特征矩阵。

3.2、将第二步得到的待检测视频关键帧集合q的m个4096维特征向量组合在一起,构成一个4096×m的待检测视频关键帧特征矩阵。

3.3、如图5所示,采用近似最邻近搜索算法对待检测视频关键帧特征矩阵中的每一行在参考视频关键帧特征矩阵中搜索欧式距离最小的行向量,即找到距离待检测关键帧qi最近的一个关键帧j*为最相似关键帧序号,并计算出qi和之间的距离就是关键帧qi的最相似帧距离di。找到所有待检测视频关键帧的最相似参考视频关键帧帧,并得到所有待检测视频关键帧的最相似帧距离d1,d2,...di,...,dm和待检测视频关键帧集合q的最相似参考视频关键帧序号列表r*。具体方法如下:

3.3.1初始化变量i=1。

3.3.2初始化变量j=1,初始化最相似关键帧序号j*=j,初始化最小距离di=di1,di1为第i个待检测视频关键帧与第1个参考视频关键帧r1的距离,

为待检测视频关键帧qi的特征向量,为特征向量vq(qi)的第p维,为参考视频关键帧r1的特征向量,为特征向量vr(r1)的第p维,1≤p≤4096。

3.3.3计算qi与rj的特征向量的距离dij,为参考视频关键帧rj的特征向量,为特征向量vr(rj)的第p维。

3.3.4如果dij<di,则令di=dij,令最相似关键帧序号j*=j,转3.3.5;否则di和j*保持不变,转3.3.5。

3.3.5j=j+1,如果j>n,说明已经计算和比较完所有参考视频关键帧与qi的特征向量距离,最小距离为最相似关键帧为转3.3.6;如果j≤n,转3.3.3。

3.3.6i=i+1。

3.3.7如果i≤m,转步骤3.3.2,否则,说明已经找到所有待检测视频关键帧的最相似参考视频关键帧,所有待检测视频关键帧的最相似参考视频关键帧组成最相似帧列表r*,并得到所有待检测视频关键帧与其最相似参考帧之间的距离,即最相似帧距离d1,d2,...di,...,dm。如图6所示,图6为视频video1的最相似帧距离结果,横坐标为关键帧帧号,纵坐标为待检测视频关键帧与其最相似帧的距离。执行第四步。

第四步,基于待检测视频关键帧集合q的最相似帧列表r*和最相似帧距离d1,d2,...di,...,dm,判断待检测视频关键帧是否为拷贝帧,寻找连续拷贝帧序列,从而判断待检测视频是否为拷贝视频,并对拷贝片段进行定位。

4.1、根据最相似帧距离d1,d2,...di,...,dm,初步判断每个待检测视频关键帧是否为拷贝帧,方法是:

4.1.1归一化q1,q2,...qi,...,qm的最相似帧距离d1,d2,...di,...,dm,并计算归一化最相似帧距离的平均值k。方法如下:

4.1.1.1初始化变量i=1。

4.1.1.2归一化最相似帧距离s为待检测视频关键帧与其最相似帧的欧式距离的总和,

4.1.1.3i=i+1。

4.1.1.4如果i≤m,执行4.1.1.2;否则,说明已经计算完每个待检测视频关键帧的归一化最相似帧距离,执行4.1.1.5。

4.1.1.5计算归一化最相似帧距离的平均值

4.1.2根据待检测视频关键帧的归一化最相似帧距离d1,d2,...,di,...,dm确定待检测视频关键帧q1,q2,...qi,...,qm的拷贝属性值y1,y2,...,yi,...ym。具体方法如下:

4.1.2.1初始化变量i=1。

4.1.2.2如果di<k,则待检测视频关键帧qi的拷贝属性值yi=1(说明qi是拷贝帧),转步骤4.1.2.3;否则,yi=-1(说明qi不是拷贝帧),转步骤4.1.2.3。

4.1.2.3i=i+1。

4.1.2.4如果i≤m,执行4.1.2.2;否则,说明已得到所有的待检测视频关键帧的初步判断的拷贝属性值y1,y2,...yi,...,ym,执行步骤4.2。对视频video1的关键帧拷贝属性的初步判断结果如图7所示,横坐标为关键帧帧号,纵坐标为关键帧拷贝属性值,纵坐标数值为1的为拷贝帧,纵坐标数值为-1的为非拷贝帧。视频video1中初步判断的拷贝帧为帧号9~11和30~60的待检测视频关键帧。

基于步骤4.1.2得到的待检测视频关键帧q1,q2,...qi,...,qm的拷贝属性结果y1,y2,...yi,...,ym,检测并纠正错判的关键帧拷贝属性:

4.2.1根据关键帧的拷贝属性值,对待检测视频关键帧进行区间划分,得到待检测视频关键帧区间集合w、正区间集合w+和待验证关键帧区间集合w*:先按帧号顺序对待检测视频关键帧进行区间划分,相邻关键帧拷贝属性不一样(yi≠yi+1)的帧号位置i为第j1个区间和第j1+1区间分界点,区间内的关键帧号是连续的且拷贝属性值均是相同的,都等于yi,yi即为区间的拷贝属性,区间内所包含的关键帧数量为区间的长度从划分出来的待检测视频关键帧的区间中筛选出长度小于l,令l=4的区间为待验证关键帧区间,若视频中所有拷贝属性为1的区间均为待验证区间或不存在拷贝属性为1的区间,则判定该视频为非拷贝视频,转第五步,反之则为拷贝视频。如果拷贝视频中不存在待验证区间,转4.3;如果拷贝视频中存在待验证区间,转4.2.2。具体方法如下:

4.2.1.1初始化变量i=1。

4.2.1.2初始化变量j1=2,令第一分界点x1=1。

4.2.1.3如果yi≠yi+1,则令第j1分界点转4.2.1.4;如果yi=yi+1,令j1=j1+1,转4.2.1.3;

4.2.1.4i=i+1。

4.2.1.5如果i<m,执行4.2.1.3;否则,说明已经找出所有的区间分界点,完成对待检测视频关键帧区间的划分,分界点个数m=j1+1,第m分界点xm=m,待检测视频关键帧区间集合w={w1,w2,...,wn,...wm-1},wn为第n个区间,1≤n≤m-1,转4.2.1.6。如图7所示,视频video1的分界点为1,8,11,29,60,120,关键帧区间集合w={w1,w2,w3,w4,w5}

4.2.1.6初始化关键帧区间个数变量j#=1,初始化待验证关键帧区间计数变量n*=1,初始化待验证区间总数n*=1,初始化正区间计数变量n+=1,初始化正区间总数n+=1,初始化正区间集合w+和待验证关键帧区间集合w*为空集。

4.2.1.7令如果区间内的关键帧属性值为1,则该区间属于正区间集合w+,n+=n++1;如果为待验证关键帧区间属于待验证区间集合w*,区间的起始边界为结束边界为n*=n*+1。

4.2.1.8j#=j#+1。

4.2.1.9如果j#≤m,执行4.2.1.7,否则,说明已经找出所有待验证区间和正区间,令n*=n*,n+=n+,令待验证区间集合为正区间集合为转4.2.1.10。如图8(a)所示,l(w1)=7,l(w2)=3,l(w3)=18,l(w4)=31,w2,w4内的关键帧属性值为1,所以视频video1的待验证区间集合为正区间集合为即区间w2为待验证区间,区间w2,w4为正区间。

4.2.1.10如果即拷贝属性为1的正区间均为待验证区间,则说明该待检测视频为非拷贝视频,转第五步;如果则说明待检测视频关键帧区间不存在待验证区间,无需对关键帧的拷贝属性进行重新验证,可直接对拷贝片段进行定位转4.3;如果且w+≠w*说明待检测视频为拷贝视频,且存在待验证区间需要重新判断拷贝属性,转4.2.2。如图8(a)所示,视频video1中且w+≠w*所以video1为拷贝视频,且需重新判断待验证区间的拷贝属性,转4.2.2。

4.2.2对4.2.1得到的待验证区间集合w*中的待验证区间按长度从小到大的顺序对其拷贝属性的正确性进行验证并纠正错判的关键帧拷贝属性,方法是:

如果区间的长度小于其前后相邻区间的长度,则判定该区间的拷贝属性是错误的,其所包含的待检测视频关键帧即为错判的关键帧,将错判关键帧的拷贝属性值取相反数,即完成对该区间的纠正。在纠正后的基础上再进行下一个待验证区间的判断。检测出错判的关键帧并纠正后,拷贝属性值为1的区间内的待检测视频关键帧即构为连续拷贝帧序列cjj={cjj1,cjj2,...,cjji,...,cjjl}(jj表示第jj个连续拷贝帧序列),l即为该拷贝帧序列的长度,该序列中的第一个关键帧cjj1和最后一个关键帧cjjl的时间位置,即为拷贝片段在待检测视频中的时间起始位置和结束位置。具体方法如下:

4.2.2.1将待验证关键帧区间集合w*内的区间按长度从小到大的顺序进行排列,排列后的待验证关键帧区间集合为w#其中aj为在w*中对应的区间的序号n*,1≤aj≤n*

4.2.2.2初始化变量n*=1,处理对象为排列后的待验证关键帧区间。

4.2.2.3如果区间的长度小于其在待检测视频关键帧区间中前后相邻的区间即的长度,则区间的拷贝属性是错误的,将区间内的关键帧拷贝属性值取反,即将与其前后相邻区间合并为一个区间,使得w、w*和w+得到更新。视频video1中,w2为待验证区间,且l(w2)<l(w1)<l(w3),所以区间w2的拷贝属性是错误的,将其拷贝属性值取反为-1,与w1,w3合并为一个区间,合并后的结果如图8(b)所示,此时w={w'1,w'2,w'3},w+={w'2}。

4.2.2.4ii=ii+1。

4.2.2.5如果ii≤n*,执行4.2.2.3;否则,说明完成对待验证关键帧区间的重新判断,得到纠正后的关键帧拷贝属性值,并得到更新了的正区间集合z为最终的正区间个数。w+中的正区间内的关键帧构成连续拷贝帧序列cjj,cjj={cjj1,cjj2,...,cjji,...,cjjl},即为该拷贝帧序列的长度,该序列中的第一个关键帧cjj1和最后一个关键帧cjjl的时间位置,即为拷贝片段在待检测视频中的时间起始位置和结束位置。纠正所有错判关键帧拷贝属性之后,视频video1的正区间集合为因此jj=1,区间w'2内的关键帧构成如图9所示的连续拷贝帧序列c1={q30,q31,...,q59,q60}。

4.3、对拷贝片段进行判断与定位,方法是:

根据3.3中得到的待检测视频关键帧集合q的最相似参考视频关键帧序号列表r*,记录连续拷贝帧序列cjj中每一个关键帧的最相似参考视频关键帧,找出其中长度最长的连续参考视频关键帧序列ejj,ejj={ei,ei+1,...,ei+b|i≥1,i+b≤l},ei为长度最长的参考视频关键帧序列的第一帧的帧号(i等于第一帧ei所对应的待检测视频关键帧在连续拷贝帧序列cjj中的位置jji),b为该关键帧序列ejj的长度,以ejj作为定位基准,将该序列向前和向后扩展,使得扩展后的序列长度为连续拷贝帧序列的长度l,得到

扩展后的最长最相似参考视频关键帧序列的第一帧ei-i+1和最后一帧ei+l-i+1的时间位置即为拷贝片段在参考视频中的起始位置和结束位置。

待检测视频video1的连续拷贝帧序列为c1={q30,q31,...,q59,q60},长度l=30,30s~60s,即为拷贝片段在待检测视频video1中的定位。如图10所示,确定拷贝片段在参考视频中的位置。找出视频video1拷贝帧序列c1={q30,q31,...,q59,q60}所对应的最相似参考视频关键帧序列为r40,r31,...,r69,r70,该序列的帧号是连续的,且长度与c1的长度l=31相同,所以,该序列的第一帧r40的时间位置第40s和最后一帧r70的时间位置第70s为拷贝片段在参考视频中的起始位置和结束位置,即拷贝片段在参考视频中的起始位置为第40s的时刻,结束位置为第70s的时刻,执行第五步。

第五步,如果待检测视频被判断为拷贝视频,输出“待检测视频为拷贝视频”消息,并输出拷贝片段的在待检测视频和参考视频中的起始位置和结束位置,结束;如果待检测视频被判断为非拷贝视频,输出“待检测视频为非拷贝视频”消息,结束。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1