基于视频内嵌字幕来嵌入广告的方法及装置与流程

文档序号:11157746阅读:316来源:国知局
基于视频内嵌字幕来嵌入广告的方法及装置与制造工艺

本公开涉及信息处理领域,具体地涉及识别并处理视频内嵌字幕并基于视频内嵌字幕来在视频中嵌入广告的方法以及装置。



背景技术:

随着互联网技术与多媒体技术的迅速发展,网络上出现了海量的视频内容,并且有越来越多的用户通过终端设备来观看视频内容。为了获得丰厚的广告收入,服务提供商在播放视频时,通常会在视频中插入各种各样的广告,或者在播放视频的界面上显示各种各样静态的或动态的广告窗口。然而,存在的问题是,如何针对所播放的视频来选择适宜的广告,以向用户进行个性化的广告投放,从而实现最优的广告效果以及最大化地提高广告投放商的经济收益。

当前的广告嵌入方法大都基于事先已经存在的视频描述文字。根据已经存在的视频简介或者视频标签来选择匹配的广告以在播放视频时嵌入该广告。这类方法有明显的局限性,因为绝大多数视频都没有简介性的文字描述,更不可能有更加细致的描述视频特定时间点标签的文字。这就很难选择与视频内容匹配的广告。



技术实现要素:

为了解决现有技术中的至少一些问题,本发明提供了一种基于视频内嵌字幕来嵌入广告的方法及装置。

根据本发明的一方面,提供了一种基于视频内嵌字幕的广告嵌入方法,包括:对视频中的多条字幕执行字幕聚类操作以确定最终字幕和最终字幕在视频中呈现的时间;在预定的广告列表中确定与最终字幕中的文字相匹配的广告;以及使经确定的匹配的广告与最终字幕在视频中呈现的时间相关联,从而使得在播放视频时,在最终字幕在视频中呈现的时间处播放匹配的广告。

根据本发明的一个实施方式,对视频中的多条字幕执行字幕聚类操作以确定最终字幕和最终字幕在视频中呈现的时间包括:在多条字幕中检测出属于同一段字幕的至少两条字幕;以及从至少两条字幕中确定最终字幕和最终字幕在视频中呈现的时间。

根据本发明的一个实施方式,在多条字幕中检测出属于同一段字幕的至少两条字幕包括:对多条字幕中的每条字幕进行切词得到词列表;以及如果多条字幕中的一条字幕的词列表与其前一条字幕的词列表的Jaccard距离小于一定阈值,则确定该条字幕与其前一条字幕属于同一段字幕。

根据本发明的一个实施方式,从至少两条字幕中确定最终字幕包括:计算至少两条字幕中的每条字幕为正确字幕的概率;以及将概率最大的字幕确定为最终字幕。

根据本发明的一个实施方式,计算至少两条字幕中的每条字幕为正确字幕的概率包括:基于语料库和用于计算正确字幕概率的算法来计算至少两条字幕中的每条字幕为正确字幕的概率。

根据本发明的一个实施方式,计算至少两条字幕中的每条字幕为正确字幕的概率包括:确定至少两条字幕中的每条字幕中是否包含有与广告列表中的广告相关的信息,如果是,则将该条字幕直接赋予最大字幕概率值。

广告列表中的广告包括广告名称、广告关键字、图片和网页链接。

根据本发明的一个实施方式,在预定的广告列表中确定与最终字幕中的文字相匹配的广告包括:确定最终字幕中的文字与广告列表中的广告的广告名称或广告关键字是否匹配,如果是,则将广告确定为与最终字幕匹配的广告。

根据本发明的一个实施方式,还包括提取视频中的多条字幕的步骤。

根据本发明的一个实施方式,提取视频中的多条字幕的步骤包括:在预定时间内以预定时间间隔对视频进行采样以得到多个视频截图;获取多个视频截图中的多个字幕区域图像;将多个字幕区域图像转换为灰度图像并进行二值化处理;对经过二值化处理的多个字幕区域图像进行OCR文字识别,以获取多条字幕;以及对多条字幕进行过滤,以去除多条字幕中的非文字符号。

根据本发明的一个实施方式,获取多个视频截图中的多个字幕区域图像包括:将多个视频截图中的每个视频截图分割为上、下、左、右四个区域;对每个视频截图的上、下、左、右四个区域分别进行OCR文字识别以提取文本;基于所提取的文本,确定四个区域中出现文本次数最多的区域;以及针对多个视频截图中的每个视频截图,对出现文本次数最多的区域进行截取以获得多个字幕区域图像。

根据本发明的一方面,提供了一种基于视频内嵌字幕来嵌入广告的装置,包括:字幕处理单元,被配置为对视频中的多条字幕执行字幕聚类操作以确定最终字幕和最终字幕在视频中呈现的时间;确定单元,被配置为在预定的广告列表中确定与最终字幕中的文字相匹配的广告;广告处理单元,被配置为使经确定的匹配的广告与最终字幕在视频中呈现的时间相关联,从而使得在播放视频时,在最终字幕在视频中呈现的时间处播放匹配的广告。

根据本发明的一个实施方式,字幕处理单元进一步被配置为:在多条字幕中检测出属于同一段字幕的至少两条字幕;以及从至少两条字幕中确定最终字幕和最终字幕在视频中呈现的时间。

根据本发明的一个实施方式,字幕处理单元进一步被配置为:对多条字幕中的每条字幕进行切词得到词列表;以及如果多条字幕中的一条字幕的词列表与其前一条字幕的词列表的Jaccard距离小于一定阈值,则确定该条字幕与其前一条字幕属于同一段字幕。

根据本发明的一个实施方式,字幕处理单元进一步被配置为:计算至少两条字幕中的每条字幕为正确字幕的概率;以及将概率最大的字幕确定为最终字幕。

根据本发明的一个实施方式,字幕处理单元进一步被配置为:基于语料库和用于计算正确字幕概率的算法来计算至少两条字幕中的每条字幕为正确字幕的概率。

根据本发明的一个实施方式,字幕处理单元进一步被配置为:确定至少两条字幕中的每条字幕中是否包含有与广告列表中的广告相关的信息,如果是,则将该条字幕直接赋予最大字幕概率值。

广告列表中的广告包括广告名称、广告关键字、图片和网页链接。

根据本发明的一个实施方式,确定单元进一步被配置为:确定最终字幕中的文字与广告列表中的广告的广告名称或广告关键字是否匹配,如果是,则将广告确定为与最终字幕匹配的广告。

根据本发明的一个实施方式,所述装置还包括提取单元,被配置为:在预定时间内以预定时间间隔对视频进行采样以得到多个视频截图;获取多个视频截图中的多个字幕区域图像;将多个字幕区域图像转换为灰度图像并进行二值化处理;对经过二值化处理的多个字幕区域图像进行OCR文字识别,以获取多条字幕;以及对多条字幕进行过滤,以去除多条字幕中的非文字符号。

根据本发明的一个实施方式,提取单元进一步被配置为:将多个视频截图中的每个视频截图分割为上、下、左、右四个区域;对每个视频截图的上、下、左、右四个区域分别进行OCR文字识别以提取文本;基于所提取的文本,确定四个区域中出现文本次数最多的区域;以及针对多个视频截图中的每个视频截图,对出现文本次数最多的区域进行截取以获得多个字幕区域图像。

根据本发明的一方面,提供了一种基于视频内嵌字幕来嵌入广告的装置,包括:存储器,存储有计算机可执行的指令;以及处理器,执行所述指令以,对视频中的多条字幕执行字幕聚类操作以确定最终字幕和最终字幕在视频中呈现的时间;在预定的广告列表中确定与最终字幕中的文字相匹配的广告;以及使经确定的匹配的广告与最终字幕在视频中呈现的时间相关联,从而使得在播放视频时,在最终字幕在视频中呈现的时间处播放匹配的广告。

附图说明

结合附图,通过以下非限制性实施方式的详细描述,本发明的其它特征、目的和优点将变得更明显。在附图中:

图1示出根据本申请实施方式的基于视频内嵌字幕的广告嵌入方法的流程图;

图2a示出在执行图1中的步骤S101之前的多条字幕的示例;

图2b至图2d示出根据本申请实施方式的经OCR识别、字幕过滤和字幕聚类过程中的字幕的示例;

图3示出对图1所示实施方式中步骤S101的细化流程图;

图4示出根据本申请实施方式的提取视频中的多条字幕的流程图;

图5示出根据本申请实施方式的基于视频内嵌字幕来嵌入广告的装置的结构的框图;

图6示出根据本申请实施方式的基于视频内嵌字幕来嵌入广告的装置的结构的框图;以及

图7是适于用来实现根据本申请实施方式的基于视频内嵌字幕的广告嵌入方法的计算机系统的结构示意图。

具体实施方式

下文中,将参考附图详细描述本发明的示例性实施方式,以使本领域技术人员可容易地实现它们。此外,为了清楚起见,在附图中省略了与描述示例性实施方式无关的部分。

在本公开中,应理解,诸如‘包括’或‘具有’等的术语旨在指示本说明书中所公开的特征、数字、步骤、行为、部件、部分或其组合的存在,并且不欲排除一个或多个其他特征、数字、步骤、行为、部件、部分或其组合存在或被添加的可能性。

图1示出根据本申请实施方式的基于视频内嵌字幕的广告嵌入方法100的流程图。

在步骤S101中,对视频中的多条字幕执行字幕聚类操作以确定最终字幕和最终字幕在视频中呈现的时间。在步骤S102中,在预定的广告列表中确定与最终字幕中的文字相匹配的广告。在步骤S103中,使经确定的匹配的广告与最终字幕在视频中呈现的时间相关联,从而使得在播放视频时,在最终字幕在视频中呈现的时间处播放匹配的广告。在下文中将对步骤S101、S102和S103分别做进一步的描述。

步骤S101

在视频播放过程中,同一段字幕会持续一段时间,所以同一段字幕会被多次识别,导致出现实际上属于同一段字幕的多条字幕。又因为随着字幕背景的变换可能出现针对上述多条字幕的多次OCR识别结果不一致的情况,也就是说,被识别出的实际上属于同一段字幕的多条字幕可能并不完全一致。因此需要对通过OCR识别出的多条字幕进行聚类分析以确定最终字幕。将最终字幕对应帧号转换为字幕出现的时间,从而确定最终字幕在视频中呈现的时间。

举例来说,如图2a所示,由于字幕在视频中有一定的停留时间,视频中的字幕“那时候一件Prada衣服拿到我们这里改”的OCR识别结果出现多条(在该示例中,约为6-8条),即,“那时候一件Prada衣月眸至我1”、“那时候一件Pra腮衣服拿到我们这里改”等等。因此,需要对所有多条识别结果进行聚类分析,以获得最终字幕。最终字幕是被认为与视频中出现的原始字幕最接近或相似度最高的字幕。在如图2所示的示例中,聚类分析之后,“那时候一件Prada衣月眸至我1”被确定为最终字幕。下文参照图3将对字幕聚类操作的方法做出详细的描述。

如图3所示,在步骤S101a中,在多条字幕中检测出属于同一段字幕的至少两条字幕。如上文所描述的,对于视频中的一条字幕,由于该条字幕可能会在视频播放期间停留一定时间,因此通过对该条字幕进行OCR识别可能会生成两条或更多条字幕识别结果。这些字幕识别结果实际上是属于视频中的同一段字幕的。因此,需要将多次识别出的同一段字幕聚类到一组中以用于后续处理。根据一个实施方式,可对识别出的多条字幕中的每条字幕进行切词得到词列表,计算该词列表与前一条字幕词列表的Jaccard距离,当Jaccard距离小于一定阈值时(诸如:小于0.8),则将该条字幕与其前一条字幕聚类为一组。

接着在步骤S101b中,从至少两条字幕中确定最终字幕和最终字幕在视频中呈现的时间。可从检测到的属于同一段字幕的至少两条字幕中选出最有可能的一条字幕。根据一个实施方式,可使用诸如百度百科文本作为语料库进行统计,采用NLP unigram算法、bigram算法或trigram算法来计算每条字幕为正确字幕的字幕概率。在其它实施方式中,也可使用其它百科文本作为语料库。根据一个实施方式,如果字幕中包含有广告的广告名称或广告关键字,则直接将该条字幕为正确字幕的字幕概率赋最大值。之后,选取字幕概率最大的字幕作为聚类后每个组的最终字幕

举例来说,如图2b所示,视频中的字幕经初始OCR识别之后存在以下情况,即,同一段字幕被多次识别从而出现针对同一段字幕的多条识别出的字幕,以及识别出的字幕中存在各种各样的非文字符号(诸如各种标点符号、空格等),这都将对后续与广告列表中的广告进行匹配产生不利影响。因此,需要对经初始OCR识别出的字幕进行进一步优化处理。如图2c所示,是对图2b中示出的识别出的字幕进行过滤之后的结果。经过滤处理之后,滤除掉了不期望的与广告匹配无关的无效字符。如图2d所示,是对图2c中示出的过滤后的字幕进行聚类操作之后的结果。聚类操作可以从属于同一段字幕的多条字幕中选择出最有可能的一条字幕。这能够将识别出的重复字幕去重复,提高视频中的字幕与广告列表中的广告的匹配效率。从图2d中可明显地看出,经过聚类操作之后,仅最有可能的字幕被保留下来且这些字幕之间无重复。

步骤S102

预定的广告列表中包括多条广告。根据本申请的一个实施方式,可以由视频提供商来确定预定的广告列表中所包含的广告,也可以由视频网站的运营商来确定预定的广告列表中所包含的广告。根据一个实施方式,广告可包含广告名称、广告关键字、图片和网页链接等内容。根据一个实施方式,广告可以是静态图片或者动态图片。

根据本申请的一个实施方式,对预定的广告列表进行搜索,如果最终字幕中的文字与预定的广告列表中的某条广告的广告名称相匹配,则将该条广告确定为与最终字幕匹配的广告。可替换地,如果最终字幕中的文字与预定的广告列表中的某条广告的广告关键字相匹配,则将该条广告确定为与最终字幕匹配的广告。可替换地,还可采用其它匹配方式来确定与最终字幕匹配的广告。

步骤S103

如上所述,在步骤S103中,使经确定的匹配的广告与最终字幕在视频中呈现的时间相关联,从而使得在播放视频时,在最终字幕在视频中呈现的时间处播放匹配的广告。根据本申请的一个实施方式,为了在适宜的时间播放匹配的广告,可以为每个匹配的广告设定一个播放时间点。具体地,可以将每个匹配的广告的播放时间点设定为与其匹配的最终字幕在视频中的呈现时间。

在播放视频时,检测视频播放当前时间点,如果视频播放当前时间点与广告的播放时间点一致,则将广告呈现在特定区域。在一个实施方式中,可以使用图层方式将广告图片以淡入、静止、淡出视频的形式呈现在特定区域。如果显示过程中观看者点击图片,则跳转到广告网页链接地址上。

此外,根据本申请的一个实施方式,基于视频内嵌字幕的广告嵌入方法100还可包括提取视频中的多条字幕的步骤。下文将参照图4详细描述提取视频中的多条字幕的步骤400。

在图4中,在步骤S401中,在预定时间内以预定时间间隔对视频进行采样以得到多个视频截图。

根据一个实施方式,可以以1秒为间隔对视频进行采样,提取视频前1分钟内容,获得60张视频截图。

在步骤S402中,获取多个视频截图中的多个字幕区域图像。

基于先验知识,绝大部分视频字幕出现在上1/3、下1/3、左1/3、右1/3四种位置,分别定义为TOP、BOTTOM、LEFT、RIGHT区域。因此可以通过对所得60张视频截图分别进行OCR分析来确定字幕位于上述四个区域中的哪个区域。根据一个实施方式,可以通过对所得60张视频截图分别进行OCR分析,分别提取60张视频截图的TOP、BOTTOM、LEFT、RIGHT 4个区域中的文本并累加文本数量,将累加结果最大值的区域确定为字幕区域。

根据一个实施方式,在确定了视频的字幕区域之后,可将完整视频进行帧分,每秒取3帧图像,对每帧图像进行修剪,仅保留字幕区域图像。

在步骤S403中,将多个字幕区域图像转换为灰度图像并进行二值化处理。

在一个实施方式中,可对字幕区域图像进行RGB->GRAY转为灰度图像,使用阈值进行二值化(诸如,使用阈值200)。

在步骤S404中,对经过二值化处理的多个字幕区域图像进行OCR文字识别,以获取多条字幕。

在一个实施方式中,使用OCR识别工具,加载字幕区域图像数据,对预处理后的字幕区域图像进行文字识别。

在步骤S405中,对多条字幕进行过滤,以去除多条字幕中的非文字符号。

在一个实施方式中,对OCR识别后的字符进行过滤,仅保留中文、字母、数字等字符。

图5示出根据本申请实施方式的基于视频内嵌字幕来嵌入广告的装置的结构的框图。

根据图5,基于视频内嵌字幕来嵌入广告的装置500可包括字幕处理单元501、确定单元502和广告处理单元503。装置500可以是任何具有数据处理功能的装置,例如,可以是各种类型的计算机装置。在一个实施例中,装置500可以是由视频服务提供商提供的服务器装置。在一个实施方式中,装置500可经由缆线连接至因特网或外部装置,且装置500可从因特网或外部装置接收视频内容以进一步从所接收的视频中提取字幕以及基于所提取的字幕来嵌入广告。

字幕处理单元501可以对装置500接收的视频内容中的字幕进行处理,以获得用于与预定广告列表中的广告进行匹配的最终字幕。根据一个实施方式,字幕处理单元501可对视频内容播放期间出现的多条字幕(例如,字幕A、A’、B和B’)进行处理以获得最终字幕。具体地,字幕处理单元501可对多条字幕A、A’、B和B’进行切词得到相应字幕的词列表:A的词列表、A’的词列表、B的词列表和B’的词列表。字幕处理单元501可根据算法确定各词列表之间的Jaccard距离,如果A的词列表和A’的词列表之间的Jaccard距离小于一定阈值,则确定A字幕与A’字幕属于同一段字幕。假设采用上述方法计算的A和A’为同一段字幕,B和B’为同一段字幕,且A和B不为同一段字幕。随后,字幕处理单元501可基于语料库和用于计算正确字幕概率的算法来计算确定A和A’中哪一条为正确字幕。用于计算正确字幕概率的算法例如是NLP unigram算法、bigram算法或trigram算法。根据一个实施方式,字幕处理单元501可判断字幕A和A’中是否包含有与广告列表中的广告相关的信息,如果是,则将该条字幕直接赋予最大正确字幕概率值。根据一个实施方式,字幕处理单元501可将概率最大的字幕确定为最终字幕。字幕处理单元501可将最终字幕对应帧号转换为字幕出现的时间,从而确定最终字幕在视频中呈现的时间。

根据一个实施方式,确定单元502可确定最终字幕中的文字与预定广告列表中的广告的广告名称或广告关键字是否匹配,如果是,则将广告确定为与最终字幕匹配的广告。

根据一个实施方式,广告处理单元503使经确定的匹配的广告与最终字幕在视频中呈现的时间相关联,从而使得在播放视频时,在最终字幕在视频中呈现的时间处播放匹配的广告。

图6示出根据本申请实施方式的基于视频内嵌字幕来嵌入广告的装置的结构的框图。

在图6中,基于视频内嵌字幕来嵌入广告的装置600包括提取单元601、字幕处理单元602、确定单元603和广告处理单元604。

提取单元601可在预定时间内以预定时间间隔对视频进行采样以得到多个视频截图。在一个实施方式中,提取单元601可以以1秒为间隔对视频进行采样,提取视频前1分钟内容,从而共获取到60张截图。提取单元601可分别将60张截图分割为上、下、左、右四个区域,并对每张截图的上、下、左、右四个区域分别进行OCR文字识别以提取文本。根据一个实施方式,提取单元601可分别将60张截图分割为任意期望的区域,并对所分割的区域分别进行OCR文字识别以提取文本。在上述实施例中,判断60张截图的上、下、左、右四个区域中哪个区域出现的文本次数最多,将出现文本次数最多的区域确定为字幕区域。为了更有利于对字幕区域进行OCR识别,可将字幕区域的图像转换为灰度图像并进行二值化处理。随后,对经过二值化处理的字幕区域图像进行OCR文字识别,以获取字幕。在一个实施方式中,提取单元601可对字幕进行过滤,以去除字幕中的非文字符号,诸如空格、省略号、制表符等。

图6中的字幕处理单元602、确定单元603和广告处理单元604与图5中的字幕处理单元501、确定单元502和广告处理单元503功能相似,此处省略对其的描述。

图7是适于用来实现根据本申请实施方式的基于视频内嵌字幕的广告嵌入方法的计算机系统的结构示意图。

如图7所示,计算机系统700包括中央处理单元(CPU)701,其可以根据存储在只读存储器(ROM)702中的程序或者从存储部分708加载到随机访问存储器(RAM)703中的程序而执行上述图1所示的实施方式中的各种处理。在RAM 703中,还存储有系统700操作所需的各种程序和数据。CPU 701、ROM 702以及RAM 703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。

以下部件连接至I/O接口705:包括键盘、鼠标等的输入部分706;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分705;包括硬盘等的存储部分708;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至I/O接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储部分708。

特别地,根据本公开的实施方式,上文参考图1描述的方法可以被实现为计算机软件程序。例如,本公开的实施方式包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包含用于执行图1的方法的程序代码。在这样的实施方式中,该计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。

附图中的流程图和框图,图示了按照本发明各种实施方式的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本申请实施方式中所涉及到的单元或模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定。

作为另一方面,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施方式中所述装置中所包含的计算机可读存储介质;也可以是单独存在,未装配入设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,所述程序被一个或者一个以上的处理器用来执行描述于本申请的方法。

以上描述仅为本申请的较佳实施方式以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

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