确定区域结构复杂度、定位文字区域的方法及装置
技术领域
本申请涉及数字图像处理技术领域,尤其涉及一种确定区域结构复杂度、定位文字区域的方法及装置。
背景技术
随着数码相机的推广和互联网技术的发展,自然场景下拍摄的数字图像和人工编辑生成的数字图像越来越多,在诸如扫描文档内容识别、自动邮政编码识别等文字识别场景下,需要对上述数字图像中的文字进行识别,而绝大部分数字图像中除文字外存在较为复杂的背景图像,为了识别具有复杂背景的数字图像中的文字,需要首先对文字区域进行定位,也即区分数字图像中的文字区域和非文字区域。
因文字区域通常是结构化区域,有比较明显的几何形状(如:汉字中常常出现转折;拉丁字母中有较多的圆弧),而非文字区域的结构或形状通常比较杂乱,没有规律,或比较简单(如:斑点、条纹),故通常利用区域结构复杂度这一度量的值的大小来区分数字图像中的文字区域和非文字区域,区域结构复杂度越大,则数字图像为文字区域的可能性越大;区域结构复杂度越小,则数字图像为文字区域的可能性越小。所述区域结构复杂度是指:区域结构的转折、分叉、孔洞等几何上变化次数和程度的度量。
目前,确定区域结构复杂度的方法分为两类,第一类为间接确定区域结构复杂度;第二类为直接确定区域结构复杂度。其中:
第一类方法并不提取区域结构的转折、分叉或孔洞等特征,而是利用区域结构的其他特征,如:文字与外接椭圆(或外接矩形、外接凸多边形)的面积比、文字面积与周长比、区域压缩率(即文字面积和周长平方比),来确定区域结构复杂度,这些特征能够区分相对简单的斑点、直线,但对于比较复杂的形状就无能为力了,因此使用这类方法确定区域结构复杂度,进而用来反映区域是文字区域的准确性较差,只能用在确定文字区域的粗过滤阶段,用来确定那些最不可能为文字区域的图片。
第二类方法中,常用的确定区域结构复杂度的方法有以下四种:
第一种方法:
确定数字图像的候选区域的连通分量,在连通分量上提取Harris角点,统计Harris角点的个数,将统计得到的Harris角点的个数作为候选区域的区域结构复杂度。
所述连通分量是指:在数字图像处理中,对于一个点集,如果其中的任何两个点之间,都存在一条由点集内的点序列组成的路径连接,那么这个点集构成了连通分量。序列中相邻的两点必须为邻接关系。如图1所示,每个小方格表示一个像素点,白色为背景区域,
区域和
区域是两个8邻接的连通分量。
确定连通分量的方法较多,常用的是:先利用Niblack算法对图像进行分割(根据图像的颜色或灰度信息将图像分为不同的层的过程),再采用基于区域增长的算法对分割后的图像进行连通分量分析,即可得到连通分量。
在上述第一种方法中,确定出的Harris角点往往不是真正的笔画转折点,如在图2所示的连通分量中提取出的Harris角点(图2中以黑色实点表示)均不是笔画转折点,因此,利用所述第一种方法来确定区域结构复杂度的准确性不高。
第二种方法:
确定数字图像的候选区域的连通分量,对连通分量进行骨骼化,统计骨骼上分叉点得个数,将统计得到的分叉点的个数作为候选区域的区域结构复杂度。
在上述第二种方法中,对连通分量进行骨骼化时,利用的骨骼化算法容易受到强噪声的干扰,噪声区域往往会被作为新的分叉点。例如,在图3所示的对连通分量(图3中较细的黑色实线表示)进行骨骼化后的图形(图3中较粗的黑色实线即为连通分量的骨骼),因噪声的作用,骨骼中出现了本来没有的分叉点(图3中以黑色实点表示)。这就错误的增加了区域结构的复杂度,因此所述第二种方法来确定区域结构复杂度的准确性不高。
第三种方法:
确定数字图像的候选区域的连通分量,寻找连通分量内部孔洞,统计孔洞的个数,将统计得到的孔洞的个数作为候选区域的区域结构复杂度。
上述第三种方法,一定程度上能反映候选区域的区域结构复杂度,但对于不含孔洞或孔洞数量极少的候选区域,尽管该候选区域实际上是文字区域,但用确定的区域结构复杂度判定时,判定的结果会为非文字区域,因此,所述第三种方法来确定区域结构复杂度的准确性不高。
第四种方法:
第一步,确定数字图像的候选区域的连通分量。
第二步,对确定的连通分量进行轮廓提取。
第三步,对提取的轮廓进行多边形逼近,得到反映所述轮廓的多边形。
所述多边形逼近是指:对于一个不规则的图形轮廓,采用一个多边形来逼近这个轮廓,以减少顶点的数目。
常见的多边形逼近的方法有以下两种:
第一种为最少边方式逼近:给定一个最大容忍误差,做边最少的多边形来逼近不规则图形的轮廓。
常用的最大容忍误差是根据候选区域的大小来确定的,候选区域越大,最大容忍误差越大,候选区域越小,最大容忍误差越小。这就导致了对于同等大小的候选区域,含有较粗笔画的文字的候选区域,可能会保留噪声带来的顶点,而对于笔画较细的文字,可能会无法提取到反映笔画的顶点。
第二种为最小误差方式逼近:给定N条边,做误差最小的N边形来逼近不规则图形的轮廓。
第四步,提取多边形的顶点,并统计多边形顶点的个数。
第五步,多边形顶点的个数作为所述候选区域的区域结构复杂度。
上述第四种方法,一定程度上反映了候选区域的区域结构复杂度,但多边形的顶点并非全部是真正的笔画转折点,在某些情况下,可能出现区域结构复杂度较高,但图像并非是文字区域的情况。例如,在图4所示的对某一连通分量进行多边形逼近后得到的多边形ABCDEF中,尽管有多个顶点,但所有的顶点并没有反映笔画及笔画转折信息,也即该连通分量的区域复杂度较高,但其所代表的区域并不是文字区域,故将多边形顶点的个数作为区域结构复杂度的准确性不高,由于文字区域的定位是根据区域结构复杂度确定的,因此利用得到的准确性不高的区域结构复杂度来定位文字区域的准确性相应的也不高。
发明内容
本申请实施例提供一种确定区域结构复杂度、定位文字区域方法及装置,以解决现有技术中确定区域结构复杂度的方法确定出的区域结构复杂度准确性不高及定位数字图像中的文字区域准确性不高的问题。
一种确定区域结构复杂度的方法,所述方法包括:
确定数字图像的候选区域中的连通分量;
提取所述连通分量的轮廓,并对提取的所述轮廓进行多边形逼近,得到反映所述轮廓的多边形;
根据所述多边形中的内凹顶点个数,确定所述候选区域的区域结构复杂度。
一种利用上述方法确定的候选区域的区域结构复杂度来定位文字区域的方法,所述方法包括:
判断确定的区域结构复杂度是否大于设定阈值;
若大于设定阈值,则确定所述候选区域为文字区域。
一种确定区域结构复杂度的装置,所述装置包括:
连通分量确定模块,用于确定数字图像的候选区域中的连通分量;
轮廓提取模块,用于提取连通分量确定模块确定的连通分量的轮廓;
多边形逼近模块,用于对轮廓提取模块提取的轮廓进行多边形逼近,得到反映所述轮廓的多边形;
内凹顶点确定模块,用于确定所述多边形内凹顶点的个数;
区域结构复杂度确定模块,用于根据内凹顶点确定模块确定的所述多边形中的内凹顶点个数确定所述候选区域的区域结构复杂度。
一种定位文字区域的装置,所述定位文字区域的装置包括上述确定区域结构复杂度的装置,所述定位文字区域的装置还包括:
判断模块,用于判断确定的区域结构复杂度是否大于设定阈值;
定位模块,用于在判断模块的判断结果为是时,确定所述候选区域为文字区域。
在本申请实施例的方案中,根据多边形中内凹顶点的个数确定候选区域的区域结构复杂度,这是因为在对连通分量进行多边形逼近后得到的多边形中,内凹顶点能反映笔画的转折信息,而外凸顶点对区域结构复杂度起干扰作用的,所以,本申请实施例就可以根据内凹顶点的个数确定候选区域的区域结构复杂度,能有效的提高确定区域结构复杂度的准确性。在定位文字区域时,由于利用的是准确性较高的区域结构复杂度,因此,在图像中定位出的文字区域也是较准确的,有效减少了将图像中的文字区域错误的定位为非文字区域的几率,进而提高了文字区域定位的准确性。
附图说明
图1为背景技术中的连通分量示意图;
图2为背景技术中在连通分量中提取出的Harris角点示意图;
图3为背景技术中对连通分量进行骨骼化后的结构示意图;
图4为背景技术中对某一连通分量进行多边形逼近后得到的多边形ABCDEF结构示意图;
图5为实施例一中的确定区域结构复杂度的方法示意图;
图6为实施例一中的多边形ABCDEFGH的结构示意图;
图7为实施例一中的多边形ABCDEFG的结构示意图;
图8为实施例一中对文字“十”的轮廓进行多边形逼近后得到的多边形示意图。
图9为利用实施例一中的确定区域结构复杂度的方法得到候选区域的区域结构复杂度示意图;
图10为图9中字符“3”进行多边形逼近后的放大示意图;
图11为实施例三的一种确定区域结构复杂度的装置结构示意图;
图12为实施例四中的定位文字区域的装置结构示意图。
具体实施方式
下面结合具体实施例详细描述本申请的方案。
实施例一
如图5所示,其为本申请实施例一中的确定区域结构复杂度的方法示意图,所述方法包括以下步骤:
步骤101:确定数字图像的候选区域中的连通分量。
步骤102:提取所述连通分量的轮廓,并对提取的所述轮廓进行多边形逼近,得到反映所述轮廓的多边形。
较优的,对所述轮廓进行多边形逼近,具体包括:
第一步,确定所述轮廓的最大宽度,以及该最大宽度对应的多边形逼近的最大容忍误差。
所述轮廓的最大宽度越大,对应的多边形逼近的最大容忍误差越大,最大宽度越小,对应的多边形逼近的最大容忍误差越小。由于最大容忍误差是根据轮廓的最大宽度确定的,就有效避免了对相同大小的区域利用同一最大容忍误差导致的含有笔画较粗的文字的候选区域,可能会保留噪声带来的顶点,而对于笔画较细的文字,可能会无法提取到反映笔画的顶点的问题。
第二步,根据确定的所述多边形逼近的最大容忍误差,利用最少边方式对轮廓进行多边形逼近。
步骤103:根据所述多边形中的内凹顶点个数确定所述候选区域的区域结构复杂度。
具体的,可以通过以下两种方式确定多边形中的内凹顶点:
第一种方式:
将多边形图形内部角度大于180度的顶点作为多边形中的内凹顶点。
第二种方式:
在多边形图形内部按照顺时针方向,依次对多边形图形内部各顶点执行以下操作:
判断顶点的第一条边在顺时针方向上的延长线指向该顶点第二条边的夹角方向是否是逆时针方向,所述第一条边是该顶点在顺时针方向上与该顶点相邻的前一顶点之间的连线,第二条边是该顶点在顺时针方向上与该顶点相邻的后一顶点之间的连线;
若判断结果为顺时针方向,则确定该顶点为外凸顶点。
若判断结果为逆时针方向,则确定该顶点为内凹顶点。
对于上述第二种确定多边形中的内凹顶点的方法,以图6所示的多边形ABCDEFGH来做详细说明。这里假设多边形ABCDEFGH是对连通分量进行多边形逼近后得到的多边形。
假设执行判断操作的起始顶点为顶点C,则构成顶点C的两条边为BC和CD,因顺时针方向上与顶点C相邻的前一顶点是顶点B,故第一条边为BC,因顺时针方向上与顶点C相邻的后一顶点是顶点D,故第二条边是CD。做第一条边BC沿顺时针方法的延长线即为图示的CP0(图6中为以虚线表示),则从延长线CP0指向顶点C的第二条边CD的夹角方向即为图6中所示的方向f0,为顺时针方向,故确定出顶点C为外凸顶点。
按照顺时针方向,顶点C执行判断操作之后,应执行判断操作的顶点为顶点D,则构成顶点D的两条边为CD和DE,因顺时针方向上与顶点D相邻的前一顶点是顶点C,故第一条边为CD,因顺时针方向上与顶点D相邻的后一顶点是顶点E,故第二条边是DE。做第一条边CD沿顺时针方法的延长线即为图示的DP1(图6中为以虚线表示),则从延长线DP1指向顶点D的第二条边DE的夹角方向即为图6中所示的方向f1,为顺时针方向,故确定出顶点D为外凸顶点。
按照顺时针方向,顶点D执行判断操作之后,应执行判断操作的顶点为顶点E,则构成顶点E的两条边为DE和EF,因顺时针方向上与顶点E相邻的前一顶点是顶点D,故第一条边为DE,因顺时针方向上与顶点E相邻的后一顶点是顶点F,故第二条边是EF。做第一条边DE沿顺时针方法的延长线即为图示的EP2(图6中为以虚线表示),则从延长线EP2指向顶点E的第二条边EF的夹角方向即为图6中所示的方向f2,为逆时针方向,故确定出顶点E为内凹顶点。
依次类推,可以确定出顶点F、G、H为外凸顶点,顶点A为内凹顶点,顶点B为外凸顶点。
在本步骤103中,可以将多边形中内凹顶点的个数作为所述候选区域的区域结构复杂度。
需要说明的是,在上述步骤103的第二种确定多边形中的内凹顶点的方式中,由顶点的第一条边指向该顶点的第二条边的夹角是具有大小和方向的,也即该夹角是一个矢量,在本申请文件中规定,若顶点的第一条边指向该顶点的第二条边的夹角方向为顺时针方向,则该夹角小于0;若顶点的第一条边指向该顶点的第二条边的夹角方向为逆时针方向,则该夹角大于0。
考虑到对轮廓进行多边形逼近后得到的多边形的内凹顶点中,内凹顶点与其他顶点距离较近且相邻较近的顶点的夹角的矢量和在0附近,所述顶点的夹角是按照步骤103中第二种确定多边形中的内凹顶点的方式中的夹角定义的,则该内凹顶点很可能是反映的是噪声,例如,如图7所示的多边形ABCDEFG中,内凹顶点A反映的是噪声,与内凹顶点A距离较近的其他顶点为顶点B和顶点C,且顶点A的夹角∠A0AB(大于0)、顶点B的夹角∠B0BC(小于0)与顶点C的夹角∠DCC0(大于0)的矢量和为0。故的应将其从用于确定区域结构复杂度的内凹顶点中剔除。故较优的,根据所述多边形中的内凹顶点个数确定所述候选区域的区域结构复杂度,具体为:
针对确定的每个内凹顶点执行以下操作,直至遍历所有的内凹顶点:
确定与当前执行操作的内凹顶点之间的距离小于设定值的其他顶点,所述其他顶点为内凹顶点和/或外凸顶点;
将当前执行操作的内凹顶点的第一条边在顺时针方向上的延长线指向该顶点第二条边的夹角,与所述其他顶点的夹角进行矢量相加;
若矢量相加后的结果属于预设的范围值内,则当前执行操作的内凹顶点不能用于确定候选区域的区域结构复杂度,否则,当前执行操作的内凹顶点能够用于确定候选区域的区域结构复杂度;
根据确定的能够用于确定候选区域的区域结构复杂度的内凹顶点的个数,确定所述候选区域的区域结构复杂度。
上述操作中的预设范围可以根据经验确定,较优的,可以为
到
考虑到作为文字笔画的转折之处比较圆滑,转折之处覆盖的区域较大,反映该转折的多边形的内凹顶点个数较多,但并非所有的内凹顶点都能反映该笔画的转折信息,故应剔除这些不能反映笔画转折信息的内凹顶点。故较优的,根据所述多边形中的内凹顶点个数确定所述候选区域的区域结构复杂度,具体为:
针对确定的连续的内凹顶点执行以下操作:
确定连续的内凹顶点中,每个内凹顶点的第一条边在顺时针方向上的延长线指向该顶点第二条边的夹角,将确定的各夹角进行矢量相加;
若矢量相加后的结果小于第一门限值,则所述连续的内凹顶点都不能用于确定候选区域的区域结构复杂度,否则,所述连续的内凹顶点都能够用于确定候选区域的区域结构复杂度;
针对确定的孤立的内凹顶点执行以下操作:
确定该内凹顶点的第一条边在顺时针方向上的延长线指向该顶点第二条边的夹角是否小于第一门限值,若是,则该内凹顶点不能用于确定候选区域的区域结构复杂度,否则,该内凹顶点能够用于确定候选区域的区域结构复杂度;
根据确定的能够用于确定候选区域的区域结构复杂度的内凹顶点的个数,确定所述候选区域的区域结构复杂度。
上述第一门限值可以根据经验值确定,较优的,所述第一门限值为
考虑到构成文字的笔画往往是长条形的,因此,笔画的轮廓上的两个内凹顶点之间的连续的外凸顶点的夹角的矢量和往往小于等于-π,甚至比-π小的更多,如图8所示对文字“十”的轮廓进行多边形逼近后得到的多边形中,内凹顶点B和内凹顶点E之间连续的外凸顶点C和外凸顶点D的夹角之和为-π。故当连续的外凸顶点的矢量和不小于第二门限值(该第二门限值可以依据经验值确定,较优的,可以为
)时,与所述连续的外凸顶点相邻的一个或多个内凹顶点应从能够用于确定候选区域的区域结构复杂度的内凹顶点中剔除。故较优的,根据所述多边形中的内凹顶点个数确定所述候选区域的区域结构复杂度,具体为:
确定多边形中的内凹顶点,以及除所述内凹顶点外的多边形外凸顶点;
针对连续的外凸顶点执行以下操作:
确定连续的外凸顶点中,每个外凸顶点的第一条边在顺时针方向上的延长线指向该顶点第二条边的夹角,将确定的各夹角进行矢量相加;
若矢量相加后的结果小于第二门限值,则与所述连续的外凸顶点相邻的一个或多个内凹顶点能用于确定候选区域的区域结构复杂度,否则,与所述连续的外凸顶点相邻的一个或多个内凹顶点不能够用于确定候选区域的区域结构复杂度;
根据确定的能够用于确定候选区域的区域结构复杂度的内凹顶点的个数确定所述候选区域的区域结构复杂度。
需要说明的是,由于多边形是封闭的,所以连续内凹或连续外凸顶点的确定需要依据所有顶点的情况决定。例如:假设6边形的第1个顶点是外凸顶点,第二个顶点是内凹顶点,第5个顶点是内凹顶点,第6个顶点是外凸顶点,则第1和顶点和第6个顶点是连续的外凸顶点。
当然,也可以利用上述三种优选的确定区域结构复杂度的方法中的任意一种的基础再进行另外一种或另外两种确定区域结构复杂度的方法进行区域结构复杂度的确定。
进一步的,考虑到反映文字笔画轮廓的多边形中,满足一定条件的孤立的内凹顶点或连续的内凹顶点反映的是笔画的转折信息,但连续的内凹顶点共同反映了笔画的转折信息;反映文字的连通分量中,孔洞也能反映笔画的转折信息,故在上述三种优选的确定区域结构复杂度的方法的基础上,可以用以下方法确定区域结构复杂度:
第一步,在确定的能够用于确定候选区域的区域结构复杂度的内凹顶点中,将连续的内凹顶点作为一个折点,孤立的且第一条边在顺时针方向上的延长线指向该顶点第二条边的夹角不小于第一门限值的内凹顶点作为一个折点。
第二步,提取所述连通分量中的孔洞,并统计孔洞个数。
第三步,根据确定的折点个数和孔洞个数加权求和值,确定候选区域的区域结构复杂度。
较优的,考虑到孔洞可以看作是由两个带折的笔画拼接构成的,故可以取折点个数的加权系数为1,孔洞个数的加权系数为2。
在本申请实施例一的最优方案中,确定区域结构复杂度时,不仅将作为干扰信息的外凸顶点排除在外,而且将内凹顶点中反映噪声的内凹顶点、不能反映笔画转折信息的内凹顶点以及不符合笔画特征的内凹顶点均排除在外,提取了最能反映笔画转折信息内凹顶点,并将其个数作为确定区域结构复杂度的依据,最终将这些内凹顶点转化为折点,并将折点个数与反映笔画转折信息的孔洞个数进行有效的结合后的结果作为确定区域结构复杂度的依据,较准确的反映了候选区域的区域结构复杂度,进而为后续的图像处理中涉及的定位文字区域及文字识别的准确性提供了保证。
对文字“1”、“3”、“6”、“正”“包”利用本申请实施例一的确定区域结构复杂度的方法得到候选区域的区域结构复杂度如图9所示。其中,从左数,第一列是候选区域,第二列是提取的连通分量的轮廓,第三列是对轮廓进行多边形逼近后得到的多边形,第四列是提取的折点和孔洞,第五列是确定的相应的区域结构复杂度(其中:折点个数的加权系数为1,孔洞个数的加权系数为2)。以字符“3”为例,对图9中确定的区域结构复杂度进行说明,如图10所示,为图9中字符“3”的进行多边形逼近后的放大的示意图,其中,连续的内凹顶点1、2、3构成一个折点;连续的内凹顶点4、5、6、7构成一个折点;多边形逼近后的字符“3”右侧中间的连接处还有一个内凹顶点(图10中以数字8标识该内凹顶点),但由于该内凹顶点的夹角太小,被认为是噪声点舍弃了,因此,最终在字符“3”上确定了2个折点,没有孔洞,其区域结构复杂度为2。
实施例二
基于本申请实施例一中的确定区域结构复杂度的方法,本实施例二提出一种定位文字区域的方法,所述方法包括:
第一步,利用本申请实施例一中的步骤101至步骤103确定区域结构复杂度的方法或实施例一中的优选的确定区域结构复杂度的方法确定候选区域的区域结构复杂度。
第二步,判断确定的区域结构复杂度是否大于设定阈值,若大于设定阈值,则执行第三步;否则,执行第四步。
所述设定阈值可以根据经验值确定,也可以根据候选区域的大小来确定设定阈值,候选区域越大,设定阈值越大;候选区域越小,设定阈值越小。
第三步,确定所述候选区域为文字区域。
第四步,确定所述候选区域为非文字区域。
在本申请实施例二的方案中,利用了实施例一中的确定区域结构复杂度的方法较准确的确定了候选区域的区域结构复杂度,并比较确定的区域结构复杂度与设定阈值的大小,在大于设定阈值的情况下,确定所述候选区域为文字区域。由于本实例一的方案中,较准确的确定了候选区域的区域结构复杂度,因此依据确定的区域结构复杂度而定位的文字区域也是较准确的。
利用本发明实施例二的方案,可以有效的对数字图像中的文字区域进行定位,进而可以实现对图像中的文字进行识别处理。
实施例三
如图11所示,其为本申请实施例三的一种确定区域结构复杂度的装置结构示意图,所述装置包括:连通分量确定模块11、轮廓提取模块12、多边形逼近模块13、内凹顶点确定模块14和区域结构复杂度确定模块15,其中:
连通分量确定模块11,用于确定数字图像的候选区域中的连通分量。
轮廓提取模块12,用于提取连通分量确定模块11确定的连通分量的轮廓。
多边形逼近模块13,用于对轮廓提取模块12提取的轮廓进行多边形逼近,得到反映所述轮廓的多边形。
内凹顶点确定模块14,用于确定所述多边形内凹顶点的个数。
区域结构复杂度确定模块15,用于根据内凹顶点确定模块14确定的所述多边形中的内凹顶点个数确定所述候选区域的区域结构复杂度。
较优的,所述多边形逼近模块13包括:
宽度确定单元21,用于确定所述轮廓的最大宽度。
误差确定单元22,用于根据宽度确定单元21确定的最大宽度确定多边形逼近的最大容忍误差。
多边形逼近单元23,用于根据误差确定单元22确定的多边形逼近的最大容忍误差,利用最少边方式对轮廓进行多边形逼近。
较优的,所述内凹顶点确定模块14,具体用于将多边形图形内部角度大于180度的顶点作为多边形中的内凹顶点,或
用于在多边形图形内部按照顺时针方向,依次对多边形图形内部各顶点执行以下操作:
判断顶点的第一条边在顺时针方向上的延长线指向该顶点第二条边的夹角方向是否是逆时针方向,所述第一条边是该顶点在顺时针方向上与该顶点相邻的前一顶点之间的连线,第二条边是该顶点在顺时针方向上与该顶点相邻的后一顶点之间的连线。
若判断结果为逆时针方向,则确定该顶点为内凹顶点。
较优的,所述区域结构复杂度确定模块15可以按照但不局限于以下三种方式的任意一种工作方式工作:
第一种工作方式:
所述区域结构复杂度确定模块15包括:
确定单元31,用于确定与当前执行操作的内凹顶点之间的距离小于设定值的其他顶点,所述其他顶点为内凹顶点和/或外凸顶点。
矢量相加单元32,用于将当前执行操作的内凹顶点的第一条边在顺时针方向上的延长线指向该顶点第二条边的夹角,与所述其他顶点的夹角进行矢量相加。
判断单元33,用于判断矢量相加后的结果是否属于预设的范围值内。
区域结构复杂度确定单元34,用于在判断单元的判断结果为不属于预设的范围值内时,确定当前执行操作的内凹顶点能够用于确定候选区域的区域结构复杂度,以及根据确定的能够用于确定候选区域的区域结构复杂度的内凹顶点的个数确定所述候选区域的区域结构复杂度。
第二种工作方式:
所述区域结构复杂度确定模块15包括:
确定单元31,用于确定内凹顶点中连续的内凹顶点和孤立的内凹顶点。
矢量相加单元32,用于确定连续的内凹顶点中,每个内凹顶点的第一条边在顺时针方向上的延长线指向该顶点第二条边的夹角,将确定的各夹角进行矢量相加;或者,用于确定孤立的内凹顶点的第一条边在顺时针方向上的延长线指向该顶点第二条边的夹角。
判断单元33,用于判断矢量相加后的结果或确定的孤立的内凹顶点的夹角是否小于第一门限值。
区域结构复杂度确定单元34,用于在判断单元33的判断结果为不小于第一门限值时,确定当前执行操作的内凹顶点能够用于确定候选区域的区域结构复杂度,以及根据确定的能够用于确定候选区域的区域结构复杂度的内凹顶点的个数,确定所述候选区域的区域结构复杂度。
第三种工作方式,所述区域结构复杂度确定模块15包括:
确定单元31,用于确定多边形的顶点中连续的外凸顶点。
矢量相加单元32,用于确定连续的外凸顶点中,每个外凸顶点的第一条边在顺时针方向上的延长线指向该顶点第二条边的夹角,将确定的各夹角进行矢量相加。
判断单元33,用于判断矢量相加后的结果是否小于第二门限值。
区域结构复杂度确定单元34,用于在判断单元33的判断结果为小于第二门限值时,确定与当前执行操作的连续的外凸顶点相邻的一个或多个内凹顶点能够用于确定候选区域的区域结构复杂度,以及根据确定的能够用于确定候选区域的区域结构复杂度的内凹顶点的个数,确定所述候选区域的区域结构复杂度。
需要说明的是,区域结构复杂度确定模块的工作方式也可以在上述三种工作方式中任意一种工作方式的基础上,继续利用另外一种或两种工作方式确定区域结构复杂度。
较优的,上述三种工作方式中的区域结构复杂度确定单元34包括:
内凹顶点确定子单元41,用于确定能够用于确定候选区域的区域结构复杂度的内凹顶点。
折点个数确定子单元42,用于将内凹顶点确定子单元41确定的连续的内凹顶点作为一个折点,孤立的且第一条边在顺时针方向上的延长线指向该顶点第二条边的夹角不小于第一门限值的内凹顶点作为一个折点。
孔洞个数确定子单元43,用于提取所述连通分量中的孔洞,并统计孔洞个数。
区域结构复杂度确定子单元44,用于将折点个数确定子单元41确定的折点个数和孔洞个数确定子单元43确定的孔洞个数加权求和得到候选区域的区域结构复杂度。
实施例四
如图12所示,其为本申请实施例四的一种定位文字区域的装置结构示意图,所述定位文字区域的装置包括实施例三中的装置,所述定位文字区域的装置还包括:
判断模块51,用于判断确定的区域结构复杂度是否大于设定阈值;
定位模块52,用于在判断模块51的判断结果为是时,确定所述候选区域为文字区域。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。