视频关键位置定位方法及装置与流程

文档序号:11207187阅读:323来源:国知局
视频关键位置定位方法及装置与流程

本发明涉及计算机技术领域,特别涉及一种视频关键位置定位方法及装置。



背景技术:

视频基因技术可用于防止网络盗版视频的蔓延,即使删除视频的一些场景或改变其颜色、分辨率风属性,视频剪辑的“视频基因”和生物的基因序列有一样,仍具有可追溯性。一般来说,只要两个视频有超过5秒的内容相同或者极其相似,那么这两个视频之间就应该可追溯。

视频关键位置计算是视频基因计算的前提。通过计算视频关键位置视频帧的图像基因,然后把这些图像基因按照时间序“串起来”就构成了视频基因。视频的关键位置不能因为视频剪辑以及编码格式、帧率、分辨率等的改变而发生变化,这就要求关键位置算法的鲁棒性要非常强。

但是,目前的视频关键位置计算主要是基于帧差阈值的计算方法,这类计算方法计算出来的关键位置对阈值非常敏感,一旦阈值或者视频本身发生轻微变化,计算结果可能就会有极大的差异,鲁棒性较差。



技术实现要素:

本发明的实施例提供一种视频关键位置定位方法及装置,以提高视频关键位置定位的鲁棒性。

根据本发明实施例的一个方面,提供了一种视频关键位置定位方法,包括:获取视频帧序列中各相邻视频帧之间的帧差;获取所述视频帧序列中设定范围内的帧差的第一帧差极大值;如果所述第一帧差极大值位于所述设定范围内的第一区域范围内,则将所述第一帧差极大值的位置确定为所述视频帧序列的当前关键位置,其中,所述设定范围包括第一区域范围和第二区域范围,所述第一区域范围的长度大于所述第二区域范围的长度。

可选地,所述方法还包括:如果所述第一帧差极大值位于所述设定范围的第二区域范围内,则获取所述设定范围内位于所述第一帧差极大值的位置之前的第三区域范围的第二帧差极大值;如果第三区域范围内存在所述第二帧差极大值,则将所述第二帧差极大值的位置确定为所述视频帧序列的当前关键位置;和/或,如果第三区域范围内不存在所述第二帧差极大值,则将所述第三区域范围的中间位置确定为所述视频帧序列的当前关键位置。

可选地,所述方法还包括:如果所述设定范围内不存在所述第一帧差极大值,则将所述设定范围的中间位置确定为所述视频帧序列的当前关键位置。

可选地,所述设定范围以所述视频帧序列的前一关键位置或所述视频帧序列的首个视频帧为起点。

可选地,所述获取所述视频帧序列中设定范围内的帧差的第一帧差极大值,包括:计算所述视频帧序列中设定范围的帧差均值和帧差最大值;如果所述帧差最大值与所述帧差均值的差值大于或等于设定阈值,则将所述帧差最大值确定为设定范围内的第一帧差极大值;和/或,如果所述帧差最大值与所述帧差均值的差值小于设定阈值,则确定所述设定范围内不存在第一帧差极大值。

可选地,在所述获取视频帧序列中各相邻视频帧之间的帧差之前,还包括:将所述视频帧序列的各视频帧调整至设定尺寸;和/或,剪切所述视频帧序列的各视频帧的图像边缘区域;和/或,将所述视频帧序列的各视频帧的彩色图像转化成灰度图像;和/或,对所述视频帧序列的各视频帧进行亮度均衡。

根据本发明实施例的另一方面,还提供一种视频关键位置定位装置,包括:第一获取模块,用于获取视频帧序列中各相邻视频帧之间的帧差;第二获取模块,用于获取所述视频帧序列中设定范围内的帧差的第一帧差极大值;定位模块,用于如果所述第一帧差极大值位于所述设定范围内的第一区域范围内,则将所述第一帧差极大值的位置确定为所述视频帧序列的当前关键位置,其中,所述设定范围包括第一区域范围和第二区域范围,所述第一区域范围的长度大于所述第二区域范围的长度。

可选地,所述第二获取模块还用于如果所述第一帧差极大值位于所述设定范围的第二区域范围内,则获取所述设定范围内位于所述第一帧差极大值的位置之前的第三区域范围的第二帧差极大值;所述定位模块还用于如果第三区域范围内存在所述第二帧差极大值,则将所述第二帧差极大值的位置确定为所述视频帧序列的当前关键位置;和/或,如果第三区域范围内不存在所述第二帧差极大值,则将所述第三区域范围的中间位置确定为所述视频帧序列的当前关键位置。

可选地,所述定位模块还用于如果所述设定范围内不存在所述第一帧差极大值,则将所述设定范围的中间位置确定为所述视频帧序列的当前关键位置。

可选地,所述装置还包括处理模块,用于:将所述视频帧序列的各视频帧调整至设定尺寸;和/或,剪切所述视频帧序列的各视频帧中可能发生变化的部分;和/或,将所述视频帧序列的各视频帧的彩色图像转化成灰度图像;和/或,对所述视频帧序列的各视频帧进行亮度均衡。

本发明实施例提供的视频关键位置定位方案,通过在视频帧序列的设定范围内设置两个区域,采用双区域极值判断方法,根据设定范围内的帧差极大值的位置确定视频帧序列的视频关键位置,有效地实现了视频关键位置的定位,而且,在设定范围内进行视频关键位置定位,可以避免误差传递,具有较高的鲁棒性。

附图说明

图1是根据本发明实施例一的一种视频关键位置定位方法的步骤流程图;

图2是根据本发明实施例一的一种视频关键位置定位方法的原理图;

图3是根据本发明实施例二的一种视频关键位置定位方法的步骤流程图;

图4是根据本发明实施例三的一种视频关键位置定位装置的结构框图。

具体实施方式

下面结合附图(若干附图中相同的标号表示相同的元素)和实施例,对本发明实施例的具体实施方式作进一步详细说明。以下实施例用于说明本发明,但不用来限制本发明的范围。

本领域技术人员可以理解,本发明实施例中的“第一”、“第二”等术语仅用于区别不同步骤、设备或模块等,既不代表任何特定技术含义,也不表示它们之间的必然逻辑顺序。

实施例一

参照图1,示出了根据本发明实施例一的一种视频关键位置定位方法的步骤流程图。

本实施例的视频关键位置定位方法包括以下步骤:

步骤s102:获取视频帧序列中各相邻视频帧之间的帧差。

其中,视频帧序列可以为任意视频的连续视频帧,例如,在任意场景下录制的视频内容。

通常,录制的视频帧序列需要进行视频编码,用于将存储连续视频帧,以及计算连续视频帧之间的变化。本实施例中,在获取视频帧序列之后,对视频帧序列进行视频解码,获取视频帧序列中的各视频帧,并计算各相邻视频帧之间的帧差。这里,对帧差的计算方法不做限定,可以计算帧差的方法均可以应用至本实施例中。

例如,将各视频帧包括的像素点视为一个浮点型二维数组amn,其中m和n分别代表视频帧图像的的宽度和高度。amn中包括多个aij(0≤i≤m,0≤j≤n),aij为二维数组amn中第i行第j列上的像素点的像素值。若amn和bmn分别为相邻的两个视频帧对应的二维数组,根据公式(1)可计算相邻的两个视频帧之间的帧差dab。

步骤s104:获取视频帧序列中设定范围内的帧差的第一帧差极大值。

其中,设定范围为视频帧序列中的一段视频长度,或者一定数量的连续视频帧。本方案基于帧差极大值在设定范围内的位置,来确定视频帧序列中的视频关键位置,且视频关键位置位于设定范围内,因此,设定范围不易过大,以避免减少产生视频关键位置的频率,在提高效率和节约资源的情况下,降低视频基因的可追溯性。设定范围也不易过小,以避免增加产生视频关键位置的频率,在提高视频基因的可追溯性的情况下,增加资源消耗。例如,设定范围对应的视频长度可以为5s。

设定范围的视频帧序列包括多个视频帧,通过上述s102可获取设定范围内各相邻视频帧之间的帧差,在此基础上,计算这些帧差的帧差极大值。如图2所示,在视频帧序列的视频解码位置达到设定范围时,计算设定范围内的帧差的第一帧差极大值。

步骤s106:如果第一帧差极大值位于设定范围内的第一区域范围内,则将第一帧差极大值的位置确定为视频帧序列的当前关键位置。

其中,设定范围包括第一区域范围和第二区域范围,第一区域范围的长度大于第二区域范围的长度,且第一区域范围位于第二区域范围之前,也即,第一区域范围对应的连续视频帧的时序位于第二区域范围对应的连续视频帧的时序之前。如图2所示,若设定范围对应的视频长度为5s,第一区域范围a对应的视频长度可以为4s,第二区域范围b对应的视频长度可以为1s。

如果在步骤s102中计算的第一帧差极大值位于第一区域范围内,也即,设定范围内的第一帧差极大值位于第一区域范围内,与第一区域范围相邻的第二区域范围内的连续视频帧之间的变化较小,可以将第一帧差极大值的位置确定为设定范围内的视频关键位置,也即,视频序列的当前关键位置。

进一步地,在视频的解码过程中循环执行上述步骤s102~s106,每次在视频解码位置达到设定范围时,均确定一个视频关键位置。通过在视频帧序列的设定范围内进行视频关键位置定位,可以避免误差传递,即使前一视频关键位置定位错误,也不会影响后一视频关键位置的正确定位,保证了视频关键位置定位的鲁棒性。其中,当前设定范围与前一设定范围可以首尾连接、间隔设置或者部分重叠。

本实施例的视频关键位置定位方法可以由任意具有相应数据处理能力的设备执行并实现,例如,对录制的视频进行后期处理的设备。

根据本发明实施例提供的视频关键位置定位方法,通过在视频帧序列的设定范围内设置两个区域,采用双区域极值判断方法,根据设定范围内的帧差极大值的位置确定视频帧序列的视频关键位置,有效地实现了视频关键位置的定位,而且,在设定范围内进行视频关键位置定位,可以避免误差传递,具有较高的鲁棒性。

实施例二

参照图3,示出了根据本发明实施例二的一种视频关键位置定位方法的步骤流程图。

本实施例的视频关键位置定位方法包括如下步骤:

步骤s302:获取视频帧序列中各相邻视频帧之间的帧差。

本实施例中,在计算视频帧序列中的帧差之前,对视频帧序列中各视频帧图像进行预处理,以防止在非授权的情况下对视频帧序列进行的修改影响视频关键位置的定位。

一种可选的实施方式中,将视频帧序列的各视频帧调整至设定尺寸,以防止修改视频帧的分辨率。和/或,剪切视频帧序列的各视频帧的图像边缘区域,例如,将视频帧图像中易插入台标、logo等的上边缘区域,和易插入字幕的下边缘区域进行剪切,以防止对视频帧序列的台标、字幕等进行编辑;和/或,将视频帧序列的各视频帧的彩色图像转化成灰度图像,以保护视频帧序列的彩色视频版权;和/或,对视频帧序列的各视频帧进行亮度均衡,以防止对视频帧序列的视频亮度进行修改。

步骤s304:获取视频帧序列中设定范围内的帧差的第一帧差极大值。

具体地,获取视频帧序列中设定范围内的帧差,计算视频帧序列中设定范围的第一帧差均值和第一帧差最大值。如果第一帧差最大值与第一帧差均值的差值大于或等于设定阈值,则将第一帧差最大值确定为设定范围内的第一帧差极大值;如果第一帧差最大值与第一帧差均值的差值小于设定阈值,则确定设定范围内不存在第一帧差极大值。

本实施例中,视频帧序列中包括多个设定范围,每个设定范围内均确定一个视频关键位置。在视频帧序列的处理(例如解码)位置达到当前设定范围时,根据设定范围内的第一帧差的位置来确定当前设定范围内的视频关键位置。其中,当前设定范围以视频帧序列的前一关键位置为起点或视频帧序列的首个视频帧为起点。

步骤s306:判断是否存在第一帧差极大值。

根据步骤s304的计算结果,可以判断设定范围内是否存在第一帧差极大值。如果不存在第一帧差极大值,则执行步骤s308;如果存在第一帧差极大值,则执行步骤s310。

步骤s308:将设定范围的中间位置确定为视频帧序列的当前关键位置。

如果设定范围内的帧差不存在第一帧差极大值,则可以确定设定范围内的连续视频帧之间的差别较小,可以将设定范围内的任意位置作为视频关键位置,但是优选为将设定范围的中间位置确定为设定范围内的视频关键位置,以保证视频帧序列的当前关键位置与其他关键位置之间的距离。

步骤s310:判断第一帧差极大值是否在第一区域范围内。

在设定范围内是存在第一帧差极大值时,如果第一帧差极大值位于第一区域范围内,则执行步骤s312;如果第一帧差极大值不位于第一区域范围内,则执行步骤s314。

步骤s312:将第一帧差极大值的位置确定为视频帧序列的当前关键位置。

如果第一帧差极大值位于第一区域范围内,则将第一帧差极大值的位置确定为设定范围内的视频关键位置。

步骤s314:获取第三区域范围内的帧差的第二帧差极大值。

在第一帧差极大值不位于第一区域范围内,而位于第二区域范围内时,获取第三区域范围内的第二帧差极大值。其中,第三区域范围包括设定范围内位于第一帧差极大值之前的区域范围,也即,第三区域范围包括第一区域范围,以及第二区域范围中位于第一帧差极大值之前的区域范围。

在计算第二帧差极大值时,获取第三区域范围内的帧差,并计算第三区域范围内的帧差的第二帧差均值和第二帧差最大值,如果第二帧差最大值与第二帧差均值的差值大于或等于设定阈值,则将第二帧差最大值确定为设定范围内的第二帧差极大值;如果第二帧差最大值与第二帧差均值的差值小于设定阈值,则确定设定范围内不存在第二帧差极大值。

步骤s316:判断是否存在第二帧差极大值。

根据步骤s314的计算结果,可以判断第三区域范围内是否存在第二帧差极大值。如果存在第二帧差极大值,则执行步骤s318;如果不存在第二帧差极大值,则执行步骤s320。

步骤s318:将第二帧差极大值的位置确定为视频帧序列的当前关键位置。

如果第三区域范围内存在第二帧差极大值,则将第二帧差极大值的位置确定为设定范围内的视频关键位置。

步骤s320:将第三区域范围的中间位置确定为视频帧序列的当前关键位置。

如果第三区域范围内不存在第二帧差极大值,则将第三区域范围的中间位置确定为设定范围内的视频关键位置。

本发明实施例的视频关键位置定位方法,通过对视频帧序列的各视频帧图像进行预处理,可以有效地防止视频帧序列因视频剪辑以及编码格式、帧率、分辨率等的变化而影响视频关键位置的计算;以及,通过在视频帧序列的设定范围内设置两个区域,采用双区域极值判断方法,根据设定范围内是否存在帧差极大值、帧差极大值的位置来确定视频帧序列的视频关键位置,有效地实现了视频关键位置的定位;而且,通过在设定范围内进行视频关键位置定位,可以有效地避免误差传递,具有较高的鲁棒性。

实施例三

参照图4,示出了根据本发明实施例三的一种视频关键位置定位装置的结构框图。

本实施例的视频关键位置定位装置包括第一获取模块402、第二获取模块404和定位模块406。其中,第一获取模块402用于获取视频帧序列中各相邻视频帧之间的帧差;第二获取模块404用于获取视频帧序列中设定范围内的帧差的第一帧差极大值;定位模块406用于如果第一帧差极大值位于设定范围内的第一区域范围内,则将第一帧差极大值的位置确定为视频帧序列的当前关键位置,其中,设定范围包括第一区域范围和第二区域范围,第一区域范围的长度大于第二区域范围的长度。

可选地,第二获取模块404还用于如果第一帧差极大值位于设定范围的第二区域范围内,则获取设定范围内位于第一帧差极大值的位置之前的第三区域范围的第二帧差极大值;定位模块406还用于如果第三区域范围内存在第二帧差极大值,则将第二帧差极大值的位置确定为视频帧序列的当前关键位置;和/或,如果第三区域范围内不存在第二帧差极大值,则将第三区域范围的中间位置确定为视频帧序列的当前关键位置。

可选地,定位模块406还用于如果设定范围内不存在第一帧差极大值,则将设定范围的中间位置确定为视频帧序列的当前关键位置。

可选地,上述设定范围以视频帧序列的前一关键位置或视频帧序列的首个视频帧为起点。

可选地,第二获取模块在获取第一帧差极大值时,计算视频帧序列中设定范围的帧差均值和帧差最大值;如果帧差最大值与帧差均值的差值大于或等于设定阈值,则将帧差最大值确定为设定范围内的第一帧差极大值;和/或,如果帧差最大值与帧差均值的差值小于设定阈值,则确定设定范围内不存在第一帧差极大值。

可选地,本实施例的视频关键位置定位装置还包括处理模块408,用于将视频帧序列的各视频帧调整至设定尺寸;和/或,剪切视频帧序列的各视频帧中可能发生变化的部分;和/或,将视频帧序列的各视频帧的彩色图像转化成灰度图像;和/或,对视频帧序列的各视频帧进行亮度均衡。

本实施例的视频关键位置定位方法,可用于实现前述实施例一或实施例二的视频关键位置定位方法,并具有方法实施例的有益效果,在此不在赘述。

需要指出,根据实施的需要,可将本发明实施例中描述的各个部件/步骤拆分为更多部件/步骤,也可将两个或多个部件/步骤或者部件/步骤的部分操作组合成新的部件/步骤,以实现本发明实施例的目的。

上述根据本发明实施例的方法可在硬件、固件中实现,或者被实现为可存储在记录介质(诸如cdrom、ram、软盘、硬盘或磁光盘)中的软件或计算机代码,或者被实现通过网络下载的原始存储在远程记录介质或非暂时机器可读介质中并将被存储在本地记录介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件(诸如asic或fpga)的记录介质上的这样的软件处理。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件(例如,ram、rom、闪存等),当所述软件或计算机代码被计算机、处理器或硬件访问且执行时,实现在此描述的处理方法。此外,当通用计算机访问用于实现在此示出的处理的代码时,代码的执行将通用计算机转换为用于执行在此示出的处理的专用计算机。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明实施例的范围。

以上实施方式仅用于说明本发明实施例,而并非对本发明实施例的限制,有关技术领域的普通技术人员,在不脱离本发明实施例的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明实施例的范畴,本发明实施例的专利保护范围应由权利要求限定。

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