本发明属于视频内容分类技术领域,具体涉及一种视频字幕的处理方法及处理装置。
背景技术:
视频在视觉上是一系列连续图像的集合,是一种没有结构的图像流。由于视频缺乏索引信息,人们无法对它进行高效浏览和检索。为了辅助人们快速寻找感兴趣的视频片段,除了采取“快进”和“快倒”这种耗时的方式进行线性浏览,很多的视频还标注有标签。而标签则需要根据视频的内容(即字幕)而定,即需要通过对饰品字幕进行检测和提取。
视频字幕检测和提取一般包括视频字幕定位、提取和识别,现有的视频字幕定位方法中通常会默认字幕处于屏幕的下四分之一,即宽为m,高为3n/4至n的区域为字幕区域,但是当某些非常规视频出现时,如视频字幕出现在屏幕上方或两侧时,依旧采用固有的字幕提取范围可能会导致字幕定位不准确而无法提取或提取到不完整字幕等情况的出现。现有的视频字幕提取方法则面临三大问题:第一,视频图像的复杂背景使字幕提取和分割极其困难。第二,为避免遮挡图像的主体部分,许多视频字符的尺寸都相当小,分辨率低。第三,数字视频采用有损压缩方式的格式存贮,再次降低了其分辨率。对于上述问题以及字幕字体、大小和对齐排列方式多变,成像存在噪音、模糊、透视、字体格式种类繁多等情况,本发明所提出的视频字幕提取算法要比其它边缘检测定位算法准确率高。
基于上述原因,导致现有技术中视频字幕的提取不仅费时费力,且正确率不高,针对性不强。
因此,针对以上不足,本发明急需提供一种视频字幕的处理方法及处理装置。
技术实现要素:
本发明的目的在于提供一种视频字幕的处理方法及处理装置,以解决现有技术中视频字幕的提取方法费时费力且正确率低的问题。
一方面,本发明提供的视频字幕的处理方法,包括:s1:逐帧处理视频流,得到待识别的图像,所述图像中包括多个像素点;s2:根据多个所述像素点,确定所述图像的第一文本区域;s3:按照预设规则,从所述第一文本区域中提取第二文本区域;s4:对所述第二文本区域进行识别以获取图像文本;s5:按照每帧图像的时序依次排列获取的图像文本,得到视频字幕。
如上所述的视频字幕的处理方法,进一步优选为,s1包括:s11:采用三色不等权变换策略逐帧处理视频流中的图像,得到灰度图像;s12:采用阈值法处理灰度图像,得到包括多个像素点的二值化图像。
如上所述的视频字幕的处理方法,进一步优选为,s2包括:s21:按照8邻域相通的规则对s1中的二值化图像进行连通域标记,同一连通域内的像素点具有相同的标号;s22:利用启发式规则筛选并去除面积过大或过小的连通域,得到第一文本区域。
如上所述的视频字幕的处理方法,进一步优选为,s22还包括判断相邻帧图像的连通域是否匹配,将相匹配的多帧图像合并成子集;按照子集的时序使每个子集输出若干带有时间轴的二值化图像,得到第一文本区域。
如上所述的视频字幕的处理方法,进一步优选为,s3包括:s31:使用多级边缘检测算法查找第一文本区域中图像的边缘,并输出包含有边缘像素点的二值图像;s32:计算s31中二值图像每个边缘像素点的梯度,根据每个边缘像素点梯度查找二值图像中的有效笔画并输出包含有效笔画及笔画宽度的二值图像;s33:基于s32中的二值图像中像素点的笔画宽度划分连通域,位于同一连通域的笔画为同一字符链;s34:遍历s33中所有的字符链,并将首尾相接的字符链组合到一起形成文本,该文本的包围矩形范围构成第二文本区域。
如上所述的视频字幕的处理方法,进一步优选为,s32中,有效笔画中的像素点两两对应,且相对应的两个像素点均为彼此梯度方向上第一个与其梯度方向相反的像素点,相对应的两个像素点之间的宽度为彼此的笔画宽度。
如上所述的视频字幕的处理方法,进一步优选为,s33中,当相邻两像素点的笔画宽度的比例小于预设阈值时,则属于同一连通域,为同一字符链的笔画。
如上所述的视频字幕的处理方法,进一步优选为,s4包括:s41:遍历第二文本区域,计算各像素点的梯度,并得到梯度纵向投影直方图;s42:根据直方图中波峰波谷的位置对第二文本区域进行切分,得到单字符图像;s43:对单字符图像进行连通域标记,并清除像素点数目过小的区域,得到处理后的二值化图像;s44:通过ocr识别步骤s43中得到的二值化图像,输出文本,遍历第二文本区域,得到文本集合,完成字幕提取。
如上所述的视频字幕的处理方法,进一步优选为,s42还包括获取切分后各区域在视频流中的原始图片,并根据颜色信息对原始图片进行聚类分析,得到文本的像素信息;通过对比去除切分后各区域的噪点,得到单字符图像。
另一方面,本发明还提供了一种视频字幕的处理装置,用于实现上述任意一项所述的视频字幕的处理方法,包括:获取模块,用于逐帧处理视频流以得到待识别的图像,所述图像包括多个像素点;确定模块,用于根据多个像素点,确定所述图像的第一文本区域;提取模块,用于按照预设规则,从所述第一文本区域中提取出第二文本区域;识别模块,用于对所述第二文本区域进行识别以获取图像图本;合成模块,用于根据视频时序合成图像文本,得到视频字幕。
与现有技术相比,本发明所公开的一种视频字幕的处理方法及处理装置具有以下有益效果:
本发明提供的视频字幕的处理方法中首先通过逐帧对视频流中的图像进行多次全局二值化处理,有效地去除了待识别的图像中的噪声,并通过对第二文本区域进行识别来实现图像文本的识别,避免了噪声对图像文本识别的干扰,大大提升了识别的准确率。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明中一种视频字幕的处理方法步骤流程图;
图2为本发明中一种视频字幕的处理装置的结构框图;
图3为本发明中步骤s31前后图像的变化,其中a为处理前,b为处理后;
图4为本发明中步骤s32前后图像的变化,其中c为处理前,d为处理后;
图5为本发明中步骤s3中同一笔画的变化过程,其中e为第二文本区域中笔画,f为查找边缘后的笔画,g为笔画宽度变化。
具体实施方式
实施例1:
如图1所示,本实施例提供了一种视频字幕的处理方法,包括:
s1:逐帧处理视频流,得到待识别的图像,所述图像中包括多个像素点;
s2:根据多个所述像素点,确定所述图像的第一文本区域;
s3:按照预设规则,从所述第一文本区域中提取第二文本区域;
s4:对所述第二文本区域进行识别以获取图像文本;
s5:按照每帧图像的时序依次排列获取的图像文本,得到视频字幕。
进一步的,s1包括:
s11:采用三色不等权变换策略逐帧处理视频流中的图像,得到灰度图像;具体的,r、g、b分别表示彩色图像三通道对应的像素值,则输出的灰度图像为:l(x,y)=0.3×r(x,y) 0.59×g(x,y) 0.11×b(x,y),其中(x,y)表示该图像中像素点的坐标。
s12:采用阈值法处理灰度图像,得到包括多个像素点的二值化图像。具体的,可采用双峰法、p参数法、大津法、最大熵阈值法和迭代法作为阈值选取算法。
进一步的,s2包括:
s21:按照8邻域相通的规则对s1中的二值化图像进行连通域标记,同一连通域内的像素点具有相同的标号;具体的,从左到右、从上往下依次按照8邻域相通的规则进行连通域标记;
s22:利用启发式规则筛选并去除面积过大或过小的连通域,得到第一文本区域。
进一步的,s22还包括判断相邻帧图像的连通域是否匹配,将相匹配的多帧图像合并成子集;按照子集的时序使每个子集输出若干二值图像,得到第一文本区域。
具体而言,为便于观看,视频字幕一般都会持续1秒钟以上,而背景却相对变化较快,1秒钟大概20-30帧,一个镜头又由多帧图像按照时序组合而成,因此一般而言,视频字幕的持续时间要长于镜头,且视频字幕的切换一般伴随着镜头的切换。因此,步骤s23中,判断相邻帧图像的第一文本区域是否匹配可分为两个步骤:首先判断镜头是否切换,然后判断相邻镜头的字幕是否匹配,并将字幕匹配的相邻镜头合并成子视频。
镜头的切换与否可通过公式计算得到,具体的,以一个大小为m×n的视频帧为例,定义空间差序列为ds(t),定义空间差序列所对应的镜头变换阈值为δshot,当ds(t)>δshot时,则认为在第t和t 1帧发生了镜头切换。其中:
其中,m代表视频图像的长度,n代表视频图像的宽度,it(i,j)是第t帧图像在(i,j)点处的强度,it 1(i,j)是第t 1帧图像在(i,j)点处的强度。阈值δshot随视频类型(如:动作电影、奇幻电影、喜剧电影、恐怖电影、冒险电影等)进行动态变化。
通过上述公式计算出每帧图像的空间差序列,并与镜头变换阈值进行比较之后可以对镜头切换进行判断。用于本实施例中即为找出视频流中空间帧差序列满足一定条件的局部最大点,然后根据局部最大点所在的时间点得到镜头变化时序,再根据镜头变化时序筛选获取的图像,进而去除大量字幕重复的图像,以便于降低后续处理工作量。
字幕匹配是否是通过对比判断的,具体的,抽取相邻镜头的第一文本区域进行以下对比:
1)位置对比:相邻两镜头的第一文本区域之间的重叠面积是否达到一定比例,具体的,可将比例设定为0.85;
2)像素强度分布对比:相邻两镜头的第一文本区域的边缘强度值同为0和同不为0的响度总数超过重叠面积的一定比例。
当相邻两镜头同时满足上述两条规则时,则认为两镜头的字幕相同,并将其合并至同一个子集中。判断子集的时间长度,若子集没有持续一定的时间长度,则认为该子集为背景部分或伪文字部分,并将其去除。按照子集的时序使每个子集输出若干二值图像,得到第一文本区域。
步骤s22的目的在于将具有同一字幕的相邻帧合并为一个子集,使后续处理中以子集为单位进行处理,进而降低后续的处理量,同时加快处理进程。
进一步的,如图3-5所示,s3包括:
s31:如图3所示,使用多级边缘检测算法查找第一文本区域中图像的边缘,并输出包含有边缘像素点的二值图像;采用多级边缘检测算法查找第一文本区域中图像的边缘,不仅能够抑制噪声对边缘检测干扰,还能够精确定位图像中边缘的位置,以便于后续处理的进行。
s32:如图4所示,计算s31中二值图像每个边缘像素点的梯度,根据每个边缘像素点梯度查找二值图像中的有效笔画并输出包含有效笔画及笔画宽度的二值图像;
s33:基于s32中的二值图像中像素点的笔画宽度划分连通域,位于同一连通域的笔画为同一字符链;
s34:遍历s33中所有的字符链,并将首尾相接的字符链组合到一起形成文本,该文本的包围矩形范围构成第二文本区域。具体的,设定每个字符链为包括两个节点,遍历图像中所有的字符链,当发现两个字符链的头尾相接时,则将其合并为同一字符链,直至图像中没有任何字符链可以被组合到一起。当字符链长度阈值时,则认定为此字符链为一行(列)文正的文本。
进一步的,s32中,有效笔画中的像素点两两对应,且相对应的两个像素点均为彼此梯度方向上第一个与其梯度方向相反的像素点,相对应的两个像素点之间的宽度为彼此的笔画宽度。具体的,图像中每个像素点的初始宽度为无穷大。计算边缘像素点的梯度,并沿其梯度方向发出的射线进行查找,其遇到的第一个与其梯度方向大致相反的像素点时,则认为找到了一条笔画的两端,则这条射线经过的所有像素点的笔画宽度大于此像素点原有的宽度时,设定相对应的两个像素点之间的宽度为彼此的笔画宽度。如有两点的梯度不能满足要求,则放弃这条射线,直至遍历图像所有的边缘点,查找二值图像中所有的有效笔画。当像素点处于笔画的转角位置时,重新遍历所有有效的射线,并计算其得到的宽度的平均值,如果原值大于平均值,则将其结果重设为平均值。至此输出包含有效笔画及笔画宽度的二值图像。
进一步的,s33中,当相邻两像素点的笔画宽度的比例小于预设阈值时,其属于同一连通域,为同一字符链的笔画。每个连通域中的笔画宽度的变化不应该过大,这样可以将场景中类似树叶的图像过滤掉。具体的,本实施例中取t=3,如此可保证对中文、英文以及一些笔画宽度有较大变化的文字起作用,避免将同一字符链的笔画划分到不同的字符链中。
步骤s3中,笔画的变化如图5所示。
进一步的,s4包括:
s41:遍历第二文本区域,计算各像素点的梯度,并得到梯度纵向投影直方图;具体的,把相同列的梯度值累加,根据每一列的梯度累加值计算斜率,从而求出梯度纵向投影直方图。
s42:根据直方图找到梯度投影波峰波谷对第二文本区域进行一次切分,并对一次切分中较宽的区域进行二次切分,得到单字符图像;具体的,根据直方图的结果找到梯度投影的波峰和波谷,计算相应的峰谷特征值,运用峰谷特征值求出每个波谷的特征量,并画出初始的分割线,即对第二文本区域进行一次切分;为进一步精确切分情况,继续对经一次切分的图像中较宽的区域进行二次切分;具体的,波谷处特征量较少,一般位于相邻字符的间隙处,此处切分能够将第二文本区域切分呈单字符。定义区域宽度正常的标准为字符宽度上下浮动15%。当第一步得到的分割线之间间距明显过大时(即分割线间距超出定义的正常范围),则将该区域归入宽度不正常的区域,并使之进入二次分割。二次切分与初次切分方法的主要区别是初次切分是对所有分割线做运算,而二次切分是只对初次切分后未能分割出来的文字区域的备选分割线做运算,由于二次切分比初次切分更有区域相关性,所以会把初次切分未能分割出来的文字区域分割出来。
s43:对单字符图像进行连通域标记,并清除像素点数目过小的区域,得到处理后的二值化图像;统计每个连通域的像素点数目,设定阈值,如果该连通域中像素点数目过小的话,则将该区域涂成白色,并清除该连通域,以便消除小区域的点噪声,从而得到清洗的二值化图像。
s44:通过ocr识别步骤s43中得到的二值化图像,输出文本,遍历第二文本区域,得到文本集合,完成字幕提取。
进一步的,s42还包括获取切分后各区域在视频流中的原始图片,并根据颜色信息对原始图片进行聚类分析,得到文本的像素信息;通过对比去除切分后各区域的噪点,得到单字符图像。具体的,利用颜色信息进行颜色聚类,由于字幕和背景的颜色不一致,则可以通过聚类将字幕和背景初步区分开来。聚类后,根据各个图层中像素点离文本框中心线的距离进行判断,选择出认为是字幕的图层,然后将其分离出来。最后,对该图层进行优化,通过消除噪声,使字幕更清晰地显现出来,更利于后面的ocr识别。
实施例2:
如图2所示,本实施例公开了一种视频字幕的处理装置,用于实现实施例1中所述的视频字幕的处理方法,包括:
获取模块,用于逐帧处理视频流以得到待识别的图像,所述图像包括多个像素点;
确定模块,用于根据多个像素点,确定所述图像的第一文本区域;
提取模块,用于按照预设规则,从所述第一文本区域中提取出第二文本区域;
识别模块,用于对所述第二文本区域进行识别以获取图像图本;
合成模块,用于根据视频时序合成图像文本,得到视频字幕。
与现有技术相比,本发明所公开的一种视频字幕的处理方法及处理装置具有以下有益效果:
本发明提供的视频字幕的处理方法中首先通过逐帧对视频流中的图像进行多次全局二值化处理,有效地去除了待识别的图像中的噪声,并通过对第二文本区域进行识别来实现图像文本的识别,避免了噪声对图像文本识别的干扰,大大提升了识别的准确率。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
1.一种视频字幕的处理方法,其特征在于,包括:
s1:逐帧处理视频流,得到待识别的图像,所述图像中包括多个像素点;
s2:根据多个所述像素点,确定所述图像的第一文本区域;
s3:按照预设规则,从所述第一文本区域中提取第二文本区域;
s4:对所述第二文本区域进行识别以获取图像文本;
s5:按照每帧图像的时序依次排列获取的图像文本,得到视频字幕。
2.根据权利要求1所述的视频字幕的处理方法,其特征在于,s1包括:
s11:采用三色不等权变换策略逐帧处理视频流中的图像,得到灰度图像;
s12:采用阈值法处理灰度图像,得到包括多个像素点的二值化图像。
3.根据权利要求2所述的视频字幕的处理方法,其特征在于,s2包括:
s21:按照8邻域相通的规则对s1中的二值化图像进行连通域标记,同一连通域内的像素点具有相同的标号;
s22:利用启发式规则筛选并去除面积过大或过小的连通域,得到第一文本区域。
4.根据权利要求3所述的视频字幕的处理方法,其特征在于,s22还包括判断相邻帧图像的连通域是否匹配,将相匹配的多帧图像合并成子集;按照子集的时序使每个子集输出若干二值图像,得到第一文本区域。
5.根据权利要求1所述的视频字幕的处理方法,其特征在于,s3包括:
s31:使用多级边缘检测算法查找第一文本区域中图像的边缘,并输出包含有边缘像素点的二值图像;
s32:计算s31中二值图像每个边缘像素点的梯度,根据每个边缘像素点梯度查找二值图像中的有效笔画并输出包含有效笔画及笔画宽度的二值图像;
s33:基于s32中的二值图像中像素点的笔画宽度划分连通域,位于同一连通域的笔画为同一字符链;
s34:遍历s33中所有的字符链,并将首尾相接的字符链组合到一起形成文本,该文本的包围矩形范围构成第二文本区域。
6.根据权利要求5所述的视频字幕的处理方法,其特征在于,s32中,有效笔画中的像素点两两对应,且相对应的两个像素点均为彼此梯度方向上第一个与其梯度方向相反的像素点,相对应的两个像素点之间的宽度为彼此的笔画宽度。
7.根据权利要求6所述的视频字幕的处理方法,其特征在于,s33中,当相邻两像素点的笔画宽度的比例小于预设阈值时,其属于同一连通域,为同一字符链的笔画。
8.根据权利要求7所述的视频字幕的处理方法,其特征在于,s4包括:
s41:遍历第二文本区域,计算各像素点的梯度,并得到梯度纵向投影直方图;
s42:根据直方图中波峰波谷的位置对第二文本区域进行切分,得到单字符图像;
s43:对单字符图像进行连通域标记,并清除像素点数目过小的区域,得到处理后的二值化图像;
s44:通过ocr识别步骤s43中得到的二值化图像,输出文本,遍历第二文本区域,得到文本集合,完成字幕提取。
9.根据权利要求8所述的视频字幕的处理方法,其特征在于,s42还包括获取切分后各区域在视频流中的原始图片,并根据颜色信息对原始图片进行聚类分析,得到文本的像素信息;通过对比去除切分后各区域的噪点,得到单字符图像。
10.一种视频字幕的处理装置,其特征在于,用于实现权利要求1-9中任意一项所述的视频字幕的处理方法,包括:
获取模块,用于逐帧处理视频流以得到待识别的图像,所述图像包括多个像素点;
确定模块,用于根据多个像素点,确定所述图像的第一文本区域;
提取模块,用于按照预设规则,从所述第一文本区域中提取出第二文本区域;
识别模块,用于对所述第二文本区域进行识别以获取图像图本;
合成模块,用于根据视频时序合成图像文本,得到视频字幕。
技术总结