一种视频特征提取方法及装置
技术领域
本公开涉及视频处理技术领域,特别是涉及一种视频特征的提取方法及装置。
背景技术
在如今的多媒体信息社会中,用户每天向视频平台上传海量的视频,这些视频中大部分是正常的有价值视频,然而也有一些问题视频,问题视频主要包括:和平台视频数据库中的已有视频重复的视频、与版权数据库中的视频重复的视频(例如,需要支付版权费的视频)以及某些不适宜或禁止展示的视频。因此需要对用户上传的海量视频进行快速的比对和过滤。而提高视频比对速度和准确性的核心技术是对视频帧的特征进行合理的提取和相似度判断。
为了提高比对速度和准确性,需要为一个视频生成一个能表征此视频的视频特征,目的是通过比对两个视频的视频特征来判断视频的相似程度。视频特征的提取方法和视频特征的优良程度决定了视频比对的效率和准确率。
发明内容
本公开的目的在于提供一种新的视频特征提取方法及装置。
本公开的目的是采用以下的技术方案来实现的。依据本公开提出的视频特征提取方法,包括以下步骤:对视频对象进行抽帧,得到一个或多个帧图像;对于每个所述帧图像,获取一个或多个检测向量,利用每个所述检测向量,以所述帧图像中的任意像素作为起点,确定所述起点的经所述检测向量指向的终点,根据所述起点与所述终点之间的差异情况确定所述帧图像的图像特征;根据所述一个或多个帧图像的所述图像特征,确定所述视频对象的视频特征。
本公开的目的还可以采用以下的技术措施来进一步实现。
前述的视频特征提取方法,其中所述检测向量的长度和方向为任意的。
前述的视频特征提取方法,其中所述的根据所述起点与所述终点之间的差异情况确定所述帧图像的图像特征包括:对于每个所述检测向量,确定一个所述帧图像中的每个所述起点与对应的所述终点之间的差异情况,根据基于同一个所述检测向量的各个所述差异情况的总体情况来确定所述帧图像的基于所述检测向量的特征比特,以得到每个所述检测向量的特征比特;根据所述帧图像的基于所述一个或多个检测向量的所述特征比特,确定所述帧图像的图像特征。
前述的视频特征提取方法,其中所述的获取一个或多个检测向量还包括,为每个所述检测向量分配一个计数器;所述的根据基于同一个所述检测向量的各个所述差异情况的总体情况来确定所述帧图像的基于所述检测向量的特征比特包括:根据基于所述检测向量的每个所述起点与所述终点之间的差异情况,对与所述检测向量对应的所述计数器的取值进行增加或减少;比较所述计数器的值与预设的设定值之间的大小,根据所述比较的结果确定所述帧图像的基于所述检测向量的特征比特。
前述的视频特征提取方法,其中所述的起点与终点之间的差异情况包括所述起点的亮度信息与所述终点的亮度信息之间的差异情况。
本公开的目的还采用以下技术方案来实现。依据本公开提出的视频特征库构建方法,包括以下步骤:按照前述的任意一项的视频特征提取方法提取视频对象的视频特征;将所述视频特征存储到视频特征库中。
本公开的目的还采用以下技术方案来实现。依据本公开提出的视频特征提取装置,包括:抽帧模块,用于对视频对象进行抽帧,得到一个或多个帧图像;图像特征确定模块,用于对于每个所述帧图像,获取一个或多个检测向量,利用每个所述检测向量,以所述帧图像中的任意像素作为起点,确定所述起点的经所述检测向量指向的终点,根据所述起点与所述终点之间的差异情况确定所述帧图像的图像特征;视频特征确定模块,用于根据所述一个或多个帧图像的所述图像特征,确定所述视频对象的视频特征。
本公开的目的还可以采用以下的技术措施来进一步实现。
前述的视频特征提取装置,其还包括执行前述任一视频特征提取方法步骤的模块。
本公开的目的还采用以下技术方案来实现。依据本公开提出的音频指纹库构建装置,包括:视频特征提取模块,用于按照前述任意一项的视频特征提取方法提取视频对象的视频特征;视频特征存储模块,用于将所述视频特征存储到视频特征库中;视频特征库,用于存储所述视频特征。
本公开的目的还采用以下技术方案来实现。依据本公开提出的一种视频特征提取硬件装置,包括:存储器,用于存储非暂时性计算机可读指令;以及处理器,用于运行所述计算机可读指令,使得所述处理器执行时实现前述任意一种视频特征提取方法。
本公开的目的还采用以下技术方案来实现。依据本公开提出的一种计算机可读存储介质,用于存储非暂时性计算机可读指令,当所述非暂时性计算机可读指令由计算机执行时,使得所述计算机执行前述任意一种视频特征提取方法。
本公开的目的还采用以下技术方案来实现。依据本公开提出的一种终端设备,包括前述任意一种视频特征提取装置。
上述说明仅是本公开技术方案的概述,为了能更清楚了解本公开的技术手段,而可依照说明书的内容予以实施,并且为让本公开的上述和其他目的、特征和优点能够更明显易懂,以下特举较佳实施例,并配合附图,详细说明如下。
附图说明
图1是本公开一个实施例的视频特征提取方法的流程框图。
图2是本公开一个实施例的视频特征提取方法的流程图。
图3是本公开一个实施例提供的确定帧图像的图像特征的过程的流程框图。
图4是本公开一个实施例的视频特征库构建方法的流程框图。
图5是本公开一个实施例的视频特征提取装置的结构框图。
图6是本公开一个实施例提供的图像特征确定模块的结构框图。
图7是本公开一个实施例的视频特征库构建装置的结构框图。
图8是本公开一个实施例的视频特征提取硬件装置的硬件框图。
图9是本公开一个实施例的计算机可读存储介质的示意图。
图10是本公开一个实施例的终端设备的结构框图。
具体实施方式
为更进一步阐述本公开为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本公开提出的视频特征提取方法及装置的具体实施方式、结构、特征及其功效,详细说明如后。
图1为本公开的视频特征提取方法一个实施例的示意性框图,图2为本公开的视频特征提取方法一个实施例的示意性流程图。请参阅图1、图2,本公开示例的视频特征提取方法,主要包括以下步骤:
步骤S11,对视频对象(例如,可以是一段视频信号,也可以是一个视频文件)进行抽帧,得到一个或多个帧图像。所抽取的帧图像的具体数量是可以设置的,例如可以从每秒视频中抽取两个帧图像,也可以从每秒视频中抽取一个帧图像。需注意,可以均匀地进行抽帧,即相邻的两个帧图像之间的时间间隔是一致的。此后,处理进到步骤S12。
步骤S12,对于每个帧图像,获取一个或多个检测向量(shift vectors),不妨假设所获取的检测向量的数量为N个,其中的N为正整数。利用每个检测向量,以该帧图像中的任意像素作为起点,确定该起点的经该检测向量指向的终点的像素,根据该起点与对应的该终点之间的差异情况确定该帧图像的图像特征。此后,处理进到步骤S13。
具体地,该N个检测向量可以是预设的,也可以是随机生成的。所得到的检测向量如图2中的001所示。进一步地,每个检测向量的长度和方向都是任意的。另外,各个检测向量之间是独立的,不需要有任何关联。值得注意的是,对于抽帧得到的多个帧图像,一般可以利用同一组检测向量来确定各个帧图像的图像特征,但是也可以利用不同的多组检测向量来分别确定各个帧图像的图像特征。
需要注意的是,所谓的以任意像素作为起点为:一般可以将帧图像中的所有像素定义为起点;或者也可以将帧图像中的一个或多个预设位置的像素定义为起点,而具体的位置是任意的,例如,可以取一个帧图像中所有的未处于边缘上的点作为起点。
在本公开的一个具体示例中,在确定一个帧图像的图像特征的过程中:利用每个检测向量,将该帧图像中的每个像素作为起点,遍历每个起点像素和对应的终点像素之间的差异情况,根据基于同一个检测向量的各个差异情况的总体情况来确定该帧图像的基于该检测向量的特征比特(bit),以得到每个检测向量的特征比特。在一个示例中,可以对基于同一个检测向量的各个差异情况进行求和,以确定该各个差异情况的总体情况。然后根据所得到的N个检测向量对应的该特征比特,确定与该帧图像对应的一个长度为N的图像特征(也可以称为视频特征单体)。所得到的长度为N的图像特征如图2中的004所示。
在本公开的一些实施例中,前述的起点与终点之间的差异情况包括起点像素的亮度信息与终点像素的亮度信息之间的差异情况。
步骤S13,根据该视频对象所对应的各个帧图像的图像特征,确定该视频对象的视频特征。具体地,可以将多个图像特征按照所对应的帧图像的时间顺序进行排列,以得到图像特征序列,并将该图像特征序列确定为视频特征。
本公开示例的视频特征提取方法,对从视频对象中抽得的帧图像,根据长度、方向任意的检测向量确定帧图像中的起点像素和终点像素,并比较起点像素与终点像素之间的差异情况,以生成视频特征,能够提高视频特征提取的准确性和提取的效率,并能提高得到的视频特征的优良程度。进而使得基于本公开的视频特征提取方法得到的视频特征进行的视频比对、视频检索、视频消重以及视频内容监测具有更高的准确率和效率。
图3为本公开的视频特征提取方法一个实施例提供的确定帧图像的图像特征的示意性流程框图。请参阅图2、图3,在本公开的一个实施例中,步骤S12中的利用N个检测向量来确定帧图像的一个图像特征的过程具体包括:
步骤S21,分别为N个检测向量中的每一个分配一个计数器(counter)。此后,处理进到步骤S22。
步骤S22,根据一个检测向量,对于一个帧图像中的任意像素,以该像素为起点,确定该检测向量指向的终点的像素,获取该起点和该终点的亮度值,以确定该起点与该终点之间的亮度值的差异情况,例如该差异情况包括起点更亮、终点更亮这两种情况,根据基于该检测向量的每个起点的该差异情况,对与该检测向量对应的计数器的取值进行增加或减少。此后,处理进到步骤S23。
具体地,如图2中的002所示,在一个示例中,以帧图像的任意像素作为起点,根据一个检测向量(不妨取图2的001中的最右侧的检测向量),确定各个起点所指向的终点,比较相对应的起点的亮度值和终点的亮度值,如果起点的亮度值大于终点的亮度值(如图2中示出的起点比终点更浅的情形),则计数器的值+1,反之,如果起点的亮度值小于终点的亮度值(如图2中示出的起点比终点更黑的情形)则计数器的值-1。统计所有像素的情况,对计数器的取值进行增减,得到的计数器如图2中的003所示。
需要说明的是,如果检测向量的终点超出了帧图像的范围,可以不改变计数器的值,或者也可以对该帧图像进行周期性的延拓,在该帧图像的四面八方设置与该帧图像同样的帧图像,以使得检测向量的终点一定存在一个对应的像素。
步骤S23,比较该计数器的值与预设的设定值之间的大小,以得到比较结果,根据该比较结果确定该帧图像的基于该检测向量的特征比特。此后,处理进到步骤S24。
具体地,可以将该设定值预设为0;判断该计数器的值是否大于预设的设定值,如果该计数器的值大于该设定值,则生成一个取值为1的特征比特,反之则生成一个取值为0的特征比特。如图2中的003和004所示,如果计数器的值为+2,则对应生成一位取值为1的特征比特。
步骤S24,根据一个帧图像的基于该N个检测向量的特征比特,确定该帧图像的图像特征。所得到的图像特征如图2中的004所示。
需要注意的是,步骤S22中的计数器的增加与减小的改变规则并非局限于前述实施例中的方式,例如也可以是起点亮度值小于终点亮度值则计数器的值+1,反之计数器的值-1;另外,对于起点与终点的亮度值相等的情况,可以统一设置为对计数器的值+1,也可以统一设置为对计数器的值-1,还可以统一设置为不改变计数器的值。类似地,对于步骤S23,可以采用其他的方式确定特征比特的取值,例如也可以是:根据由步骤S22改变取值之后的计数器,如果计数器的值小于0则生成一个取值为1的特征比特,反之生成一个取值为0的特征比特。
图4为本公开的视频特征库构建方法一个实施例的示意性流程图。请参阅图4,本公开示例的视频特征库构建方法,主要包括以下步骤:
步骤S31,按照前述的本公开示例的视频特征提取方法的步骤提取视频对象的视频特征。此后,处理进到步骤S32。
步骤S32,将视频对象的视频特征存储到视频特征库中。
需要说明的是,一个视频特征库中的视频特征应该是按照同样的特征提取方法得到的,即在步骤S31的视频特征提取的过程中:在步骤S11中基于同样的方式进行抽帧,在步骤S12中获取的是同样的检测向量并基于同样的方式确定图像特征,且在步骤S13中基于同样的方式确定视频特征。另外,随着时间的推移,可以随时对视频特征库进行更新。
图5为本公开的视频特征提取装置一个实施例的示意性结构框图。请参阅图5,本公开示例的视频特征提取装置100主要包括:
抽帧模块110,用于对视频对象进行抽帧,得到一个或多个帧图像;
图像特征确定模块120,用于对于每个帧图像,获取一个或多个检测向量,利用每个检测向量,以该帧图像中的任意像素作为起点,确定该起点的经该检测向量指向的终点的像素,根据该起点与该终点之间的差异情况确定该帧图像的图像特征;
视频特征确定模块130,用于根据该视频对象所对应的各个帧图像的图像特征,确定该视频对象的视频特征。
图6为本公开的视频特征提取装置一个实施例提供的图像特征确定模块120的示意性结构框图。请参阅图6,在本公开的一个实施例中,图像特征确定模块120具体包括:
计数器生成单元121,用于分别为N个检测向量中的每一个分配一个计数器。
计数单元122,用于根据一个检测向量,对于一个帧图像中的任意像素,以该像素为起点,确定该检测向量指向的终点的像素,获取该起点和该终点的亮度值,以确定该起点与该终点之间的亮度值的差异情况,根据基于该检测向量的每个起点的该差异情况,对与该检测向量对应的计数器的取值进行增加或减少。
特征比特确定单元123,用于比较该计数器的值与预设的设定值之间的大小,以得到比较结果,根据该比较结果确定该帧图像的基于该检测向量的特征比特。
图像特征确定单元124,用于根据一个帧图像的基于该N个检测向量的特征比特,确定该帧图像的图像特征。
图7为本公开的视频特征库构建装置一个实施例的示意性结构图。请参阅图7,本公开示例的视频特征库构建装置200主要包括:
视频特征提取模块201,包括前述的本公开示例的视频特征提取装置的抽帧模块110、图像特征确定模块120及视频特征确定模块130,用于按照前述的本公开示例的视频特征提取方法的步骤提取视频对象的视频特征。
视频特征存储模块202,用于将视频特征存储到视频特征库中。
视频特征库203,用于存储各个视频对象的视频特征。
图8是图示根据本公开的实施例的视频特征提取硬件装置的硬件框图。如图8所示,根据本公开实施例的视频特征提取硬件装置300包括存储器301和处理器302。视频特征提取硬件装置300中的各组件通过总线系统和/或其它形式的连接机构(未示出)互连。
该存储器301用于存储非暂时性计算机可读指令。具体地,存储器301可以包括一个或多个计算机程序产品,该计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。该易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。该非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。
该处理器302可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其它形式的处理单元,并且可以控制视频特征提取硬件装置300中的其它组件以执行期望的功能。在本公开的一个实施例中,该处理器302用于运行该存储器301中存储的该计算机可读指令,使得该视频特征提取硬件装置300执行前述的本公开各实施例的视频特征提取方法的全部或部分步骤。
图9是图示根据本公开的实施例的计算机可读存储介质的示意图。如图9所示,根据本公开实施例的计算机可读存储介质400,其上存储有非暂时性计算机可读指令401。当该非暂时性计算机可读指令401由处理器运行时,执行前述的本公开各实施例的视频特征提取方法的全部或部分步骤。
图10是图示根据本公开实施例的终端设备的硬件结构示意图。终端设备可以以各种形式来实施,本公开中的终端设备可以包括但不限于诸如移动电话、智能电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、导航装置、车载终端设备、车载显示终端、车载电子后视镜等等的移动终端设备以及诸如数字TV、台式计算机等等的固定终端设备。
如图10所示,终端设备1100可以包括无线通信单元1110、A/V(音频/视频)输入单元1120、用户输入单元1130、感测单元1140、输出单元1150、存储器1160、接口单元1170、控制器1180和电源单元1190等等。图10示出了具有各种组件的终端设备,但是应理解的是,并不要求实施所有示出的组件。可以替代地实施更多或更少的组件。
其中,无线通信单元1110允许终端设备1100与无线通信系统或网络之间的无线电通信。A/V输入单元1120用于接收音频或视频信号。用户输入单元1130可以根据用户输入的命令生成键输入数据以控制终端设备的各种操作。感测单元1140检测终端设备1100的当前状态、终端设备1100的位置、用户对于终端设备1100的触摸输入的有无、终端设备1100的取向、终端设备1100的加速或减速移动和方向等等,并且生成用于控制终端设备1100的操作的命令或信号。接口单元1170用作至少一个外部装置与终端设备1100连接可以通过的接口。输出单元1150被构造为以视觉、音频和/或触觉方式提供输出信号。存储器1160可以存储由控制器1180执行的处理和控制操作的软件程序等等,或者可以暂时地存储己经输出或将要输出的数据。存储器1160可以包括至少一种类型的存储介质。而且,终端设备1100可以与通过网络连接执行存储器1160的存储功能的网络存储装置协作。控制器1180通常控制终端设备的总体操作。另外,控制器1180可以包括用于再现或回放多媒体数据的多媒体模块。控制器1180可以执行模式识别处理,以将在触摸屏上执行的手写输入或者图片绘制输入识别为字符或图像。电源单元1190在控制器1180的控制下接收外部电力或内部电力并且提供操作各元件和组件所需的适当的电力。
本公开提出的视频特征提取方法的各种实施方式可以以使用例如计算机软件、硬件或其任何组合的计算机可读介质来实施。对于硬件实施,本公开提出的视频特征提取方法的各种实施方式可以通过使用特定用途集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理装置(DSPD)、可编程逻辑装置(PLD)、现场可编程门阵列(FPGA)、处理器、控制器、微控制器、微处理器、被设计为执行这里描述的功能的电子单元中的至少一种来实施,在一些情况下,本公开提出的视频特征提取方法的各种实施方式可以在控制器1180中实施。对于软件实施,本公开提出的视频特征提取方法的各种实施方式可以与允许执行至少一种功能或操作的单独的软件模块来实施。软件代码可以由以任何适当的编程语言编写的软件应用程序(或程序)来实施,软件代码可以存储在存储器1160中并且由控制器1180执行。
以上,根据本公开实施例的视频特征提取方法、装置、硬件装置、计算机可读存储介质以及终端设备,通过获取任意长度和任意方向的多个检测向量,并判断检测向量的起点像素和终点像素之间的差异情况,以生成视频特征,能够大大提高视频特征提取的准确性和提取的效率,并能提高得到的视频特征的优良程度,进而使得基于本公开的视频特征提取方法得到的视频特征进行的视频比对、视频检索、视频消重以及视频内容监测具有更高的准确率和效率。
以上结合具体实施例描述了本公开的基本原理,但是,需要指出的是,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本公开的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本公开为必须采用上述具体的细节来实现。
本公开中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
另外,如在此使用的,在以“至少一个”开始的项的列举中使用的“或”指示分离的列举,以便例如“A、B或C的至少一个”的列举意味着A或B或C,或AB或AC或BC,或ABC(即A和B和C)。此外,措辞“示例的”不意味着描述的例子是优选的或者比其他例子更好。
还需要指出的是,在本公开的系统和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本公开的等效方案。
可以不脱离由所附权利要求定义的教导的技术而进行对在此所述的技术的各种改变、替换和更改。此外,本公开的权利要求的范围不限于以上所述的处理、机器、制造、事件的组成、手段、方法和动作的具体方面。可以利用与在此所述的相应方面进行基本相同的功能或者实现基本相同的结果的当前存在的或者稍后要开发的处理、机器、制造、事件的组成、手段、方法或动作。因而,所附权利要求包括在其范围内的这样的处理、机器、制造、事件的组成、手段、方法或动作。
提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本公开。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本公开的范围。因此,本公开不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本公开的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。