CN102542269B - 西文单词切分方法和装置 - Google Patents
西文单词切分方法和装置 Download PDFInfo
- Publication number
- CN102542269B CN102542269B CN201010622057.7A CN201010622057A CN102542269B CN 102542269 B CN102542269 B CN 102542269B CN 201010622057 A CN201010622057 A CN 201010622057A CN 102542269 B CN102542269 B CN 102542269B
- Authority
- CN
- China
- Prior art keywords
- threshold value
- module
- character
- cutting
- value
- 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.)
- Expired - Fee Related
Links
Landscapes
- Character Input (AREA)
Abstract
本发明提供了一种西文单词切分方法,包括:将西文图像通过行列切分得到多个字符图像块;从字符图像块中识别有效字符图像块;根据西文单词内部字符间距离和单字之间距离的统计分析特性,设置切分阈值;通过比较连续的有效字符图像块之间的距离与切分阈值,以切分单词。本发明还提供了一种西文单词切分装置,包括:行列模块,用于将西文图像通过行列切分得到多个字符图像块;识别模块,用于从字符图像块中识别有效字符图像块;阈值模块,用于根据西文单词内部字符间距离和单字之间距离的统计分析特性,设置切分阈值;切分模块,用于通过比较连续的有效字符图像块之间的距离与切分阈值,以切分单词。本发明提高了切分西文单词的准确度。
Description
技术领域
本发明涉及数字排版领域,具体而言,涉及西文单词切分方法和装置。
背景技术
字符切分是字符识别(Optical Character Recognition,简称OCR)的基础。字符切分是将包含字符序列的图像分割成单个字符的过程。字符切分处理的基元为单个字符单元。目前,大多数字符识别是基于对单个字符的逐个识别,字符识别率的高低与字符切分的正确与否关系密切。常用的字符切分方法有:标准切分法、整体切分法、基于识别的切分法以及前三种方法的组合。
标准切分法主要使用在中文汉字字符切分过程中,该方法通过对图像进行分析寻找到字符之间较为合理的切分点,采用静态的投影分析方法,将文档图像进行行切分和列切分。
整体切分法主要使用在西文字符切分过程中,该方法是把一个单词作为一个整体来进行识别,这种方法虽然避免了单词内部切分的问题,但它依赖于现有的定义好的词典,这大大限制其应用范围。
基于识别的方法是对标准切分法及整体切分法所进行的反馈,该方法提供了多个切分假设,然后对切分结构进行选择,得到最优的切分结果,这种方法能够识别出字符切分结果的正确与否,但不能纠正字符切分的错误,而且这种方法较前两种方法复杂、计算复杂度更高,因而其在实际中的应用较少。
对于西文字符的识别而言,还存在着西文单词断裂的现象,即原本是一个完整的单词,而识别后变为两个独立的单词,比如“jack”在某些情况下可能会被识别成单独的“j”和“ack”,这给西文字符的切分结果带来了额外的人工校正成本。其原因主要有:a)在基于西文文档的印刷体识别系统中,首先对目标图像进行二值化操作。由于二值化过程带来的噪声、误差以及样本的印刷质量问题,在印刷体西文文档图像中,非常容易造成字符断裂现象。b)同时,根据个人西文书写习惯的不同,西文文档编辑断句时会有一个或多个空格(Space);或者由于特定的字体设置,使得单词之间的距离跟单词内部字符之间的距离比较接近,因此造成西文单词的错误切分。
发明内容
本发明旨在提供一种西文单词切分方法和装置,以解决现有技术错分单词的问题。
在本发明的实施例中,提供了一种西文单词切分方法,包括:将西文图像通过行列切分得到多个字符图像块;从字符图像块中识别有效字符图像块;根据西文单词内部字符间距离和单字之间距离的统计分析特性,设置切分阈值;通过比较连续的有效字符图像块之间的距离与切分阈值,以切分单词。
在本发明的实施例中,提供了一种西文单词切分装置,包括:行列模块,用于将西文图像通过行列切分得到多个字符图像块;识别模块,用于从字符图像块中识别有效字符图像块;阈值模块,用于根据西文单词内部字符间距离和单字之间距离的统计分析特性,设置切分阈值;切分模块,用于通过比较连续的有效字符图像块之间的距离与切分阈值,以切分单词。
本发明上述实施例的西文单词切分方法和装置,因为引入了切分阈值来切分单词,所以解决了现有技术错分单词的问题,提高了切分西文单词的准确度。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明实施提供的一种西文单词切分方法的流程图;
图2为本发明实施提供的对文本图像进行切分获得若干个字符图像块的流程图;
图3为本发明实施提供的获得当前行初始阈值方法的流程图;
图4为本发明实施提供的调整当前行初始阈值方法的流程图;
图5为本发明实施提供的调整当前行字符间距的方法的流程图;
图6为本发明实施提供的西文单词切分效果示意图;
图7为OCR识别结果示意图;
图8为本发明实施提供的一种西文单词切分装置的结构图。
具体实施方式
下面将参考附图并结合实施例来详细说明本发明。
图1为本发明实施提供的一种西文单词切分方法的流程图,包括:
步骤S10,将西文图像通过行列切分得到多个字符图像块;
步骤S20,从字符图像块中识别有效字符图像块;
步骤S30,设置切分阈值;
步骤S40,通过比较连续的有效字符图像块之间的距离与切分阈值,以切分单词。
本实施例将切分阈值引入了单词切分,因此只要根据西文图像的单词间距合理地设置切分阈值,就可以很好地规避多种情况下,西文单词OCR识别后被错误分割的错误,降低了人工校正的工作量。另外该方法还可以抵抗由于打印扫描造成字符粘连、断裂以及噪音等导致的切分误差,使得西文单词切分结果不用过分依赖于打印质量,从而保证打印扫描前后的西文单词切分结果的一致性。
优选地,步骤S10包括:
纵向扫描西文图像;
计算每条水平扫描线上前景点i的像素值Si之和其中,nWidth是西文图像的文本区域的像素宽度;
如果Sn≥N1,则确定当前扫描线为组成字符的扫描线;
如果Sn<N1,则确定当前扫描线为噪声或空白,至此可以完成行切分;
横向扫描西文图像;
计算每条垂直扫描线上前景点i的像素值Ri之和其中,nHight是西文图像的文本区域的像素高度;
如果Sn≥N2,则确定当前扫描线为组成字符的扫描线;
如果Sn<N2,则确定当前扫描线为噪声或空白,至此可以完成列切分;
其中,N1和N2是预设值。
本优选实施例给出了具体的数值化判断流程,有利于在计算机中编程实现。
图2为本发明实施提供的对文本图像进行切分获得若干个字符图像块的流程图,对文档图像进行行切分和列切分,获得若干个字符图像块,并计算每个字符图像块的外接矩形框。本实施例包括以下步骤:
S101、对二值化后的文档图像进行行切分。
获得待切分的二值文本点阵图像,文本区域的像素宽度为nWidth,高度为nHeight。设置Si=f(i,j),表示图像第i行第j列的像素值,当像素点f(i,j)为前景点时,取值为1;当像素点f(i,j)为背景点时,取值为0。
为了切分出文本的行区域,并且去除成行状分布的噪声,从上向下扫描文本图像,并计算每条水平扫描线上前景点的像素值之和Sn,其中Sn=S1+S2+…+Si+…(i=0,1,2…nWidth)。设置阈值N1,如果Sn≥N1,则该扫描线为组成文本的扫描线;如果Sn<N1,则该扫描线为噪声或者空白,去除成行状分布的噪声,初步切分出文本的行区域。同时记录每一行的边界位置:左上点和右下点的坐标位置以及两条水平线之间的中线MiddleLine的位置,并计算出每个联体文本行的高度。
S102、对二值化后的文本图像进行行切分的基础上,进行列切分的操作。
为了切分出文本的列区域,并且去除成列状分布的噪声,从左至右扫描文本图像,并计算每条纵向扫描线上的前景点的像素值之和Rn,其中Rn=R1+R2+…+Rj+…,其中j的范围为该文本行区域的上边界和下边界。设置阈值N2,如果Rj≥N2,则该扫描线为组成字符的扫描线,如果Rj<N2,则该扫描线为噪声或者空白,去除呈列状分布的噪声。由于对二值化后的文本图像进行了噪声去除处理,所以一般小的噪声不会影响文本列区域切分,所以可以设置N2为0。
这样每个字符都会有一个外接矩形框,字符的上下边界为该行的上下边界,左右边界为该字符的列切分点。
S103、获得包含每个字符所有黑色像素的最小外接矩形框。
由于每个字符的外接矩形框高度不一致,尤其是中西文字符高度的差异,将每个字符的外接矩形框进行向内收敛或者向外扩展,使得矩形框为包含字符所有黑色像素的最小外接矩形,从而得到一个包含若干个字符图像块的集合序列Ω。
优选地,步骤S20包括:将字符图像块区分为标点图像块和有效字符图像块。西文文本主要包括标点和字母,单词是由字母构成的。本优选实施例对字符图像块进行区分,可以排除标点。
优选地,将字符图像块区分为标点图像块和有效字符图像块包括:判断以下条件:
条件1、wk i大于Nt1倍Hk max;
条件2、Uk i的上下边完全落在中心范围以外;
条件3、Uk i的上下边至少有一边落在中心范围以内,且hk i大于Nt2倍Hk;
条件4、Uk i的上下边至少有一边落在中心范围以内,hk i不大于Nt2倍Hk,且dwk i小于Nt3;
条件5、Uk i的上下边均没有落在中心范围以内,且dwk i小于Nt3,dhk i小于Nt4;
其中,Uk i是第k行的集合Ωk中的第i个字符图像块的外接矩形框,hk i、wk i分别为Uk i的高度和宽度,dhk i=hk i/Hk max,dwk i=wk i/Hk max,Hk max为Ωk中字符图像块的最大高度,Hk为当前行的行高,mk为当前行的中线位置,mk±r×Hk为当前行的中心范围,r、Nt1、Nt2、Nt3和Nt4为预设的系数;
如果条件1-5中任一条成立,则确定对应的字符图像块为标点图像块,如果条件1-5均不成立,则确定Uk i对应的字符图像块为有效字符图像块。
本优选实施例给出了具体的数值化判断流程,有利于在计算机中编程实现。
优选地,步骤S30包括:
获取第k行每两个相邻标点图像块的距离,将所获取的距离按从小到大排序得到阈值序列Ωk',按照距离的变化率从大到小排序,依次得到第i个候选点Xk i;
以当前的Xk i为当前阈值Thk,令i=0,迭代初始点Xk 0,如果Xk 0满足条件:在Ωk'中,Thk左边的距离数个数小于右边个数,则放弃当前候选点,进入下一迭代点为初始点;如果均无满足条件的初始点,则设置Thk等于西文图像的宽度值;
从初始点Xk i开始,计算Xk i的综合方差C=CL+CR,设置迭代综合方差Ctemp=C,迭代阈值Thtemp=Xk i,其中,CL和CR分别为在Thk左边和右边的距离数值的方差值;
进入下一迭代点,按照如下步骤筛选候选点:
第1步、分别统计Ωk'中在Thk两边的距离数值的局部平均值,分别记为记为左平均值AL,右平均值AR,以及综合方差C;
第2步、如果C≤Ctemp,进入第4步,反之,进入第3步;
第3步、如果C-Ctemp<Nt5,且|AL+AR-2×C|≤Nt6,且AR/AL≥Nt7,则进入第4步,反之,设置Thtemp作为初始阈值,结束循环;
第4步、令当前迭代阈值Thtemp为当前阈值Thk与Thtemp中的较大者,当前迭代综合方差Ctemp为综合方差C与Ctemp中的较大者;
第5步、进入下一迭代点,从第1步开始。
在本优选实施例中充分考虑西文单词内部字符间距离和单字之间距离的统计分析特性,得到西文单词切分的初始阈值。可以将该初始阈值作为切分阈值来直接运用,但本发明的优选实施例还进一步调整该初始阈值,以取得更好的效果。
图3为本发明实施提供的获得当前行初始阈值方法的流程图,统计分析当前行中所有字符图像块的外接矩形框之间的距离,获得当前行的西文单词切分的初始阈值。本实施例包括以下步骤:
S201、筛选出标点图像块和有效字符图像块。
对于当前第k行的字符图像块的集合序列Ωk,Hk为当前行的行高,mk为当前行的中线位置,mk±r×Hk为当前行的中心范围,一般地,r=0.1。Hk max为Ωk中字符图像块最大高度。Uk i是Ωk中的第i个字符图像块,hk i、wk i分别为Uk i的高度、宽度。字符图像块Uk i的高度比dhk i为当前字符高度除以最大高度,即dhk i=hk i/Hk max。同理,Uk i的宽度比dwk i=wk i/Hk max。
如果Uk i满足以下5个条件中的任意一条,标记Uk i为标点图像块,反之,标记Uk i为有效字符图像块。
条件1、当前字符Uk i的宽度wk i大于Nt1倍Hk max;
条件2、当前字符Uk i上下边完全落在中心范围以外;
条件3、当前字符Uk i上下边至少有一边落在中心范围以内,同时当前字符Uk i的高度hk i大于Nt2倍Hk;
条件4、当前字符Uk i上下边至少有一边落在中心范围以内,当前字符Uk i的高度hk i不大于Nt2倍Hk,同时其宽度比dwk i小于Nt3;
条件5、当前字符Uk i上下边均没有落在中心范围以内,同时当前字符Uk i的宽度比dwk i小于Nt3,其高度比dhk i小于Nt4。
优选地,Nt1=4,Nt2=0.35,Nt3=0.215,Nt4=0.5。这些数值是发明人经过大量艰苦的试验后得到的最佳数值。当然,将系数设置在以上数值附近范围也是可行的,这仍然属于本发明的精神范围。
S202、统计标点图像块间的有效字符图像块之间的距离。
对于当前第k行的字符图像块的集合序列Ωk,统计顺序两标点图像块Uk i与Uk j之间的有效字符图像块Uk ij间的距离,即当前矩形框的左边界至前一个矩形框右边界之间的水平距离。
将所统计的距离按从小到大排序,称为第k行的阈值序列Ωk'。按照其相邻距离的变化率从大到小排序,依次为第k行的第i个候选点Xk i。以当前的Xk i为当前阈值Thk,分别统计Ωk'中在阈值Thk两边的距离数值的局部平均值,分别记为记为左平均值AL,右平均值AR;在阈值Thk两边的距离数值的方差值,分别记为左方差值CL,右方差值CR。当前阈值的综合方差C=CL+CR。
S203、计算有效距离的统计特征,获得初始阈值。
令i=0,迭代初始点Xk 0。如果Xk 0满足条件:在Ωk'中,阈值Thk左边的距离数个数小于右边个数,则放弃当前候选点,进入下一迭代点为初始点。如果均无满足条件的初始点,则将当前阈值Thk等于文档的宽度值。从初始点Xk i开始,计算Xk i的综合方差C。令迭代综合方差Ctemp=C;迭代阈值Thtemp=Xk i。
进入下一迭代点,按照如下步骤筛选候选点:
第1步、计算当前阈值Thk左平均值AL和右平均值AR,以及综合方差C;
第2步、如果C≤Ctemp,进入第4步,反之,进入第3步;
第3步、如果C-Ctemp<Nt5,且绝对值|AL+AR-2×C|≤Nt6,且AR/AL≥Nt7,则进入第4步,反之,令当前迭代阈值Thtemp为初始阈值,结束循环。一般地,取Nt5=5,Nt6=5,Nt7=2。
第4步、令当前迭代阈值Thtemp为当前阈值Thk与Thtemp中的较大者,当前迭代综合方差Ctemp为综合方差C与Ctemp中的较大者。
第5步、进入下一迭代点,从第1步开始。
优选地,在确定初始阈值之后,设置切分阈值还包括:
将初始阈值所在原始序列位置为中心,以2为半径,提取5个点,对5个点的4个间距按由大到小排序;X0,X1,X2,X3;
如果X0,X1差的绝对值小于等于阈值Nt8,且X1的长度大于等于阈值Nt9,则设置X0和X1中间的值;
如果X0和X1相邻,且满足1)X0与X1差的绝对值大于预设值Nt8;2)X0小于预设值Nt10;3)X1的长度大于等于预设值Nt9,则设置X0和X1的中间值为切分阈值;
如果X0和X1不相邻,且满足1)X0,X1差的绝对值大于Nt8;2)X0大于等于Nt10,则设置X0为切分阈值;
设置不满足以上情况的初始阈值为切分阈值。
原则上,西文单词内部的西文字母之间的距离应该小于西文单词之间的距离,但是不排除特殊情况下,在两者的上下临界值之间出现误判。因此,再附加分析初始阈值附近的局部特性,得到修正后的最终阈值。根据最终阈值可以合理切分出正确的西文单词区域,将该区域图像交付OCR模块,从而得到正确的西文单词识别结果。
图4为本发明实施提供的调整当前行初始阈值方法的流程图,调整当前行的西文单词初始阈值,根据该初始阈值获得当前行的所有西文单词的切分阈值。本实施例包括以下步骤:
S301、获得初始阈值所在原始序列位置的局部距离特征。
将获得的初始阈值所在原始序列位置为中心,以2为半径,提取5个点。对5个点的4个间距按由大到小排序;X0,X1,X2,X3,称为局部距离特征。
S302、选取第一候选点、第二候选点。
取前两名X0,X1分别为第一候选点、第二候选点。
S303、如果两候选点相邻,满足候选点关系法则就选取两候选点的中间值为切分阈值。当前候选点关系法则为,如果满足:1)X0与X1差的绝对值大于阈值Nt8;2)X0的长度小于阈值Nt10;3)X1的长度大于等于阈值Nt9。则取X0,X1的中间值,结束判断。一般地,Nt8=4,Nt9=7,Nt10=10。这些数值是发明人经过大量艰苦的试验后得到的最佳数值。当然,将系数设置在以上数值附近范围也是可行的,这仍然属于本发明的精神范围。
S304、如果两候选点不相邻,满足候选点关系法则就选取第一候选点为切分阈值。当前候选点关系法则为,如果两名X0,X1差的绝对值大于阈值Nt8如果X0的长度大于等于阈值Nt10,取X0对应值,结束判断。一般地,Nt8=4,Nt9=7,Nt10=10。
最后根据上述法则修正后的阈值为当前行的切分阈值。
优选地,步骤S40包括:如果连续的有效字符图像块之间的距离小于切分阈值,则确定它们属于一个西文单词,否则确定为分属于不同的西文单词。该判断步骤很简单,计算机可以很容易地实现,从而可以代替人工分解单词。
优选地,在切分单词之前还包括:
确定Uk i对应的字符图像块是有效字符图像块,Uk i-1和Uk i+1中至少有一个为有效字符图像块,其中,Uk i是第k行的集合Ωk中的第i个字符图像块的外接矩形框;
确定dLk i、dRk i均大于等于切分阈值Th,且|dLk i-dRk i|≤w,其中,dLk i、dRk i分别是Uk i的左间距和右间距;
如果|dLk i-Th|≤w1,且dLk i≤dRk i,则调整dLk i减小m1;如果|dRk i-Th|≤w1,则调整dRk i减小m1;
确定dLk i、dRk i均大于等于切分阈值,且|dLk i-dRk i|>w;如果|dLk i-Th|≤w1,则调整dLk i增加m1;
如果|dRk i-Th|≤w1,则调整dRk i增加m1;其中,w、w1和m1是预设值。
作为一个例子,如图6(a)即为原始的待切分文本图像,6(b)为6(a)基础上进行的初始行切分和列切分效果示意图。6(c)为本发明的方法中经过S200和S300后得到的切分结果,最终的切分结果如图6(d)所示。另外作为对比,图7也给出了OCR识别结果,其中Jack即被识别为“J”和“ack”,而本优选实施例通过适当地调整字符图像块之间的间距,可以进一步解决这个问题。
优选地,设置w=10,w1=3,m1=min(8,max(6,dRk i-7))。这些数值是发明人经过大量艰苦的试验后得到的最佳数值。当然,将系数设置在以上数值附近范围也是可行的,这仍然属于本发明的精神范围。
图5为本发明实施提供的调整当前行字符间距的方法的流程图,包括以下步骤:
S401、获得当前行单词字符的左右间距。
对于当前第k行的字符图像块的集合序列Ωk,Uk i是Ωk中的第i个字符图像块,dLk i、dRk i分别是Uk i的左间距、右间距。
S402、根据切分阈值,判断字符左右间距的调整值。
如果当前Uk i在S201中标记为有效字符图像块,Uk i-1和Uk i+1中至少有一个为有效字符图像块,那么按如下判断条件调整:
1、dLk i、dRk i均大于等于切分阈值Th,且|dLk i-dRk i|≤w:
如果|dLk i-Th|≤w1,且dLk i≤dRk i,那么调整dLk i减小m1。
如果|dRk i-Th|≤w1,那么调整dRk i减小m1。
2、dLk i、dRk i均大于等于切分阈值Th,且|dLk i-dRk i|>w:
如果|dLk i-Th|≤w1,那么调整dLk i增加m1。
如果|dRk i-Th|≤w1,那么调整dRk i增加m1。
其中,w=10,w1=3,m1=min(8,max(6,dRk i-7)),min(#,#)表示取括号中两数中较小数的值,max(#,#)表示取括号中两数中较大数的值。
S403、调整字符间距,按照切分阈值,完成单词切分。
按照切分阈值完成当前行西文单词切分,即若连续的字符图像块的外接矩形之间的距离小于该阈值时,将它们合并为一个西文单词,否则判断为分属于两个不同的西文单词。
进一步,在完成上述操作后,依次处理下一行,直至完成所有西文单词的切分操作。
优选地,本方法在步骤S10之前还包括:获取西文图像;对西文图像进行降噪处理,得到二值化的西文图像。该步骤是实现了对西文图像的预处理,很容易在计算机上实现。本优选实施例通过降噪处理,可以得到较好的西文二值文本图像。
图8为本发明实施提供的一种西文单词切分装置的结构图,包括:
行列模块10,用于将西文图像通过行列切分得到多个字符图像块;
识别模块20,用于从字符图像块中识别有效字符图像块;
阈值模块30,用于设置切分阈值;
切分模块40,用于通过比较连续的有效字符图像块之间的距离与切分阈值,以切分单词。
本实施例可以很好地规避多种情况下,西文单词OCR识别后被错误分割的错误,降低了人工校正的工作量,而且保证了打印扫描前后的西文单词切分结果的一致性。
优选地,阈值模块30包括:
获取模块,用于获取第k行每两个相邻标点图像块的距离,将所获取的距离按从小到大排序得到阈值序列Ωk',按照距离的变化率从大到小排序,依次得到第i个候选点Xk i;
初始点模块,用于以当前的Xk i为当前阈值Thk,令i=0,迭代初始点Xk 0,如果Xk 0满足条件:在Ωk'中,Thk左边的距离数个数小于右边个数,则放弃当前候选点,进入下一迭代点为初始点;如果均无满足条件的初始点,则设置Thk等于西文图像的宽度值;初始模块,用于从初始点Xk i开始,计算Xk i的综合方差C=CL+CR,设置迭代综合方差Ctemp=C,迭代阈值Thtemp=Xk i,其中,CL和CR分别为在Thk左边和右边的距离数值的方差值;迭代模块,用于进入下一迭代点,按照如下步骤筛选候选点:
第1步、分别统计Ωk'中在Thk两边的距离数值的局部平均值,分别记为记为左平均值AL,右平均值AR,以及综合方差C;
第2步、如果C≤Ctemp,进入第4步,反之,进入第3步;
第3步、如果C-Ctemp<Nt5,且|AL+AR-2×C|≤Nt6,且AR/AL≥Nt7,则进入第4步,反之,设置Thtemp作为初始阈值,结束循环;
第4步、令当前迭代阈值Thtemp为当前阈值Thk与Thtemp中的较大者,当前迭代综合方差Ctemp为综合方差C与Ctemp中的较大者;第5步、进入下一迭代点,从第1步开始。
优选地,阈值模块30还包括:
选点模块,用于将初始阈值所在原始序列位置为中心,以2为半径,提取5个点,对5个点的4个间距按由大到小排序;X0,X1,X2,X3;
第一调整模块,用于如果X0,X1差的绝对值小于等于阈值Nt8,且X1的长度大于等于阈值Nt9,则设置X0和X1中间的值;
第二调整模块,用于如果X0和X1相邻,且满足1)X0与X1差的绝对值大于预设值Nt8;2)X0小于预设值Nt10;3)X1的长度大于等于预设值Nt9,则设置X0和X1的中间值为切分阈值;
第三调整模块,用于如果X0和X1不相邻,且满足1)X0,X1差的绝对值大于Nt8;2)X0大于等于Nt10,则设置X0为切分阈值;
保持模块,用于设置不满足上述情况的初始阈值为切分阈值。
从以上的描述中可以看出,本发明上述的实施例可以解决现有技术中西文字符切分时西文单词被分割切分的错误问题,进一步降低西文单词识别后的手工校正的工作量,最终提高西文字符识别的准确性和速度。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (12)
1.一种西文单词切分方法,其特征在于,包括:
将西文图像通过行列切分得到多个字符图像块;
将所述字符图像块区分为标点图像块和有效字符图像块;
根据西文单词内部字符间距离和单字之间距离的统计分析特性,设置切分阈值,具体为:统计标点图像块间的有效字符图像块之间的距离,计算有效距离的统计特征获得初始阈值,将所述初始阈值作为切分阈值;
通过比较连续的所述有效字符图像块之间的距离与所述切分阈值,以切分单词。
2.根据权利要求1所述的方法,其特征在于,将西文图像通过行列切分得到多个字符图像块包括:
纵向扫描所述西文图像;
计算每条水平扫描线上前景点i的像素值Si之和 其中,nWidth是所述西文图像的文本区域的像素宽度;
如果Sn≥N1,则确定当前扫描线为组成字符的扫描线;
如果Sn<N1,则确定当前扫描线为噪声或空白;
横向扫描所述西文图像;
计算每条垂直扫描线上前景点i的像素值Ri之和 其中,nHight是所述西文图像的文本区域的像素高度;
如果Rn≥N2,则确定当前扫描线为组成字符的扫描线;
如果Rn<N2,则确定当前扫描线为噪声或空白;
其中,N1和N2是预设值。
3.根据权利要求1所述的方法,其特征在于,将所述字符图像块区分为标点图像块和所述有效字符图像块包括:
判断以下条件:
条件1、wk i大于Nt1倍Hk max;
条件2、Uk i的上下边完全落在中心范围以外;
条件3、Uk i的上下边至少有一边落在中心范围以内,且hk i大于Nt2倍Hk;
条件4、Uk i的上下边至少有一边落在中心范围以内,hk i不大于Nt2倍Hk,且dwk i小于Nt3;
条件5、Uk i的上下边均没有落在中心范围以内,且dwk i小于Nt3,dhk i小于Nt4;
其中,Uk i是第k行的集合Ωk中的第i个所述字符图像块的外接矩形框,hk i、wk i分别为Uk i的高度和宽度,dhk i=hk i/Hk max,dwk i=wk i/Hk max,Hk max为Ωk中所述字符图像块的最大高度,Hk为当前行的行高,mk为当前行的中线位置,mk±r×Hk为当前行的中心范围,r、Nt1、Nt2、Nt3和Nt4为预设的系数;
如果条件1-5中任一条成立,则确定对应的所述字符图像块为所述标点图像块,如果条件1-5均不成立,则确定Uk i对应的所述字符图像块为所述有效字符图像块。
4.根据权利要求1所述的方法,其特征在于,所述根据西文单词内部字符间距离和单字之间距离的统计分析特性,设置切分阈值,包括:
获取第k行每两个相邻标点图像块的距离,将所获取的距离按从小到大排序得到阈值序列Ωk',按照所述距离的变化率从大到小排序,依次得到第i个候选点Xk i;
以当前的Xk i为当前阈值Thk,令i=0,迭代初始点Xk 0,如果Xk 0满足条件:在Ωk'中,Thk左边的距离数个数小于右边个数,则放弃当前候选点,进入下一迭代点为初始点;如果均无满足条件的初始点,则设置Thk等于所述西文图像的宽度值;
从初始点Xk i开始,计算Xk i的综合方差C=CL+CR,设置迭代综合方差Ctemp=C,迭代阈值Thtemp=Xk i,其中,CL和CR分别为在Thk左边和右边的距离数值的方差值;
进入下一迭代点,按照如下步骤筛选候选点:
第1步、分别统计Ωk'中在Thk两边的距离数值的局部平均值,分别记为记为左平均值AL,右平均值AR,以及综合方差C;
第2步、如果C≤Ctemp,进入第4步,反之,进入第3步;
第3步、如果C-Ctemp<Nt5,且|AL+AR-2×C|≤Nt6,且AR/AL≥Nt7,则进入第4步,反之,设置Thtemp作为初始阈值,结束循环,其中,Nt5=5,Nt6=5,Nt7=2;
第4步、令当前迭代阈值Thtemp为当前阈值Thk与Thtemp中的较大者,当前迭代综合方差Ctemp为综合方差C与Ctemp中的较大者;
第5步、进入下一迭代点,从第1步开始。
5.根据权利要求4所述的方法,其特征在于,在确定所述初始阈值之后,设置切分阈值还包括:
将所述初始阈值所在原始序列位置为中心,以2为半径,提取5个点,对5个点的4个间距按由大到小排序;X0,X1,X2,X3;
如果X0,X1差的绝对值小于等于阈值Nt8,且X1的长度大于等于阈值Nt9,则设置X0和X1中间的值;
如果X0和X1相邻,且满足1)X0与X1差的绝对值大于预设值Nt8;2)X0小于预设值Nt10;3)X1的长度大于等于预设值Nt9,则设置X0和X1的中间值为所述切分阈值;
如果X0和X1不相邻,且满足1)X0,X1差的绝对值大于Nt8;2)X0大于等于Nt10,则设置X0为所述切分阈值;
设置不满足上述情况的所述初始阈值为所述切分阈值。
6.根据权利要求1所述的方法,其特征在于,通过比较连续的所述有效字符图像块之间的距离与所述切分阈值,以切分单词包括:
如果连续的所述有效字符图像块之间的距离小于所述切分阈值,则确定它们属于一个西文单词,否则确定为分属于不同的西文单词。
7.根据权利要求1所述的方法,其特征在于,在切分单词之前还包括:
确定Uk i对应的所述字符图像块是所述有效字符图像块,Uk i-1和Uk i+1中至少有一个为所述有效字符图像块,其中,Uk i是第k行的集合Ωk中的第i个所述字符图像块的外接矩形框;
确定dLk i、dRk i均大于等于切分阈值Th,且|dLk i-dRk i|≤w,其中,dLk i、dRk i分别是Uk i的左间距和右间距;
如果|dLk i-Th|≤w1,且dLk i≤dRk i,则调整dLk i减小m1;
如果|dRk i-Th|≤w1,则调整dRk i减小m1;
确定dLk i、dRk i均大于等于所述切分阈值,且|dLk i-dRk i|>w;
如果|dLk i-Th|≤w1,则调整dLk i增加m1;
如果|dRk i-Th|≤w1,则调整dRk i增加m1;
其中,w、w1和m1是预设值。
8.根据权利要求7所述的方法,其特征在于,设置w=10,w1=3,m1=min(8,max(6,dRk i-7))。
9.根据权利要求1所述的方法,其特征在于,在将西文图像通过行列切分得到多个字符图像块之前,还包括:
获取西文图像;
对所述西文图像进行降噪处理,得到二值化的所述西文图像。
10.一种西文单词切分装置,其特征在于,包括:
行列模块,用于将西文图像通过行列切分得到多个字符图像块;
识别模块,用于将所述字符图像块区分为标点图像块和有效字符图像块;
阈值模块,用于根据西文单词内部字符间距离和单字之间距离的统计分析特性,设置切分阈值,具体为:统计标点图像块间的有效字符图像块之间的距离,计算有效距离的统计特征获得初始阈值,将所述初始阈值作为切分阈值;
切分模块,用于通过比较连续的所述有效字符图像块之间的距离与所述切分阈值,以切分单词。
11.根据权利要求10所述的装置,其特征在于,所述阈值模块包括:
获取模块,用于获取第k行每两个相邻标点图像块的距离,将所获取的距离按从小到大排序得到阈值序列Ωk',按照所述距离的变化率从大到小排序,依次得到第i个候选点Xk i;
初始点模块,用于以当前的Xk i为当前阈值Thk,令i=0,迭代初始点Xk 0,如果Xk 0满足条件:在Ωk'中,Thk左边的距离数个数小于右边个数,则放弃当前候选点,进入下一迭代点为初始点;如果均无满足条件的初始点,则设置Thk等于所述西文图像的宽度值;
初始模块,用于从初始点Xk i开始,计算Xk i的综合方差C=CL+CR,设置迭代综合方差Ctemp=C,迭代阈值Thtemp=Xk i,其中,CL和CR分别为在Thk左边和右边的距离数值的方差值;
迭代模块,用于进入下一迭代点,筛选候选点;所述迭代模块包括:统计模块、比较模块、选择模块、初始阈值设置模块:
所述统计模块,用于分别统计Ωk'中在Thk两边的距离数值的局部平均值,分别记为记为左平均值AL,右平均值AR,以及综合方差C;
所述比较模块,用于比较C和Ctemp,当C≤Ctemp时,进入选择模块,反之,进入初始阈值设置模块;
初始阈值设置模块,如果C-Ctemp<Nt5,且|AL+AR-2×C|≤Nt6,且AR/AL≥Nt7,则进入选择模块,反之,设置Thtemp作为初始阈值,结束循环,其中,Nt5=5,Nt6=5,Nt7=2;
选择模块,用于选择当前迭代阈值Thtemp为当前阈值Thk与Thtemp中的较大者,以及当前迭代综合方差Ctemp为综合方差C与Ctemp中的较大者,进入下一迭代点并返回所述统计模块。
12.根据权利要求11所述的装置,其特征在于,所述阈值模块还包括:
选点模块,用于将所述初始阈值所在原始序列位置为中心,以2为半径,提取5个点,对5个点的4个间距按由大到小排序;X0,X1,X2,X3;
第一调整模块,用于如果X0,X1差的绝对值小于等于阈值Nt8,且X1的长度大于等于阈值Nt9,则设置X0和X1中间的值;
第二调整模块,用于如果X0和X1相邻,且满足1)X0与X1差的绝对值大于预设值Nt8;2)X0小于预设值Nt10;3)X1的长度大于等于预设值Nt9,则设置X0和X1的中间值为所述切分阈值;
第三调整模块,用于如果X0和X1不相邻,且满足1)X0,X1差的绝对值大于Nt8;2)X0大于等于Nt10,则设置X0为所述切分阈值;
保持模块,用于设置不满足上述情况的所述初始阈值为所述切分阈值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010622057.7A CN102542269B (zh) | 2010-12-24 | 2010-12-24 | 西文单词切分方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201010622057.7A CN102542269B (zh) | 2010-12-24 | 2010-12-24 | 西文单词切分方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102542269A CN102542269A (zh) | 2012-07-04 |
CN102542269B true CN102542269B (zh) | 2014-12-10 |
Family
ID=46349123
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010622057.7A Expired - Fee Related CN102542269B (zh) | 2010-12-24 | 2010-12-24 | 西文单词切分方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102542269B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102915439B (zh) * | 2012-08-22 | 2015-09-09 | 北京壹人壹本信息科技有限公司 | 手写文字的重心确定方法及电子装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100440250C (zh) * | 2007-03-09 | 2008-12-03 | 清华大学 | 印刷体蒙古文字符识别方法 |
CN101251892B (zh) * | 2008-03-07 | 2010-06-09 | 北大方正集团有限公司 | 一种字符切分方法和装置 |
CN101751567B (zh) * | 2008-12-12 | 2012-10-17 | 汉王科技股份有限公司 | 快速文本识别方法 |
-
2010
- 2010-12-24 CN CN201010622057.7A patent/CN102542269B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN102542269A (zh) | 2012-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10853565B2 (en) | Method and device for positioning table in PDF document | |
US10592184B2 (en) | Method and device for parsing tables in PDF document | |
JP5355625B2 (ja) | 光学式文字認識用に画像を前処理するための方法およびシステム | |
CN102567300B (zh) | 图片文档的处理方法及装置 | |
US5278918A (en) | Optical character recognition method and apparatus using context analysis and a parsing algorithm which constructs a text data tree | |
CN101251892B (zh) | 一种字符切分方法和装置 | |
CN1122243C (zh) | 用于多种语言光字符识别的自动语言识别系统 | |
CN114005123B (zh) | 一种印刷体文本版面数字化重建系统及方法 | |
CN110178139B (zh) | 使用具有注意力机制的全卷积神经网络的字符识别的系统和方法 | |
CN102063621B (zh) | 文字行几何畸变校正方法和装置 | |
CN110674811B (zh) | 图像识别的方法及装置 | |
US8559718B1 (en) | Defining a layout of text lines of CJK and non-CJK characters | |
CN107463866A (zh) | 一种用于成绩评价的识别手写实验报告的方法 | |
CN115311666A (zh) | 图文识别方法、装置、计算机设备及存储介质 | |
US8989485B2 (en) | Detecting a junction in a text line of CJK characters | |
CN102542269B (zh) | 西文单词切分方法和装置 | |
CN109766893A (zh) | 适于购物小票的图片文字识别方法 | |
CN110516655B (zh) | 一种汉字图像笔画处理方法及系统 | |
CN113033541A (zh) | 发行公告版面分析方法 | |
CN108062548B (zh) | 一种盲文方自适应定位方法及系统 | |
CN112541505B (zh) | 文本识别方法、装置以及计算机可读存储介质 | |
CN109409370B (zh) | 一种远程桌面字符识别方法和装置 | |
JP3258287B2 (ja) | 画像データの解析方法及び解析装置、及び画像データの解析を行うためのプログラム・プロダクトを格納した記録媒体 | |
US11270146B2 (en) | Text location method and apparatus | |
CN116229497A (zh) | 版面文本的识别方法、装置及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20141210 Termination date: 20191224 |
|
CF01 | Termination of patent right due to non-payment of annual fee |