CN101025791A - 印刷蒙古文文本切分方法 - Google Patents

印刷蒙古文文本切分方法 Download PDF

Info

Publication number
CN101025791A
CN101025791A CN 200710065195 CN200710065195A CN101025791A CN 101025791 A CN101025791 A CN 101025791A CN 200710065195 CN200710065195 CN 200710065195 CN 200710065195 A CN200710065195 A CN 200710065195A CN 101025791 A CN101025791 A CN 101025791A
Authority
CN
China
Prior art keywords
connected component
text line
grapheme
cutting
text
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.)
Granted
Application number
CN 200710065195
Other languages
English (en)
Other versions
CN100470582C (zh
Inventor
丁晓青
靳简明
彭良瑞
王�华
刘长松
方驰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tsinghua University
Original Assignee
Tsinghua University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tsinghua University filed Critical Tsinghua University
Priority to CNB2007100651958A priority Critical patent/CN100470582C/zh
Publication of CN101025791A publication Critical patent/CN101025791A/zh
Application granted granted Critical
Publication of CN100470582C publication Critical patent/CN100470582C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

印刷蒙古文文本切分方法,属于光学字符识别中的字符切分领域。本发明特征在于:在连通体分类的基础上,选择部分连通体竖直投影,分割文本图像成子区域,然后检测多列子区域,归并字符块实现多列子区域的文字列切分;随后把文字列切分成词;接着估计文字列各处的基线位置;最后根据基线位置和词轮廓寻找字素切点,把词切分成字素。本发明在多字体多字号印刷蒙古文文本测试集上的字素切分正确率达到98.5%以上。

Description

印刷蒙古文文本切分方法
技术领域
印刷蒙古文文本切分方法,属于光学字母识别(OCR)中的字母切分领域。
背景技术
蒙古语属阿尔泰语系蒙古语族,是广泛分布在我国内蒙古、新疆、北京、辽宁、黑龙江、吉林、甘肃、青海等省区的蒙古族使用的主要语言。其书面表现形式——传统蒙古文(现行)是以回鹘字母为基础的拼音文字,在形体、写法变化等方面均有独特之处。作为我国的一种主要少数民族文字,蒙古文文本识别在我国有迫切的现实需求和广泛的应用前景。
蒙古文文本的行序为从左到右,行内文字从上到下竖排,以词为单位纵向书写,词与词之间由空格加以分隔。每个词由若干字母组成,每个字母又由若干字素组成,有的字素由主体部分和点状的附加部分组成,词中的字素从上到下通过基线连接。图1列举了蒙古文的部分字母和字素。图2反映了蒙古文文本的部分特征。
一般的蒙古文文本识别系统如图3所示:预处理模块增强输入的文本图像;列切分模块把多列文本区域切分成文字列;词切分模块把一列文字切分成词;基元切分模块把词切分成字母或字素等基本部件;基元识别模块识别切割出来的基元;后处理部分利用词典、语言模型、语言特征等手段,修正识别错误,得到最终文本识别结果。
因为蒙古文文本的字母都在基线处连接,所以蒙古文文本的切分方法和中文、英文等文字的文本切分方法完全不一样,因此设计印刷蒙古文文本切分算法是实现印刷蒙古文文本识别系统的关键。
发明内容
本发明的目的就是要提供一种可靠的多字体多字号印刷蒙古文文本切分的方法。如图4所示:本发明先把印刷蒙古文文本图像切分成列,再把文字列切分成词,然后估计文字列各处的基线位置,最后根据基线位置和词轮廓得到所有的字素切点。根据本发明实现的印刷蒙古文文本切分方法,已经应用于一个印刷蒙古文文本识别系统。
本发明的特征在于通过如下措施把输入的印刷蒙古文文本图像正确切分成单个的字素图像。
1列切分
列切分的目的是把文本区域切分成连续的文字列。竖直投影是最直接的列切分方法,但是不能处理倾斜文本及列间字母粘连的情况。
为了解决上述问题,本发明提出了如下文字列切分方法(图5):在连通体分类的基础上,选择部分连通体竖直投影,把输入文本图像分割成子区域;然后检测多列子区域,归并连通体,实现多列子区域的文字列切分;最后切割列间粘连的连通体,并根据距离信息把小连通体归入所属文字列。该文字列切分方法不仅能够处理无倾斜的文本,还能够处理倾斜、列间字母存在粘连的文本。
1.1连通体分类
令I表示输入的文本图像,H是I的高度,W是I的宽度。I上的连通体C表示为
C = C ( 0,0 ) C ( 0,1 ) . . . C ( 0 , w - 1 ) C ( 1,0 ) C ( 1,1 ) . . . C ( 1 , w - 1 ) . . . . . . . . . . . . C ( h - 1,0 ) C ( h - 1,1 ) . . . C ( h - 1 , w - 1 ) [ l , t , r , b ] .
其中C(y,x)=1表示黑像素,C(y,x)=0表示白像素,l、t、r、b、w和h分别表示C的左边界、上边界、右边界、下边界、宽度和高度(图6)。I上所有的连通体BLOCK={CnB|nB=1,2,...,nBlock}。在本发明中,使用附加了上下标的C表示特定的连通体(例如CnB,C(line)等),附加了上下标的l、t、r、b、w和h分别表示特定连通体的左边界、上边界、右边界、下边界、宽度和高度(例如hnB,r(line)等)。
根据高度和宽度信息,可以把所有的连通体分成三类:MIDDLE类是一般的蒙古文的词,宽度比较固定;BIG类包括列间粘连的字母,宽度最宽;SMALL类包括字素的附加部分以及标点等,宽度窄且高度矮。
CnB的类别可以由下式确定,
Figure A20071006519500072
其中
w ‾ = 1 nBlock Σ nB = 1 nBlock w nB ,
是所有连通体的平均宽度。
1.2子区域切分
为了去除字素附加部分以及行间粘连字母的影响,只保留MIDDLE类连通体竖直投影。投影值为0的位置把文本区域分割成多个子区域。每个子区域包含一条或多条文字列。
1.3多列子区域检测
如图7所示,多列子区域一定存在多组竖直交叠、水平不交叠的词,而单列子区域不存在满足上面条件的词组。
因此,在每个子区域内找到所有竖直交叠、水平不交叠的MIDDLE类连通体组
CC={(CI,CJ)|YOL(CI,CJ)>0,XOL(CI,CJ)=0,CI∈MIDDLE,CJ∈MIDDLE}。其中,
XOL(CI,CJ)=max(min(rI,rJ)-max(lI,lJ,0),表示CI和CJ在水平方向上的交叠长度,
YOL(CI,CJ)=max(min(bI,bJ)-max(tI,tJ,0),表示CI和CJ在竖直方向上的交叠长度。
如果‖CC‖>10,就可以判定该子区域是多列子区域。
1.4多列子区域切分
因为蒙古文文本从上向下书写,所以按照上边界升序排列多列子区域内部所有的MIDDLE类连通体。按顺序每次取出一个连通体,第n次取出的连通体表示为Cn。Cn和已经取出的所有连通体C1,C2,...,Cn-1比较,找到水平方向上交叠最多的连通体CX,即
C X = arg max C i ( XOL ( C n , C i ) ) , i = 1,2 , . . . , n - 1 .
若Cn和CX水平交叠部分足够大,即
XOL ( C n C X ) > w ‾ / 2 ,
Cn和Cx就属于同一文字列,否则Cn属于新文字列。取出所有连通体后,就得到了多列子区域的文字列切分结果。
1.5切分BIG类连通体
列间粘连的连通体都需要在跨越文字列处进行切分。如果连通体CB∈BIG跨越了多条文字列,那么在跨越的每条文字列内,在CB附近一定都存在连通体和CB水平交叠。
因此,本发明采用下面的办法切分BIG类连通体:
对于每个CB∈BIG,在文字列L(nL)内寻找连通体C(nL)(nL=1,2...,nLine),即
C ( nL ) = arg min C NB ( nL ) ( | t B + b B - t NB ( nL ) - b NB ( nL ) | ) , C NB ( nL ) ∈ NB ( nL ) .
其中
N B ( nL ) = { C NB ( nL ) | C NB ( nL ) ∈ L ( nL ) , C NB ( nL ) ∈ MIDDLE ,
VDIS ( C NB ( nL ) , C B ) < w &OverBar; &times; 5 , XOL ( C NB ( nL ) , C B ) > w &OverBar; / 3 } ,
表示第nL条文字列内,在CB附近和CB水平交叠的所有MIDDLE类连通体,
VDIS ( C NB ( nL ) , C B ) = max ( max ( t NB ( nL ) , t B ) - min ( b NB ( nL ) , b B ) , 0 ) ,
表示CNB (nL)和CB之间的竖直距离。这样C(nL)就是在NB(nL)中和CB竖直距离最近的连通体。
若C(m)和C(m+1)存在,就说明CB跨越了第m条和m+1条文字列,需要在
x = r ( m ) + l ( m + 1 ) 2
也就是跨越文字列的地方切分CB
在所有跨越文字列处切分CB,切分得到的每个部分标记为MIDDLE类,并分配到相应的文字列。
1.6插入SMALL类连通体
对于每个连通体CS∈SMALL,计算CS和每条文字列的距离,并把其分配到距离最近的文字列。计算CS和文字列L(nL)的距离的方法如下:
首先,在L(nL)内CS的上方寻找竖直距离CS最近的MIDDLE类连通体Ct,即
C t = arg min C TB ( nL ) ( t S - t TB ( nL ) ) , C TB ( nL ) &Element; T B ( nL ) ,
其中
T B ( nL ) = { C TB ( nL ) | C TB ( nL ) &Element; L ( nL ) , C TB ( nL ) &Element; MIDDLE , t S > t TB ( nL ) } .
然后,在L(nL)内CS的下方寻找竖直距离CS最近的MIDDLE类连通体Cb,即
C b = arg min C BB ( nL ) ( b BB ( nL ) - b S ) , C BB ( nL ) &Element; B B ( nL ) ,
其中
B B ( nL ) = { C BB ( nL ) | C BB ( nL ) &Element; L ( nL ) , C BB ( nL ) &Element; MIDDLE , b S < b BB ( nL ) } .
那么,CS和文字列L(nL)的距离为
2词切分
得到文字列后,需要把文字列切分成词。每个词由一个主体部分和若干字素附加部分组成。
符合下面条件的连通体被认为是词的主体部分:竖直方向上不和其他连通体交叠的连通体;竖直方向上和其他连通体交叠,但是宽度足够宽,高度足够高的连通体。
剩余的连通体被认为是字素的附加部分,逐个归并给距离最近的词的主体部分。
3基线估计
因为蒙古文字母在基线上连接,所以基线定位对于字母切分非常关键。令L表示当前处理的文字列图像,HL是L的高度,WL是L的宽度。
3.1基线宽度估计
从图2可以看出,L中基线的宽度是相同的。因此,L中出现频率最高的水平黑像素游程的长度就是基线的宽度。
三元组(x(s),x(e),y(se))表示水平黑像素游程,其中x(s)是游程的水平起始位置,x(e)是游程的水平终止位置,y(se)是游程的竖直位置。 HRUN = { ( x nR ( s ) , x nR ( e ) , y nR ( se ) ) | nR = 1 , 2 , . . . , nRun } 是L中的所有水平黑像素游程。
L中宽度为runW的水平黑像素游程的数目为
HW ( runW ) = | | { ( x nR ( s ) , x nR ( e ) , y nR ( se ) ) | ( x nR ( s ) , x nR ( e ) , y nR ( se ) ) &Element; HRUN , x nR ( e ) - x nR ( s ) = runW } | | ,
runW=1,2,...,WL
由此可得基线的宽度为
W 0 = arg max runW ( HW ( runW ) ) , runW = 1,2 , . . . , W L .
3.2基线位置估计
理想情况下,文字列内所有词的基线都在同一竖直线上。但是实际的扫描文本图像中,文字列通常存在小角度的倾斜或者弯曲形变,导致不同词的基线位置不一定相同。为了解决上述问题,本发明把较长的文字列分成多个较短部分分别估计基线位置,这样就可以认为每个部分内的基线位置是相同的。
把文字列L分成
Figure A20071006519500104
个部分,每个部分的长度为α×W0。令VP(nP)(x)(x=0,1...,WL-1)是L只保留第nP部分的图像的竖直投影结果,那么第nP部分的基线位置为,
B Left ( nP ) = arg max x ( &Sigma; k = 0 W 0 - 1 V P ( nP ) ( x + k ) ) , x = 0,1 , . . . , W L - W 0 ,
B Right ( nP ) = B Left ( nP ) + W 0 - 1 ,
其中BLeft (nP)和BRight (nP)分别表示基线的左边界和右边界。在实际系统中,α可以在10~15之间取值。这样就可以得到L任意处的基线的左边界BLeft(y)和右边界BRight(y),
B Left ( y ) = B Left ( nP ) t ( nP ) &le; y < b ( nP ) B Right ( y ) = B Right ( nP ) t ( nP ) &le; y < b ( nP ) ,
其中t(nP)和b(nP)分别是第nP部分的上、下边界。
4字素切分
字素切分是把词切分成单个字素的过程。令P表示当前处理的词图像,HP是P的高度,WP是P的宽度。如图8所示,本发明根据基线及词轮廓信息,搜索所有可能的候选字素切点,切分并分配字素附加部分。
4.1字素切点确定
如图9所示,字素切点满足如下条件:
(A)切点在基线上。
(B)切点上方,字母的左轮廓和/或右轮廓远离基线区域。
(C)切点下方,字母的左轮廓和/或右轮廓远离基线区域。
定义代价函数D(x)计算每个位置的切分代价,
D(x)=abs(BLeft(y)-L(y))+abs(BRight(y)-R(y)),y=0,1...,HP-1,
其中L(y)和R(y)分别是词的左轮廓和右轮廓。则如图9所示,小于W0的D(x)的极小值处都是字素切点。
4.2附加部分切分及分配
当连续两个字素都拥有附加部分时,附加部分也有可能粘连。如果附加部分和多个字素的主体部分在竖直方向上交叠,则该附加部分是粘连的。若该附加部分跨越字素切点yA,则在yA附近附加部分水平投影值最小处切分附加部分。最后把每个附加部分分配给最近的字素主体部分。
根据本发明实现的蒙古文文本切分算法,已经应用于一个印刷蒙古文文本识别系统。300DPI分辨率扫描的黑白二值蒙古文的报纸和期刊用来测试该系统,识别结果如表1。其中只有40%左右的错误是因为切分错误引起的,也就是说字素切分的准确率在98.5%以上。实验结果表明本发明提出的印刷蒙古文文本切分方法是有效的。
字母数目   识别率
  测试集   111102   96.634%
表1试验结果
本发明提出的多字体多字号印刷蒙古文文本切分方法在实验中获得了优异的文本切分性能,具有广泛的应用前景。本发明具有以下优点:
第一,本发明提出的列切分方法,不仅能够处理无倾斜的文本,还能处理倾斜角度大,存在列间字母粘连的文本。
第二,本发明提出的基线位置估计方法精度高。
第三,本发明提出的词切分方法,能够处理相邻词在竖直方向交叠的情况。
第四,本发明提出的字素切分方法,字素切点查全率高,伪切点数目少,能够切分粘连的字素附加部分。
附图说明
图1部分蒙古文字母及字素
图2蒙古文文本特点
图3印刷蒙古文文本识别系统结构图
图4主要发明内容的框图
图5列切分流程
图6坐标系及变量说明
图7多列子区域检测
图8字素切分流程
图9字素切点代价函数
具体实施方式
一个印刷蒙古文文本识别系统在硬件上由图像采集设备和计算机两部分构成。图像采集设备一般是扫描仪,用来获取待识别文本的数字图像。计算机用于对数字图像进行处理,完成文本的最终识别。
对于一篇蒙古文文本样张,首先通过扫描仪将其输入计算机,使之变为数字图像。对数字图像采取二值化、去除噪声等预处理措施,得到二值图像。再对输入图像进行列切分得到文字列,然后把文字列切分成词。估计文字列各处的基线位置,在此基础上对每个词进行字素切分,得到单个字素。然后识别每个字素,最后合并字素识别结果为字符。每个阶段的错误可以用手工方式改正。
因此,实现实用的印刷蒙古文文本识别系统,在文本切分方面需要考虑如下四个方面:列切分;词切分;基线位置估计;字素切分。下面分别对这四个方面进行详细介绍:
第一,列切分
1.1连通体分类
根据高度和宽度信息,把文本图像I上的所有连通体{CnB|nB=1,2,...,nBlock}分成三类:
Figure A20071006519500131
其中
w &OverBar; 1 nBlock &Sigma; nB = 1 nBlock w nB .
1.2子区域切分
只保留MIDDLE类连通体竖直投影,投影值为0的位置把文本区域分割成多个子区域。每个子区域包含一条或多条文字列。
1.3多列子区域检测
对每个子区域得到
CC={(CI,CJ)|YOL(CI,CJ)>0,XOL(CI,CJ)=0,CI∈MIDDLE,CJ∈MIDDLE}。其中,
XOL(CI,CJ)=max(min(rI,rJ)-max(lI,lJ,0),
YOL(CI,CJ)=max(min(bI,bJ)-max(tI,tJ),0)。
如果‖CC‖>10,就判定该子区域是多列子区域。
1.4多列子区域切分
按照上边界升序排列多列子区域内部所有的MIDDLE类连通体。按顺序每次取出一个连通体,第n次取出的连通体为Cn,比较Cn和已经取出的C1,C2,...,Cn-1,找到
C X = arg max C i ( XOL ( C n , C i ) ) , i = 1,2 , . . . , n - 1 .
XOL ( C n , C X ) > w &OverBar; / 2 ,
Cn和CX就属于同一文字列,否则Cn属于新文字列。所有连通体都取出后,就得到了多列子区域的文字列切分结果。最后把所有文字列按照从左到右的顺序排列。
1.5切分BIG类连通体
对于每个CB∈BIG,在文字列L(nL)内寻找C(nL)(nL=1,2..,nLine),即
C ( nL ) = arg min C NB ( nL ) ( | t B + b B - t NB ( nL ) - b NB ( nL ) | ) , C NB ( nL ) &Element; NB ( nL ) .
其中
NB ( nL ) = { C NB ( nL ) | C NB ( nL ) &Element; L ( nL ) , C NB ( nL ) &Element; MIDDLE ,
VDIS ( C NB ( nL ) , C B ) < w &OverBar; &times; 5 , XOL ( C NB ( nL ) , C B ) > w &OverBar; / 3 } ,
VDIS ( C NB ( nL ) , C B ) = max ( max ( t NB ( nL ) , t B ) - min ( b NB ( nL ) , b B ) , 0 ) .
若C(m)和C(m+1)存在,就说明CB跨越了第m条和m+1条文字列,需要在
x = r ( m ) + l ( m + 1 ) 2 ,
处切分CB。在所有跨越文字列的位置把CB切分成多个部分,标记每个部分为MIDDLE类,然后分配到相应的文字列。
1.6插入SMALL类连通体
对于每个CS∈SMALL,计算CS和每条文字列的距离,并把其分配到距离最近的文字列。
计算CS和文字列L(nL)的距离的方法如下:令,
C t = arg min C TB ( nL ) ( t S - t TB ( nL ) ) , C TB ( nL ) &Element; TB ( nL ) ,
C b = arg min C BB ( nL ) ( b BB ( nL ) - b S ) , C BB ( nL ) &Element; BB ( nL ) ,
其中
TB ( nL ) = { C TB ( nL ) | C TB ( nL ) &Element; L ( nL ) , C TB ( nL ) &Element; MIDDLE , t S > t TB ( nL ) } ,
BB ( nL ) = { C BB ( nL ) | C BB ( nL ) &Element; L ( nL ) , C BB ( nL ) &Element; MIDDLE , b S < b BB ( nL ) } .
则CS和L(nL)的距离为
Figure A20071006519500148
第二,词切分
每个词由一个主体部分和若干字素附加部分组成。
符合下面条件的连通体是词的主体部分:竖直方向上不和其他连通体交叠的连通体;竖直方向上和其他连通体交叠,但是宽度足够宽,高度足够高的连通体。
剩余的连通体是字素附加部分,逐个归并给距离最近的词的主体部分。
第三,基线估计
令L表示当前处理的文字列图像,HL是L的高度,WL是L的宽度。
3.1基线宽度估计
HRUN = { ( x nR ( s ) , x nR ( e ) , y nR ( se ) ) | nR = 1,2 , . . . , nRun } 是L中的所有水平黑像素游程,
HW ( runW ) = | | { ( x nR ( s ) , x nR ( e ) , y nR ( se ) ) | ( x nR ( s ) , x nR ( e ) , y nR ( se ) ) &Element; HRUN , x nR ( e ) - x nR ( s ) = runW } | | ,
runW=1,2,...,WL
则可得基线的宽度为
W 0 = arg max runW ( HW ( runW ) ) , runW = 1,2 , . . . , W L .
3.2基线位置估计
把文字列L分成
Figure A20071006519500153
个部分,每个部分的长度为15×W0。令VP(nP)(x=0,1...,WL-1)是L只保留第nP部分的图像的竖直投影结果,那么第nP部分的基线的左边界和右边界分别为,
B Left ( nP ) = arg max x ( &Sigma; k = 0 W 0 - 1 VP ( nP ) ( x + k ) ) , x = 0,1 , . . . , W L - W 0 ,
B Right ( nP ) = B Left ( nP ) + W 0 - 1 .
这样就可以得到L任意处的基线左边界BLeft(y)和右边界BRight(y),
B Left ( y ) = B Left ( nP ) t ( nP ) &le; y < b ( nP ) B Right ( y ) = B Right ( nP ) t ( nP ) &le; y < b ( nP )
其中t(nP)和b(nP)分别是第nP部分的上、下边界。
第四,字素切分
令P表示当前处理的词图像,HP是P的高度,WP是P的宽度。
4.1字素切点确定
定义
D(x)=abs(BLeft(y)-L(y))+abs(BRight(y)-R(y)),y=0,1,...,HP-1,其中L(y)和R(y)分别是词的左轮廓和右轮廓。则小于W0的D(x)的极小值处都是字素切点。
4.2附加部分切分及分配
若某附加部分跨越字素切点yA,则在yA附近附加部分水平投影值最小处切分附加部分。最后把每个附加部分分配给最近的字素主体部分。

Claims (1)

1.印刷蒙古文文本切分方法,其特征在于:首先在连通体分类的基础上,先选择部分连通体竖直投影把输入文本图像分割成子区域,然后检测多列子区域,归并连通体实现多列子区域的文字列切分;然后把文字列切分成词;随后估计文字列各处的基线位置;最后根据基线位置以及词轮廓寻找字素切点;在由图像采集设备和计算机组成的系统中,该方法依次含有以下步骤:
第1步,列切分
令I表示输入的文本图像,H是I的高度,W是I的宽度,连通体C的左边界、上边界、右边界、下边界、宽度和高度分别表示为l、t、r、b、w和h,附加了上下标的C表示特定的连通体,附加了上下标的l、t、r、b、w和h分别表示特定连通体的左边界、上边界、右边界、下边界、宽度和高度;
第1.1步,连通体分类
根据高度和宽度信息,把输入文本图像I上所有的连通体{CnB|nB=1,2,...,nBlock}分成三类:
Figure A2007100651950002C1
其中
w &OverBar; = 1 nBlock &Sigma; nB = 1 nBlock w nB ,
是所有连通体的平均宽度;
第1.2步,子区域切分
对MIDDLE类连通体竖直投影,投影值为0的位置把文本区域分割成多个子区域,每个子区域包含一条或多条文字列;
第1.3步,多列子区域检测
对每个子区域求出所有水平交叠、竖直不交叠的MIDDLE类连通体组
CC={(CI,CJ)|YOL(CI,CJ)>0,XOL(CI,CJ)=0,CI∈MIDDLE,CJ∈MIDDLE},其中,
XOL(CI,CJ)=max(min(rI,rJ)-max(lI,lJ),0),
XOL(CI,CJ)表示连通体CI和连通体CJ在水平方向上的交叠长度,
YOL(CI,CJ)=max(min(bI,bJ)-max(tI,tJ),0),
YOL(CI,CJ)表示连通体CI和连通体CJ在竖直方向上的交叠长度;
如果‖CC‖>10,就判定该子区域是多列子区域;
第1.4步,多列子区域切分
按照上边界升序排列多列子区域内部所有的MIDDLE类连通体,按顺序每次取出一个连通体Cn和已经取出的所有连通体C1,C2,...,Cn-1比较,找到水平方向上交叠最多的连通体CX,即
C X = arg max C i ( XOL ( C n , C i ) ) , i=1,2,...,n-1,
若Cn和CX竖直交叠部分足够大,即
XOL ( C n , C X ) > w &OverBar; / 2 ,
Cn和CX就属于同一文字列,否则Cn属于新文字列,取出所有连通体后,就得到了多列子区域的文字列切分结果;
第1.5步,切分BIG类连通体
对于每个连通体CB∈BIG,在文字列L(nL)内寻找连通体C(nL)(nL=1,2,...,nLine),即
C ( NL ) = arg min C NB ( nL ) ( | t B + b B - t NB ( nL ) - b NB ( nL ) | ) , C NB ( nL ) &Element; NB ( nL ) ,
其中
NB ( nL ) = { C NB ( nL ) | C NB ( nL ) &Element; L ( nL ) , C NB ( nL ) &Element; MIDDLE ,
VDIS ( C NB ( nL ) , C B ) < w &OverBar; &times; 5 , XOL ( C NB ( nL ) , C B ) > w &OverBar; / 3 } ,
NB(nL)表示第nL条文字列内,在CB附近和CB水平交叠的所有MIDDLE类连通体,
VDIS ( C NB ( nL ) , C B ) = max ( max ( t NB ( nL ) , t B ) - min ( b NB ( nL ) , b B ) , 0 ) ,
VDIS(CNB (nL),CB)表示CNB (nL)和CB之间的竖直距离,则C(nL)是在NB(nL)中和CB竖直距离最近的连通体;
若C(m)和C(m+1)存在,就说明在第m条和m+1条文字列内,在CB附近都存在连通体和CB水平交叠,也就是说CB跨越了第m条和m+1条文字列,需要在
x = r ( m ) + l ( m + 1 ) 2 ,
处切分CB,在所有跨越文字列的位置把CB切分成多个部分,标记每个部分为MIDDLE类,并分配到相应的文字列;
第1.6步,插入SMALL类连通体
对于每个连通体CS∈SMALL,计算CS和每条文字列的距离,并把其分配到距离最近的文字列:
计算CS和文字列L(nL)的距离的方法如下:寻找满足条件的连通体Ct和Cb,即
C t = arg min C TB ( nL ) ( t S - t TN ( nL ) ) , C TB ( nL ) &Element; TB ( nL ) ,
C b = arg min C BB ( nL ) ( b BB ( nL ) - b S ) , C BB ( nL ) &Element; BB ( nL ) ,
其中
TB ( nL ) = { C TB ( nL ) | C TB ( nL ) &Element; L ( nL ) , C TB ( nL ) &Element; MIDDLE , t S > t TB ( nL ) } ,
BB ( nL ) = { C BB ( nL ) | C BB ( nL ) &Element; L ( nL ) , C BB ( nL ) &Element; MIDDLE , b S < b BB ( nL ) } ,
则CS和文字列L(nL)的距离为
Figure A2007100651950004C5
第2步,词切分
每个词由一个主体部分和若干字素附加部分组成,竖直方向上不和其他连通体交叠的连通体以及竖直方向上和其他连通体交叠,但是宽度足够宽,高度足够高的连通体是词的主体部分,剩余的连通体则属于字素附加部分;把每个字素附加部分归并给最近的词主体部分;
第3步,基线估计
令L表示当前处理的文字列图像,HL是L的高度,WL是L的宽度;
第2.1步,基线宽度估计
HRUN = { ( x nR ( s ) , x nR ( e ) , y nR ( se ) ) | nR = 1,2 , . . . , nRun } 是L中的所有水平黑像素游程,则
HW ( runW ) = | | { ( x nR ( s ) , x nR ( e ) , y nR ( se ) ) | ( x nR ( s ) , x nR ( e ) , y nr ( se ) ) &Element; HRUN , x nR ( e ) - x nR ( s ) = runW } | | ,
runW=1,2,...,WL
由此可得基线的宽度为
W 0 = arg max ( HW ( runW ) ) , runW runW=1,2,...,WL
第2.2步,基线位置估计
把文字列L分成
Figure A2007100651950005C1
个部分,每个部分的长度为α×W0,α在10~15之间取值,令VP(nP)(x)(x=0,1,...,WL-1)是L只保留第nP部分的图像的竖直投影结果,那么第nP部分的基线位置为,
B Left ( nP ) = arg max x ( &Sigma; k = 0 W 0 - 1 VP ( nP ) ( x + k ) ) , x=0,1,...,WL-W0
B Right ( nP ) = B Left ( nP ) + W 0 - 1 ,
其中BLeft (nP)和BRight (nP)分别表示基线的左边界和右边界,这样就可以得到L任意处的基线的左边界BLeft(y)和右边界BRight(y),
B Left ( y ) = B Left ( nP ) t ( np ) &le; y < b ( nP ) B Right ( y ) = B Right ( nP ) t ( nP ) &le; y < b ( nP ) ,
其中t(nP)和b(nP)分别是第nP部分的上、下边界;
第4步,字素切分
令P表示当前处理的词图像,HP是P的高度,WP是P的宽度;
第4.1步,字素切点确定
字素切点满足如下条件:
(A)切点在基线上;
(B)切点上方,字母的左轮廓和/或右轮廓远离基线区域;
(C)切点下方,字母的左轮廓和/或右轮廓远离基线区域;
定义函数D(x)计算每个位置的切分代价,
D(x)=abs(BLeft(y)-L(y))+abs(BRight(y)-R(Y)),y=0,1,...,HP-1,
其中L(y)和R(y)分别是词的左轮廓和右轮廓,则小于W0的D(x)的极小值处都是字素切点
第4.5步,附加部分切分及分配
如果附加部分和多个字素的主体部分在竖直方向上交叠,则该附加部分是粘连的,若该附加部分跨越字素切点yA,则在yA附近附加部分水平投影值最小处切分附加部分;最后把每个附加部分分配给最近的字素主体部分。
CNB2007100651958A 2007-04-06 2007-04-06 印刷蒙古文文本切分方法 Expired - Fee Related CN100470582C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2007100651958A CN100470582C (zh) 2007-04-06 2007-04-06 印刷蒙古文文本切分方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2007100651958A CN100470582C (zh) 2007-04-06 2007-04-06 印刷蒙古文文本切分方法

Publications (2)

Publication Number Publication Date
CN101025791A true CN101025791A (zh) 2007-08-29
CN100470582C CN100470582C (zh) 2009-03-18

Family

ID=38744073

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2007100651958A Expired - Fee Related CN100470582C (zh) 2007-04-06 2007-04-06 印刷蒙古文文本切分方法

Country Status (1)

Country Link
CN (1) CN100470582C (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102262619A (zh) * 2010-05-31 2011-11-30 汉王科技股份有限公司 文档的文字提取方法和装置
CN102446275A (zh) * 2010-09-30 2012-05-09 汉王科技股份有限公司 阿拉伯文字符的识别方法和装置
CN103377371A (zh) * 2012-04-25 2013-10-30 佳能株式会社 用于改善识别特征的方法和系统和光学字符识别系统
CN104112287A (zh) * 2013-04-17 2014-10-22 北大方正集团有限公司 切分图片中文字的方法和装置
CN106687992A (zh) * 2014-07-10 2017-05-17 赛诺菲-安万特德国有限公司 用于执行光学字符识别的装置和方法
CN107330379A (zh) * 2017-06-13 2017-11-07 内蒙古大学 一种蒙古语手写识别方法和装置
CN108537229A (zh) * 2018-04-24 2018-09-14 大连民族大学 基于满文部件切分的印刷体满文识别方法
CN108564078A (zh) * 2018-04-24 2018-09-21 大连民族大学 提取满文单词图像中轴线的方法
CN108830270A (zh) * 2015-09-29 2018-11-16 大连民族大学 对满文单词正确分割各识别的满文单词中轴线的定位方法
CN111195912A (zh) * 2020-01-08 2020-05-26 浙江省北大信息技术高等研究院 利用机械臂绘制肖像画的方法、装置、机器人及存储介质
CN113505775A (zh) * 2021-07-15 2021-10-15 大连民族大学 一种基于字符定位的满文单词识别方法
CN113505775B (zh) * 2021-07-15 2024-05-14 大连民族大学 一种基于字符定位的满文单词识别方法

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102262619A (zh) * 2010-05-31 2011-11-30 汉王科技股份有限公司 文档的文字提取方法和装置
CN102446275A (zh) * 2010-09-30 2012-05-09 汉王科技股份有限公司 阿拉伯文字符的识别方法和装置
CN102446275B (zh) * 2010-09-30 2014-04-16 汉王科技股份有限公司 阿拉伯文字符的识别方法和装置
CN103377371A (zh) * 2012-04-25 2013-10-30 佳能株式会社 用于改善识别特征的方法和系统和光学字符识别系统
CN104112287B (zh) * 2013-04-17 2017-05-24 北大方正集团有限公司 切分图片中文字的方法和装置
CN104112287A (zh) * 2013-04-17 2014-10-22 北大方正集团有限公司 切分图片中文字的方法和装置
CN106687992B (zh) * 2014-07-10 2021-01-12 赛诺菲-安万特德国有限公司 用于执行光学字符识别的装置和方法
CN106687992A (zh) * 2014-07-10 2017-05-17 赛诺菲-安万特德国有限公司 用于执行光学字符识别的装置和方法
CN108830269B (zh) * 2015-09-29 2021-09-07 大连民族大学 确定满文单词中轴线宽度的方法
CN108830270A (zh) * 2015-09-29 2018-11-16 大连民族大学 对满文单词正确分割各识别的满文单词中轴线的定位方法
CN108830269A (zh) * 2015-09-29 2018-11-16 大连民族大学 确定满文单词中轴线宽度的方法
CN108830270B (zh) * 2015-09-29 2021-10-08 大连民族大学 对满文单词正确分割各识别的满文单词中轴线的定位方法
CN107330379B (zh) * 2017-06-13 2020-10-13 内蒙古大学 一种蒙古语手写识别方法和装置
CN107330379A (zh) * 2017-06-13 2017-11-07 内蒙古大学 一种蒙古语手写识别方法和装置
CN108564078A (zh) * 2018-04-24 2018-09-21 大连民族大学 提取满文单词图像中轴线的方法
CN108537229B (zh) * 2018-04-24 2020-06-02 大连民族大学 基于满文部件切分的印刷体满文识别方法
CN108537229A (zh) * 2018-04-24 2018-09-14 大连民族大学 基于满文部件切分的印刷体满文识别方法
CN111195912A (zh) * 2020-01-08 2020-05-26 浙江省北大信息技术高等研究院 利用机械臂绘制肖像画的方法、装置、机器人及存储介质
CN113505775A (zh) * 2021-07-15 2021-10-15 大连民族大学 一种基于字符定位的满文单词识别方法
CN113505775B (zh) * 2021-07-15 2024-05-14 大连民族大学 一种基于字符定位的满文单词识别方法

Also Published As

Publication number Publication date
CN100470582C (zh) 2009-03-18

Similar Documents

Publication Publication Date Title
CN100470582C (zh) 印刷蒙古文文本切分方法
CN1332348C (zh) 印刷体阿拉伯字符集文本切分方法
Roy et al. HMM-based Indic handwritten word recognition using zone segmentation
Sahare et al. Multilingual character segmentation and recognition schemes for Indian document images
Zahour et al. Arabic hand-written text-line extraction
Alaei et al. A new scheme for unconstrained handwritten text-line segmentation
Boukharouba A new algorithm for skew correction and baseline detection based on the randomized Hough Transform
Tripathy et al. Handwriting segmentation of unconstrained Oriya text
Tsujimoto et al. Resolving ambiguity in segmenting touching characters
Din et al. Line and ligature segmentation in printed Urdu document images
Ayesh et al. A robust line segmentation algorithm for Arabic printed text with diacritics
Kiumarsi et al. A hybrid method for text line extraction in handwritten document images
Nguyen et al. A segmentation method of single-and multiple-touching characters in offline handwritten japanese text recognition
Modi et al. Text line detection and segmentation in Handwritten Gurumukhi Scripts
Haji et al. A novel segmentation and skew correction approach for handwritten Malayalam documents
Ladwani et al. Novel approach to segmentation of handwritten Devnagari word
Bathla et al. Challenges in recognition of Devanagari Scripts due to segmentation of handwritten text
Jindal et al. Segmentation problems and solutions in printed Degraded Gurmukhi Script
Mahmood et al. A novel segmentation technique for urdu type-written text
Sanchez et al. Text line segmentation in images of handwritten historical documents
Cao et al. Robust page segmentation based on smearing and error correction unifying top-down and bottom-up approaches
Razak et al. A real-time line segmentation algorithm for an offline overlapped handwritten Jawi character recognition chip
Nguyen et al. Enhanced character segmentation for format-free Japanese text recognition
Bharathi et al. Improvement of Telugu OCR by segmentation of Touching Characters
Mahmood Arabic & Urdu text segmentation challenges & techniques

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090318

Termination date: 20180406