说明书一种视频字幕区的检测方法和装置
技术领域
本发明涉及图像处理技术领域,特别是涉及一种视频字幕区的检测方法 和装置。
背景技术
随着计算机硬件技术、多媒体技术的快速发现以及高速宽带不断的普 及,视频正在不断的取代图像、声音和文字成为最为重要的媒体形式。在一 些电影、电视剧及综艺节目中,特别是外文的影视节目中,字幕提供了丰富 的信息,是用户观看视频过程中关注的焦点。但是,由于不同视频中字幕的 差异较大,当出现字体的颜色不清晰、字体太小时,用户就无法快速、准确 识别字幕。针对该问题,若能对视频中的字幕区进行检测、识别,并对其进 行增强处理,就可以降低用户对字幕识别的难度。
目前,现有技术在对视频中的字幕区做增强处理时通常选取视频中尽可 能大的固定区域进行处理,例如视频底部的1/3区域。但是,选择较大的固 定区域虽然能够覆盖大多数视频的字幕区,但由于需要处理的图像面积过 大,需要占用很大的内存等系统资源,严重时会出现视频卡顿,影响视频的 正常播放。
因此,目前需要本领域技术人员迫切解决的一个技术问题就是:在视频 编码或显示过程,如何快速准确检测出字幕区域,以便降低对字幕区做增强 处理时的系统资源消耗。
发明内容
本发明实施例所要解决的技术问题是提供一种视频字幕区检测方法,以 解决现有技术在进行字幕检测时资源消耗较大的问题。
相应的,本发明实施例还提供了一种视频字幕区检测装置,用以保证上 述方法的实现及应用。
为了解决上述问题,本发明公开了一种视频字幕区检测方法,所述方法 包括:
将当前图像划分为n*m个图像块;
确定待检测的图像块i;
判断所述图像块i是否满足预设条件,若满足,则确定所述图像块i为 字幕区域;若不满足,则逐块完成对其余图像块的判断;
其中,n≥1、m≥1;i≥0。
优选地,所述确定待检测的图像块i之后,所述判断所述图像块i是否 满足预设条件之前,还包括:
判断所述图像块i是否位于预先指定区域R中,若否,则重新确定待检 测的图像块i并重新执行本步骤;若是,则执行后续步骤。
优选地,所述指定区域R具体为所述当前图像底部1/4区域。
优选地,所述判断所述图像块i是否满足预设条件,若满足,则确定所 述图像块i为字幕区域;若不满足,则逐块完成对其余图像块的判断,具体 包括:
确定边界点密度阈值EDT;
确定所述图像块i内的强边界像素点数目n1和平坦像素点数目n2;
确定所述图像块i与前一帧同位置图像块的纹理相似像素点数目nf;
确定所述图像块i与后一帧同位置图像块的纹理相似像素点数目nb;
判断预置的字幕区检测条件是否成立,若成立,则确定所述图像块i为 字幕区域;若不成立,则逐块完成对其余图像块的判断;
其中,所述预置的字幕区检测条件包括:A1*n1>EDT和 A1*(n1+n2)>A2,所述A1=1/(w*h),A2∈[0.2,0.6],所述w和h分别为所述 当前图像的宽和高。
优选地,所述预置的字幕区检测条件具体包括:
A1*n1>EDT和A1*(n1+n2)>A2和(nf/(n1+n2)>A3和/或 nb/(n1+n2)>A3);其中,A3∈[0.7,0.95]。
优选地,当n=16、m=16时,所述A1=0.0039,A2=0.41,A3=0.85。
优选地,所述获取边界点密度阈值 EDT=max(a,min(b,c*exp(d*(w*h/e))));
其中,a∈[25,35],b∈[60,100],c∈[0.15,0.7],d∈[-0.6,-0.1],e∈[-81000, 2050000];max()为取最大值运算,min()为取最小值运算,exp()为取指数运 算。
优选地,所述a=30,b=81,c=0.4,d=-0.2289,e=407040。
优选地,所述确定所述图像块i内的强边界像素点数目n1和平坦像素点 数目n2,具体包括:
确定边界点强度阈值EST;
确定平坦点强度阈值EPT;
获取所述图像块i内的像素点坐标(x,y);
确定所述像素点(x,y)的纹理强度t,所述t= (abs(I(x-2,y)-I(x,y))+abs(I(x,y-2)-I(x,y))+1)>>1,;
若t>边界点强度阈值EST,则确定所述像素点(x,y)为强边界点,;
若t<EPT,则确定所述像素点(x,y)为平坦点,其中;
统计所述图像块i内所有强边界像素点的数目n1;
统计所述图像块i内所有平坦像素点的数目n2;
其中,所述abs()为取绝对值运算;所述EST∈[30,100],所述EPT∈[5,15], 所述x≥0,y≥0。
优选地,
所述确定所述图像块i与前一帧同位置图像块的纹理相似像素点数目 nf,确定所述图像块i与后一帧同位置图像块的纹理相似像素点数目nb,具 体包括:
获取所述图像块i内的像素点坐标(x,y);
确定纹理相似阈值TST;
若abs(I(x,y)-F(x,y))<TST,则确定所述像素点(x,y)为与前一帧同位置图 像块的纹理相似像素点;
若abs(I(x,y)-B(x,y))<TST,则确定所述像素点(x,y)为与后一帧同位置图 像块的纹理相似像素点;
统计所述图像块i内与前一帧同位置图像块的纹理相似像素点数目为 nf;
统计所述图像块i内与后一帧同位置图像块的纹理相似像素点数目为 nb;
其中,I(x,y)为所述图像块i内像素点(x,y)的亮度值,F(x,y)为前一帧同 位置图像块中同位置像素点的亮度值,B(x,y)为后一帧同位置图像块中同位 置像素点的亮度值;所述abs()为取绝对值运算;所述TST∈[5,15]。
为解决上述问题,本发明还公开了一种视频字幕区的检测装置,所述装 置包括:
图像块划分模块,用于将当前图像划分为n*m个图像块;所述n≥1、 m≥1;
图像块确定模块,用于确定待检测的图像块i;所述i≥0;
图像块检测模块,用于判断所述图像块i是否满足预设条件,若满足, 则确定所述图像块i为字幕区域;若不满足,则逐块完成对其余图像块的判 断。
优选地,所述图像块确定模块,具体还用于:
判断确定的待检测图像块i是否位于预先指定区域R中,若否,则依次 重新确定待检测的图像块i,并重新检测该图像块i是否位于预先指定区域R 中,直到该图像块i位于所述指定区域R中。
优选地,所述指定区域R具体为所述当前图像底部1/4区域。
优选地,所述图像块检测模块,包括:
第一确定单元,用于确定边界点密度阈值EDT;
第二确定单元,用于确定所述图像块i内的强边界像素点数目n1和平坦 像素点数目n2;第三确定单元,用于确定所述图像块i与前一帧同位置图像 块的纹理相似像素点数目nf;以及,用于确定所述图像块i与后一帧同位置 图像块的纹理相似像素点数目nb;
字幕区判断单元,用于判断预置的字幕区检测条件是否成立,若成立, 则确定所述图像块i为字幕区域;若不成立,则逐块完成对其余图像块的判 断;
其中,所述预置的字幕区检测条件包括:A1*n1>EDT和 A1*(n1+n2)>A2,所述A1=1/(w*h),A2∈[0.2,0.6],所述w和h分别为所述 当前图像的宽和高。
优选地,所述预置的字幕区检测条件具体包括:
A1*n1>EDT和A1*(n1+n2)>A2和(nf/(n1+n2)>A3和/或 nb/(n1+n2)>A3);其中,A3∈[0.7,0.95]。
优选地,当n=16、m=16时,所述A1=0.0039,A2=0.41,A3=0.85。
优选地,所述第一确定单元通过以下公式获取边界点密度阈值 EDT=max(a,min(b,c*exp(d*(w*h/e))));
其中,a∈[25,35],b∈[60,100],c∈[0.15,0.7],d∈[-0.6,-0.1],e∈[-81000, 2050000];max()为取最大值运算,min()为取最小值运算,exp()为取指数运 算。
优选地,所述a=30,b=81,c=0.4,d=-0.2289,e=407040。
优选地,所述第二确定单元,具体用于:
确定边界点强度阈值EST;
确定平坦点强度阈值EPT;
获取所述图像块i内的像素点坐标(x,y);
确定所述像素点(x,y)的纹理强度t,所述t= (abs(I(x-2,y)-I(x,y))+abs(I(x,y-2)-I(x,y))+1)>>1;
若t>边界点强度阈值EST,则确定所述像素点(x,y)为强边界点;
若t<EPT,则确定所述像素点(x,y)为平坦点,其中;
统计所述图像块i内所有强边界像素点的数目n1;
统计所述图像块i内所有平坦像素点的数目n2;
其中,所述abs()为取绝对值运算;所述EST∈[30,100],所述EPT∈[5,15], 所述x≥0,y≥0。
优选地,所述第三确定单元,具体用于:
获取所述图像块i内的像素点坐标(x,y);
确定纹理相似阈值TST;
若abs(I(x,y)-F(x,y))<TST,则确定所述像素点(x,y)为与前一帧同位置图 像块的纹理相似像素点;
若abs(I(x,y)-B(x,y))<TST,则确定所述像素点(x,y)为与后一帧同位置图 像块的纹理相似像素点;
统计所述图像块i内与前一帧同位置图像块的纹理相似像素点数目为 nf;
统计所述图像块i内与后一帧同位置图像块的纹理相似像素点数目为 nb;
其中,I(x,y)为所述图像块i内像素点(x,y)的亮度值,F(x,y)为前一帧同 位置图像块中同位置像素点的亮度值,B(x,y)为后一帧同位置图像块中同位 置像素点的亮度值;所述abs()为取绝对值运算;所述TST∈[5,15]。
与现有技术相比,本发明实施例至少包括以下优点:
本发明实施例通过将图像划分为多个图像块,然后逐块判断该图像块是 否为字幕区域,实现了通过图像空域来检测视频的字幕区,由于无需进行大 量的频域变换操作,因此,不仅有效降低了计算复杂度,而且,可在多种视 频编码框架中实施,如MPEG2、H264、AVS、VP9、HEVC等。
附图说明
图1是本发明的一种视频字幕区检测方法实施例的步骤流程图;
图2是本发明的一种视频字幕区检测装置实施例的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图 和具体实施方式对本发明作进一步详细的说明。
参照图1,示出了本发明的一种视频字幕区的检测方法实施例的步骤流 程图,具体可以包括如下步骤:
步骤101,将当前图像划分为n*m个图像块。
其中,n≥1、m≥1。具体地,获取视频序列中t时刻的图像Ft作为当 前图像。需要说明的是,如何对当前图像划分图像块可由本领域技术人员根 据图像分辨率等实际需要设定,本发明对此不作具体限制,例如,将当前图 像划分为8*8、16*16或个图像块。
步骤102,确定待检测的图像块i。
其中,i≥0。
步骤103,判断所述图像块i是否满足预设条件,若满足,则确定所述 图像块i为字幕区域;若不满足,则逐块完成对其余图像块的判断。
本发明实施例通过将图像划分为多个图像块,然后逐块判断该图像块是 否为字幕区域,实现了通过图像空域来检测视频的字幕区,由于无需进行大 量的频域变换操作,因此,不仅有效降低了计算复杂度,而且,可在多种视 频编码框架中实施,如MPEG2、H264、AVS、VP9、HEVC等。
进一步地,所述判断所述图像块i是否满足预设条件,若满足,则确定 所述图像块i为字幕区域;若不满足,则逐块完成对其余图像块的判断,具 体包括:
确定边界点密度阈值EDT;
确定所述图像块i内的强边界像素点数目n1和平坦像素点数目n2;
确定所述图像块i与前一帧同位置图像块的纹理相似像素点数目nf;
确定所述图像块i与后一帧同位置图像块的纹理相似像素点数目nb;
判断预置的字幕区检测条件是否成立,若成立,则确定所述图像块i为 字幕区域;若不成立,则逐块完成对其余图像块的判断;
其中,所述预置的字幕区检测条件包括:A1*n1>EDT和 A1*(n1+n2)>A2,所述A1=1/(w*h),A2∈[0.2,0.6],所述w和h分别为所述 当前图像的宽和高,通常以像素表示。
需要说明的是,上述各参数的取值可根据当前图像实际的宽w和高h 进行调整,经过试验分析可知,当n=16、m=16时,所述A1=0.0039,A2=0.41 时检测效果最好。
其中,所述边界点密度域值EDT可通过以下公式获得:
EDT=max(a,min(b,c*exp(d*(w*h/e))))
其中,EDT是w*h的函数,不同分辨率图像采用的EDT不同,max() 为取最大值运算,min()为取最小值运算,exp()为取指数运算。该公式中各 参数的取值也可依据图像的分辨率进行确定,具体而言:a∈[25,35],b∈ [60,100],c∈[0.15,0.7],d∈[-0.6,-0.1],e∈[-81000,2050000]。
为了使上述边界点密度阈值达到最佳效果,经大量实验分析可知,当 a=30,b=81,c=0.4,d=-0.2289,e=407040时效果最好。
需要说明的是,上述对预置的字幕区检测条件的判断中,使用(A1*n1> EDT和A1*(n1+n2)>A2)判断图像块i就可以检测出字幕区域。但是,使 用该条件进行判断,虽然已经能够检测出字幕区,但会将与字幕有相似纹理 特征的区域检测为字幕区域,为了解决该问题,在本发明的另一实现方式中, 所述用于判断的字幕区检测条件具体包括:A1*n1>EDT和A1*(n1+n2)> A2和(nf/(n1+n2)>A3或nb/(n1+n2))>A3,其中,A3∈[0.7,0.95]。。由 于该条件则是利用字幕在两个时间点会持续存在的特征,即字幕部分像素的 亮度在前后两帧上变化极小,将字幕区域和与字幕具有相似纹理特征的非字 幕区域区分,从而降低误检。
另外,经过试验分析可知,在上述判断条件中,当n=16、m=16时,所 述A1=0.0039,A2=0.41,A3=0.85时检测效果最好。
进一步地,所述计算所述图像块i内的强边界像素点数目n1和平坦像素 点数目n2,具体包括:
确定边界点强度阈值EST;
确定平坦点强度阈值EPT;
获取所述图像块i内的像素点坐标(x,y);
确定所述像素点(x,y)的纹理强度t,所述t= (abs(I(x-2,y)-I(x,y))+abs(I(x,y-2)-I(x,y))+1)>>1;
若t>EST,则确定所述像素点(x,y)为强边界点;
若t<EPT,则确定所述像素点(x,y)为平坦点;
统计所述图像块i内所有强边界像素点的数目n1;
统计所述图像块i内所有平坦像素点的数目n2;
其中,所述abs()为取绝对值运算;所述EST∈[30,100],所述EPT∈[5,15], 所述x≥0,y≥0。
优选地,当所述n=16、m=16时,所述EST=45。另外,本领域技术人 员也可根据实际划分地图像块数确定对应的EST、EPT的值,本发明对此不 作具体限制。
进一步地,所述计算所述图像块i与前一帧同位置图像块的纹理相似像 素点数目nf,计算所述图像块i与后一帧同位置图像块的纹理相似像素点数 目nb,具体包括:
获取所述图像块i内的像素点坐标(x,y);
确定纹理相似阈值TST;
若abs(I(x,y)-F(x,y))<TST,则确定所述像素点(x,y)为与前一帧同位置图 像块的纹理相似像素点;
若abs(I(x,y)-B(x,y))<TST,则确定所述像素点(x,y)为与后一帧同位置图 像块的纹理相似像素点;
统计所述图像块i内与前一帧同位置图像块的纹理相似像素点数目为 nf;
统计所述图像块i内与后一帧同位置图像块的纹理相似像素点数目为 nb;
其中,I(x,y)为所述图像块i内像素点(x,y)的亮度值,F(x,y)为前一帧同 位置图像块中同位置像素点的亮度值,B(x,y)为后一帧同位置图像块中同位 置像素点的亮度值;所述abs()为取绝对值运算;所述TST∈[5,15]。
进一步地,在本发明的另一实现方式中,为了降低对无效图像块计算, 提高视频字幕区检测的实时性,上述步骤102之后,还包括:
判断所述图像块i是否位于预先指定区域R中,若否,则重新确定待检 测的图像块i并重新执行本步骤;若是,则执行后续步骤。
优选地,所述预先指定区域R具体为所述当前图像底部1/4区域。由于 字幕区通常位于视频底部相对固定的位置,因此,通过排除位于指定区域R 之外的图像块,避免了大量的无效计算,减少了检测字幕区所需花费的时间, 提高了检测地实时性。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系 列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述 的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或 者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例 均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图2,示出了本发明一种视频字幕区检测装置实施例的结构框图, 具体可以包括如下模块:图像块划分模块210、图像块确定模块220和图像 块检测模块230;
其中,
图像块划分模块210,可用于将当前图像划分为n*m个图像块;所述n ≥1、m≥1;
图像块确定模块220,可用于确定待检测的图像块i;所述i≥0;
图像块检测模块230,可用于判断所述图像块i是否满足预设条件,若 满足,则确定所述图像块i为字幕区域;若不满足,则逐块完成对其余图像 块的判断。
其中,所述图像块确定模块,具体还可用于:
判断确定的待检测图像块i是否位于预先指定区域R中,若否,则依次 重新确定待检测的图像块i,并重新检测该图像块i是否位于预先指定区域R 中,直到该图像块i不再位于所述指定区域R中。
其中,所述指定区域R具体可为所述当前图像底部1/4区域。
其中,所述图像块检测模块,包括:
第一确定单元,可用于确定边界点密度阈值EDT;
第二确定单元,可用于确定所述图像块i内的强边界像素点数目n1和平 坦像素点数目n2;
第三确定单元,可用于确定所述图像块i与前一帧同位置图像块的纹理 相似像素点数目nf;以及,可用于确定所述图像块i与后一帧同位置图像块 的纹理相似像素点数目nb;
字幕区判断单元,可用于判断预置的字幕区检测条件是否成立,若成立, 则确定所述图像块i为字幕区域;若不成立,则逐块完成对其余图像块的判 断;
其中,所述预置的字幕区检测条件包括:A1*n1>EDT和 A1*(n1+n2)>A2,所述A1=1/(w*h),A2∈[0.2,0.6],所述w和h分别为所述 当前图像的宽和高。
其中,所述预置的字幕区检测条件具体包括:A1*n1>EDT和 A1*(n1+n2)>A2和(nf/(n1+n2)>A3和/或nb/(n1+n2)>A3);其中,A3∈[0.7, 0.95]。
其中,当n=16、m=16时,所述A1=0.0039,A2=0.41,A3=0.85。
其中,所述第一确定单元通过以下公式获取边界点密度阈值 EDT=max(a,min(b,c*exp(d*(w*h/e))));
其中,a∈[25,35],b∈[60,100],c∈[0.15,0.7],d∈[-0.6,-0.1],e∈[-81000, 2050000];max()为取最大值运算,min()为取最小值运算,exp()为取指数运 算。
其中,所述a=30,b=81,c=0.4,d=-0.2289,e=407040。
其中,所述第二确定单元,具体可用于:
确定边界点强度阈值EST;
确定平坦点强度阈值EPT;
获取所述图像块i内的像素点坐标(x,y);
确定所述像素点(x,y)的纹理强度t,所述t= (abs(I(x-2,y)-I(x,y))+abs(I(x,y-2)-I(x,y))+1)>>1,;
若t>边界点强度阈值EST,则确定所述像素点(x,y)为强边界点,;
若t<EPT,则确定所述像素点(x,y)为平坦点,其中;
统计所述图像块i内所有强边界像素点的数目n1;
统计所述图像块i内所有平坦像素点的数目n2;
其中,所述abs()为取绝对值运算;所述EST∈[30,100],所述EPT∈[5,15], 所述x≥0,y≥0。
其中,所述第三确定单元,具体用于:
获取所述图像块i内的像素点坐标(x,y);
确定纹理相似阈值TST;
若abs(I(x,y)-F(x,y))<TST,则确定所述像素点(x,y)为与前一帧同位置图 像块的纹理相似像素点;
若abs(I(x,y)-B(x,y))<TST,则确定所述像素点(x,y)为与后一帧同位置图 像块的纹理相似像素点;
统计所述图像块i内与前一帧同位置图像块的纹理相似像素点数目为 nf;
统计所述图像块i内与后一帧同位置图像块的纹理相似像素点数目为 nb;
其中,I(x,y)为所述图像块i内像素点(x,y)的亮度值,F(x,y)为前一帧同 位置图像块中同位置像素点的亮度值,B(x,y)为后一帧同位置图像块中同位 置像素点的亮度值;所述abs()为取绝对值运算;所述TST∈[5,15]。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较 简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明 的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见 即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装 置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全 软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例 可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介 质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程 序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计 算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令 实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框 图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、 专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生 一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的 指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或 多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理 终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读 存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个 流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设 备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计 算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用 于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中 指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦 得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以, 所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所 有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语 仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求 或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术 语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得 包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且 还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或 者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一 个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终 端设备中还存在另外的相同要素。
以上对本发明所提供的一种视频字幕区检测方法和装置,进行了详细介 绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实 施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领 域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会 有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。