CN110083740A - 视频指纹提取及视频检索方法、装置、终端及存储介质 - Google Patents

视频指纹提取及视频检索方法、装置、终端及存储介质 Download PDF

Info

Publication number
CN110083740A
CN110083740A CN201910377071.6A CN201910377071A CN110083740A CN 110083740 A CN110083740 A CN 110083740A CN 201910377071 A CN201910377071 A CN 201910377071A CN 110083740 A CN110083740 A CN 110083740A
Authority
CN
China
Prior art keywords
video
pixel
image
region
black surround
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201910377071.6A
Other languages
English (en)
Other versions
CN110083740B (zh
Inventor
周旭智
刘浏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Onething Technology Co Ltd
Original Assignee
Shenzhen Onething Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Onething Technology Co Ltd filed Critical Shenzhen Onething Technology Co Ltd
Priority to CN201910377071.6A priority Critical patent/CN110083740B/zh
Publication of CN110083740A publication Critical patent/CN110083740A/zh
Priority to PCT/CN2020/079014 priority patent/WO2020224325A1/zh
Application granted granted Critical
Publication of CN110083740B publication Critical patent/CN110083740B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/73Querying
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/78Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/783Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Library & Information Science (AREA)
  • Multimedia (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Image Analysis (AREA)
  • Collating Specific Patterns (AREA)

Abstract

本发明公开了一种视频指纹提取方法,包括:从视频文件中提取预设帧数的第一图像;检测所述第一图像中的非黑边区域;将所述非黑边区域确定为所述视频文件的非黑边区域;从所述视频文件中提取预设数量的视频片段;计算所述视频片段中的所述非黑边区域内的哈希指纹;根据所述预设数量的视频片段的哈希指纹计算所述视频文件的视频指纹。本发明还公开了一种视频检索方法、视频指纹提取及视频检索装置、终端及存储介质。本发明能够提高在有黑边的情况下的视频指纹提取的效率和特征表达能力,并进而提高视频检索的效率,满足视频检索的实时性要求。

Description

视频指纹提取及视频检索方法、装置、终端及存储介质
技术领域
本发明涉及视频处理技术领域,尤其涉及一种视频指纹提取方法、视频检索方法、装置、终端及存储介质。
背景技术
随着计算机网络传输和多媒体技术的发展,互联网上的数字视频与日俱增。视频以其信息量大、直观的特点,给人们获取信息和娱乐带来了很大的便利。与此同时,对指定视频片段进行检索已得到越来越多的关注。比如,文件监管部门需要对互联网上违法视频进行监控等。但由于视频数据量大,传统的检索模式难以做到快速、准确,因此怎样从巨大的视频仓库中快速准确的检索出指定视频片段,成为急需解决的难题。
视频指纹是从视频序列中抽取的唯一标识符,用来代表视频文件的电子标识,能够将一个视频片段与其他视频片段区分开的唯一的特征向量。
现有技术中,基于视频内容的视频指纹提取方法,例如,基于小波变换的视频指纹提取算法、基于奇异值分解的视频指纹提取算法、基于稀疏编码的视频指纹提取算法等,提取视频指纹时耗时过多,因而应用到视频检索时实时性差;且对于存在黑边的视频文件,传统的视频指纹提取算法鲁棒性差,视频检索结果不理想。
发明内容
本发明的主要目的在于提供一种视频指纹提取及视频检索方法、装置、终端及存储介质,旨在解决对存在黑边的视频文件的视频指纹提取速度慢、鲁棒性差及视频检索实时性差的技术问题,以便提高在有黑边的情况下的视频指纹提取的效率和特征表达能力,并进而提高视频检索的效率,满足视频检索的实时性要求。
为实现上述目的,本发明的第一方面提供一种视频指纹提取方法,应用于终端中,所述方法包括:
从视频文件中提取预设帧数的第一图像;
检测所述第一图像中的非黑边区域;
将所述非黑边区域确定为所述视频文件的非黑边区域;
从所述视频文件中提取预设数量的视频片段;
计算所述视频片段中的所述非黑边区域内的哈希指纹;
根据所述预设数量的视频片段的哈希指纹计算所述视频文件的视频指纹。
优选的,所述检测所述第一图像中的非黑边区域包括:
将所述第一图像转换为第一灰度图像;
计算所述第一灰度图像中的预设目标区域内的像素的方差;
将所述方差按照从大到小进行排序后取前C个方差对应的目标灰度图像;
根据C个所述目标灰度图像中的所述预设目标区域内的相同位置处的像素,计算所述预设目标区域内的每一个像素的相对均值和相对方差;
遍历所述预设目标区域,在所述预设目标区域内最外层朝向最内层的路径方向上,逐一检测所述路径方向上的像素点;
当所述路径方向上的像素点的相对均值和相对方差满足了预设停止检测条件时,停止检测;
将停止检测时的像素点对应的位置确定为所述第一图像中的非黑边位置,将所述非黑边位置形成的区域确定为所述非黑边区域。
优选的,所述计算所述第一灰度图像中的预设目标区域内的像素的方差包括:
获取所述预设目标区域内的中心区域的像素,所述中心区域是指所述预设目标区域的正中心区域,且所述中心区域的面积为所述预设目标区域的面积的二分之一;
计算所述中心区域的像素的方差;
将所述中心区域的像素的方差确定为所述第一灰度图像中的所述预设目标区域内的像素的方差。
优选的,所述计算所述视频片段中的所述非黑边区域内的哈希指纹包括:
根据预设的帧速率对所述视频片段进行重采样得到多帧第二图像;
将所述第二图像转化为第二灰度图像;
计算所述第二灰度图像中的所述非黑边区域内的像素的平均值;
当所述非黑边区域内的像素的值大于或者等于所述平均值时,将所述像素的值确定为1;
当所述非黑边区域内的像素的值小于所述平均值时,将所述像素的值确定为0;
将所述非黑边区域内的像素的值进行组合后得到所述第二灰度图像的哈希指纹;
根据所述多个第二灰度图像的哈希指纹确定所述视频片段的哈希指纹。
优选的,所述将所述非黑边区域内的像素的值进行组合后得到所述第二灰度图像的哈希指纹包括:
去除所述非黑边区域内的预设目标位置处的像素的值;
对去除所述预设目标位置处的像素的值的所述非黑边区域内的像素的值进行组合,得到所述第二灰度图像的哈希指纹。
优选的,所述根据所述多个第二灰度图像的哈希指纹确定所述视频片段的哈希指纹包括:
对所述多个第二灰度图像进行分组,得到多组灰度图像序列,其中,每组灰度图像序列包括预设数量的具有时间序列的第二灰度图像;
计算每组所述灰度图像序列中相邻两帧第二灰度图像的哈希指纹的汉明距离;
计算每组所述灰度图像序列中汉明距离的总和;
将对应汉明距离的总和最大的灰度图像序列确定为目标灰度图像序列;
将所述目标灰度图像序列中的灰度图像的哈希指纹确定为所述视频片段的哈希指纹。
为实现上述目的,本发明的第二方面提供一种视频检索方法,应用于终端中,所述方法包括:
采用所述的视频指纹提取方法提取指定的视频文件的第一视频指纹;
采用所述的视频指纹提取方法提取待检测的数据库中的视频文件的第二视频指纹;
检索所述第二视频指纹中是否存在与所述第一视频指纹相同的目标视频指纹;
当确定存在所述目标视频指纹时,输出所述待检测的数据库中对应所述目标视频指纹的目标视频文件。
为实现上述目的,本发明的第三方面提供一种视频指纹提取装置,运行于终端中,所述装置包括:
第一提取模块,用于从视频文件中提取预设帧数的第一图像;
检测模块,用于检测所述第一图像中的非黑边区域;
确定模块,用于将所述非黑边区域确定为所述视频文件的非黑边区域;
第二提取模块,用于从所述视频文件中提取预设数量的视频片段;
第一计算模块,用于计算所述视频片段中的所述非黑边区域内的哈希指纹;
第二计算模块,用于根据所述预设数量的视频片段的哈希指纹计算所述视频文件的视频指纹。
为实现上述目的,本发明的第四方面提供一种视频检索装置,运行于终端中,所述装置包括:
第一指纹提取模块,用于采用所述的视频指纹提取方法提取指定的视频文件的第一视频指纹;
第二指纹提取模块,用于采用所述的视频指纹提取方法提取待检测的数据库中的视频文件的第二视频指纹;
检索模块,用于检索所述第二视频指纹中是否存在与所述第一视频指纹相同的目标视频指纹;
输出模块,用于当所述检索模块确定存在所述目标视频指纹时,输出所述待检测的数据库中对应所述目标视频指纹的目标视频文件。
为实现上述目的,本发明的第五方面提供一种终端,所述终端包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的视频指纹提取的下载程序或者视频检索的下载程序,所述视频指纹提取的下载程序被所述处理器执行时实现所述的视频指纹提取方法,所述视频检索的下载程序被所述处理器执行时实现所述的视频检索方法。
为实现上述目的,本发明的第六方面提供一种计算机可读存储介质,所述计算机可读存储介质上存储有视频指纹提取的下载程序或者视频检索的下载程序,所述视频指纹提取的下载程序可被一个或者多个处理器执行以实现所述的视频指纹提取方法,所述视频检索的下载程序可被一个或者多个处理器执行以实现所述的视频检索方法。
本发明实施例所述的视频指纹提取及视频检索方法、装置、终端及存储介质,首先从视频文件中提取预设帧数的第一图像,将检测到的所述第一图像中的非黑边区域确定为所述视频文件中的非黑边区域,再从所述视频文件中提取预设数量的视频片段,接着计算所述视频片段中的所述非黑边区域内的哈希指纹,最后根据所述预设数量的视频片段的哈希指纹即可计算得到所述视频文件的视频指纹。由于首先确定出了视频文件的非黑边区域,因此能够消除黑边对提取视频指纹的影响;而在非黑边区域内对视频指纹进行计算,提取的视频指纹对黑边具有鲁棒性;其次,从视频文件中选取了预设数量的视频片段,视频片段相对于视频文件而言,大大减少了计算量,节省了视频指纹的计算时间,提高了视频指纹的计算效率。应用到视频检索时,有效的缩短了视频检索的时间,能够满足视频检索的实时性要求。
附图说明
图1为本发明第一实施例的视频指纹提取方法的流程示意图;
图2为本发明较佳实施例的灰度图像的非黑边区域的检测示意图;
图3为本发明较佳实施例的灰度图像中的字幕或水印的位置示意图;
图4为本发明第二实施例的视频检索方法的流程示意图;
图5为本发明第三实施例的视频指纹提取装置的结构示意图;
图6为本发明第四实施例的视频检索装置的结构示意图;
图7为本发明第五实施例揭露的终端的内部结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,在本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
实施例一
如图1所示,为本发明实施例一提供的视频指纹提取方法的流程图。
所述视频指纹提取方法应用于终端中,具体包括以下步骤,根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。
S11,从视频文件中提取预设帧数的第一图像。
本实施例中,所述视频文件可以包括,但不限于:音乐视频、短视频、电视剧、电影、综艺节目视频、动漫视频等等。
终端可以从视频文件中随机提取预设帧数的第一图像。
优选地,为了避免随机提取时,提取到了视频文件的开头和结尾部分的图像,所述从视频文件中提取预设帧数的第一图像包括:获取视频文件的时长;在所述时长的预设范围内随机提取预设帧数的第一图像。
示例性的,假设视频文件的时长为1分钟,预设范围为所述时长的30%至80%的时间内,则从视频文件的第18秒(1分钟*30%)至第48秒(1分钟*80%)之间随机提取预设帧数(例如,10帧)的第一图像。
S12,检测所述第一图像中的非黑边区域。
本实施例中,提取出了预设帧数的第一图像之后,首先确定所述第一图像的非黑边区域,再根据所述第一图像的非黑边区域确定出所述视频文件中的非黑边区域。
优选地,所述检测所述第一图像中的非黑边区域包括:
将所述第一图像转换为第一灰度图像;
计算所述第一灰度图像中的预设目标区域内的像素的方差;
将所述方差按照从大到小进行排序后取前C个方差对应的目标灰度图像;
根据C个所述目标灰度图像中的所述预设目标区域内的相同位置处的像素,计算所述预设目标区域内的每一个像素的相对均值和相对方差;
遍历所述预设目标区域,在所述预设目标区域内最外层朝向最内层的路径方向上,逐一检测所述路径方向上的像素点;
当所述路径方向上的像素点的相对均值和相对方差满足了预设停止检测条件时,停止检测;
将停止检测时的像素点对应的位置确定为所述第一图像中的非黑边位置,将所述非黑边位置形成的区域确定为所述非黑边区域。
一般而言,视频中的黑边区域只可能出现在视频中上下左右四个部分的区域内,因而,可以预先指定上下左右四个部分的区域为目标区域。预先指定上下左右四个部分的区域的宽度相同,均为r个像素,r为预先设定的值。后续只需要检测目标区域中的非黑边区域即可确定第一灰度图像中的非黑边区域。
示例性的,如图2所示,预先设置斜影区域为第一灰度图像中的目标区域,黑色区域为所述目标区域中的中心区域。假设从视频文件中随机抽取了10帧第一图像,并将这10帧第一图像转换为了10帧第一灰度图像。在计算出所述10帧第一灰度图像中的预设目标区域内的像素的方差之后,将方差按照从大到小进行排序,然后选取前C个(例如,前4个)较大的方差,将前C个方差对应的第一灰度图像确定为目标灰度图像。
由于C个目标灰度图像的大小是相同的,这里为了描述方便,可以参考图2中所示的坐标系,假设目标灰度图像的左上角为原点,水平向右方向为y正轴,垂直向下方向为x正轴。针对坐标系中的位置(0,0),遍历C个所述目标灰度图像中的每一个目标灰度图像中的第1个像素点(例如,第1个目标灰度图像的第1个像素点1,第2个目标灰度图像的第1个像素点0,第3个目标灰度图像的第1个像素点1,第4个目标灰度图像的第1个像素点2),计算位置(0,0)对应的像素的相对均值(1)和相对方差(0.5)。同时,计算C个所述目标灰度图像中所述预设目标区域内的总均值和总方差。最后对所述预设目标区域的所有像素点,从最外层向最内层进行检测,当确定满足了预设的停止检测条件时,则停止检测。所述预设的停止检测条件可以包括:所述路径方向上的像素点的相对方差与总方差的比值大于预设阈值α(0-100%);或者所述路径方向上的像素点的相对均值大于预设第一值β;或者所述路径方向上的像素点的相对方差大于预设第二值θ。将停止检测时的像素点对应的位置确定为所述第一图像中的非黑边位置,所述非黑边位置形成的区域为所述非黑边区域,如图2所示的灰点区域。
由于在实际场景中,视频文件会存在夜景画面,从而导致出现的黑边区域与非黑边区域中的夜景画面的对比度不明显,而方差能够反应图像的高频部分的大小,如果图像对比度小,则方差小,如果图像对比度大,则方差大。通过计算第一灰度图像中的目标区域内的像素的方差即可判断出所述目标区域内是否包含有黑边区域。如果计算出的方差大,则该第一灰度图像中的所述目标区域内必定包含有黑边区域;如果计算出的方差小,则该第一灰度图像中的所述目标区域内可能不包含有黑边区域。从预设帧数的第一灰度图像中筛选出方差最大的目标灰度图像,目标灰度图像中的黑边区域与非黑边区域中的画面将会有非常明显的对比度,则检测出的黑边区域更为准确。另一方面,由于目标区域内的像素个数远小于第一灰度图像中的像素个数,因而相比计算第一灰度图像的方差,仅计算目标区域内的方差则更加节省时间,有助于提高视频指纹的提取效率。另外需要说明的是,计算所述预设目标区域内的每一个像素相对于C个目标灰度的相对均值和相对方差,反映的是像素点在不同时刻的亮度变化情况。
优选地,为了进一步减少目标区域内的像素的方差和均值的计算时间,提高提取视频指纹的效率,所述计算所述第一灰度图像中的预设目标区域内的像素的方差包括:获取所述预设目标区域内的中心区域的像素;计算所述中心区域的像素的方差;将所述中心区域的像素的方差确定为所述第一灰度图像中的所述预设目标区域内的像素的方差。同理,所述计算所述目标灰度图像中的所述预设目标区域内的像素的均值包括:获取所述预设目标区域内的中心区域的像素;计算所述中心区域的像素的均值;将所述中心区域的像素的均值确定为所述目标灰度图像中的所述预设目标区域内的像素的均值。所述中心区域是指所述预设目标区域的正中心区域,且所述中心区域的面积为所述预设目标区域的面积的二分之一。由此可见,计算所述目标区域内的像素的方差和均值变为计算所述中心区域的像素的方差和均值,由于中心区域的像素个数进一步减少,故而计算效率能进一步提高。
S13,将所述非黑边区域确定为所述视频文件的非黑边区域。
由于对于视频文件而言,一个视频文件中的每帧图像出现黑边区域的位置及黑边区域的大小基本上是固定的。相应的,一个视频文件中的每帧图像出现非黑边区域的位置及非黑边区域的大小则基本上也是固定的,不会存在某一帧图像的非黑边区域较大,另一帧图像的非黑边区域较小。因此,可以根据预设帧数的第一图像中出现的非黑边区域来确定视频文件中的非黑边区域。即,可以将所述预设帧数的第一图像中的非黑边区域所在的位置和非黑边区域的大小确定为视频文件的非黑边区域的位置和非黑边区域的大小。
S14,从所述视频文件中提取预设数量的视频片段。
本实施中,在确定所述视频文件中的非黑边区域之后,再从所述视频文件中提取预设数量的视频片段。
可以随机的从所述视频文件中提取预设数量的视频片段。也可以预先设置时间节点,例如,预先设置4个时间节点,分别是:视频播放时长的20%处的时间节点、60%处的时间节点、60%处的时间节点及80%处的时间节点,在预先设置的时间节点附件提取预设时长的视频片段。
所述视频片段的时长为预先设置的,例如,10秒。
S15,计算所述视频片段中的所述非黑边区域内的哈希指纹。
优选的,所述计算所述视频片段中的所述非黑边区域内的哈希指纹包括:
根据预设的帧速率对所述视频片段进行重采样得到多帧第二图像;
将所述第二图像转化为第二灰度图像;
计算所述第二灰度图像中的所述非黑边区域内的像素的平均值;
当所述非黑边区域内的像素的值大于或者等于所述平均值时,将所述像素的值确定为1;
当所述非黑边区域内的像素的值小于所述平均值时,将所述像素的值确定为0;
将所述非黑边区域内的像素的值进行组合后得到所述第二灰度图像的哈希指纹;
根据所述多个第二灰度图像的哈希指纹确定所述视频片段的哈希指纹。
本实施例中,所述视频片段以一个预先设置的固定的帧速率(即每秒传输帧数(Frames Per Second,FPS))被重新采样,能够应对帧速率的变化,使得后续提取得到的视频指纹对不同的帧速率的视频文件均具有鲁棒性。
示例性的,假设预设的帧速率为24FPS,则对一个10秒的视频片段进行重采样可以得到260帧图像,在计算260帧第二灰度图像的平均值之后,遍历每帧第二灰度图像中的非黑边区域内的像素的值,接着对非黑边区域内的像素的值与所述平均值进行比较,再根据比较的结果确定所述第二灰度图像中的哈希指纹,最后将260帧第二灰度图像的哈希指纹进行组合即可确定所述视频片段的哈希指纹。若灰度图像为6*4,则计算得到的灰度图像的哈希指纹为24字节(bit),最终得到的视频片段的哈希指纹为260*24bit。
优选地,为了解决水印的问题,所述将所述非黑边区域内的像素的值进行组合后得到所述第二灰度图像的哈希指纹包括:
去除所述非黑边区域内的预设目标位置处的像素的值;
对去除所述预设目标位置处的像素的值的所述非黑边区域内的像素的值进行组合,得到所述第二灰度图像的哈希指纹。
本实施例中,由于非黑边区域内可能存在字幕或者水印等,而视频文件中的字幕位置或者水印位置比较固定,因此,可以预先将可能出现字幕或者水印的位置处的像素去除。如图3所示,斜影区域表示出现字幕或者水印的区域。由于去除了可能存在字幕或者水印的位置处的像素的值,则字幕或者水印对视频指纹的干扰能够得到有效的避免,从而增强了提取的视频指纹的表征能力。
优选地,为了进一步简化视频片段的哈希指纹的表达形式,所述根据所述多个第二灰度图像的哈希指纹确定所述视频片段的哈希指纹包括:
对所述多个第二灰度图像进行分组,得到多组灰度图像序列,其中,每组灰度图像序列包括预设数量的具有时间序列的第二灰度图像;
计算每组所述灰度图像序列中相邻两帧第二灰度图像的哈希指纹的汉明距离;
计算每组所述灰度图像序列中汉明距离的总和;
将对应汉明距离的总和最大的灰度图像序列确定为目标灰度图像序列;
将所述目标灰度图像序列中的灰度图像的哈希指纹确定为所述视频片段的哈希指纹。
本实施例中,可以通过计算相邻两帧第二灰度图像的汉明距离来比较相邻两帧第二灰度图像的相似度,汉明距离越大则说明相邻两帧第二灰度图像越不相似;反之,汉明距离越小则说明相邻两帧第二灰度图像越相似。当汉明距离为0时,说明相邻两帧第二灰度图像完全相同。通常认为汉明距离大于10时,两张灰度图像是完全不同的图像。
示例性的,假设前一帧第二灰度图像的哈希指纹为0 1 2 5 6 3 4 8 9 7 10 11,后一帧第二灰度图像的哈希指纹为0 3 1 5 6 2 4 89 7 10 11,则该相邻两帧的第二灰度图像的汉明距离为H=|0-0|+|1-3|+|2-1|+...+|10-10|+|11-11|=4。
对某一组灰度图像序列中每相邻两帧的第二灰度图像的汉明距离进行加总,得到该组灰度图像序列的汉明距离总和,总和越大,表明该组灰度图像序列中的内容变化越剧烈或者对比度变化越剧烈;总和越小,表明该组灰度图像序列中的内容变化越小或者对比度变化越平滑。选择内容变化越剧烈或者对比度变化越剧烈的灰度图像序列中的灰度图像的哈希指纹,作为视频片段的哈希指纹,最能够有效的代表该视频片段的内容,表征能力更强。
需要说明的是,也可以在S14从所述视频文件中提取预设数量的视频片段之后,选择预设长度的滑窗,在所述视频片段上进行滑动,从而得到多组视频片段序列。再对每组视频片段序列根据预设帧速率进行重采样,即可得到多组灰度图像序列。本发明对此不做任何具体的限制,任何根据视频片段中的灰度图像的非黑边区域内的像素计算哈希指纹和根据相邻两帧灰度图像的哈希指纹计算汉明距离,并根据汉明距离的总和确定视频片段的哈希指纹的思想都应包含在本发明内。
S16,根据所述预设数量的视频片段的哈希指纹计算所述视频文件的视频指纹。
本实施例中,在计算得到每一个视频片段的哈希指纹之后,可以将预设数量的视频片段的哈希指纹组合起来得到哈希指纹矩阵或者哈希指纹向量,将所述哈希指纹矩阵或者哈希指纹向量作为最终的视频文件的视频指纹。
综上所述,本发明提供的视频指纹提取方法,首先从视频文件中提取预设帧数的第一图像,将检测到的所述第一图像中的非黑边区域确定为所述视频文件中的非黑边区域,再从所述视频文件中提取预设数量的视频片段,接着计算所述视频片段中的所述非黑边区域内的哈希指纹,最后根据所述预设数量的视频片段的哈希指纹即可计算得到所述视频文件的视频指纹。由于首先确定出了视频文件的非黑边区域,因此能够消除黑边对提取视频指纹的影响;而在非黑边区域内对视频指纹进行计算,提取的视频指纹对黑边具有鲁棒性;其次,从视频文件中选取了预设数量的视频片段,视频片段相对于视频文件而言,大大减少了计算量,节省了视频指纹的计算时间,提高了视频指纹的计算效率。应用到视频检索时,有效的缩短了视频检索的时间,能够满足视频检索的实时性要求。
此外,由于通过去除字幕或水印位置处的像素,有效的减少了字幕或水印对视频指纹的影响,进一步提高了提取的视频指纹对字幕或水印的鲁棒性。
实施例二
如图4所示,为本发明实施例二提供的视频检索方法的流程图。
所述视频检索方法应用于终端中,具体包括以下步骤,根据不同的需求,该流程图中步骤的顺序可以改变,某些步骤可以省略。
S41,采用所述的视频指纹提取方法提取指定的视频文件的第一视频指纹。
本实施例中,所述指定的视频文件可以是上传的视频文件,还可以是待查询的视频文件。
对所述指定的视频文件的视频指纹的提取,采用本发明实施例所述的视频指纹提取方法,具体过程不再详细赘述。将提取的所述指定的视频文件的视频指纹称之为第一视频指纹。
S42,采用所述的视频指纹提取方法提取待检测的数据库中的视频文件的第二视频指纹。
本实施例中,所述待检测的数据库可以是视频版权数据库,还可以是互联网上的视频仓库。
对所述待检测的数据库中的视频文件的视频指纹的提取,采用本发明实施例所述的视频指纹提取方法,具体过程不再详细赘述。将提取的所述待检测的数据库中的视频文件的视频指纹称之为第二视频指纹。
S43,检索所述第二视频指纹中是否存在与所述第一视频指纹相同的目标视频指纹。
本实施例中,将每一个所述第二视频指纹与所述第一视频指纹进行比较。若判断某一个第二视频指纹与所述第一视频指纹相同,则说明所述第二视频指纹中存在与所述第一视频指纹相同的目标视频指纹。若判断任意一个第二视频指纹与所述第一视频指纹均不相同,则说明所述第二视频指纹中不存在与所述第一视频指纹相同的目标视频指纹。
S44,当确定存在所述目标视频指纹时,输出所述待检测的数据库中对应所述目标视频指纹的目标视频文件。
本实施例中,确定出了目标视频指纹之后,即可得到对应所述目标视频指纹的目标视频文件,并输出所述目标视频文件。
下面列举几个具体的应用场景,具体阐述如何采用本发明实施例中提供的视频指纹提取方法进行视频检索。
例如,视频分享平台对用户上传的视频数据进行版权检测时,可以事先利用所述的视频指纹提取方法提取视频版权数据库中的每一个视频的第一视频指纹。当接收到用户上传的视频时,利用所述的视频指纹提取方法提取所上传的视频的第二视频指纹。当视频版权数据库中的第一视频指纹包含了第二视频指纹时,即从视频版权数据库中检索出了对应所上传的视频的目标视频,则确定所上传的视频具有版权冲突。
再如,文件监管部门需要对互联网上的违法视频进行监控时,可以事先利用所述的视频指纹提取方法提取视频仓库中的每一个视频的第一视频指纹。再利用所述的视频指纹提取方法提取所指定的违法视频的第二视频指纹。当视频仓库中的第一视频指纹包含了第二视频指纹时,即从视频仓库中检索出了对应所指定的违法视频的目标视频,则确定互联网上存在了违法视频。
综上所述,本发明实施例所述的视频检索方法,采用所述的视频指纹提取方法提取指定的视频文件的第一视频指纹和待检测的数据库中的视频文件的第二视频指纹,对所述第二视频指纹中与所述第一视频指纹进行比较,来检索所述第二视频指纹中是否存在与所述第一视频指纹相同的目标视频指纹,并在确定存在所述目标视频指纹时,输出对应所述目标视频指纹的目标视频文件。由于采用了所述的视频指纹提取方法,提取的视频指纹对于黑边和水印具有相强的鲁棒性,提取的视频指纹的表征能力强,因而在进行视频文件检索时,能快速有效的找出目标视频文件;其次,采用所述的视频指纹提取方法,视频指纹的提取时间短,提取效率高,故在进行视频文件检索时,能有效的缩短视频文件的检索时间,提高视频文件的检索效率,满足视频文件检索的实时性要求,具有较高实用价值和经济价值。
上述图1-4详细介绍了本发明的视频指纹提取方法和视频检索方法,下面结合第5~7图,分别对实现所述视频指纹提取方法和视频检索方法的软件系统的功能模块以及硬件装置架构进行介绍。
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
实施例三
参阅图5所示,为本发明实施例揭露的视频指纹提取装置的功能模块示意图。
在一些实施例中,所述视频指纹提取装置50运行于终端中。所述视频指纹提取装置50可以包括多个由程序代码段所组成的功能模块。所述视频指纹提取装置50中的各个程序段的程序代码可以存储于终端的存储器中,并由所述至少一个处理器所执行,以执行(详见图1描述)对有黑边和水印的视频的指纹的提取。
本实施例中,所述视频指纹提取装置50根据其所执行的功能,可以被划分为多个功能模块。所述功能模块可以包括:第一提取模块501、检测模块502、确定模块503、第二提取模块504、第一计算模块505及第二计算模块506。本发明所称的模块是指一种能够被至少一个处理器所执行并且能够完成固定功能的一系列计算机程序段,其存储在存储器中。在本实施例中,关于各模块的功能将在后续的实施例中详述。
第一提取模块501,用于从视频文件中提取预设帧数的第一图像。
本实施例中,所述视频文件可以包括,但不限于:音乐视频、短视频、电视剧、电影、综艺节目视频、动漫视频等等。
终端可以从视频文件中随机提取预设帧数的第一图像。
优选地,为了避免随机提取时,提取到了视频文件的开头和结尾部分的图像,所述第一提取模块501从视频文件中提取预设帧数的第一图像包括:获取视频文件的时长;在所述时长的预设范围内随机提取预设帧数的第一图像。
示例性的,假设视频文件的时长为1分钟,预设范围为所述时长的30%至80%的时间内,则从视频文件的第18秒(1分钟*30%)至第48秒(1分钟*80%)之间随机提取预设帧数(例如,10帧)的第一图像。
检测模块502,用于检测所述第一图像中的非黑边区域。
本实施例中,提取出了预设帧数的第一图像之后,首先确定所述第一图像的非黑边区域,再根据所述第一图像的非黑边区域确定出所述视频文件中的非黑边区域。
优选地,所述检测模块502检测所述第一图像中的非黑边区域包括:
将所述第一图像转换为第一灰度图像;
计算所述第一灰度图像中的预设目标区域内的像素的方差;
将所述方差按照从大到小进行排序后取前C个方差对应的目标灰度图像;
根据C个所述目标灰度图像中的所述预设目标区域内的相同位置处的像素,计算所述预设目标区域内的每一个像素的相对均值和相对方差;
遍历所述预设目标区域,在所述预设目标区域内最外层朝向最内层的路径方向上,逐一检测所述路径方向上的像素点;
当所述路径方向上的像素点的相对均值和相对方差满足了预设停止检测条件时,停止检测;
将停止检测时的像素点对应的位置确定为所述第一图像中的非黑边位置,将所述非黑边位置形成的区域确定为所述非黑边区域。
一般而言,视频中的黑边区域只可能出现在视频中上下左右四个部分的区域内,因而,可以预先指定上下左右四个部分的区域为目标区域。预先指定上下左右四个部分的区域的宽度相同,均为r个像素,r为预先设定的值。后续只需要检测目标区域中的非黑边区域即可确定第一灰度图像中的非黑边区域。
示例性的,如图2所示,预先设置斜影区域为第一灰度图像中的目标区域,黑色区域为所述目标区域中的中心区域。假设从视频文件中随机抽取了10帧第一图像,并将这10帧第一图像转换为了10帧第一灰度图像。在计算出所述10帧第一灰度图像中的预设目标区域内的像素的方差之后,将方差按照从大到小进行排序,然后选取前C个(例如,前4个)较大的方差,将前C个方差对应的第一灰度图像确定为目标灰度图像。
由于C个目标灰度图像的大小是相同的,这里为了描述方便,可以参考图2中所示的坐标系,假设目标灰度图像的左上角为原点,水平向右方向为y正轴,垂直向下方向为x正轴。针对坐标系中的位置(0,0),遍历C个所述目标灰度图像中的每一个目标灰度图像中的第1个像素点(例如,第1个目标灰度图像的第1个像素点1,第2个目标灰度图像的第1个像素点0,第3个目标灰度图像的第1个像素点1,第4个目标灰度图像的第1个像素点2),计算位置(0,0)对应的像素的相对均值(1)和相对方差(0.5)。同时,计算C个所述目标灰度图像中所述预设目标区域内的总均值和总方差。最后对所述预设目标区域的所有像素点,从最外层向最内层进行检测,当确定满足了预设的停止检测条件时,则停止检测。所述预设的停止检测条件可以包括:所述路径方向上的像素点的相对方差与总方差的比值大于预设阈值α(0-100%);或者所述路径方向上的像素点的相对均值大于预设第一值β;或者所述路径方向上的像素点的相对方差大于预设第二值θ。将停止检测时的像素点对应的位置确定为所述第一图像中的非黑边位置,所述非黑边位置形成的区域为所述非黑边区域,如图2所示的灰点区域。
由于在实际场景中,视频文件会存在夜景画面,从而导致出现的黑边区域与非黑边区域中的夜景画面的对比度不明显,而方差能够反应图像的高频部分的大小,如果图像对比度小,则方差小,如果图像对比度大,则方差大。通过计算第一灰度图像中的目标区域内的像素的方差即可判断出所述目标区域内是否包含有黑边区域。如果计算出的方差大,则该第一灰度图像中的所述目标区域内必定包含有黑边区域;如果计算出的方差小,则该第一灰度图像中的所述目标区域内可能不包含有黑边区域。从预设帧数的第一灰度图像中筛选出方差最大的目标灰度图像,目标灰度图像中的黑边区域与非黑边区域中的画面将会有非常明显的对比度,则检测出的黑边区域更为准确。另一方面,由于目标区域内的像素个数远小于第一灰度图像中的像素个数,因而相比计算第一灰度图像的方差,仅计算目标区域内的方差则更加节省时间,有助于提高视频指纹的提取效率。另外需要说明的是,计算所述预设目标区域内的每一个像素相对于C个目标灰度的相对均值和相对方差,反映的是像素点在不同时刻的亮度变化情况。
优选地,为了进一步减少目标区域内的像素的方差和均值的计算时间,提高提取视频指纹的效率,所述计算所述第一灰度图像中的预设目标区域内的像素的方差包括:获取所述预设目标区域内的中心区域的像素;计算所述中心区域的像素的方差;将所述中心区域的像素的方差确定为所述第一灰度图像中的所述预设目标区域内的像素的方差。同理,所述计算所述目标灰度图像中的所述预设目标区域内的像素的均值包括:获取所述预设目标区域内的中心区域的像素;计算所述中心区域的像素的均值;将所述中心区域的像素的均值确定为所述目标灰度图像中的所述预设目标区域内的像素的均值。所述中心区域是指所述预设目标区域的正中心区域,且所述中心区域的面积为所述预设目标区域的面积的二分之一。由此可见,计算所述目标区域内的像素的方差和均值变为计算所述中心区域的像素的方差和均值,由于中心区域的像素个数进一步减少,故而计算效率能进一步提高。
示例性的,假设从视频文件中随机抽取了10帧第一图像,并将这10帧第一图像转换为了10帧第一灰度图像。如图2所示,预先设置斜影区域为第一灰度图像中的目标区域,黑色区域为所述目标区域中的中心区域。首先从10帧第一灰度图像中筛选出中心区域的方差最大的目标灰度图像(例如,第5帧第一灰度图像)。然后取所述目标灰度图像相对的两个顶点,在所述两个顶点的位置朝向所述目标灰度图像的中心位置的路径方向上,逐一检测所述路径方向上的像素点。对于每一路径方向上的检测,如果发现有像素的值大于所述中心区域内的像素的均值,就停止检测。这里为了描述方便,参考图2中所示的坐标系,假设第一灰度图像左上角为原点,水平向右方向为y正轴,垂直向下方向为x正轴,第一灰度图像长为W,宽为H。检测时分别从点(H,0)、(0,W)朝向中心位置(H/2,W/2)的路径方向开始检测,假设检测到所述路径方向上的像素点A和B的值大于所述中心区域的均值时,则停止检测。此时,分别将像素点A和B对应的位置所在的水平线和垂直线相交形成的区域(例如,图2中包含中心位置在内的灰色区域),作为所述目标灰度图像中的非黑边区域。将所述目标灰度图像中的非黑边区域作为所述第一图像的非黑边区域。
确定模块503,用于将所述非黑边区域确定为所述视频文件的非黑边区域。
由于对于视频文件而言,一个视频文件中的每帧图像出现黑边区域的位置及黑边区域的大小基本上是固定的。相应的,一个视频文件中的每帧图像出现非黑边区域的位置及非黑边区域的大小则基本上也是固定的,不会存在某一帧图像的非黑边区域较大,另一帧图像的非黑边区域较小。因此,可以根据预设帧数的第一图像中出现的非黑边区域来确定视频文件中的非黑边区域。即,可以将所述预设帧数的第一图像中的非黑边区域所在的位置和非黑边区域的大小确定为视频文件的非黑边区域的位置和非黑边区域的大小。
第二提取模块504,用于从所述视频文件中提取预设数量的视频片段。
本实施中,在确定所述视频文件中的非黑边区域之后,再从所述视频文件中提取预设数量的视频片段。
可以随机的从所述视频文件中提取预设数量的视频片段。也可以预先设置时间节点,例如,预先设置4个时间节点,分别是:视频播放时长的20%处的时间节点、60%处的时间节点、60%处的时间节点及80%处的时间节点,在预先设置的时间节点附件提取预设时长的视频片段。
所述视频片段的时长为预先设置的,例如,10秒。
第一计算模块505,用于计算所述视频片段中的所述非黑边区域内的哈希指纹。
优选的,所述第一计算模块505计算所述视频片段中的所述非黑边区域内的哈希指纹包括:
根据预设的帧速率对所述视频片段进行重采样得到多帧第二图像;
将所述第二图像转化为第二灰度图像;
计算所述第二灰度图像中的所述非黑边区域内的像素的平均值;
当所述非黑边区域内的像素的值大于或者等于所述平均值时,将所述像素的值确定为1;
当所述非黑边区域内的像素的值小于所述平均值时,将所述像素的值确定为0;
将所述非黑边区域内的像素的值进行组合后得到所述第二灰度图像的哈希指纹;
根据所述多个第二灰度图像的哈希指纹确定所述视频片段的哈希指纹。
本实施例中,所述视频片段以一个预先设置的固定的帧速率(即每秒传输帧数(Frames Per Second,FPS))被重新采样,能够应对帧速率的变化,使得后续提取得到的视频指纹对不同的帧速率的视频文件均具有鲁棒性。
示例性的,假设预设的帧速率为24FPS,则对一个10秒的视频片段进行重采样可以得到260帧图像,在计算260帧第二灰度图像的平均值之后,遍历每帧第二灰度图像中的非黑边区域内的像素的值,接着对非黑边区域内的像素的值与所述平均值进行比较,再根据比较的结果确定所述第二灰度图像中的哈希指纹,最后将260帧第二灰度图像的哈希指纹进行组合即可确定所述视频片段的哈希指纹。若灰度图像为6*4,则计算得到的灰度图像的哈希指纹为24字节(bit),最终得到的视频片段的哈希指纹为260*24bit。
优选地,为了解决水印的问题,所述将所述非黑边区域内的像素的值进行组合后得到所述第二灰度图像的哈希指纹包括:
去除所述非黑边区域内的预设目标位置处的像素的值;
对去除所述预设目标位置处的像素的值的所述非黑边区域内的像素的值进行组合,得到所述第二灰度图像的哈希指纹。
本实施例中,由于非黑边区域内可能存在字幕或者水印等,而视频文件中的字幕位置或者水印位置比较固定,因此,可以预先将可能出现字幕或者水印的位置处的像素去除。如图3所示,斜影区域表示出现字幕或者水印的区域。由于去除了可能存在字幕或者水印的位置处的像素的值,则字幕或者水印对视频指纹的干扰能够得到有效的避免,从而增强了提取的视频指纹的表征能力。
优选地,为了进一步简化视频片段的哈希指纹的表达形式,所述根据所述多个第二灰度图像的哈希指纹确定所述视频片段的哈希指纹包括:
对所述多个第二灰度图像进行分组,得到多组灰度图像序列,其中,每组灰度图像序列包括预设数量的具有时间序列的第二灰度图像;
计算每组所述灰度图像序列中相邻两帧第二灰度图像的哈希指纹的汉明距离;
计算每组所述灰度图像序列中汉明距离的总和;
将对应汉明距离的总和最大的灰度图像序列确定为目标灰度图像序列;
将所述目标灰度图像序列中的灰度图像的哈希指纹确定为所述视频片段的哈希指纹。
本实施例中,可以通过计算相邻两帧第二灰度图像的汉明距离来比较相邻两帧第二灰度图像的相似度,汉明距离越大则说明相邻两帧第二灰度图像越不相似;反之,汉明距离越小则说明相邻两帧第二灰度图像越相似。当汉明距离为0时,说明相邻两帧第二灰度图像完全相同。通常认为汉明距离大于10时,两张灰度图像是完全不同的图像。
示例性的,假设前一帧第二灰度图像的哈希指纹为0 1 2 5 6 3 4 8 9 7 10 11,后一帧第二灰度图像的哈希指纹为0 3 1 5 6 2 4 89 7 10 11,则该相邻两帧的第二灰度图像的汉明距离为H=|0-0|+|1-3|+|2-1|+...+|10-10|+|11-11|=4。
对某一组灰度图像序列中每相邻两帧的第二灰度图像的汉明距离进行加总,得到该组灰度图像序列的汉明距离总和,总和越大,表明该组灰度图像序列中的内容变化越剧烈或者对比度变化越剧烈;总和越小,表明该组灰度图像序列中的内容变化越小或者对比度变化越平滑。选择内容变化越剧烈或者对比度变化越剧烈的灰度图像序列中的灰度图像的哈希指纹,作为视频片段的哈希指纹,最能够有效的代表该视频片段的内容,表征能力更强。
需要说明的是,也可以在从所述视频文件中提取预设数量的视频片段之后,选择预设长度的滑窗,在所述视频片段上进行滑动,从而得到多组视频片段序列。再对每组视频片段序列根据预设帧速率进行重采样,即可得到多组灰度图像序列。本发明对此不做任何具体的限制,任何根据视频片段中的灰度图像的非黑边区域内的像素计算哈希指纹和根据相邻两帧灰度图像的哈希指纹计算汉明距离,并根据汉明距离的总和确定视频片段的哈希指纹的思想都应包含在本发明内。
第二计算模块506,用于根据所述预设数量的视频片段的哈希指纹计算所述视频文件的视频指纹。
本实施例中,在计算得到每一个视频片段的哈希指纹之后,可以将预设数量的视频片段的哈希指纹组合起来得到哈希指纹矩阵或者哈希指纹向量,将所述哈希指纹矩阵或者哈希指纹向量作为最终的视频文件的视频指纹。
综上所述,本发明提供的视频指纹提取装置,首先从视频文件中提取预设帧数的第一图像,将检测到的所述第一图像中的非黑边区域确定为所述视频文件中的非黑边区域,再从所述视频文件中提取预设数量的视频片段,接着计算所述视频片段中的所述非黑边区域内的哈希指纹,最后根据所述预设数量的视频片段的哈希指纹即可计算得到所述视频文件的视频指纹。由于首先确定出了视频文件的非黑边区域,因此能够消除黑边对提取视频指纹的影响;而在非黑边区域内对视频指纹进行计算,提取的视频指纹对黑边具有鲁棒性;其次,从视频文件中选取了预设数量的视频片段,视频片段相对于视频文件而言,大大减少了计算量,节省了视频指纹的计算时间,提高了视频指纹的计算效率。应用到视频检索时,有效的缩短了视频检索的时间,能够满足视频检索的实时性要求。
此外,由于通过去除字幕或水印位置处的像素,有效的减少了字幕或水印对视频指纹的影响,进一步提高了提取的视频指纹对字幕或水印的鲁棒性。
实施例四
参阅图6所示,为本发明实施例揭露的视频检索装置的功能模块示意图。
在一些实施例中,所述视频检索装置60运行于终端中。所述视频检索装置60可以包括多个由程序代码段所组成的功能模块。所述视频检索装置60中的各个程序段的程序代码可以存储于终端的存储器中,并由所述至少一个处理器所执行,以执行(详见图4描述)对有黑边和水印的视频的快速检索。
本实施例中,所述视频检索装置60根据其所执行的功能,可以被划分为多个功能模块。所述功能模块可以包括:第一指纹提取模块601、第二指纹提取模块602、检索模块603及输出模块604。本发明所称的模块是指一种能够被至少一个处理器所执行并且能够完成固定功能的一系列计算机程序段,其存储在存储器中。在本实施例中,关于各模块的功能将在后续的实施例中详述。
第一指纹提取模块601,用于采用所述的视频指纹提取方法提取指定的视频文件的第一视频指纹。
本实施例中,所述指定的视频文件可以是上传的视频文件,还可以是待查询的视频文件。
对所述指定的视频文件的视频指纹的提取,采用本发明实施例所述的视频指纹提取方法,具体过程不再详细赘述。将提取的所述指定的视频文件的视频指纹称之为第一视频指纹。
第二指纹提取模块602,用于采用所述的视频指纹提取方法提取待检测的数据库中的视频文件的第二视频指纹。
本实施例中,所述待检测的数据库可以是视频版权数据库,还可以是互联网上的视频仓库。
对所述待检测的数据库中的视频文件的视频指纹的提取,采用本发明实施例所述的视频指纹提取方法,具体过程不再详细赘述。将提取的所述待检测的数据库中的视频文件的视频指纹称之为第二视频指纹。
检索模块603,用于检索所述第二视频指纹中是否存在与所述第一视频指纹相同的目标视频指纹。
本实施例中,将每一个所述第二视频指纹与所述第一视频指纹进行比较。若判断某一个第二视频指纹与所述第一视频指纹相同,则说明所述第二视频指纹中存在与所述第一视频指纹相同的目标视频指纹。若判断任意一个第二视频指纹与所述第一视频指纹均不相同,则说明所述第二视频指纹中不存在与所述第一视频指纹相同的目标视频指纹。
输出模块604,用于当所述检索模块603确定存在所述目标视频指纹时,输出所述待检测的数据库中对应所述目标视频指纹的目标视频文件。
本实施例中,确定出了目标视频指纹之后,即可得到对应所述目标视频指纹的目标视频文件,并输出所述目标视频文件。
下面列举几个具体的应用场景,具体阐述如何采用本发明实施例中提供的视频指纹提取方法进行视频检索。
例如,视频分享平台对用户上传的视频数据进行版权检测时,可以事先利用所述的视频指纹提取方法提取视频版权数据库中的每一个视频的第一视频指纹。当接收到用户上传的视频时,利用所述的视频指纹提取方法提取所上传的视频的第二视频指纹。当视频版权数据库中的第一视频指纹包含了第二视频指纹时,即从视频版权数据库中检索出了对应所上传的视频的目标视频,则确定所上传的视频具有版权冲突。
再如,文件监管部门需要对互联网上的违法视频进行监控时,可以事先利用所述的视频指纹提取方法提取视频仓库中的每一个视频的第一视频指纹。再利用所述的视频指纹提取方法提取所指定的违法视频的第二视频指纹。当视频仓库中的第一视频指纹包含了第二视频指纹时,即从视频仓库中检索出了对应所指定的违法视频的目标视频,则确定互联网上存在了违法视频。
综上所述,本发明实施例所述的视频检索装置,采用所述的视频指纹提取方法提取指定的视频文件的第一视频指纹和待检测的数据库中的视频文件的第二视频指纹,对所述第二视频指纹中与所述第一视频指纹进行比较,来检索所述第二视频指纹中是否存在与所述第一视频指纹相同的目标视频指纹,并在确定存在所述目标视频指纹时,输出对应所述目标视频指纹的目标视频文件。由于采用了所述的视频指纹提取方法,提取的视频指纹对于黑边和水印具有相强的鲁棒性,提取的视频指纹的表征能力强,因而在进行视频文件检索时,能快速有效的找出目标视频文件;其次,采用所述的视频指纹提取方法,视频指纹的提取时间短,提取效率高,故在进行视频文件检索时,能有效的缩短视频文件的检索时间,提高视频文件的检索效率,满足视频文件检索的实时性要求,具有较高实用价值和经济价值。
实施例五
图7为本发明实施例揭露的终端的内部结构示意图。
在本实施例中,终端7可以是固定终端,也可以是移动终端。
所述终端7可以包括存储器71、处理器72和总线73。
其中,存储器71至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器71在一些实施例中可以是所述终端7的内部存储单元,例如所述终端7的硬盘。存储器71在另一些实施例中也可以是所述终端7的外部存储设备,例如所述终端7上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(FlashCard)等。进一步地,存储器71还可以既包括所述终端7的内部存储单元也包括外部存储设备。存储器71不仅可以用于存储安装于所述终端7的应用软件及各类数据,例如视频指纹提取装置50的代码等及各个模块,或者视频检索装置60的代码等及各个模块,还可以用于暂时地存储已经输出或者将要输出的数据。
处理器72在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器71中存储的程序代码或处理数据。
该总线73可以是外设部件互连标准(peripheral component interconnect,PCI)总线或扩展工业标准结构(extended industry standard architecture,EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
进一步地,所述终端7还可以包括网络接口,网络接口可选的可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该终端7与其他终端之间建立通信连接。
可选地,该终端7还可以包括用户接口,用户接口可以包括显示器(Display)、输入单元比如键盘(Keyboard),可选的用户接口还可以包括标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在所述终端7中处理的消息以及用于显示可视化的用户界面。
图7仅示出了具有组件71-73的所述终端7,本领域技术人员可以理解的是,图7示出的结构并不构成对所述终端7的限定,既可以是总线型结构,也可以是星形结构,所述终端7还可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。其他现有的或今后可能出现的电子产品如可适应于本发明,也应包含在本发明的保护范围以内,并以引用方式包含于此。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。并且本文中的术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (11)

1.一种视频指纹提取方法,应用于终端中,其特征在于,所述方法包括:
从视频文件中提取预设帧数的第一图像;
检测所述第一图像中的非黑边区域;
将所述非黑边区域确定为所述视频文件的非黑边区域;
从所述视频文件中提取预设数量的视频片段;
计算所述视频片段中的所述非黑边区域内的哈希指纹;
根据所述预设数量的视频片段的哈希指纹计算所述视频文件的视频指纹。
2.如权利要求1所述的方法,其特征在于,所述检测所述第一图像中的非黑边区域包括:
将所述第一图像转换为第一灰度图像;
计算所述第一灰度图像中的预设目标区域内的像素的方差;
将所述方差按照从大到小进行排序后取前C个方差对应的目标灰度图像;
根据C个所述目标灰度图像中的所述预设目标区域内的相同位置处的像素,计算所述预设目标区域内的每一个像素的相对均值和相对方差;
遍历所述预设目标区域,在所述预设目标区域内最外层朝向最内层的路径方向上,逐一检测所述路径方向上的像素点;
当所述路径方向上的像素点的相对均值和相对方差满足了预设停止检测条件时,停止检测;
将停止检测时的像素点对应的位置确定为所述第一图像中的非黑边位置,将所述非黑边位置形成的区域确定为所述非黑边区域。
3.如权利要求2所述的方法,其特征在于,所述计算所述第一灰度图像中的预设目标区域内的像素的方差包括:
获取所述预设目标区域内的中心区域的像素,所述中心区域是指所述预设目标区域的正中心区域,且所述中心区域的面积为所述预设目标区域的面积的二分之一;
计算所述中心区域的像素的方差;
将所述中心区域的像素的方差确定为所述第一灰度图像中的所述预设目标区域内的像素的方差。
4.如权利要求1所述的方法,其特征在于,所述计算所述视频片段中的所述非黑边区域内的哈希指纹包括:
根据预设的帧速率对所述视频片段进行重采样得到多帧第二图像;
将所述第二图像转化为第二灰度图像;
计算所述第二灰度图像中的所述非黑边区域内的像素的平均值;
当所述非黑边区域内的像素的值大于或者等于所述平均值时,将所述像素的值确定为1;
当所述非黑边区域内的像素的值小于所述平均值时,将所述像素的值确定为0;
将所述非黑边区域内的像素的值进行组合后得到所述第二灰度图像的哈希指纹;
根据所述多个第二灰度图像的哈希指纹确定所述视频片段的哈希指纹。
5.如权利要求4所述的方法,其特征在于,所述将所述非黑边区域内的像素的值进行组合后得到所述第二灰度图像的哈希指纹包括:
去除所述非黑边区域内的预设目标位置处的像素的值;
对去除所述预设目标位置处的像素的值的所述非黑边区域内的像素的值进行组合,得到所述第二灰度图像的哈希指纹。
6.如权利要求4或5所述的方法,其特征在于,所述根据所述多个第二灰度图像的哈希指纹确定所述视频片段的哈希指纹包括:
对所述多个第二灰度图像进行分组,得到多组灰度图像序列,其中,每组灰度图像序列包括预设数量的具有时间序列的第二灰度图像;
计算每组所述灰度图像序列中相邻两帧第二灰度图像的哈希指纹的汉明距离;
计算每组所述灰度图像序列中汉明距离的总和;
将对应汉明距离的总和最大的灰度图像序列确定为目标灰度图像序列;
将所述目标灰度图像序列中的灰度图像的哈希指纹确定为所述视频片段的哈希指纹。
7.一种视频检索方法,应用于终端中,其特征在于,所述方法包括:
采用如权利要求1至6中任意一项所述的视频指纹提取方法提取指定的视频文件的第一视频指纹;
采用如权利要求1至6中任意一项所述的视频指纹提取方法提取待检测的数据库中的视频文件的第二视频指纹;
检索所述第二视频指纹中是否存在与所述第一视频指纹相同的目标视频指纹;
当确定存在所述目标视频指纹时,输出所述待检测的数据库中对应所述目标视频指纹的目标视频文件。
8.一种视频指纹提取装置,运行于终端中,其特征在于,所述装置包括:
第一提取模块,用于从视频文件中提取预设帧数的第一图像;
检测模块,用于检测所述第一图像中的非黑边区域;
确定模块,用于将所述非黑边区域确定为所述视频文件的非黑边区域;
第二提取模块,用于从所述视频文件中提取预设数量的视频片段;
第一计算模块,用于计算所述视频片段中的所述非黑边区域内的哈希指纹;
第二计算模块,用于根据所述预设数量的视频片段的哈希指纹计算所述视频文件的视频指纹。
9.一种视频检索装置,运行于终端中,其特征在于,所述装置包括:
第一指纹提取模块,用于采用如权利要求1至6中任意一项所述的视频指纹提取方法提取指定的视频文件的第一视频指纹;
第二指纹提取模块,用于采用如权利要求1至6中任意一项所述的视频指纹提取方法提取待检测的数据库中的视频文件的第二视频指纹;
检索模块,用于检索所述第二视频指纹中是否存在与所述第一视频指纹相同的目标视频指纹;
输出模块,用于当所述检索模块确定存在所述目标视频指纹时,输出所述待检测的数据库中对应所述目标视频指纹的目标视频文件。
10.一种终端,其特征在于,所述终端包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的视频指纹提取的下载程序或者视频检索的下载程序,所述视频指纹提取的下载程序被所述处理器执行时实现如权利要求1至6中任一项所述的视频指纹提取方法,所述视频检索的下载程序被所述处理器执行时实现如权利要求7所述的视频检索方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有视频指纹提取的下载程序或者视频检索的下载程序,所述视频指纹提取的下载程序可被一个或者多个处理器执行,以实现如权利要求1至6中任一项所述的视频指纹提取方法,所述视频检索的下载程序可被一个或者多个处理器执行,以实现如权利要求7所述的视频检索方法。
CN201910377071.6A 2019-05-07 2019-05-07 视频指纹提取及视频检索方法、装置、终端及存储介质 Active CN110083740B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201910377071.6A CN110083740B (zh) 2019-05-07 2019-05-07 视频指纹提取及视频检索方法、装置、终端及存储介质
PCT/CN2020/079014 WO2020224325A1 (zh) 2019-05-07 2020-03-12 视频指纹提取及视频检索方法、装置、终端及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910377071.6A CN110083740B (zh) 2019-05-07 2019-05-07 视频指纹提取及视频检索方法、装置、终端及存储介质

Publications (2)

Publication Number Publication Date
CN110083740A true CN110083740A (zh) 2019-08-02
CN110083740B CN110083740B (zh) 2021-04-06

Family

ID=67419038

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910377071.6A Active CN110083740B (zh) 2019-05-07 2019-05-07 视频指纹提取及视频检索方法、装置、终端及存储介质

Country Status (2)

Country Link
CN (1) CN110083740B (zh)
WO (1) WO2020224325A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110889011A (zh) * 2019-11-29 2020-03-17 杭州当虹科技股份有限公司 一种视频指纹方法
CN111091118A (zh) * 2019-12-31 2020-05-01 北京奇艺世纪科技有限公司 图像的识别方法、装置及电子设备和存储介质
CN111126620A (zh) * 2019-12-10 2020-05-08 河海大学 一种用于时间序列的特征指纹生成方法及应用
CN111507260A (zh) * 2020-04-17 2020-08-07 重庆邮电大学 一种视频相似度快速检测方法及检测装置
WO2020224325A1 (zh) * 2019-05-07 2020-11-12 深圳市网心科技有限公司 视频指纹提取及视频检索方法、装置、终端及存储介质
CN112203141A (zh) * 2020-10-12 2021-01-08 广州欢网科技有限责任公司 视频点播内容识别方法、装置、设备、系统和智能电视

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104077590A (zh) * 2014-06-30 2014-10-01 安科智慧城市技术(中国)有限公司 一种视频指纹提取方法及系统
CN104504162A (zh) * 2015-01-21 2015-04-08 北京智富者机器人科技有限公司 一种基于机器人视觉平台的视频检索方法
CN104915944A (zh) * 2014-03-14 2015-09-16 北京风行在线技术有限公司 一种用于确定视频的黑边位置信息的方法与设备
CN105430382A (zh) * 2015-12-02 2016-03-23 厦门雅迅网络股份有限公司 一种视频图像检测黑边的方法和装置
CN106484837A (zh) * 2016-09-30 2017-03-08 腾讯科技(北京)有限公司 相似视频文件的检测方法和装置
CN106683108A (zh) * 2016-12-07 2017-05-17 乐视控股(北京)有限公司 确定视频帧中平坦区域的方法、装置及电子设备
CN109409208A (zh) * 2018-09-10 2019-03-01 东南大学 一种基于视频的车辆特征提取与匹配方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8335786B2 (en) * 2009-05-28 2012-12-18 Zeitera, Llc Multi-media content identification using multi-level content signature correlation and fast similarity search
US9087125B2 (en) * 2009-08-10 2015-07-21 Pixel Forensics, Inc. Robust video retrieval utilizing video data
CN105975939B (zh) * 2016-05-06 2019-10-15 百度在线网络技术(北京)有限公司 视频检测方法和装置
CN110083740B (zh) * 2019-05-07 2021-04-06 深圳市网心科技有限公司 视频指纹提取及视频检索方法、装置、终端及存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104915944A (zh) * 2014-03-14 2015-09-16 北京风行在线技术有限公司 一种用于确定视频的黑边位置信息的方法与设备
CN104077590A (zh) * 2014-06-30 2014-10-01 安科智慧城市技术(中国)有限公司 一种视频指纹提取方法及系统
CN104504162A (zh) * 2015-01-21 2015-04-08 北京智富者机器人科技有限公司 一种基于机器人视觉平台的视频检索方法
CN105430382A (zh) * 2015-12-02 2016-03-23 厦门雅迅网络股份有限公司 一种视频图像检测黑边的方法和装置
CN106484837A (zh) * 2016-09-30 2017-03-08 腾讯科技(北京)有限公司 相似视频文件的检测方法和装置
CN106683108A (zh) * 2016-12-07 2017-05-17 乐视控股(北京)有限公司 确定视频帧中平坦区域的方法、装置及电子设备
CN109409208A (zh) * 2018-09-10 2019-03-01 东南大学 一种基于视频的车辆特征提取与匹配方法

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020224325A1 (zh) * 2019-05-07 2020-11-12 深圳市网心科技有限公司 视频指纹提取及视频检索方法、装置、终端及存储介质
CN110889011A (zh) * 2019-11-29 2020-03-17 杭州当虹科技股份有限公司 一种视频指纹方法
CN110889011B (zh) * 2019-11-29 2022-07-26 杭州当虹科技股份有限公司 一种视频指纹方法
CN111126620A (zh) * 2019-12-10 2020-05-08 河海大学 一种用于时间序列的特征指纹生成方法及应用
CN111091118A (zh) * 2019-12-31 2020-05-01 北京奇艺世纪科技有限公司 图像的识别方法、装置及电子设备和存储介质
CN111507260A (zh) * 2020-04-17 2020-08-07 重庆邮电大学 一种视频相似度快速检测方法及检测装置
CN111507260B (zh) * 2020-04-17 2022-08-05 重庆邮电大学 一种视频相似度快速检测方法及检测装置
CN112203141A (zh) * 2020-10-12 2021-01-08 广州欢网科技有限责任公司 视频点播内容识别方法、装置、设备、系统和智能电视

Also Published As

Publication number Publication date
CN110083740B (zh) 2021-04-06
WO2020224325A1 (zh) 2020-11-12

Similar Documents

Publication Publication Date Title
CN110083740A (zh) 视频指纹提取及视频检索方法、装置、终端及存储介质
CN108846365B (zh) 视频中打架行为的检测方法、装置、存储介质及处理器
CN108229322A (zh) 基于视频的人脸识别方法、装置、电子设备及存储介质
CN111476309A (zh) 图像处理方法、模型训练方法、装置、设备及可读介质
TWI821671B (zh) 一種文本區域的定位方法及裝置
CN109376631B (zh) 一种基于神经网络的回环检测方法及装置
CN109145867A (zh) 人体姿态估计方法、装置、系统、电子设备、存储介质
CN111581423B (zh) 一种目标检索方法及装置
CN110020093A (zh) 视频检索方法、边缘设备、视频检索装置及存储介质
CN110399847A (zh) 关键帧提取方法、装置及电子设备
CN109215037A (zh) 目标图像分割方法、装置及终端设备
CN116168038B (zh) 一种图像翻拍检测的方法、装置、电子设备及存储介质
WO2022095359A1 (zh) 基于防摄屏的信息安全保护方法、装置、电子设备及介质
CN109711427A (zh) 目标检测方法及相关产品
CN113766330A (zh) 基于视频生成推荐信息的方法和装置
CN110335313A (zh) 音频采集设备定位方法及装置、说话人识别方法及系统
KR20150047941A (ko) 검색 시스템 및 그의 동작 방법
CN113850135A (zh) 一种基于时间移位框架的动态手势识别方法及系统
CN110163095B (zh) 回环检测方法、回环检测装置及终端设备
CN110287350A (zh) 图像检索方法、装置及电子设备
CN114937027B (zh) 风机叶片缺陷检测的方法、装置、电子设备及存储介质
CN111273980A (zh) 界面线程可视化方法、装置、计算机设备及存储介质
CN111797867A (zh) 系统资源优化方法、装置、存储介质及电子设备
CN109993778A (zh) 一种确定目标位置的方法及装置
CN114494960A (zh) 视频处理方法及装置、电子设备及计算机可读存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant