CN115527149A - 电视剧剧集的片头、片尾识别方法和设备 - Google Patents
电视剧剧集的片头、片尾识别方法和设备 Download PDFInfo
- Publication number
- CN115527149A CN115527149A CN202211293506.7A CN202211293506A CN115527149A CN 115527149 A CN115527149 A CN 115527149A CN 202211293506 A CN202211293506 A CN 202211293506A CN 115527149 A CN115527149 A CN 115527149A
- Authority
- CN
- China
- Prior art keywords
- audio data
- substring
- character strings
- determining
- sampled audio
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/41—Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/46—Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供了一种基于音频特征的电视剧剧集的片头、片尾识别方法和设备,该方案中利用了音频特征,并以字符串的形式实现特征的处理,相较于视频特征的处理,大大降低了实现的技术门槛和算力需求,而对于一些没有固定视频内容的片头和片尾,或者采用正片结尾的画面定格作为片尾的电视剧,其往往仍会采用相同的片头和片尾音乐,因此也同样具有较好的处理效果。
Description
技术领域
本申请涉及信息技术领域,尤其涉及一种电视剧剧集的片头、片尾识别方法和设备。
背景技术
近年来,视频网站、IPTV(Interactive Personality TV,个性化互动电视)、互联网电视等视频平台中的视频节目越来越多,各个视频平台服务用户、竞争用户的意识也越来越强。在视频节目中的电视剧通常有固定的片头和片尾。在观看电视剧的过程中,很多用户会希望能够跳过片头和片尾,直接观看正片部分的内容。针对视频用户希望快速跳过片头片尾的需求,目前各个视频平台中采用的方案主要有以下几种:
1、人工标注的模式。采用人工的方式,在电视剧的每一集视频中进行片头和片尾位置的标注,这种方式的技术投入最少,人力投入最大。
2、利用视频特征的模式。分析电视剧视频的片头和片尾的视频特征,并基于视频特征自动识别出每一集视频中的片头和片尾,对其进行标注。这种模式是当前的主流模式,基本上能够完成需求,但是由于需要进行大量的图像处理,其分析和识别过程中需要的技术投入以及算力要求比较大。同时,利用视频特征进行分析的方式,对于一些没有固定视频内容的片头和片尾,或者采用正片结尾的画面定格作为片尾的电视剧,处理效果较差。
3利用用户收视行为的模式。对用户收视行为进行大数据采集,在电视剧首尾部分用户频繁跳转的位置进行标注。这种方式主要不是分析电视剧本身的相关特征,需要收集观众的收视数据后才能对电视剧进行标注,是一种间接的方式。并且,由于用户跳转的位置可能由于不同的操作习惯而存在差别,最终获得的处理结果的准确性也存在不足。
发明内容
本申请的一个目的是提供一种基于音频特征的电视剧剧集的片头、片尾识别方法和设备。
为实现上述目的,本申请实施提供了一种电视剧剧集的片头识别方法,所述方法包括:
获取同一部电视剧的视频文件作为样本集;
对样本集中视频文件的第一时间区间的内容进行音频采样,获取采样音频数据,并转换为字符串的形式,其中,所述第一时间区间为视频文件中从视频起始时间起的预设时间区间;
从样本集中选取两个视频文件的采样音频数据,并确定两个采样音频数据中的最大公共相似子串;
基于所述最大公共相似子串,对样本集中视频文件的采样音频数据进行匹配,确定所述采样音频数据中相似程度符合预设条件的目标子串;
根据所述目标子串在采样音频数据中的位置,确定所述视频文件的片头位置。
基于本申请的另一方面,还提供了一种电视剧剧集的片尾识别方法,所述方法包括:
获取同一部电视剧的视频文件作为样本集;
对样本集中视频文件的第二时间区间的内容进行音频采样,获取采样音频数据,并转换为字符串的形式,其中,所述第二时间区间为视频文件中以视频结束时间终止的预设时间区间;
从样本集中选取两个视频文件的采样音频数据,并确定两个采样音频数据中的最大公共相似子串;
基于所述最大公共相似子串,对样本集中视频文件的采样音频数据进行匹配,确定所述采样音频数据中相似程度符合预设条件的目标子串;
根据所述目标子串在采样音频数据中的位置,确定所述视频文件的片尾位置。
进一步地,确定两个采样音频数据中的最大公共相似子串,包括:
采用滑动窗口的方式遍历对比两个采样音频数据对应的字符串;
记录各个窗口下相同子串的相同字符数量;
根据相同字符数量,将相同字符数量最多的窗口确定为最大公共相似子串所在的窗口;
在所述最大公共相似子串所在的窗口中,查找确定两个采样音频数据中的最大公共相似子串。
进一步地,在所述最大公共相似子串所在的窗口中,查找确定两个采样音频数据中的最大公共相似子串,包括:
选取所述最大公共相似子串所在的窗口中的一部分字符串,作为种子字符串;
在两个采样音频数据对应的字符串中,基于所述种子字符串朝前和/或朝后扩展预设数量的字符,获取对应于两个采样音频数据的扩展字符串;
比较两个扩展字符串;
若所述扩展字符串之间的相似程度低于预设值,则根据所述扩展字符串确定最大公共相似子串;
若所述扩展字符串之间的相似程度不低于预设值,则继续在两个采样音频数据对应的字符串中,基于所述扩展字符串朝前和/或朝后扩展预设数量的字符,获取新的扩展字符串,并继续比较扩展字符串,直至所述扩展字符串之间的相似程度低于预设值。
进一步地,比较两个扩展字符串,包括:
计算两个扩展字符串的汉明距离,若所述汉明距离高于第一阈值,则确定所述扩展字符串之间的相似程度低于预设值,否则,确定所述扩展字符串之间的相似程度不低于预设值;或者
比较两个扩展字符串之间相同字符的数量,若相同字符的数量少于第二阈值,则确定所述扩展字符串之间的相似程度低于预设值,否则,确定所述扩展字符串之间的相似程度不低于预设值。
进一步地,根据所述扩展字符串确定最大公共相似子串,包括:
检查两个扩展字符串两端的字符对比结果,若两端的字符不一致,则删除不一致的字符,直至两个扩展字符串两端的字符一致,并将当前的扩展字符串确定为最大公共相似子串。
进一步地,采用滑动窗口的方式遍历对比两个采样音频数据对应的字符串时,滑动窗口的滑动距离为多个字符。
进一步地,基于所述最大公共相似子串,对样本集中视频文件的采样音频数据进行匹配,确定所述采样音频数据中相似程度符合预设条件的目标子串,包括:
使用所述最大公共相似子串,对样本集中每个视频文件的采样音频数据逐一进行遍历比较;
对于每个视频文件的采样音频数据,当找到其中与所述最大公共相似子串之间的汉明距离同最大公共相似子串的长度之比小于等于第三阈值或相同字符的数量同最大公共相似子串的长度之比大于等于第四阈值的子串,将所述子串确定为目标子串。
此外,本申请实施例还提供了一种电视剧剧集的重复内容识别方法,所述方法包括:
获取同一部电视剧的视频文件作为样本集;
对样本集中视频文件的第三时间区间的内容进行音频采样,获取采样音频数据,并转换为字符串的形式,其中,所述第三时间区间为视频文件中包含所述重复内容的时间区间;
从样本集中选取两个视频文件的采样音频数据,并确定两个采样音频数据中的最大公共相似子串;
基于所述最大公共相似子串,对样本集中视频文件的采样音频数据进行匹配,确定所述采样音频数据中相似程度符合预设条件的目标子串;
根据所述目标子串在采样音频数据中的位置,确定所述视频文件中重复内容的位置。
本申请实施例还提供了一种计算设备,该设备包括用于存储计算机程序指令的存储器和用于执行计算机程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发所述设备执行所述识别方法。
本申请实施例还提供了一种计算机可读介质,其上存储有计算机程序指令,所述计算机可读指令可被处理器执行以实现所述识别方法。
相较于现有技术,本申请提供的方案利用了电视剧剧集中的音频特征实现首尾的自动识别,该方案首先获取同一部电视剧的视频文件作为样本集,然后对样本集中视频文件的第一时间区间或第二时间区间的内容进行音频采样,获取采样音频数据,并转换为字符串的形式。其中,第一时间区间对应的采样音频数据用于片头的识别,第二时间区间对应的采样音频数据用于片尾的识别。
在识别时,可以从样本集中选取两个视频文件的采样音频数据,并确定两个采样音频数据中的最大公共相似子串,该最大公共相似子串即为片头或片尾的样本,由此可以基于所述最大公共相似子串,对样本集中视频文件的采样音频数据进行匹配,确定所述视频文件中相似程度符合预设条件的目标子串,然后根据所述目标子串在采样音频数据中的位置,确定所述视频文件的片头位置或片尾位置,由此即可在完成电视剧剧集中片头或片尾的识别与标记。由于本方案中利用了音频特征,并以字符串的形式实现特征的处理,相较于视频特征的处理,大大降低了实现的技术门槛和算力需求,而对于一些没有固定视频内容的片头和片尾,或者采用正片结尾的画面定格作为片尾的电视剧,其往往仍会采用相同的片头和片尾音乐,因此也同样具有较好的处理效果。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1为本申请实施例提供的一种电视剧剧集的片头识别方法的处理流程图;
图2为本申请实施例中确定两个采样音频数据中的最大公共相似子串的处理流程图;
图3为本申请实施例中两个字符串之间进行滑动对比的逻辑示意图;
图4为本申请实施例中两个字符串之间比较相似程度的示意图;
图5为本申请实施例中基于字符串str3和字符串str4提取两者的最大公共相似子串的示意图;
图6为本申请实施例中确定目标子串时对比场景的示意图;
图7为本申请实施例提供的一种电视剧剧集的片尾识别方法的处理流程图;
图8为本申请实施例提供的一种电视剧剧集的重复内容识别方法的处理流程图;
图9为采用本申请实施例提供的技术方案对电视剧进行片头和片尾标注的处理流程示意图;
附图中相同或相似的附图标记代表相同或相似的部件。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本申请实施例提供的一种电视剧剧集的片头或者片尾识别方法,该方法利用了音频特征,并以字符串的形式实现特征的处理,相较于视频特征的处理,大大降低了实现的技术门槛和算力需求,而对于一些没有固定视频内容的片头和片尾,或者采用正片结尾的画面定格作为片尾的电视剧,其往往仍会采用相同的片头和片尾音乐,因此也同样具有较好的处理效果。
在实际场景中,该方法的执行主体可以是用户设备、网络设备或用户设备与网络设备通过网络相集成所构成的设备,或者也可以是运行于上述设备的应用程序。所述用户设备包括但不限于计算机、手机、平板电脑等各类终端设备;所述网络设备包括但不限于如网络主机、单个网络服务器、多个网络服务器集中的服务器或者是分布式云网络中的服务器等。在此所述分布式云网络由基于云计算(Cloud Computing)的大量主机或网络服务器构成。
图1本申请实施例提供的一种电视剧剧集的片头识别方法的处理流程,该方法至少包括以下的处理步骤:
步骤S101,获取同一部电视剧的视频文件作为样本集。
本步骤即为视频文件选择的步骤,主要用于确定本次识别的电视剧的视频文件的范围,具体方式可以是将同一部电视剧在同一个文件目录或者内存存储空间中建立一个对应的文件列表,从而确定后续需要进行识别的视频文件范围。其中,所述视频文件即为电视剧的每一集内容所对应的视频文件,例如对于一个10集的电视剧drama1,可以包含10个视频文件file1~10,若需要识别该电视剧drama1中的片头,则可以获取视频文件file1~10作为样本集S1。
步骤S102,对样本集中视频文件的第一时间区间的内容进行音频采样,获取采样音频数据,并转换为字符串的形式。
本步骤用于对视频文件中片头所在位置处的音频内容进行采样,以缩小识别的范围,减少处理数据,从而提升处理效率。为了确保能够采样到包括片头的音频数据,第一时间区间可以设定为视频文件中从视频起始时间起的预设时间区间。其中,该时间区间的长度可以根据实际场景中片头的长短来设定,例如当第一时间区间设定为N分钟时,该步骤就会采集视频开头N分钟内的音频数据,来作为采样音频数据。在实际场景中,N一般可以设定为4,即对每一集电视剧开头前4分钟的内容进行音频采样。
采样后获得的采样音频数据可以转换为字符串的形式。在实际场景中,可以按照1秒钟采样100次的频率进行音频采样,每一次采样的数据为2字节的整数值,然后按照16进制对其进行编码,可以将其转换为4字节的字符串。以前述的4分钟的采样音频数据为例,对其转换为字符串的形式后,能够获得长度为96000字节(4分钟×60秒/分钟×100次/秒×4字节)的字符串,该字符串即为每一个视频文件进行音频采样后的采样音频数据。
步骤S103,从样本集中选取两个视频文件的采样音频数据,并确定两个采样音频数据中的最大公共相似子串。
由于样本集中一般会包括两个以上的视频文件的采样音频数据,因此在选取时可以采用随机选取的方式。例如,以前述场景中的样本集S1为例,其中包含10个视频文件file1~10,则对其第一时间区间的内容进行音频采样后,也会对应获得10个关于片头的采样音频数据的字符串headstr1~10,在本步骤中则可以随机选取其中两个,如headstr1和headstr3。
公共相似子串是指两个字符串中相似超过一定程度的子串,而最大公共相似子串是指所有公共相似子串中字符数量最多的公共相似子串。
本申请实施例中,在确定两个采样音频数据中的最大公共相似子串时,可以采用如图2所示的处理步骤:
步骤S201,采用滑动窗口的方式遍历对比两个采样音频数据对应的字符串。为了便于说明,本实施例中采用两个由5个字符组成的字符串对遍历对比的处理逻辑进行解释,其中第一个字符串str1为35EFA和第二个字符串str2为C5EFB,滑动对比的逻辑如图3所示,遍历过程包括了以下几种情况:
A)正向比较字符长度为1的字符串;
B)正向比较字符长度为2的字符串;
C)正向比较字符长度为3的字符串;
D)正向比较字符长度为4的字符串;
E)正向比较字符长度为5的字符串;
F)逆向比较字符长度为4的字符串;
G)逆向比较字符长度为3的字符串;
H)逆向比较字符长度为2的字符串;
I)逆向比较字符长度为1的字符串;
在该遍历对比的过程中,滑动窗口的滑动距离为1个字符。而在实际场景中,由于字符串的长度较长,为了提升处理效率,可以设定滑动距离为多个字符。例如,在本实施例中,由于采样音频数据所转换的字符串长度为96000字节,且每个16进制的数值占用4个字符的长度,可以设定滑动窗口的滑动距离为4个字符。
步骤S202,记录各个窗口下相同子串的相同字符数量。以前述场景为例,对于A~I这9个窗口,其相同子串的相同字符数量分别如下表1所示:
序号 | 相同字符个数 |
A | 0 |
B | 0 |
C | 0 |
D | 0 |
E | 3 |
F | 0 |
G | 0 |
H | 0 |
I | 0 |
表1
步骤S203,根据相同字符数量,将相同字符数量最多的窗口确定为最大公共相似子串所在的窗口,此窗口包含最大公共相似子串。以前述场景为例,相同字符数量最多的窗口的即为序号E所对应的窗口,其中相同字符为“5EF”,相同字符数量为3个。
步骤S204,在所述最大公共相似子串所在的窗口中,查找两个采样音频数据中的最大公共相似子串。最大公共相似子串不要求字符完全相同,而是要求相似程度超过一定的值。在实际场景中,采样音频数据对应的字符串长度较长,需要在所述最大公共相似子串所在的窗口中,还需要进一步查找,来获取最大公共相似子串。
进一步获取最大公共相似子串的方式如下:
首先,选取所述最大公共相似子串所在的窗口中的一部分字符串,作为种子字符串。当已经确定所述最大公共相似子串所在的窗口的情况下,可以先从该窗口包含的字符串中提取预设长度的子串,作为种子串(Seed串)。例如,以本申请96000字节长度的字符串为例,其对应的种子串可以是1秒钟采样所获得的字符串,即400字节的字符串。在实际场景中,种子串的长度可以根据实际场景的需要设定,此处不做限制。
本申请实施例中,以两个字符串str3和str4所表示的采样音频数据对该处理过程进行说明,其中,字符串str3为“1234546EF25AB0CB0AC0898007651234567887980642C85B9966”,字符串str4为“0AC61234567887982642C8855ABC784567EEFF3355E56832377C”。基于前述的步骤S201~S203,可以确定所述最大公共相似子串所在的窗口的窗口为str3向右偏移24个字符位置的窗口,其中包含最大公共相似子串。
在上述最大公共相似子串所在的窗口中,选取一部分字符串作为一个种子串。
后面可以在两个采样音频数据对应的字符串中,基于所述种子字符串朝前和/或朝后扩展预设数量的字符,获取对应于两个采样音频数据的扩展字符串。以前述的种子串“12345678”为例,在两个采样音频数据对应的字符串str3和str4中,可以基于所述种子字符串朝前和/或朝后扩展预设数量的字符。以str3为例,若朝前扩展4个字符,则获得的扩展字符串为“12345678”,若朝后扩展4个字符,则获得的扩展字符串为“56788798”,同理,对于字符串str4也可以同步进行相同方式的扩展。而当字符串的长度较长时,为了确保处理效率,可以增加每次扩展时增加的字符数量,例如可以每次向前或向后扩展8个字符、12个字符等。
其中,扩展字符串的方式可以根据实际场景的需要预先设定,例如可以先进行朝前的扩展,再进行朝后的扩展;或者也可以先进行朝后的扩展,再进行朝前的扩展;或者也可以朝前和朝后同时进行扩展;或者也可以向两个方向交替进行扩展等;此外,也可以根据其它设定的顺序进行扩展。
在每一次同步扩展之后,都可以基于新的两个扩展字符串进行一次比较。若所述扩展字符串之间的相似程度不低于预设值,则表示两个扩展字符串仍然足够相似,可以进一步尝试扩展,从而获得更长的相似公共子串。此时,可以继续在两个采样音频数据对应的字符串中,基于所述扩展字符串朝前和/或朝后扩展预设数量的字符,获取新的扩展字符串,并继续比较扩展字符串,直至所述扩展字符串之间的相似程度低于预设值。
其中,扩展字符串之间的相似程度的判断可以基于相同字符的数量或者汉明距离(Hamming Distance)。当基于相同字符的数量来进行判断时,可以比较两个扩展字符串之间相同字符的数量,若相同字符的数量少于第二阈值,则确定所述扩展字符串之间的相似程度低于预设值,否则,确定所述扩展字符串之间的相似程度不低于预设值。而当基于汉明距离来进行判断时,则可以计算两个扩展字符串的汉明距离,若所述汉明距离高于第一阈值,则确定所述扩展字符串之间的相似程度低于预设值,否则,确定所述扩展字符串之间的相似程度不低于预设值。
图4示出了两个字符串之间比较相似程度的示意图,当设定相似程度为90%时,第一阈值可以设定为扩展字符串长度的10%,第二阈值可以设定为扩展字符串长度的90%。以20个字符的扩展字符为例,若汉明距离大于2,或者相同字符的数量少于18,则表示所述扩展字符串之间的相似程度低于预设值,否则,确定所述扩展字符串之间的相似程度不低于预设值。
若比较的结果为:所述扩展字符串之间的相似程度低于预设值,则表示两个扩展字符串之间的相似度已经不足,不应再继续扩展,此时可以根据当前的扩展字符串确定最大公共相似子串。在实际场景中,可以从两个扩展字符串中任意选取一个作为最大公共相似子串。例如,在前述场景中,相似程度不足时,基于字符串str3扩展得到的扩展字符串str3'为:“1234567887980642C85B”,而基于字符串str4扩展得到的扩展字符串str4'为:“1234567887982642C855”,此时任意选择扩展字符串str3'或扩展字符串str4'作为最大公共相似子串。
在本申请的一些实施例中,为了提升后续处理的准确性,可以在获得最大公共相似子串时保证两端的字符至少是相同的。由此,在根据当前的扩展字符串确定最大公共相似子串时,先检查两个扩展字符串两端的字符对比结果,若两端的字符不一致,则删除不一致的字符,直至两个扩展字符串两端的字符一致,并将当前的扩展字符串确定为最大公共相似子串。以前述的两个扩展字符串str3'和str4'为例,由于其前端的4个字符均为“1234”,因此不需要进行删除,而后端的4个字符分别为“C85B”和“C855”,此时需要删除后端的字符,然后选取删除后端不同字符后的任意一个字符串,即将“1234567887980642”或“1234567887982642”作为最大公共相似子串。图5为基于字符串str3和字符串str4提取两者的最大公共相似子串的示意图。
步骤S104,基于所述最大公共相似子串,对样本集中视频文件的采样音频数据进行匹配,确定所述采样音频数据中相似程度符合预设条件的目标子串。
步骤S105,根据所述目标子串在采样音频数据中的位置,确定所述视频文件的片头位置。
上述两个步骤实现的是基于最大公共相似子串在各个视频文件的采样音频数据中实现片头识别的处理过程。由于最大公共相似子串可以认为是片头对应的音频内容的模版,因此可以使用最大公共相似子串,对样本集中视频文件的采样音频数据进行匹配。以前述场景中10个视频文件的采样音频数据headstr1~10为例,可以将片头对应的最大公共相似子串commonheadstr,分别对headstr1~10进行匹配,在这10个采样音频数据找到相似程度符合预设条件的目标子串。
在本申请的一些实施例中,可以采用如下的方式确定目标子串:
首先,对样本集中每个视频文件的采样音频数据,使用所述最大公共相似子串,对样本集中每个视频文件的采样音频数据逐一进行遍历比较。
由于需要识别出电视剧每一集的片头,因此可以对样本集中的每一个视频文件分别进行处理。此外,为了提升处理效率,可以直接从采样音频数据的第I个字符开始,选取与最大公共相似子串长度相同的字符串进行遍历对比,其中,I可以根据实际情况的需要设定为任意的正整数,例如可以设定为1时即表示从首个字符遍历对比,若设定为200,则表示从地200个字符开始遍历对比。同样地,遍历时的滑动距离也可以设定为多个字符,从而提升处理效率。
在对每个采样音频数据的遍历比较过程中,分别记录采样音频数据中各个进行比较的子串遍历情况与最大公共相似子串之间的相似情况。然后,判断采样音频数据中当前与最大公共相似子串进行比较的子串,与最大公共相似子串之间的相似程度是否符合预设条件。在实际场景中,所述预设条件可以基于两者之间相同字符的数量或者是汉明距离等,具体的,对于每个视频文件的采样音频数据,当找到其中与所述最大公共相似子串之间的汉明距离同最大公共相似子串的长度之比小于等于第三阈值或相同字符的数量同最大公共相似子串的长度之比大于等于第四阈值的子串,将所述子串确定为目标子串。例如,在本申请的一些实施例中,所述第三阈值可以设定为10%,所述第四阈值可以设定为90%。
以最大公共相似子串“1234567887982642”为例,若其中一个音频采样数据的字符串为“1234546EF25AB0CB0AC0898007651234567887980642C85B9966”,则可以确定目标子串其中为以第29个字符作为起始字符,长度为16个字符的子串,如图6所示。
在确定目标子串后,即可根据所述目标子串在采样音频数据中的位置,确定所述视频文件的片头位置。以前述场景为例,所述目标子串在采样音频数据中的位置,即为如下字符串中以下划线表示的位置:“1234546EF25AB0CB0AC0898007651234567887980642C85B9966。由于这些字符串是由音频数据按照时间顺序所转换而成的,因此根据对应关系即可在视频文件确定相应的时间节点,由此识别出所述视频文件的片头位置,进而完成对电视剧片头的标注。
本申请的另一些实施例还提供了一种电视剧剧集的片尾识别方法,该方法的处理流程如图7所示,包括以下的处理步骤:
步骤S701,获取同一部电视剧的视频文件作为样本集。
步骤S702,对样本集中视频文件的第二时间区间的内容进行音频采样,获取采样音频数据,并转换为字符串的形式,其中,所述第二时间区间为视频文件中以视频结束时间终止的预设时间区间。
步骤S703,从样本集中选取两个视频文件的采样音频数据,并确定两个采样音频数据中的最大公共相似子串;
步骤S704,基于所述最大公共相似子串,对样本集中视频文件的采样音频数据进行匹配,确定所述采样音频数据中相似程度符合预设条件的目标子串;
步骤S705,根据所述目标子串在采样音频数据中的位置,确定所述视频文件的片尾位置。
该方案与片头识别方法的技术原理相似,其区别点在于:片尾识别方案在获取采样音频数据时,是对第二时间区间,也即视频文件中以视频结束时间终止的预设时间区间对应的内容进行音频采样,由此可以获取到包含片尾内容的采样音频数据。进而,基于包含片尾内容的采样音频数据进行后续的处理和识别,即可识别出视频文件的片尾位置。
进一步地,基于类似的技术原理,本申请实施例还可以提供一种电视剧剧集的重复内容识别方法,该方法可以应用于电视剧中任意重复内容的识别,包括片头、片尾或者其它位置的重复内容,例如该方案可以用于识别在正片中插入的、内容相同的广告等,以便于对该广告进行标注并在播放过程中自动跳过广告。该方法的处理流程如图8所示,包括以下的处理步骤:
步骤S801,获取同一部电视剧的视频文件作为样本集;
步骤S802,对样本集中视频文件的第三时间区间的内容进行音频采样,获取采样音频数据,并转换为字符串的形式,其中,所述第三时间区间为视频文件中包含所述重复内容的时间区间;
步骤S803,从样本集中选取两个视频文件的采样音频数据,并确定两个采样音频数据中的最大公共相似子串;
步骤S804,基于所述最大公共相似子串,对样本集中视频文件的采样音频数据进行匹配,确定所述采样音频数据中相似程度符合预设条件的目标子串;
步骤S805,根据所述目标子串在采样音频数据中的位置,确定所述视频文件中重复内容的位置。
图9示出了采用本申请实施例提供的技术方案对剧名为《大江大河》的10集电视剧进行片头和片尾标注的处理流程,包括以下的处理步骤:
步骤S1,采集电视剧《大江大河》10集的视频文件,作为样本集。
步骤S2,对每一集的视频文件中提取4分钟长度的片头部分和4分钟长度的片尾部分。
步骤S3,对片头部分和片尾部分分别进行音频采集,并编码形成片头部分的字符串和片尾部分的字符串。这样可以形成20个字符串,分别为10个片头字符串HeadStr1-10,10个片尾字符串TailStr1-10,每个字符串的长度为96000个字节,96000字节的来源是:每个采样音频数据长度为4分钟,按照每秒采样100次,共计采样4×60×100=24000个2字节长度的整数数据,每个整数编码为4个字节的十六进制字符,也就是96000字节的字符串。
步骤S4,利用滑动窗口的方式查找最大公共相似子串所在的窗口。
取两个字符串,比如第1集和第2集的片头部分字符串HeadStr1和HeadStr2,查找两者之间相同字符数量。
如下是该部分处理的伪代码:
#defineCompareNumber 96000
Int I=0;
While(I<2·CompareNumber)
{
比较HeadStr1头部I个字符和HeadStr2尾部I个字符相似性;
//此处字符相同即为相似,计数器加1
//字符不相同,即为不相同,计数器不变;
记录此刻形似度Count数组Count[i]中;
I=I+4;//此处直接跳跃4个字符,即滑动窗口的滑动距离为4个字符,因为一个音频采样数据对应四个字节字符;
}
在Count数组中找到最大的数,也就找到在滑动窗口什么情况下具有最多的相同字符数量。该相同字符数量最多的窗口中即为最大公共相似子串所在的窗口,此窗口中包含了最大公共相似子串;
考虑到实际情况,上述算法可以进一步简化循环次数,可以直接对比1秒钟之后的音频,对应数据开始从字符串400的开始,同样道理字符串结尾也可以提前结束,这样循环会少一部分循环,效率会进一步提升。
对于片尾部分字符串,也可以进行同样的处理。
步骤S5,在滑动窗口的特定窗口下找到最大公共相似子串。
在上述步骤S4获得最大公共相似子串所在的窗口时,可以在该窗口下进一步找到最大公共相似子串。
查找最大公共相似子串的方法是先基于最大公共相似子串所在的窗口在HeadStr1和HeadStr2中找到特定长度合适种子串,然后不断在其前后增加四个字符,形成扩展字符串,直到扩展字符串之间的相似程度低于一定的阈值。
找公共相似子串的伪代码如下:
在窗口中找一个4000字节长度的公共串(对应10秒完全相同的内容);
进入前端字符串循环:
While(1)
{
比较公共串前面四个字符,如果相同,直接纳入到公共串;如果不相同,判断不相同位数是否超过阈值,没有超过纳入到公共串。
当比较到字符串的最前端,终止;
当不相同个数超过阈值,终止;
}
判断公共字符串前端四个字符是否相同,不相同删除连续的不相同的前端数据。
进入后端字符串循环:
While(1)
{
比较公共串后面四个字符,如果相同,直接纳入到公共串;如果不相同,判断不相同位数是否超过阈值,没有超过纳入到公共串。
当比较到字符串的最后端,终止;
当不相同个数超过阈值,终止;
}
判断公共子串后端四个字符是否相同,不相同删除连续的不相同的后端数据。
获得关于片头的最大公共相似子串CommonHeadStr。
在处理过程中,所述的公共串即为种子串或者是扩展后获得的扩展字符串。
同理,通过同样的方式,也可以获得关于片尾的最大公共相似子串CommonTailStr。利用找到的CommonHeadStr和CommonTailStr,即可对全部视频文件中的片头和片尾进行识别。
步骤S6,根据找到的CommonHeadStr和CommonTailStr在全部的采样的片头字符串HeadStr1-10和10个片尾字符串TailStr1-10中进行匹配,确定各自的片头和片尾的位置。
片头部分采用伪代码为:
I=0;
While(1)
{
从HeadStr第I个位置,选取CommonHeadStr长度的字符串与CommonHeadStr进行对照,并记录位置,以及此位置下的相同字符的个数;
I=I+4;
当找到与CommonHeadStr的相同字符数量同CommonHeadStr长度之比超过第四阈值的子串时,退出循环;
}
根据该子串的起始位置获得片头的起始位置;
根据片头起始位置,加上片头的长度(即CommonHeadStr的长度),即可算出片头的结束位置;
在视频文件中对片头位置进行标记;
基于同样的原理,可以完成片尾的标记,片尾部分采用的伪代码为:
I=0;
While(1)
{
从TailStr第I个位置,选取CommonTailStr长度的字符串同CommonTailStr进行对照,并记录位置,以及此位置下的相同字符的个数;
I=I+4;
当找到与CommonTailStr的相同字符数量同CommonTailStr长度之比超过第四阈值的子串时,退出循环;
}
根据该子串的起始位置获得片尾的起始位置;
根据片尾的起始位置,加上片尾的长度(即CommonTailStr的长度),即可算出片尾的结束位置;
在视频文件中对片尾位置进行标记。
对片头字符串HeadStr1-10和片尾字符串HeadStr1-10对重复上述处理过程,即可完成每一集电视剧的片头片尾标注。
本申请实施例还提供了一种计算设备,该设备包括用于存储计算机程序指令的存储器和用于执行计算机程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发所述设备执行前述的识别方法。
特别地,本申请实施例中的方法和/或实施例可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在该计算机程序被处理单元执行时,执行本申请的方法中限定的上述功能。
需要说明的是,本申请所述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图或框图示出了按照本申请各种实施例的设备、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的针对硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个计算机程序指令,所述计算机程序指令可被处理器执行以实现前述本申请的多个实施例的方法和/或技术方案。
需要注意的是,本申请可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(ASIC)、通用目的计算机或任何其他类似硬件设备来实现。在一些实施例中,本申请的软件程序可以通过处理器执行以实现上文步骤或功能。同样地,本申请的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本申请的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。
对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
Claims (11)
1.一种电视剧剧集的片头识别方法,其特征在于,所述方法包括:
获取同一部电视剧的视频文件作为样本集;
对样本集中视频文件的第一时间区间的内容进行音频采样,获取采样音频数据,并转换为字符串的形式,其中,所述第一时间区间为视频文件中从视频起始时间起的预设时间区间;
从样本集中选取两个视频文件的采样音频数据,并确定两个采样音频数据中的最大公共相似子串;
基于所述最大公共相似子串,对样本集中视频文件的采样音频数据进行匹配,确定所述采样音频数据中相似程度符合预设条件的目标子串;
根据所述目标子串在采样音频数据中的位置,确定所述视频文件的片头位置。
2.一种电视剧剧集的片尾识别方法,其特征在于,所述方法包括:
获取同一部电视剧的视频文件作为样本集;
对样本集中视频文件的第二时间区间的内容进行音频采样,获取采样音频数据,并转换为字符串的形式,其中,所述第二时间区间为视频文件中以视频结束时间终止的预设时间区间;
从样本集中选取两个视频文件的采样音频数据,并确定两个采样音频数据中的最大公共相似子串;
基于所述最大公共相似子串,对样本集中视频文件的采样音频数据进行匹配,确定所述采样音频数据中相似程度符合预设条件的目标子串;
根据所述目标子串在采样音频数据中的位置,确定所述视频文件的片尾位置。
3.根据权利要求1或2所述的方法,其特征在于,确定两个采样音频数据中的最大公共相似子串,包括:
采用滑动窗口的方式遍历对比两个采样音频数据对应的字符串;
记录各个窗口下相同子串的相同字符数量;
根据相同字符数量,将相同字符数量最多的窗口确定为最大公共相似子串所在的窗口;
在所述最大公共相似子串所在的窗口中,查找确定两个采样音频数据中的最大公共相似子串。
4.根据权利要求3所述的方法,其特征在于,在所述最大公共相似子串所在的窗口中,查找确定两个采样音频数据中的最大公共相似子串,包括:
选取所述最大公共相似子串所在的窗口中的一部分字符串,作为种子字符串;
在两个采样音频数据对应的字符串中,基于所述种子字符串朝前和/或朝后扩展预设数量的字符,获取对应于两个采样音频数据的扩展字符串;
比较两个扩展字符串;
若所述扩展字符串之间的相似程度低于预设值,则根据所述扩展字符串确定最大公共相似子串;
若所述扩展字符串之间的相似程度不低于预设值,则继续在两个采样音频数据对应的字符串中,基于所述扩展字符串朝前和/或朝后扩展预设数量的字符,获取新的扩展字符串,并继续比较扩展字符串,直至所述扩展字符串之间的相似程度低于预设值。
5.根据权利要求4所述的方法,其特征在于,比较两个扩展字符串,包括:
计算两个扩展字符串的汉明距离,若所述汉明距离高于第一阈值,则确定所述扩展字符串之间的相似程度低于预设值,否则,确定所述扩展字符串之间的相似程度不低于预设值;或者
比较两个扩展字符串之间相同字符的数量,若相同字符的数量少于第二阈值,则确定所述扩展字符串之间的相似程度低于预设值,否则,确定所述扩展字符串之间的相似程度不低于预设值。
6.根据权利要求4所述的方法,其特征在于,根据所述扩展字符串确定最大公共相似子串,包括:
检查两个扩展字符串两端的字符对比结果,若两端的字符不一致,则删除不一致的字符,直至两个扩展字符串两端的字符一致,并将当前的扩展字符串确定为最大公共相似子串。
7.根据权利要求3所述的方法,其特征在于,采用滑动窗口的方式遍历对比两个采样音频数据对应的字符串时,滑动窗口的滑动距离为多个字符。
8.根据权利要求1或2所述的方法,其特征在于,基于所述最大公共相似子串,对样本集中视频文件的采样音频数据进行匹配,确定所述采样音频数据中相似程度符合预设条件的目标子串,包括:
使用所述最大公共相似子串,对样本集中每个视频文件的采样音频数据逐一进行遍历比较;
对于每个视频文件的采样音频数据,当找到其中与所述最大公共相似子串之间的汉明距离同最大公共相似子串的长度之比小于等于第三阈值或相同字符的数量同最大公共相似子串的长度之比大于等于第四阈值的子串,将所述子串确定为目标子串。
9.一种电视剧剧集的重复内容识别方法,其特征在于,所述方法包括:
获取同一部电视剧的视频文件作为样本集;
对样本集中视频文件的第三时间区间的内容进行音频采样,获取采样音频数据,并转换为字符串的形式,其中,所述第三时间区间为视频文件中包含所述重复内容的时间区间;
从样本集中选取两个视频文件的采样音频数据,并确定两个采样音频数据中的最大公共相似子串;
基于所述最大公共相似子串,对样本集中视频文件的采样音频数据进行匹配,确定所述采样音频数据中相似程度符合预设条件的目标子串;
根据所述目标子串在采样音频数据中的位置,确定所述视频文件中重复内容的位置。
10.一种计算设备,其中,该设备包括用于存储计算机程序指令的存储器和用于执行计算机程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发所述设备执行权利要求1至9中任一项所述的方法。
11.一种计算机可读介质,其上存储有计算机程序指令,所述计算机可读指令可被处理器执行以实现如权利要求1至9中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211293506.7A CN115527149A (zh) | 2022-10-21 | 2022-10-21 | 电视剧剧集的片头、片尾识别方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211293506.7A CN115527149A (zh) | 2022-10-21 | 2022-10-21 | 电视剧剧集的片头、片尾识别方法和设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115527149A true CN115527149A (zh) | 2022-12-27 |
Family
ID=84704344
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211293506.7A Pending CN115527149A (zh) | 2022-10-21 | 2022-10-21 | 电视剧剧集的片头、片尾识别方法和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115527149A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116017048A (zh) * | 2022-12-28 | 2023-04-25 | 北京奇艺世纪科技有限公司 | 片尾的开始位置识别方法、装置、电子设备及存储介质 |
CN116017048B (zh) * | 2022-12-28 | 2024-06-04 | 北京奇艺世纪科技有限公司 | 片尾的开始位置识别方法、装置、电子设备及存储介质 |
-
2022
- 2022-10-21 CN CN202211293506.7A patent/CN115527149A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116017048A (zh) * | 2022-12-28 | 2023-04-25 | 北京奇艺世纪科技有限公司 | 片尾的开始位置识别方法、装置、电子设备及存储介质 |
CN116017048B (zh) * | 2022-12-28 | 2024-06-04 | 北京奇艺世纪科技有限公司 | 片尾的开始位置识别方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4418748B2 (ja) | ストリームに繰り返し埋め込まれたメディアオブジェクトを識別し、セグメント化するためのシステムおよび方法 | |
CN108769731B (zh) | 一种检测视频中目标视频片段的方法、装置及电子设备 | |
CN102129474B (zh) | 一种视频数据检索方法及其装置和系统 | |
JP4658598B2 (ja) | ストリームに埋め込まれた反復オブジェクトに対するユーザ制御を提供するシステムおよび方法 | |
US7212726B2 (en) | System and method of processing MPEG streams for file index insertion | |
US10469918B1 (en) | Expanded previously on segments | |
US8307403B2 (en) | Triggerless interactive television | |
US9049418B2 (en) | Data processing apparatus, data processing method, and program | |
JP2010533322A (ja) | マルチメディアコンテンツの特定のためのシグネチャポインターを含む検索ツリーのインクレメンタル構造 | |
PT2036343E (pt) | Sincronização de conteúdo multimédia com eventos baseados no reconhecimento de sequências de valores hash | |
WO2019128724A1 (zh) | 数据处理方法及装置 | |
KR20090007177A (ko) | 얼굴 인식 기반의 실시간 선별 녹화 장치 및 방법 | |
US9838757B2 (en) | Method to transmit video data in a data stream and associated metadata | |
CN113347489B (zh) | 视频片段检测方法、装置、设备及存储介质 | |
CN110795597A (zh) | 视频关键字确定、视频检索方法及装置、存储介质、终端 | |
CN115527149A (zh) | 电视剧剧集的片头、片尾识别方法和设备 | |
JP2003224791A (ja) | 映像の検索方法および装置 | |
CN116028669A (zh) | 一种基于短视频的视频搜索方法、装置、系统和存储介质 | |
KR20090096158A (ko) | 동영상 스틸컷 기반의 크로스미디어 검색 시스템 및 방법 | |
CN114245229A (zh) | 一种短视频制作方法、装置、设备以及存储介质 | |
US20170078715A1 (en) | Chapter detection in multimedia streams via alignment of multiple airings | |
JP4825815B2 (ja) | 要約映像作成装置、要約映像作成方法、要約映像作成プログラム、映像解析装置、映像解析方法及び映像解析プログラム | |
JP2006293513A (ja) | 先行シーンの存在を利用した特定シーンの映像の抽出方法及び装置 | |
JP4731522B2 (ja) | 特徴量生成装置、要約映像検出装置、及びプログラム | |
CN117014680A (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 |