CN110830836B - 一种视频广告播出监测方法 - Google Patents
一种视频广告播出监测方法 Download PDFInfo
- Publication number
- CN110830836B CN110830836B CN201911126643.XA CN201911126643A CN110830836B CN 110830836 B CN110830836 B CN 110830836B CN 201911126643 A CN201911126643 A CN 201911126643A CN 110830836 B CN110830836 B CN 110830836B
- Authority
- CN
- China
- Prior art keywords
- frame
- advertisement
- hash
- video
- stage
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
- H04N21/44008—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/71—Indexing; Data structures therefor; Storage structures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/432—Content retrieval operation from a local storage medium, e.g. hard-disk
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
- H04N21/44204—Monitoring of content usage, e.g. the number of times a movie has been viewed, copied or the amount which has been watched
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/458—Scheduling content for creating a personalised stream, e.g. by combining a locally stored advertisement with an incoming stream; Updating operations, e.g. for OS modules ; time-related management operations
- H04N21/4586—Content update operation triggered locally, e.g. by comparing the version of software modules in a DVB carousel to the version stored locally
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/812—Monomedia components thereof involving advertisement data
Abstract
本发明公开了一种视频广告播出监测方法,包括视频哈希库构建和广告检测两个阶段;本发明在视频哈希库构建中,对慢录视频中的每一帧,提取颜色和灰度的两级特征,其中颜色为粗粒度特征,灰度为细粒度特征,在此基础上进行两级位数适中的局部敏感哈希映射;在广告检测中,采用两级哈希匹配方法,并通过直线拟合和直线匹配分别对广告播放的开始时间和结束时间进行检测,具有处理速度快、检测精度高的特点;同时,通过采取特征区域选择、判定重复帧、取头片段、取尾片段等操作,在保证精度的情况下,进一步提高了处理速度。
Description
技术领域
本发明属于数字视频处理技术领域,具体涉及一种视频广告播出监测方法。
背景技术
当前,广播已成为最为普及的大众宣传和娱乐媒体,众多商家也借助电视广播播放其产品广告。在电视广告业务中,电台和商家都非常关注每一条要求播出的广告是否准点播出。此外,大多数电视广告的持续时间较短,广告的播放是否完整也是一个重要的问题。传统的电视广告监播主要靠人工监测来完成,即通过人工来观测待播广告的播放开始时间和结束时间,并判定广告是否播放完整。在当前自动化广播系统中,监播工作由计算机执行广告监播软件来完成。
广告监播软件的一种实现思路是将广告库中的广告逐一地取出,并在已播出的视频记录(慢录)文件中进行检索,从而确定其播放的开始和结束时间。为了在慢录中检测一个广告是否存在,常规的做法是使用相同算法来提取慢录和待检测广告的特征,然后从慢录起点开始取出与广告长度相同的特征片段,将其与广告特征段进行比对,比对不成功则将起始点向后移动一帧,取出下一个片段来比对,直至慢录文件的结尾。这种方法的一个最大缺陷是比对次数过多,导致检测时间过长,无法做到实时处理;另一种做法是运用哈希检索技术来检索慢录中的广告。这类方法虽然可以解决检测速度的问题,对于广告监播应用仍然存在不足。
传统的哈希检索技术主要面临两方面的困难:一方面,检测精度依赖于特征的选择,精度高的特征往往计算复杂度也高。而广告监播对检测速度和精度都有较高的要求,因此需要找到合适的特征提取和检索方法。另一方面,传统哈希检索技术重在确定目标广告是否存在,而对其播出位置的检测,尤其是在广告未完整播出情况下对实际结束位置的检测,缺乏高效的解决手段;现代哈希检索技术多使用深度网络来提取特征并构造哈希码。这种方法虽然在检测精度上有所提高,但由于深度网络的训练时间过长,难以满足电台需在播出当天及时统计广告实际播出情况的业务要求。
总之,当前监播相关技术还没有很好地同时解决检测速度和检测精度的问题,以满足电台广告监播的需求。
发明内容
针对现有技术中的上述不足,本发明提供了一种高性能的视频广告播出监测方法,采用新的特征提取和检索算法,实现在保证检测精度的同时提高处理速度。
为了达到上述发明目的,本发明采用的技术方案为:
一种视频广告播出监测方法,包括视频哈希库构建和广告检测两个阶段;
所述视频哈希库构建包括以下步骤:
A1.初始化:设NL为输入慢录视频的总帧数,初始化视频哈希表为空,慢录帧帧编号zL=0;
A2.取视频帧:从慢录视频中取一帧视频,更新慢录帧帧编号为zL+1;
A3.两级特征提取:选择特征区域,对特征区域图像分别在RGB空间和YUV空间提取第一级特征向量Ha和第二级特征向量Hb;
A4.判定重复帧:若当前帧与前一帧的第二级特征向量相同,则转到步骤A2;否则转到步骤A5;
A5.两级哈希入库:对提取的特征向量Ha和Hb进行两级局部敏感哈希映射,并生成哈希表表项,将慢录帧帧编号数据写入视频哈希库中;
A6.判定是否取完全部视频帧:若当前慢录帧帧编号zL小于视频总帧数NL,则转至步骤A2;否则结束视频哈希库构建流程;
所述广告检测包括以下步骤:
B1.取头片段:初始化二元组集合R为空,设置头检测秒数s,在广告视频的前Q帧中,从第1帧开始,每间隔P帧抽取一帧作为广告头测试帧,将得到的广告头测试帧的总帧数记为NA,其中Q=s×fA,fA为广告视频的帧率;
B2.两级哈希匹配:按照两级哈希匹配方法对广告头测试帧进行处理,得到一组由慢录帧帧编号zL与测试帧帧编号zA组成的二元组,并将这些二元组加入到二元组集合R中;
B3.直线拟合:将R中的每个二元组(zA,zL)视为平面上的一个点(x,y),其中zA和zL分别对应于横坐标x和纵坐标y,在平面中寻找至少通过NA/2个点,且斜率为1,宽度为3个像素的直线,将找到满足条件的直线总条数记为M;
B4.判定是否拟合成功:若M=0,则结束广告检测流程,输出广告未播出,否则执行步骤B5;
B5.确定头位置:定义长度为M+1的广告播放开始时间位置数组Head_t和直线截距数组b,对满足1≤m≤M的每一个m,计算待检测广告的第m个播放开始时间位置Head_t[m]:
Head_t[m]=b[m]/fL
其中,b[m]为找到的第m条直线在y轴上的截距,fL为慢录视频的帧率;
B6.取尾片段:
B6-2.取尾初始化:设k为广告尾检测的块序号,初始化k=0;设t为找到的点数目,zmax为找到的点的纵坐标的最大值,初始化t=0,zmax=0,并将二元组集合R设置为空;
B6-3.设zs为待取的尾片段的开始帧帧编号,计算
B6-4.设ze为待取的尾片段的结束帧帧编号,计算
B6-5.在广告视频的第zs至第ze帧中,从第zs帧开始,每间隔P帧抽取一帧作为广告尾测试帧,将得到的广告尾测试帧的总帧数记为N'A;
B7.两级哈希匹配:按照两级哈希匹配方法对广告尾测试帧进行处理,得到一组由慢录帧帧编号zL与测试帧帧编号zA组成的二元组,并将这些二元组加入到二元组集合R中;
B8.直线匹配:对二元组集合R中的每一个二元组(zA,zL)作:若|zL-zA-b[m]|≤2,其中|·|为取绝对值运算,则更新t为t+1,并计算zmax=max(zmax,zL),其中,max(zmax,zL)是取zmax和zL两者中的较大者;
B9.判定是否完成匹配:
B9-1.若t≥N'A/2,则令Tail_f的第m个元素Tail_f[m]=zmax,并转到步骤B9-3,否则令Tail_f[m]=b[m]+Q;
B9-3.更新m为m+1,并进行判断,若m≤M,则转到步骤B6-2,否则转到步骤B10;
B10.确定尾位置:对满足1≤m≤M的每一个m,计算待检测广告的第m个播放结束时间位置Tail_t[m]:
Tail_t[m]=Tail_f[m]/fL
进一步地,所述步骤A3两级特征提取具体包括以下分步骤:
A3-1.特征区域选择:
A3-1-1.去除边界:设当前视频帧的长和宽分别为H和W,选择以视频帧中心点为中心,长为αH,宽为αW的区域作为特征区域,其中α为预设的比例因子;
A3-1-2.尺寸缩放:将特征区域图像按比例缩放至长为H0,宽为W0的固定大小;
A3-2.第一级特征提取:
A3-2-1.区间划分:将0-255的颜色值范围均分为I个不同的色度区间,其中I为预设的色度区间数;
A3-2-2.区间个数统计:设g1、g2和g3分别为特征区域图像的R、G和B三个颜色通道,对第j个通道gj(j=1,2,3),将其中的每一个像素按其值大小分配到不同的色度区间中,对每个区间i(1≤i≤I),统计落入其中的像素点个数
A3-3.第二级特征提取:
A3-3-1.空间转换:将经过步骤A3-1处理后的特征区域图像从RGB空间转换化到YUV空间;
A3-3-2.特征形成:按从左到右、从上到下的顺序对Y分量进行扫描,并按顺序将每一个扫描值进行拼接,形成一个列向量,最终得到长度为H0×W0的第二级特征向量Hb。
进一步地,所述步骤A5两级哈希入库具体包括以下分步骤:
A5-1.两级哈希映射:使用标准局部敏感哈希算法,将特征向量Ha和Hb分别映射为位数为Ka的哈希键值hash_key1和位数为Kb的哈希键值hash_key2,其中 βa和βb为预设的位数因子,为向下取整运算;
A5-2.生成一级表项:在哈希表中查找键值为hash_key1的表项,若查找成功,则找到该表项内容对应的链表L1;否则创建一个键值为hash_key1的表项Item1和一个空的链表L1,并令Item1的内容为链表L1的首地址;
A5-3.生成二级表项:在链表L1中查找键值为hash_key2的表项,若查找成功,则找到该表项内容对应的链表L2;否则创建一个键值为hash_key2的表项Item2和一个空的链表L2,并令Item2的内容为链表L2的首地址;
A5-4.数据入库:创建一个内容为当前慢录帧帧编号zL的表项,并将其添加到链表L2中。
进一步地,所述两级哈希匹配方法具体包括以下分步骤:
B2-1.从广告测试帧中取一视频帧,设定初始值为0的帧计数器,每取一视频帧,帧计数器加1;
B2-2.特征区域选择:按步骤A3-1,将每一广告测试帧转化为长为H0、宽为W0的特征区域图像;
B2-3.两级特征提取:按步骤A3-2和A3-3,分别提取第一级特征向量Ha′和第二级特征向量Hb′;
B2-4.判定重复帧:若当前帧与前一帧的第二级特征向量相同,则转到步骤B2-1,否则转到步骤B2-5;
B2-5.两级哈希映射:按步骤A5-1,使用标准局部敏感哈希算法,将特征向量Ha′和Hb′分别映射为位数为Ka的哈希键值hash_key1′和位数为Kb的哈希键值hash_key2′;
B2-6.第一级哈希匹配:在哈希表中查找键值为hash_key1′的表项,若查找成功,则找到该表项内容对应的链表L1′,并转到步骤B2-7;否则转到步骤B2-1;
B2-7.第二级哈希匹配:
B2-7-1.在链表L1′中查找键值为hash_key2′的表项,若查找成功,则找到该表项内容对应的链表L2′,并转到步骤B2-7-4,否则转到步骤B2-7-2;
B2-7-2.计算链表L1′每一表项的键值与hash_key2′的汉明距离,并找到计算出的所有汉明距离中的最小值Dmin;
B2-7-3.若Dmin大于预设的键值距离阈值Dth,则转到步骤B2-1,否则找到Dmin所在表项内容对应的链表L2′;
B2-7-4.对链表L2′中的每个表项作:取出其内容,即慢录帧帧编号zL,将zL与当前测试帧在原待检测广告中的帧编号zA组成二元组(zA,zL),并将该二元组加入到二元组集合R中;
B2-8.若帧计数器的当前计数值小于广告测试帧的总帧数,则转至步骤B2-1,否则结束两级哈希匹配流程。
进一步地,所述头检测秒数s的取值范围为:3≤s≤8。
进一步地,所述比例因子α的取值范围为:0.75≤α≤1。
进一步地,所述色度区间数I的取值范围为:30≤I≤60。
进一步地,所述位数因子βa和βb取值范围分别为:0.1≤βa≤0.2和0.001≤βb≤0.003。
进一步地,所述键值距离阈值Dth的取值范围为:5≤Dth≤15。
本发明具有的有益效果是:本发明在视频哈希库构建中,对慢录视频中的每一帧,提取颜色和灰度的两级特征,其中颜色为粗粒度特征,灰度为细粒度特征,在此基础上进行两级位数适中的局部敏感哈希映射;在广告检测中,采用两级哈希匹配方法,并通过直线拟合和直线匹配分别对广告播放的开始时间和结束时间进行检测,具有处理速度快、检测精度高的特点;同时,通过采取特征区域选择、判定重复帧、取头片段、取尾片段等操作,在保证精度的情况下,进一步提高了处理速度。
附图说明
图1为本发明的视频广告播出监测方法流程示意图。
图2为本发明实施例在广告检测阶段找到的3条拟合直线的视图。
具体实施方式
下面对本发明的具体实施方式进行描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
本发明实施例提供了一种视频广告播出监测方法,如图1所示,该方法包括视频哈希库构建和广告检测两个阶段,广告检测阶段先后检测广告的头位置和尾位置。
本实施例使用电台某日的24小时的慢录视频和一个时长为15秒的广告视频作为测试样本,视频帧率fL=fA=30帧/秒,在慢录视频中采用本发明的监测方法进行广告检测。
下面首先对本发明中的视频哈希库构建步骤作进一步详细说明。
视频哈希库构建步骤具体包括以下步骤A1至A6:
A1.初始化:设NL为输入慢录视频的总帧数,初始化视频哈希表为空,慢录帧帧编号zL=0;
在本实施例中,当前输入慢录视频的总帧数NL=2592000。
A2.取视频帧:从慢录视频中取一帧视频,更新慢录帧帧编号为zL+1,即zL=zL+1;
A3.两级特征提取:选择特征区域,对特征区域图像分别在RGB空间和YUV空间提取第一级特征向量Ha和第二级特征向量Hb;
在本实施例中,两级特征提取具体包括以下分步骤:
A3-1.特征区域选择:
A3-1-1.去除边界:设当前视频帧的长和宽分别为H和W,选择以视频帧中心点为中心,长为αH,宽为αW的区域作为特征区域,其中α为预设的比例因子;
在本实施例中,当前视频帧的长H=1280,宽W=720,比例因子α的取值范围为0.75≤α≤1,这里α的取值为0.8。
A3-1-2.尺寸缩放:将特征区域图像按比例缩放至长为H0,宽为W0的固定大小;
在本实施例中,缩放后,特征区域图像的长H0=320,宽W0=240。
A3-2.第一级特征提取:
A3-2-1.区间划分:将0-255的颜色值范围均分为I个不同的色度区间,其中I为预设的色度区间数;
在本实施例中,色度区间数I的取值范围为30≤I≤60,这里I的取值为50。
A3-2-2.区间个数统计:设g1、g2和g3分别为特征区域图像的R、G和B三个颜色通道,对第j个通道gj(j=1,2,3),将其中的每一个像素按其值大小分配到不同的色度区间中,对每个区间i(1≤i≤I),统计落入其中的像素点个数
A3-3.第二级特征提取:
A3-3-1.空间转换:将经过步骤A3-1处理后的特征区域图像从RGB空间转换化到YUV空间;
A3-3-2.特征形成:按从左到右、从上到下的顺序对Y分量进行扫描,并按顺序将每一个扫描值进行拼接,形成一个列向量,最终得到长度为320×240的第二级特征向量Hb。
A4.判定重复帧:若当前帧与前一帧的第二级特征向量相同,则转到步骤A2;否则转到步骤A5;
A5.两级哈希入库:将提取的特征向量Ha和Hb进行两级局部敏感哈希映射,并生成哈希表表项,将慢录帧帧编号数据写入视频哈希库中;
在本实施例中,两级哈希入库具体包括以下分步骤:
A5-1.两级哈希映射:使用标准局部敏感哈希算法,将特征向量Ha和Hb分别映射为位数Ka的哈希键值hash_key1和位数Kb的哈希键值hash_key2,其中 βa和βb为预设的位数因子,为向下取整运算;
A5-2.生成一级表项:在哈希表中查找键值为hash_key1的表项,若查找成功,则找到该表项内容对应的链表L1;否则创建一个键值为hash_key1的表项Item1和一个空的链表L1,并令Item1的内容为链表L1的首地址;
A5-3.生成二级表项:在链表L1中查找键值为hash_key2的表项,若查找成功,则找到该表项内容对应的链表L2;否则创建一个键值为hash_key2的表项Item2和一个空的链表L2,并令Item2的内容为链表L2的首地址;
A5-4.数据入库:创建一个内容为当前慢录帧帧编号zL的表项,并将其添加到链表L2中。
A6.判定是否取完全部视频帧:若当前慢录帧帧编号zL小于视频总帧数NL=2592000,则转至步骤A2;否则结束视频哈希库构建流程。
至此视频哈希库构建完成,整个视频哈希库共占148MB存储空间。
下面再对本发明中的广告检测步骤作进一步详细说明。
广告检测步骤具体包括以下步骤B1至B8:
B1.取头片段:初始化二元组集合R为空,设置头检测秒数s,在广告视频的前Q帧中,从第1帧开始,每间隔P帧抽取一帧作为广告头测试帧,将得到的广告头测试帧的总帧数记为NA,其中Q=s×fA,fA为广告视频的帧率;
在本实施例中,头检测秒数s的取值范围为3≤s≤8,这里s的取值为5,故Q=s×fA=5×30=150,在广告视频的前Q=150帧中,从第1帧开始,每间隔P=2帧抽取一帧作为广告头测试帧,则抽取完成,共得到的测试帧总帧数NA=Q/(P+1)=150/(2+1)=50;
B2.两级哈希匹配:按照两级哈希匹配方法对广告头测试帧进行处理,得到一组由慢录帧帧编号zL与测试帧帧编号zA组成的二元组,并将这些二元组加入到二元组集合R中;
在本实施例中,两级哈希匹配方法具体包括以下分步骤:
B2-1.从广告测试帧中取一视频帧,设定初始值为0的帧计数器,每取一视频帧,帧计数器加1;
B2-2.特征区域选择:按视频哈希库构建的步骤A3-1,将每一广告测试帧转化为长为H0、宽为W0的特征区域图像;
在本实施例中,转化后,特征区域图像的长H0=320,宽W0=240。
B2-3.两级特征提取:按视频哈希库构建的步骤A3-2和A3-3,分别提取第一级特征向量Ha′和第二级特征向量Hb′;
在本实施例中,提取的第一级特征向量Ha′的维数为150维,第二级特征向量Hb′的维数为76800维。
B2-4.判定重复帧:若当前帧与前一帧的第二级特征向量相同,则转到步骤B2-1,否则转到步骤B2-5;
B2-5.两级哈希映射:按视频哈希库构建的步骤A5-1,使用标准局部敏感哈希算法,将特征向量Ha′和Hb′分别映射为位数为Ka的哈希键值hash_key1′和位数为Kb的哈希键值hash_key2′;
在本实施例中,哈希键值hash_key1′的位数为24位,哈希键值hash_key2′的位数为128位。
B2-6.第一级哈希匹配:在哈希表中查找键值为hash_key1′的表项,若查找成功,则找到该表项内容对应的链表L1′,并转到步骤B2-7;否则转到步骤B2-1;
B2-7.第二级哈希匹配:
B2-7-1.在链表L1′中查找键值为hash_key2′的表项,若查找成功,则找到该表项内容对应的链表L2′,并转到步骤B2-7-4,否则转到步骤B2-7-2;
B2-7-2.计算链表L1′每一表项的键值与hash_key2′的汉明距离,并找到计算出的所有汉明距离中的最小值Dmin;
B2-7-3.若Dmin大于预设的键值距离阈值Dth,则转到步骤B2-1,否则找到Dmin所在表项内容对应的链表L2′;
在本实施例中,键值距离阈值Dth的取值范围为5≤T0≤15,这里Dth的取值为10;若Dmin大于阈值10,则转到步骤B2-1,否则找到Dmin所在表项内容对应的链表L2′;
B2-7-4.对链表L2′中的每个表项作:取出其内容,即慢录帧帧编号zL,将zL与当前测试帧在原待检测广告中的帧编号zA组成二元组(zA,zL),并将该二元组加入到二元组集合R中;
B2-8.若帧计数器的当前计数值小于广告测试帧的总帧数50,则转到步骤B2-1,否则结束两级哈希匹配流程。
B3.直线拟合:将R中的每个二元组(zA,zL)视为平面上的一个点(x,y),其中zA和zL分别对应于横坐标x和纵坐标y,在平面中寻找至少通过NA/2=50/2=25个点,且斜率为1,宽度为3个像素的直线,将找到满足条件的直线总条数记为M;
在本实施例中,共找到M=3条满足条件的直线;
B4.判定是否拟合成功:若M=0,则结束广告检测流程,输出广告未播出,否则执行步骤B5;
B5.确定头位置:定义长度为M+1=4的广告播放开始时间数组Head_t和直线截距数组b,对满足1≤m≤3的每一个m,计算待检测广告的第m个播放开始时间位置Head_t[m]:
Head_t[m]=b[m]/fL
其中,b[m]为找到的第m条直线在y轴上的截距,fL=30为慢录视频的帧率;
至此,得到的3条直线如图2所示,图中横坐标表示广告视频的帧编号,纵坐标表示检测到对应的慢录视频帧编号;图(a)对应m=1,得到b[1]=1565321,Head_t[1]=52177.4,对应的广告播出开始时间为14:29:37.4;图(b)对应m=2,得到b[2]=1925977,Head_t[2]=64199.2,对应的广告播出开始时间为17:49:59.2;图(c)对应m=3,得到b[3]=2279592,Head_t[3]=75986.4,对应的广告播出开始时间为21:06:26.4。
B6.取尾片段:
B6-2.取尾初始化:设k为广告尾检测的块序号,初始化k=0;设t为找到的点数目,zmax为找到的点的纵坐标的最大值,初始化t=0,zmax=0,并将二元组集合R设置为空;
B6-3.设zs为待取的尾片段的开始帧帧编号,计算
在本实施例中,即
当k=0时,由于450-(k+2)150≥0,故zs=450-(k+1)150+1=301;
B6-4.设ze为待取的尾片段的结束帧帧编号,计算
在本实施例中,当k=0时,由于450-(k+2)150≥0,故ze=301+150-1=450;
B6-5.在广告视频的第zs至第ze帧中,从第zs帧开始,每间隔P帧抽取一帧作为广告尾测试帧,将得到的广告尾测试帧的总帧数记为N'A;
在本实施例中,当k=0时,在广告视频的第zs=301至第ze=450帧中,从第zs=301帧开始,每间隔P=2帧抽取一帧作为广告尾测试帧,得到广告尾测试帧的总帧数N'A=50;
B7.两级哈希匹配:按照两级哈希匹配方法对广告尾测试帧进行处理,得到一组由慢录帧帧编号zL与测试帧帧编号zA组成的二元组,并将这些二元组加入到二元组集合R中;
B8.直线匹配:对二元组集合R中的每一个二元组(zA,zL)作:若|zL-zA-b[m]|≤2,其中|·|为取绝对值运算,则更新t为t+1,即t=t+1,并计算zmax=max(zmax,zL),其中,max(zmax,zL)是取zmax和zL两者中的较大者;
B9.判定是否完成匹配:
B9-1.若t≥N'A/2,即t≥25,则令Tail_f的第m个元素Tail_f[m]=zmax,并转到步骤B9-3,否则令Tail_f[m]=b[m]+Q;
当k=0,m=1时,由于t=48>25,则令Tail_f[1]=1565772,并转到步骤B9-3;
当k=0,m=2时,由于t=48>25,则令Tail_f[2]=1926428,并转到步骤B9-3;
当k=0,m=3时,由于t=48>25,则令Tail_f[3]=2280043,并转到步骤B9-3;
B9-3.更新m为m+1,并进行判断,若m≤M,即m≤3,则转到步骤B6-2,否则转到步骤B10;
B10.确定尾位置:对满足1≤m≤3的每一个m,计算待检测广告的第m个播放结束时间位置Tail_t[m]:
Tail_t[m]=Tail_f[m]/fL
即
Tail_t[m]=Tail_f[m]/30
下面分别从检测准确性和速度两方面来对本发明方法进行性能评估。
1、检测精度
(1)已播出广告视频
对上述实施例中的广告视频,其检测结果如表1所示。
表1广告播出检测结果
表中“人工定位”表示用人工的方式记录的广告播出的开始时间与结束时间,“检测位置”为本发明方法检测到的广告播出的开始时间与结束时间,其中“开始时间”和“结束时间”的格式均为“小时:分钟:秒”,其中,小时、分钟精确到整数,秒精确到小数点后一位。可以看到,该广告的3次播出均被完整地检测到,且检测出的时间与人工标记的时间偏差均小于1秒,平均偏差为0.52秒。
(2)未播出广告视频
另对50段不在慢录中的广告进行测试,这些广告时长均为15秒,帧率均为30帧/秒,其检测结果均为“未播出”,与实际情况一致。
2、检测速度
本发明方法的仿真程序是用Python编写的,测试机器为Intel(R)i5处理器,主频为2.4GHz,内存为8GB。执行视频哈希库构建和广告检测的平均时间如表2所示。
表2视频哈希库构建和广告检测的执行时间(单位:秒)
可见,广告检测是快速的,对已播出和未播出的广告,平均仅用0.54秒即完成在24小时慢录中的检测。构建视频哈希库比较耗时,但这个操作只需进行一次,视频哈希库一旦被构建,就可以用来检测所有广告了。
本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的原理,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。本领域的普通技术人员可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种具体变形和组合,这些变形和组合仍然在本发明的保护范围内。
Claims (9)
1.一种视频广告播出监测方法,其特征在于,包括视频哈希库构建和广告检测两个阶段;
所述视频哈希库构建包括以下步骤:
A1.初始化:设NL为输入慢录视频的总帧数,初始化视频哈希表为空,慢录帧帧编号zL=0;
A2.取视频帧:从慢录视频中取一帧视频,更新慢录帧帧编号为zL+1;
A3.两级特征提取:选择特征区域,对特征区域图像分别在RGB空间和YUV空间提取第一级特征向量Ha和第二级特征向量Hb;
A4.判定重复帧:若当前帧与前一帧的第二级特征向量相同,则转到步骤A2;否则转到步骤A5;
A5.两级哈希入库:对提取的特征向量Ha和Hb进行两级局部敏感哈希映射,并生成哈希表表项,将慢录帧帧编号数据写入视频哈希库中;
A6.判定是否取完全部视频帧:若当前慢录帧帧编号zL小于视频总帧数NL,则转至步骤A2;否则结束视频哈希库构建流程;
所述广告检测包括以下步骤:
B1.取头片段:初始化二元组集合R为空,设置头检测秒数s,在广告视频的前Q帧中,从第1帧开始,每间隔P帧抽取一帧作为广告头测试帧,将得到的广告头测试帧的总帧数记为NA,其中Q=s×fA,fA为广告视频的帧率;
B2.两级哈希匹配:按照两级哈希匹配方法对广告头测试帧进行处理,得到一组由慢录帧帧编号zL与测试帧帧编号zA组成的二元组,并将这些二元组加入到二元组集合R中;
B3.直线拟合:将R中的每个二元组(zA,zL)视为平面上的一个点(x,y),其中zA和zL分别对应于横坐标x和纵坐标y,在平面中寻找至少通过NA/2个点,且斜率为1,宽度为3个像素的直线,将找到满足条件的直线总条数记为M;
B4.判定是否拟合成功:若M=0,则结束广告检测流程,输出广告未播出,否则执行步骤B5;
B5.确定头位置:定义长度为M+1的广告播放开始时间位置数组Head_t和直线截距数组b,对满足1≤m≤M的每一个m,计算待检测广告的第m个播放开始时间位置Head_t[m]:
Head_t[m]=b[m]/fL
其中,b[m]为找到的第m条直线在y轴上的截距,fL为慢录视频的帧率;
B6.取尾片段:
B6-2.取尾初始化:设k为广告尾检测的块序号,初始化k=0;设t为找到的点数目,zmax为找到的点的纵坐标的最大值,初始化t=0,zmax=0,并将二元组集合R设置为空;
B6-3.设zs为待取的尾片段的开始帧帧编号,计算
B6-4.设ze为待取的尾片段的结束帧帧编号,计算
B6-5.在广告视频的第zs至第ze帧中,从第zs帧开始,每间隔P帧抽取一帧作为广告尾测试帧,将得到的广告尾测试帧的总帧数记为N'A;
B7.两级哈希匹配:按照两级哈希匹配方法对广告尾测试帧进行处理,得到一组由慢录帧帧编号zL与测试帧帧编号zA组成的二元组,并将这些二元组加入到二元组集合R中;
B8.直线匹配:对二元组集合R中的每一个二元组(zA,zL)作:若|zL-zA-b[m]|≤2,其中|·|为取绝对值运算,则更新t为t+1,并计算zmax=max(zmax,zL),其中,max(zmax,zL)是取zmax和zL两者中的较大者;
B9.判定是否完成匹配:
B9-1.若t≥N'A/2,则令Tail_f的第m个元素Tail_f[m]=zmax,并转到步骤B9-3,否则令Tail_f[m]=b[m]+Q;
B9-3.更新m为m+1,并进行判断,若m≤M,则转到步骤B6-2,否则转到步骤B10;
B10.确定尾位置:对满足1≤m≤M的每一个m,计算待检测广告的第m个播放结束时间位置Tail_t[m]:
Tail_t[m]=Tail_f[m]/fL
2.根据权利要求1所述的视频广告播出监测方法,其特征在于,所述步骤A3两级特征提取具体包括以下分步骤:
A3-1.特征区域选择:
A3-1-1.去除边界:设当前视频帧的长和宽分别为H和W,选择以视频帧中心点为中心,长为αH,宽为αW的区域作为特征区域,其中α为预设的比例因子;
A3-1-2.尺寸缩放:将特征区域图像按比例缩放至长为H0,宽为W0的固定大小;
A3-2.第一级特征提取:
A3-2-1.区间划分:将0-255的颜色值范围均分为I个不同的色度区间,其中I为预设的色度区间数;
A3-2-2.区间个数统计:设g1、g2和g3分别为特征区域图像的R、G和B三个颜色通道,对第j个通道gj(j=1,2,3),将其中的每一个像素按其值大小分配到不同的色度区间中,对每个区间i(1≤i≤I),统计落入其中的像素点个数
A3-3.第二级特征提取:
A3-3-1.空间转换:将经过步骤A3-1处理后的特征区域图像从RGB空间转换化到YUV空间;
A3-3-2.特征形成:按从左到右、从上到下的顺序对Y分量进行扫描,并按顺序将每一个扫描值进行拼接,形成一个列向量,最终得到长度为H0×W0的第二级特征向量Hb。
3.根据权利要求2所述的视频广告播出监测方法,其特征在于,所述步骤A5两级哈希入库具体包括以下分步骤:
A5-1.两级哈希映射:使用标准局部敏感哈希算法,将特征向量Ha和Hb分别映射为位数为Ka的哈希键值hash_key1和位数为Kb的哈希键值hash_key2,其中 βa和βb为预设的位数因子,为向下取整运算;
A5-2.生成一级表项:在哈希表中查找键值为hash_key1的表项,若查找成功,则找到该表项内容对应的链表L1;否则创建一个键值为hash_key1的表项Item1和一个空的链表L1,并令Item1的内容为链表L1的首地址;
A5-3.生成二级表项:在链表L1中查找键值为hash_key2的表项,若查找成功,则找到该表项内容对应的链表L2;否则创建一个键值为hash_key2的表项Item2和一个空的链表L2,并令Item2的内容为链表L2的首地址;
A5-4.数据入库:创建一个内容为当前慢录帧帧编号zL的表项,并将其添加到链表L2中。
4.根据权利要求3所述的视频广告播出监测方法,其特征在于,所述两级哈希匹配方法具体包括以下分步骤:
B2-1.从广告测试帧中取一视频帧,设定初始值为0的帧计数器,每取一视频帧,帧计数器加1;
B2-2.特征区域选择:按步骤A3-1,将每一广告测试帧转化为长为H0、宽为W0的特征区域图像;
B2-3.两级特征提取:按步骤A3-2和A3-3,分别提取第一级特征向量Ha′和第二级特征向量Hb′;
B2-4.判定重复帧:若当前帧与前一帧的第二级特征向量相同,则转到步骤B2-1,否则转到步骤B2-5;
B2-5.两级哈希映射:按步骤A5-1,使用标准局部敏感哈希算法,将特征向量Ha′和Hb′分别映射为位数为Ka的哈希键值hash_key1′和位数为Kb的哈希键值hash_key2′;
B2-6.第一级哈希匹配:在哈希表中查找键值为hash_key1′的表项,若查找成功,则找到该表项内容对应的链表L1′,并转到步骤B2-7;否则转到步骤B2-1;
B2-7.第二级哈希匹配:
B2-7-1.在链表L1′中查找键值为hash_key2′的表项,若查找成功,则找到该表项内容对应的链表L2′,并转到步骤B2-7-4,否则转到步骤B2-7-2;
B2-7-2.计算链表L1′每一表项的键值与hash_key2′的汉明距离,并找到计算出的所有汉明距离中的最小值Dmin;
B2-7-3.若Dmin大于预设的键值距离阈值Dth,则转到步骤B2-1,否则找到Dmin所在表项内容对应的链表L2′;
B2-7-4.对链表L2′中的每个表项作:取出其内容,即慢录帧帧编号zL,将zL与当前测试帧在原待检测广告中的帧编号zA组成二元组(zA,zL),并将该二元组加入到二元组集合R中;
B2-8.若帧计数器的当前计数值小于广告测试帧的总帧数,则转到步骤B2-1,否则结束两级哈希匹配流程。
5.根据权利要求1所述的视频广告播出监测方法,其特征在于,所述头检测秒数s的取值范围为:3≤s≤8。
6.根据权利要求2所述的视频广告播出监测方法,其特征在于,所述比例因子α的取值范围为:0.75≤α≤1。
7.根据权利要求2所述的视频广告播出监测方法,其特征在于,所述色度区间数I的取值范围为:30≤I≤60。
8.根据权利要求3所述的视频广告播出监测方法,其特征在于,所述位数因子βa和βb的取值范围分别为:0.1≤βa≤0.2和0.001≤βb≤0.003。
9.根据权利要求4所述的视频广告播出监测方法,其特征在于,所述键值距离阈值Dth的取值范围为:5≤Dth≤15。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911126643.XA CN110830836B (zh) | 2019-11-18 | 2019-11-18 | 一种视频广告播出监测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911126643.XA CN110830836B (zh) | 2019-11-18 | 2019-11-18 | 一种视频广告播出监测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110830836A CN110830836A (zh) | 2020-02-21 |
CN110830836B true CN110830836B (zh) | 2020-10-27 |
Family
ID=69556209
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911126643.XA Expired - Fee Related CN110830836B (zh) | 2019-11-18 | 2019-11-18 | 一种视频广告播出监测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110830836B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112437340B (zh) * | 2020-11-13 | 2023-02-21 | 广东省广播电视局 | 一种音视频中确定有无变种长广告的方法及系统 |
CN116347124B (zh) * | 2023-03-29 | 2024-03-29 | 上海枭柯文化传播有限公司 | 一种基于视频播放状态的广告载入方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101162470A (zh) * | 2007-11-16 | 2008-04-16 | 北京交通大学 | 一种基于分层匹配的视频广告识别方法 |
CN104457758A (zh) * | 2014-12-19 | 2015-03-25 | 哈尔滨工业大学 | 基于视频采集的Visual Map数据库建立方法及利用该数据库的室内视觉定位方法 |
CN108235122A (zh) * | 2016-12-14 | 2018-06-29 | 北京国双科技有限公司 | 视频广告的监测方法及装置 |
CN109040784A (zh) * | 2018-09-14 | 2018-12-18 | 北京蓝拓扑科技股份有限公司 | 广告检测方法及装置 |
CN109712642A (zh) * | 2018-12-10 | 2019-05-03 | 电子科技大学 | 一种精准快速的广告播出监测方法 |
CN109783691A (zh) * | 2018-12-29 | 2019-05-21 | 四川远鉴科技有限公司 | 一种深度学习和哈希编码的视频检索方法 |
CN110457535A (zh) * | 2019-08-14 | 2019-11-15 | 广州虎牙科技有限公司 | 哈希桶查找方法、哈希表存储、哈希表查找方法和装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8851999B2 (en) * | 2002-12-10 | 2014-10-07 | Ol2, Inc. | System and method for improving the graphics performance of hosted applications |
KR100675837B1 (ko) * | 2004-12-13 | 2007-01-29 | 한국전자통신연구원 | 고속 gcm-aes 블록 암호화 장치 및 방법 |
CN100530196C (zh) * | 2007-11-16 | 2009-08-19 | 北京交通大学 | 一种基于分层匹配的快速音频广告识别方法 |
CN104216962A (zh) * | 2014-08-22 | 2014-12-17 | 南京邮电大学 | 一种基于HBase的海量网管数据索引设计方法 |
CN104636505A (zh) * | 2015-03-13 | 2015-05-20 | 北京世纪互联宽带数据中心有限公司 | 一种视频检索方法及装置 |
-
2019
- 2019-11-18 CN CN201911126643.XA patent/CN110830836B/zh not_active Expired - Fee Related
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101162470A (zh) * | 2007-11-16 | 2008-04-16 | 北京交通大学 | 一种基于分层匹配的视频广告识别方法 |
CN104457758A (zh) * | 2014-12-19 | 2015-03-25 | 哈尔滨工业大学 | 基于视频采集的Visual Map数据库建立方法及利用该数据库的室内视觉定位方法 |
CN108235122A (zh) * | 2016-12-14 | 2018-06-29 | 北京国双科技有限公司 | 视频广告的监测方法及装置 |
CN109040784A (zh) * | 2018-09-14 | 2018-12-18 | 北京蓝拓扑科技股份有限公司 | 广告检测方法及装置 |
CN109712642A (zh) * | 2018-12-10 | 2019-05-03 | 电子科技大学 | 一种精准快速的广告播出监测方法 |
CN109783691A (zh) * | 2018-12-29 | 2019-05-21 | 四川远鉴科技有限公司 | 一种深度学习和哈希编码的视频检索方法 |
CN110457535A (zh) * | 2019-08-14 | 2019-11-15 | 广州虎牙科技有限公司 | 哈希桶查找方法、哈希表存储、哈希表查找方法和装置 |
Non-Patent Citations (1)
Title |
---|
《两级哈希表存储模式的高效多模式匹配算法》;殷荣网,邵安贤,庞京玉;《控制工程》;20160331;第23卷(第3期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110830836A (zh) | 2020-02-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10452919B2 (en) | Detecting segments of a video program through image comparisons | |
US20200322690A1 (en) | Optimizing media fingerprint retention to improve system resource utilization | |
US10368123B2 (en) | Information pushing method, terminal and server | |
AU2016291674B2 (en) | Systems and methods for partitioning search indexes for improved efficiency in identifying media segments | |
US8145656B2 (en) | Matching of modified visual and audio media | |
US9756368B2 (en) | Methods and apparatus to identify media using hash keys | |
JP6216045B2 (ja) | フィンガープリントに基づく広告検出方法、広告検出システム及びプログラム | |
US20110085734A1 (en) | Robust video retrieval utilizing video data | |
US20140201772A1 (en) | Systems and methods for addressing a media database using distance associative hashing | |
WO2013185518A1 (zh) | 一种电视直播流中的广告段检测方法 | |
CN110830836B (zh) | 一种视频广告播出监测方法 | |
CN103514293A (zh) | 在视频模板库中进行视频匹配的方法 | |
CN103475935A (zh) | 一种视频片段的检索方法及装置 | |
CN102638686A (zh) | 处理动态图像的方法及设备 | |
CN103020153B (zh) | 一种基于视频的广告识别方法 | |
US20120301020A1 (en) | Method for pre-processing an image in facial recognition system | |
US9886650B2 (en) | Method and device for determining similarity between sequences | |
US20220182430A1 (en) | Content completion detection for media content | |
CN117037009A (zh) | 视频识别方法、装置、计算机设备和存储介质 | |
CN110956108B (zh) | 一种基于特征金字塔的小频标检测方法 | |
CN110619362B (zh) | 一种基于感知与像差的视频内容比对方法及装置 | |
JP2013009248A (ja) | 映像検出方法、映像検出装置、および映像検出プログラム | |
JP2002044610A (ja) | 信号検出方法、装置及びそのプログラム、記録媒体 | |
JP2009049667A (ja) | 情報処理装置、その処理方法およびプログラム | |
KR100981125B1 (ko) | 동영상 처리 방법 및 그 장치 |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20201027 Termination date: 20211118 |