在视频模板库中进行视频匹配的方法

文档序号:6514822阅读:252来源:国知局
在视频模板库中进行视频匹配的方法
【专利摘要】本发明揭示了一种在视频模板库中进行视频匹配的方法,该视频模板库中存储有以时间顺序连接关键帧的特征码得到的视频模板和各特征码对应其在视频模板中出现位置的索引,该方法包括:将查询视频分段,从每个查询视频段中选取关键帧,在每个关键帧中提取特征码;对于每个查询视频段的每个关键帧,提取其特征码,并根据该特征码在视频模板库中的索引查找该特征码出现过的视频模板;根据关键帧在查询视频段中的位置,在视频模板中找到与查询视频段对应的视频模板段,基于特征码比较该查询视频段与该视频模板段是否具有匹配关系;根据查询视频段和视频模板段的匹配关系,得到视频模板在查询视频中对应出现的位置。本发明提高了视频匹配的速度和鲁棒性。
【专利说明】在视频模板库中进行视频匹配的方法
【技术领域】
[0001]本发明属于视频处理领域,特别涉及在视频模板库中进行视频匹配的方法。
【背景技术】
[0002]随着互联网和数字多媒体内容的发展,如何进行快速有效的视频检索具有重要的应用价值。尤其是在广播电视领域,高鲁棒性的大规模模板库索引和快速匹配技术有着广泛的需求。从广电监管部门来看,通过对广告和节目的检测,可以及时的对广告和节目的播出情况进行审核,以查看是否有违规播出的广告和节目。例如国家广播电影电视总局的《广播电视广告播出管理办法》中规定“广播电视的广告播出不得影响广播电视节目的完整性。除在节目自然段的间歇外,不得随意插播广告”。从投放广告的商家来看,一方面,广告商希望对自己投放的广告进行精准的监测,了解投放广告的播出情况和播出效果,例如广告播放次数、播出时间段、播放总长度等等,从而监督电视台履行与之签订的广告播放合同。另一方面,通过对竞争对手广告监测,商家可以了解竞争对手在某个地区某个时间段内的广告投放量,以辅助做出合适的商业决策。显然,要完成上述的视频监测工作,由于电视台数量很多,频道更多,播出时间长,采用人工实时监测的方法显然难以实现,因此需要对广告或电视节目进行自动监测的方法。
[0003]现有的视频模板库匹配技术特征提取过程比较复杂,鲁棒性比较差,无法支持大规模模板库的快速匹配的要求。

【发明内容】

[0004](一)要解决的技术问题
[0005]本发明要解决的技术问题是:如何提高视频模板库中进行视频匹配的速度和鲁棒性。
[0006](二)技术方案
[0007]为了解决上述技术问题,本发明提出了一种在视频模板库中进行视频匹配的方法,该视频模板库中存储有以时间顺序连接关键帧的特征码得到的视频模板和各特征码对应视频模板中其出现位置的索引,该方法包括:
[0008]将查询视频分段,从每个查询视频段中选取关键帧,在每个关键帧中提取特征码;
[0009]对于每个查询视频段的每个关键帧,提取其特征码,并根据该特征码在视频模板库中的索引查找该特征码出现过的视频模板;
[0010]根据关键帧在查询视频段中的位置,在视频模板中找到与查询视频段对应的视频模板段,基于特征码比较该查询视频段与该视频模板段是否具有匹配关系;
[0011]根据查询视频段和视频模板段的匹配关系,得到视频模板在查询视频中对应出现的位置。
[0012]优选地,该方法还包括:[0013]所述视频模板和索引由此得到:从模板视频中选取关键帧,在每个关键帧中提取特征码,将所有关键帧的特征码按时间顺序存储成视频模板,同时将每个关键帧的特征码与该视频模板建立索引,。
[0014]优选地,其中所述从每个关键帧中提取特征码,包括:
[0015]将每个关键帧按照空间划分为多个子块,并计算每个子块的灰度平均值;
[0016]根据子块的灰度平均值的差异得到二值特征码,该二值特征码即为每个关键帧中的特征码。
[0017]优选地,其中所述将每个关键帧按照空间划分为多个子块,包括:
[0018]将每个关键帧平均划分为2X2共四个区域,再将每个区域进一步平均划分为3X3共九个子块。
[0019]优选地,其中所述根据子块的灰度平均值的差异得到二值特征码,包括:
[0020]在该关键帧的每个区域选定一个子块,计算该区域中其他每个子块与选定子块的灰度平均值的差值,根据差值大小得到每个子块的二值特征码,将所有区域所有子块的二值特征码按一定顺序连接,构成该关键巾贞的特征码。
[0021 ] 优选地,该方法还包括:
[0022]在模板视频中选取关键帧前将模板视频转码为规定的格式和/或在查询视频中选取关键帧前将查询视频转码为规定的格式。
[0023]优选地,其中所述将每个关键帧的特征码与该视频模板建立索引,包括:
[0024]采用哈希倒排索引的方式,将每个关键帧的特征码以链表的数据结构与该视频模板建立链接形成索引。
[0025]优选地,所述基于特征码比较该查询视频段与该视频模板段是否匹配,包括:
[0026]采用动态时间规整算法计算该查询视频段与该视频模板段之间的距离,若小于规定的阈值,则该查询视频段与该视频模板段匹配。
[0027]优选地,该方法还包括:
[0028]若两个查询视频段和同一个视频模板的两个视频模板段分别具有匹配关系,且这两个查询视频段之间的时间区间和这两个模板视频段之间的时间区间相等并小于或等于设定的时间长度,则这两个查询视频段之间的时间区间也被认为是该视频模板在查询视频中对应出现的位置。
[0029](三)有益效果
[0030]根据本发明的在视频模板库中进行视频匹配的方法,通过提取关键帧的特征码,并基于特征码进行匹配,提高了视频匹配的速度和鲁棒性。
[0031]而且,本发明特征码提取算法计算简单,且对噪音、光照变化等都不敏感,具有很强的鲁棒性,而且基于特征码的索引和快速匹配算法采用了由粗到精的查询方法,加快了匹配速度,提高了匹配的效率。
【专利附图】

【附图说明】
[0032]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些示例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0033]图1是根据本发明一个较佳实施例的处理模板视频的方法流程图。
[0034]图2是根据本发明一个较佳实施例的提取一幅图像的特征码的示意图,图中仅示出一个区域的特征码。
[0035]图3是根据本发明一个较佳实施例的的哈希倒排索引的示意图,图中仅示出一个特征码在一个视频模板中建立的一个索引节点。
[0036]图4是根据本发明一个较佳实施例的视频匹配的方法流程图
[0037]图5是根据本发明一个较佳实施例的查询视频段在视频模板上的位置映射示意图。
【具体实施方式】
[0038]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0039]本发明的核心思想是在查询视频中得到一个或多个模板视频出现的位置,所谓位置,即开始时间、结束时间和时长。视频模板库中需要存储有特征码,特征码可以在提取关键帧的特征码的过程中增加,即若提取的关键帧的特征码在视频模板库中没有,那么则增加该特征码;分别在模板视频和查询视频的关键帧中提取特征码,并将模板视频的关键帧建立索引;通过特征码和索引找到在查询视频中出现过的模板视频段。
[0040]为了清楚起见,在下面,将首先说明对模板视频的处理流程,然后说明对查询视频的处理及视频匹配流程。
[0041]图1是根据本发明一个实施例的处理模板视频的方法流程图,包括:
[0042]步骤SI,将模板视频转码为规定的格式。收集需要存放在视频模板库中的视频,既可以通过广播电视采集卡,采集广播电视信号,也可以通过网络爬虫抓取网络上的视频,当然也可以通过其他方式,比如直接从存储介质中获取。对于收集到的数字化的各类格式的视频文件,使用ffmpeg (也可以是其他的视频处理软件)将其转码为规定的统一格式。例如,转码后的视频文件的格式为avi,完成后,将转码后的视频文件存储到计算机的临时存储区。
[0043]为了降低提取特征码的计算量,且为了增强视频帧特征码的尺度不变性,可以首先将视频帧的尺寸归一化到例如60行X80列的大小,当然也可以归一化为其他大小。另夕卜,有些频道经常打上台标以标示知识产权,或者在整点时打上时间戳,虽然提取特征码时对这些额外的标记物具有一定的鲁棒性,但为了进一步降低这些标记物对特征码的影响,在提取特征码前可以对视频的所有帧做预处理,即去除图像边缘不稳定的区域。例如如图2所示去除图像的上下各1/6宽度的边,左右各1/6长度的边。留下的中间稳定的区域才用来提取特征码。
[0044]步骤S2,提取模板视频的特征码。根据本发明的一个优选实施例,其具体步骤如下:
[0045]步骤S21,提取所述视频的关键帧。提取关键帧的方法一般有两种,一种是对视频进行镜头检测,在每个镜头内再采用算法提取关键帧;二是直接采样从视频中抽取关键帧。本实施例中采取直接从视频中采样抽取关键帧的方法,采样间隔例如为200毫秒。
[0046]步骤S22,从每个关键帧中提取特征码,图2是根据本发明一个实施例提取关键帧的特征码的示意图,其具体步骤如下:
[0047]步骤S221,将所述关键帧按照空间划分为多个子块。优选的,本实施例采取如图2所示的划分方法,先将一帧图像平均划分为2X2共四个区域,再将每个区域进一步的平均划分为3X3的子块。
[0048]步骤S222,计算出每个子块的灰度平均值。
[0049]步骤S223,根据所述子块的灰度平均值的差异计算视频关键帧的二值特征码。例如计算关键帧中每个子块(中心子块除外)与所在区域的中心子块的灰度平均值的差值,如差值大于0,则将该子块的二进制码设为1,反之则设为0,将所有子块的二进制码按一定顺序连接,构成关键帧的特征码。以如图2所示的视频帧的左下角区域为例,该区域内共有9个小子块,计算边缘8个子块与该区域中心子块的灰度平均值的差值。如差值大于0,则设该子块的标志位1,反之则设为O。在每个区域内,顺时针排列标志位,得到该区域的特征码。再例如从左下区域起顺时针连接四个区域的标志位,就构成了关键帧的特征码。
[0050]在优选实施例中,一帧图像仅用32位的二进制码即可表示,而且计算非常简单。由于在局部采用了灰度平均值的统计特征,所以在对局部区块内的灰度噪音变化并不敏感。又由于将整幅图像分为四个子块,某个子块内发生变化,仅会影响相应子块所对应的码值,并不会影响其他块内的码值,所以对局部添加标志也不敏感。这一点在广播电视中应用非常重要,因为广播电视中经常出现台标、整点报时、挂角广告等频道额外添加的标志。再者,码值的计算是由子块之间的相对差值计算得到,均匀的光照变化对相对差值的影响不大,因此该图像特征码对光照的变化也不敏感。
[0051]步骤S3,将模板视频的所有关键帧的特征码建立索引,并将所有关键帧的特征码按时间顺序连接起来作为视频模板存储到视频模板数据库中。本发明优选实施例采用哈希倒排索引的查找表,其中如图3所示的查找表中的每个元素为一个模板帧的32位的特征码。每个键都指向一个单链表,链表中的每个值为该特征码在哪个视频模板中出现及相对视频模板文件头的偏移帧数,链表中节点的个数即为该特征码在所有视频模板中出现的次数。这样就建立了由特征码到视频模板的反向映射关系,所以将这种查找表称为倒排查找表。
[0052]由于受到内存的限制,一个包含2~32个键的查找表通常是不可行的。另一方面,查找表通常比较稀疏,因为相对键的个数,数据库中样本的个数是相当小的。所以在本实施例中,系统中使用哈希表来代替查找表,以节省内存,提高空间利用率。
[0053]图4是根据本发明一个较佳实施例的视频匹配的方法流程图,包括:
[0054]步骤S4,接收用户输入的查询视频,转码为统一的视频格式。例如,调用ffmpeg(或其他视频处理软件)将查询视频转码为规定的统一格式。例如,转码后的查询视频文件的格式为avi,完成后,将转码后的视频文件存储到计算机的临时存储区。
[0055]与对模板视频的处理相同,可以将视频帧的尺寸归一化到60行X80列的大小或其他大小,同时,也可以对视频帧做预处理,去除图像边缘不稳定的区域。
[0056]步骤S5,将查询视频分段并提取关键帧。优选地,可以将查询视频等间隔的分段,段长例如为2秒。关键帧的提取同步骤S21—致。
[0057]步骤S6,根据步骤S2所述的提取视频特征码的方法,提取每个查询视频段的每个关键帧的特征码;
[0058]步骤S7,进行匹配:即根据每个关键帧的特征码在视频模板库中的索引查找该特征码出现过的视频模板;根据该关键帧在该查询视频段中的位置,在该视频模板中找到对应的视频模板段,基于特征码比较该查询视频段与该视频模板段是否匹配。根据优选实施例,该步骤包括:
[0059]步骤S71,根据步骤S3建立的哈希倒排索引,给定查询视频中一个关键帧通过遍历其特征码在哈希表中所指向的链表快速得到该帧出现过的视频模板。
[0060]步骤S72,根据视频关键帧的匹配关系,得到查询视频关键帧所在的查询视频在视频模板库中的视频模板中对应的区间位置。具体的,如图5所示,查询视频段中的每一关键帧到数据库的哈希倒排索引中检索,都可以得到其在数据库中出现的视频模板的文件ID及其出现位置相对该视频模板的文件头的帧偏移量b。事实上,每个帧查询的结果都指示着当前查询段与数据库中一个或多个视频模板中的某段存在可能的匹配。假设查询视频中的某帧和某个视频模板中的某帧匹配上了,通过计算匹配帧相对该视频模板的文件头的偏移b与该帧在查询视频段中的偏移bq的差值,即可得到与查询视频段相对应的视频模板段在视频模板中出现的起始帧位置,即b-b,,根据查询视频段的长度也就可以得到视频模板段的结束帧位置,即b-bq+L。
[0061]步骤S73,读取视频模板中对应的视频模板段的所有关键帧的特征码,并与对应的查询视频段根据特征码进行相似性度量,若相似度大于一定阈值则该查询视频段与视频模板的该视频模板段具有匹配关系,反之,则不存在匹配关系。由于对一个查询段中所有帧查询的结果都做视频段的匹配确认,显然是不合理的,因为同一查询段内的前后帧的结果可能对应到同一个模板的相同位置的视频段上,这样就存在冗余计算。在本实施例中,可以对一段内所有帧的检索结果进行合并去冗余之后再做匹配。例如可采用的合并的规则是:如果两个关键帧的检索结果所对应视频模板段在视频模板中的开始帧位置相差小于5帧,则去除其中一个冗余的结果。将视频模板段Rv与查询视频段Qv进行匹配,如果满足条件:DTW(QV,Rv) CTh1,那么,视频模板段Rv和查询视频段Qv就被认为是相同的视频片段,其中DTff(Qv, Rv)表示根据DTW算法计算的视频片段Rv和Qv之间的距离,Th1表示设定的距离阈值。
[0062]步骤S74,根据查询视频段和视频模板段的匹配关系,得到视频模板在查询视频中对应出现的位置,位置即开始时间,结束时间和时长。这样就达到了视频匹配的最终目的,即确定查询视频中出现模板视频的起始位置和结束位置。该步骤实际上就是为某个查询视频段子序列(Qi, Qi+1,…,Qn,…,Qj)从返回的结果列表中构造出一个视频模板段结果子序列(Ri, Ri+1,…,Rn,…,RP,如果这个结果子序列的所有视频模板段都属于同一个视频模板,并且视频模板段时间位置排列和查询视频段的时间排列一致,那么就认为查询视频段子序列(Qi,Qi+1,…,Qn,…,Qj)表示了出现在查询视频中的视频模板。也就是说,对于任意两个视频段Rlri和Rn,n=i+1,j,只要Rlri和Rn属于同一个视频模板,并且Rn在时间轴上是Rlri的下一个段,那么Rn就能与Rlri构成 时序连接关系。
[0063]但是这种严格的时间一致性假设,在实际中并不总是能够满足。首先,查询视频段并不是视频模板的精确复制,而是存在很多的变换,比如播出过程中引入的信道噪音、丢帧等现象。这种情况下,即使查询视频段是视频模板中的一个拷贝段,也不一定能检索到其相应的段,因而也就无法满足严格的一致性假设。在本实施例中,我们放松了严格的一致性假设,采用了松弛的时间一致性约束条件:如果两个视频模板段1^和Rlri属于同一个视频模板,并且在时间轴的距离小于或等于设定个数例如两个的视频模板段的长度,就可将Rn和Rlri连接起来。这样对于属于同一个视频模板的Rlri和Rn,即使他们不具有严格的时间连续关系,只要R1^P Rlri在时间上的距离在两个模板视频段长度内且等于与Rlri分别匹配上的查询视频段在时间上的距离,同样可以认为Rlri和Rn具有时序连接关系,即Rlri和Rn之间的模板视频段也被认为出现在查询视频中。在定义了时序连接关系的基础上,只要将满足时序连接关系的视频模板段连接起来,就可以得到一个结果子序列。这个结果子序列所对应的查询视频段序列也就标示该视频模板在查询视频中的起始位置和结束位置。比如对于商家来说,将一个广告选定为模板视频,就可以在电视台播放的电视视频中找到播放该广告的时段;对于监管部门来说,将搜集到的所有广告视频选定为模板视频,也可以在电视台播放的电视视频中找到所有播放广告的时段。
[0064]以上实施例仅用于说明本发明,而非对本发明的限制。尽管参照实施例对本发明进行了详细说明,本领域的 普通技术人员应当理解,对本发明的技术方案进行各种组合、修改或者等同替换,都不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求和范围当中。
【权利要求】
1.一种在视频模板库中进行视频匹配的方法,其特征在于,视频模板库中存储有以时间顺序连接关键帧的特征码得到的视频模板和各特征码对应视频模板中其出现位置的索弓丨,该方法包括: 将查询视频分段,从每个查询视频段中选取关键帧,在每个关键帧中提取特征码; 对于每个查询视频段的每个关键帧,提取其特征码,并根据该特征码在视频模板库中的索引查找该特征码出现过的视频模板; 根据关键帧在查询视频段中的位置,在视频模板中找到与查询视频段对应的视频模板段,基于特征码比较该查询视频段与该视频模板段是否具有匹配关系; 根据查询视频段和视频模板段的匹配关系,得到视频模板在查询视频中对应的位置。
2.根据权利要求1所述的方法,其中该方法还包括: 所述视频模板和索引由此得到:从模板视频中选取关键帧,在每个关键帧中提取特征码,将所有关键帧的特征码按时间顺序存储成视频模板,同时将每个关键帧的特征码与该视频模板建立索引。
3.根据权利要求1或2所述的方法,其中所述从每个关键帧中提取特征码,包括: 将每个关键帧按照空间划分为多个子块,并计算每个子块的灰度平均值; 根据子块的灰度平均值的差异得到二值特征码,该二值特征码即为每个关键帧中的特征码。
4.根据权利要求3所述的方法,其特征在于,其中所述将每个关键帧按照空间划分为多个子块,包括: 将每个关键帧平均划分为2X2共四个区域,再将每个区域进一步平均划分为3X3共九个子块。
5.根据权利要求3所述的方法,其特征在于,其中所述根据子块的灰度平均值的差异得到二值特征码,包括: 在该关键帧的每个区域选定一个子块,计算该区域中其他每个子块与选定子块的灰度平均值的差值,根据差值大小得到每个子块的二值特征码,将所有区域所有子块的二值特征码按一定顺序连接,构成该关键帧的特征码。
6.根据权利要求2所述的方法,其特征在于,该方法还包括: 在模板视频中选取关键帧前将模板视频转码为规定的格式和/或在查询视频中选取关键帧前将查询视频转码为规定的格式。
7.根据权利要求2所述的方法,其特征在于,其中所述将每个关键帧的特征码与该视频模板建立索引,包括: 采用哈希倒排索引的方式,将每个关键帧的特征码以链表的数据结构与该视频模板建立链接形成索引。
8.根据权利要求1或2所述的方法,其特征在于,所述基于特征码比较该查询视频段与该视频模板段是否匹配,包括: 采用动态时间规整算法计算该查询视频段与该视频模板段之间的距离,若小于规定的阈值,则该查询视频段与该视频模板段匹配。
9.根据权利要求1或2所述的方法,其特征在于,该方法还包括: 若两个查询视频段和同一个视频模板的两个视频模板段分别具有匹配关系,且这两个查询视频段之间的时间区间和这两个模板视频段之间的时间区间相等并小于或等于设定的时间长度,则这两个查询视频段之间的时间区间也被认为是该视频模板在查询视频中对应出现的位置 。
【文档编号】G06F17/30GK103514293SQ201310468352
【公开日】2014年1月15日 申请日期:2013年10月9日 优先权日:2013年10月9日
【发明者】陈见耸, 徐波 申请人:北京中科模识科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1