专利名称:一种版式文件自动成文的方法及系统的制作方法
技术领域:
本发明涉及信息技术处理领域,尤其涉及一种版式文件中自动成文的方法 及系统。
种方法的优点是根据版式文件的版面信息结构提取版面信息和所有的稿件信
息;缺点是a)不同的版式文件都需要花时间理解其内部的信息存储格式,. 导致了不同的版式文件需要开发不同的插件,开发难度大且易用性和扩展性不 是很好;b)版式文件的必须存储稿件内部之间的关联关系;通过分析PS文件 以及Fit等文件,发现版式文件中记录的稿件关系并不能够有效的还原版式文 件中文章中上下文的关系,造成了后端标引的时候工作量很大。
根据目前可以基于版式文件记录的信息来提取稿件的方法;这种方法的优 点是高效的利用了版式文件提供的公共的信息,实现了自动化成块操作;缺点 是该方法没有实现自动成文,需要在结合人工标引的方式来实现文章上下文的 正确的组合。
综上,从版式文件中获取的文字块、图片块等数据信息并没有有效的组织 在一起,而是^t开来的,比如一篇文章的引题,标题,副题是分离开的,标 题和文章的正文之间也是分离开的;这样就需要人工进行相应的关联操作,还 原文章的引题,标题,副题以及正文,以保证数据信息的正确性和完备性。
针对现有技术中存在的缺陷,本发明的目的是提供一种反解版式文件后自
背景技术:
^文章的方法。这
发明内容动成文的方法,该方法能够实现将反解任何版式文件后获得的文字块自动关联
起来,还原成为一篇文章;该篇文章可能包含着引题,标题,副题,正文,附 图等相关内容,还原了原有的文章内容之间上下文关系,这样就减少了人工操 作的工作量,提高了效率。 本发明的具体实现方法为
A:从文字块集合(S)中筛选出标题块集合(T),根据所述标题块集合(T〉 得到文章集合(A〉;
B:从文字块集合(S〉中获取与文章集合(A)中匹配的文字块,设置为文章 正文;
C:获取文章集合(A)中的每篇文章,设置所述文章的其他组成信息。
进一步,从文字块集合{8}中筛选出标题块集合{丁},根据所述标题块集合 {T}得到文章集合{A}具体为
从版式文件中获取的文字块集合(S)中筛选出文字块属性为标题的文字 块,设置为标题块集合{丁},并从原集合(S)中去除;
创建文章集合{八};按文字块的信息,对标题块集合{丁}进行比较、聚类; 筛选出属于同一文章的标题块,得到文字块集合;验证筛选文字块集合中的文 字块是否属于同一篇文章;创建相应的文章,将文字块集合设置为文章的标题 块集合;将创建的文章添加到文聿集会(A)中;最后将到文章集^{八}。
进一步,从文字块集合{8}中获取与文章集合{八}中匹配的文字块具体包
括
将文字块集合(S)中的每一个文字块与文章集合(A)进行聚类,找到能跟丈 章集合(A)中文章匹配的文字块,设置该文字块为该文章的正文,并从文字块 集合(S)中删除该文字块;
查看文字块集合(S》中是否存在文字块,若存在,为该文字块创建一篇文 章,并将文字块设置为该文章的正文,将此文章添加到文章集合{八}中。
所述文章其他信息,包括但不限于引题,标题,副题中的一种或者全部信息。
本发明还提供一种版式文件自动成文系统,该成文系统包括 文字块集合生成器,用于从版式文件中生成文字块集合; 标题块集合筛选器,用于从文字块集合中筛选出属性为标题的文字块; 文章集合生成器,用于得到文章集合,所述文章集合按文字块的信息,对
标题块集合进行比较、聚类得到;
文章正文生成器,用于从文字块集合中获取与文章集合中匹配的文字块,
并将此设置为文章正文;
文章其他组成信息生成器,用于从文章集合中获取文章其他信息,并进行设置。
进一步,所述文章其他信息,包括但不限于引题,标题,副题中的一种 或者全部信息。
通过本发明提供的技术方案,能够找到属于同一篇文章的引题,标题,副 题以及正文等文字块,能够还原原有的文章内容之间上下文关系。另外,还可 以提高标引人员的工作效率,节省数据加工成本。
图1为本发明自动成文的流程图2是从标题块集合中提取近邻的文字块示意图3是从标题块集合中提取近邻的文字块,同时也实现了标题和引题的互 换示意图4是从新创建的文字块集合中筛选出不属于同一篇文章的文字块示意
图5为文字块匹配文章之后的示意图; 图6为引题和副题互换之后的示意图。
具体实施例方式
下面结合具体实施方式
和附图对本发明进行详细描述。
如图1所示,版式文件的自动成文的方法包括以下步骤
第一步从版式文件中获取的文字块集合(S)中筛选出文字块属性为标题 的文字块,设置为标题块集合m,并从原集合(S)中去除;
第二步创建文章集合(A);按文字块的信息,对标题块集合{丁}进行比较、 聚类;筛选出属于同一文章的文字块,得到文字块集合;验证筛选文字块集合 中的文字块是否属于同一篇文章;创建相应的文章,将文字块集合设置为文章 的标题块集合;将创建的文章添加到文章集合(A)中;最后得到文章集合{八};
第三步将文字块集合(S)中的每一个文字块与文章集合(A)进行聚类,找 到能跟文章集合(A》中文章匹配的文字块,设置该文字块为该文章的正文,并 从文字块集合(S)中删除该文字块; '
第四步查看文字块集合(S)中是否存在文字块,若存在,为该文字块创 建一篇文章,并将文字块设置为该文章的正文,将此文章添加到文章集合{八} 中;
第五步依次获取文章集合(A)中的每篇文章,设置每篇文章的其他组成 信息。
根据每篇文章的不同,该篇文章可能包含着引题,标题,副题,正文,附 图等相关内容,因此,其他组成信息为引题,标题,副题,附图中的一种或者 全部信息。
下面结合附图2和图3对具体实施方式
进行阐述
文字块集合(S)中筛选出文字块属性为标题的文字块是现有技术中的一般 操作,在此不再详述,如图2所述的文字块中,"4同胞在尼遭武装劫匪抢劫"、 "中国参演部队开始回撤"、"我国铁路最大机车采购项目签订"、"质检总局
工作组进驻14省区市"等都是其中的标题块。形成标题块集合(T)之后,需要 按文字块的信息,对标题块集合(T)进行比较、聚类;得到文章集合(A〉。本实施例中按文字块的信息,对标题块集合{丁}进行比较、聚类的具体实
现方法为
A21:创建一个新的文字块集合(R),选取标题块集合(T)中第一个文字块, 设为Tl,将文字块T1添加到集合(R〉中,并从标题块集合(T〉中删除;
A22:以文字块T1为依据,对标题块集合{丁}进行遍历,筛选出标题块集 合(T)中与文字块T1的近邻的文字块;筛选出来的文字块放置在文字块集合(R) 中,并从标题块集合{丁}中删除筛选出来的文字块;依次获取筛选出来的文字 块,设置为Tl,再次执行本步骤,直至文字块集合(R)中的文字块取完为止; 最终得到文字块集合(R〉;
A23:创建一篇文章;筛选文字块集合{11},筛选出不属于同一篇文章的 文字块并重新添加到标题块集合{丁}中,并从文字块集合(R〉中删除;检索完之 后,将该文字块集合(R)设置成为文章的标题块集合;将创建的文章添加到文 章集合(A)中;
A24:重复步骤A21和A23;直至标题块集合{丁}中文字块取完为止;最 后得到文章的集合{八}。
在本实施例中,"4同胞在尼遭武装劫匪抢劫"和"其中l名女子被枪杀" 的两个属性为标题的文字块分别为Tl和T2,需要计算他们之间是否近邻。 判断这两个文字块近邻的才喿作为 在本实施方式中,取到的"4同胞在尼遭武装劫匪抢劫"文字块T1的左上 角坐标为(31,584),右下角坐标为(271,605);文字块Tl的宽度为Wl= 240, 文字块T1的高度Hl-21 ,文字块T1的字体大小为fl=20 ;
被遍历到的"其中1名女子被枪杀"文字块T2左上角坐标为(31,611), 右下角坐标为(156,624);文字块T2的宽度为W2= 125 ,文字块T2的高度 H2=13 ,文字块T2的字体大小为£2=13 ;
版面平均字体大小为所有的文字块的字号的平均值,设置为AvgFontSize; 现在该版面的平均字体大小为8.47;然后进行如下操作(4.1 )通过如下公式计算文字块T1与文字块T2紧邻的有效距离 DistThreshold = C1 * AvgFontSize + max(f 1 ,f2)/ C2; 其中Cl为两个文字块之间的间距系数,C2为文字块的均分系数;
(4.2) 计算文字块T1与文字块T2重叠度 水平方向上的最小重叠度
OverlapXMin = (min(Xl,, X2,) — max(Xl, X2) ))/min(Xl,- XI ,X2,画X2); 垂直方向上的最小重叠度
OverlapYMin = (min(Yl ,, Y2,) — max(Yl, Y2) ))/min(Yl ,誦Yl ,Y2,- Y2));
(4.3) 计算文字块与文字块的重叠距离 水平方向上的重叠3巨离DistX:
DistX = max (XI, X2)腸min (Xl,, X2,); 垂直方向上的重叠距离DistY: DistY = max (Yl, Y2) - min (Yl,, Y2,);
以上max(a,b)表示取两者的较大值,min(a,b)表示取两者的较小值;
(4.4) 判定如下条件是否其中一项成立
AA.文字块T1对应的文字块的排版类型为从左到右的横排或者从右到左 的横排时,且OverlapXMin > Dxmin且DistY<DistThreshold ;
BB.文字块T1对应的文字块的排版类型不是从左到右的横排或者从右到 左的4黄排时,且OverlapYMin >Dymin且DistX〈DistThreshold ;
其中Dxmin和Dymin为两个文字块之间水平和垂直方向上的最小近邻重 叠系数;
如果以上任何一项成立,那么文字块T1与文字块T2近邻,将文字块T2 从文字块集合中删除,添加到文字块集合{11}中。
在实际的应用中,可以根据实际的需要来调整Dxmin和Dymin取值的大 小。在本实施方式中,此时C1取值为1.5, C2取值为4; Dxmin和Dymin取 值都为0. 8;计算得出的DistThreshold =17.92; OverlapXMin = 9.9; DistY =6.78;经过上面方法的计算,在图2中"4同胞在尼遭武装劫匪抢劫"和"其中l名 女子被枪杀,,的两个属性为标题的文字块满足以上条件的AA条件;因此,计 算出来的文字块T1与文字块T2是近邻的。将文字块T2从标题块(T)集合中 删除,添加到文字块集合(R〉中。
同样在图2中"我国铁路最大机车釆购项目签订"和"总金额近300亿元 其中500台机车签订合同"两个属性为标题的文字块满足以上条件的AA条件; 在图3中"送去新春的间候"和"省委省政府举行外企新春联欢会王儒林走访 慰问侨界知名人士"两个属性为标题的文字块满足以上条件的BB条件。都是 相近邻的文字块。
对于不属于同一文章的文字块,需要进行筛选,筛选出不属于同一文章的 文字块,得到文章的标题块集合步骤如下
(5.1) 获取最大字号的文字块的排版类型,若为从左到右的横排或者从右 到左的横排时,按照"从低到高,从左到右"排序文字块集合(R〉中的文字块; 若不是,按照"从左到右,从底到高"排序文字块集合(R〉中的文字块;创建 一篇文章,获取文章的标题块集合(R)中最大字号的文字块;
(5.2) 以最大字号的文字块为分界点,如果最大字号以前存在多个文字块 那么从后往前遍历最大字号以前的多个文字块的字号是否相等;从后往前遍历 的比较过程是以最大字号的文字块前一个文字块作为当前块,遍历当前块和 它前一个文字块字号是否相等;相等则将前一个块设置为当前块,继续同它的 前一个文字块进行比较;不等则从集合(R)中第一个文字块到当前块的前一个 文字块从集合(R)中删除,并添加到标题块集合{丁}中,以保证最大字号前的文 字块的字号大小相等;
(5.3) 以最大字号的文字块为分界点,如果最大字号以后存在多个文字块 那么从前往后遍历最大字号以后的多个文字块的字号是否相等;从前往后遍历 的比较过程是以最大字号的文字块后一个文字块作为当前块,遍历当前块和 它后一个文字块字号是否相等;相等则将后一个块设置为当前块,继续同它的后一个文字块进行比较;不等则将集合(R〉中当前块以后的文字块从集合(R〉 中删除,并添加到标题块集合{丁}中,以保证最大字号后的文字块的字号大小 相等。
经过上面的验证标题块集合是否属于同一篇文章,在图4中将属性为标题 的"补贴4成成本缺口依然大,,的文字块从标题块集合中筛选了出来,保证了 标题块集合中的文字块属于同一篇文章的正确性。在实际的应用过程中,可以 根据实际的情况和应用的需要来分析是否需要执行此步骤。
得到文章集合(A》后,从文字块集合(S)中获取与文章集合(A〉中匹配的文 字块,具体操作如下
如图5所述的"4同胞在尼遭武装劫匪抢劫"为标题的文章中,包括标题 块、副题块以及正文块,其正文块是否属于该篇文章,需要进行判断,同样, 本实施例采用以下方法进4亍
(8.1) 从文字块集合(S)中取第一个文字块,文字块设为T1
(8.2) 从文章集合(A〉中依次获取文章,设置为A,从文章A中获取该文 章的标题块集合;
(8.3) 依次获取文章标题块集合中的文字块,设为T2,查看文字块T1是 否与文字块T2是否是近邻;近邻条件成立,记录文字块与文章的重叠度,之 后重新获取文章,执行(8.2)步骤;近邻条件不成立,获取文章标题块集合中 的下一个文字块继续同文字块Tl比较是否为近邻关系;文章标题块集合依次 遍历结束后,重新获取文章,执行(8.2)步骤;文章集合遍历结束后,执行以 下步骤;
(8.4) 获取与文字块Tl重叠度最大的文章,设置该文字块到文章对象的 正文块集合中,并且从文字块集合(S)中删除;
(8.5) 从文字块集合(S)中取下一个文字块,设文字块为Tl ,再次从步 骤(8,2)开始执行,直至文字块集合(S)中对应的文字块取完为止;
(8.6) 依次从文章集合中获取每篇文章的正文块集合,如果文章的正文块集合包含多个文字块时将其合并成为一个文字块,文章正文块集合中所有文字
块成为合并文字块的子块,将此合并文字块设置为文章的正文;如果文章的正 文块集合只包含一块则将该正文块设置为文章的正文。 判断两个文字块近邻的方法如下
(9.1 )计算两个文字块垂直方向上的最小重叠度OverlapYMin以及水平方 向上的最小重叠度OverlapXMin;
此实施例中采用以下公式进行计算 水平方向上的最小重叠度
OverlapXMin = (min(Xr, X2,) — max(Xl, X2) ))/min(Xl,- XI ,X2,- X2); 垂直方向上的最小重叠度
OverlapYMin = (min(Yl,, Y2,) — max(Yl, Y2)》/min(Yl,画Yl ,Y2,画Y2)); 以上max(a,b)表示取两者的较大值,min(a,b)表示取两者的较小值; (9.2 )计算两个文字块垂直方向上的重叠度OverlapY和水平方向上的重叠 度OverlapX;
此实施例中采用以下公式进行计算 垂直方向上的重叠度
OverlapY = (min(Yl,, Y2,) — max(Yl, Y2) ))/( max(Yl,, Y2,)曙min(Yl, Y2)); 水平方向上的重叠度
OverlapX= (min(Xl,, X2,) — max(Xl, X2)))/(max(Xl', X2,)画min(Xl, X2));
(9.3) 计算两个文字块之间近邻的距离DistThreshold; DistThreshold = CI*AvgFontSize + f2/ C2 ;
其中Cl为两个文字块之间的间距系数,C2为文字块T2均分系数; AvgFontSize为版面的平均字体大小;f2为T2文字块的字体大小。在本实施 方式中此时Cl取值为2, C2取值为5;
(9.4) 计算文字块与文字块的重叠距离DistX和DistY; 计算文字块与文字块的重叠距离
18水平方向上的重叠距离DistX: DistX = max (XI, X2) - min (Xl', X2,); 垂直方向上的重叠3巨离DistY: DistY = max (Yl, Y2) - min (Yl', Y2,);
以上max(a,b)表示取两者的较大值,min(a,b)表示取两者的较小值; (9.5)判定如下条件是否其中一项成立
A. OverlapX>Dx且OverlapY>Dy;
B. OverlapXMin >Dxmin且OverlapY〉Dy;
C. OverlapYMin>Dymin且OverlapX >Dx;
D. OverlapYMin>Dymin 且 OverlapXMin >Dxmin 且 (X2'-X2)>C*AvgFontSize;
E. 文章的标题块集合中最大字号的文字块的排版类型为从左到右的横排 或者从右到左的横排时,且OverlapX >0且OverlapXMin>Dxmin且DistY< DistThreshold且Y2< Yl;;
F. 文章的标题块集合中最大字号的文字块的排版类型不是从左到右的横 排或者从右到左的横排时,且OverlapY >0且OverlapYMin>Dymin且DistX< DistThreshold;
上述中Dx和Dy为两个文字块之间水平和垂直方向上的近邻重叠系数, Dxmin和Dymin为两个文字块之间7K平和垂直方向上的最小近邻重叠系数, 其中C为字体的放大系数;
如杲以上条件任何一项都成立,则表示两个块近邻;近邻成立的时候记录 两个文字块的重叠度;文章的标题块集合中最大字号的文字块的排版类型若为 从左到右的横排或者从右到左的横排时,那么文字块T1与文章对象的重叠度 为OverlapX;若不是,文字块Tl与文章对象的重叠度为OverlapY。
在本实施例中,其中A条件中Dx-0.8和Dy=0.8; B条件中Dxmin=0.95, Dy =0. 2; C条件中Dymin=0. 95, Dx =0. 2; D条件中Dxmin=0. 95, Dymin=0. 95,C=6; E条件中Dx-O. 8; F条件中Dy-O. 8;经过上面方法的计算,在图5中, 正文块找到最佳的匹配的文章,该文字块成为了文章的正文。
同样,查看文字块集合(S)中是否存在文字块,若存在,为该文字块创建 一篇文章,并将文字块设置为该文章的正文,将此文章添加到文章集合(A)中。
文章正文确定后,需要设置文章的其他组成信息,设置文章其他组成信息 的步骤具体如下
(10.1) 从文章集合中依次获取文章;获取每篇文章的标题块集合{11};获 取标题块集合(R)中最大字号的文字块,将此文字块设置为文章A的标题;
(10.2) 获取文章标题对应的文字块的排版类型,若为从左到右的横排或者 从右到左的横排时,按照"从低到高,从左到右,,排序文字块集合(R〉中的文 字块;若不是从左到右的横排或者从右到左的横排时,按照"从左到右,从 底到高"排序文字块集合(R)中的文字块;
(10.3 )以最大字号的文字块为分界点,最大字号以前的文字块只有一个的 时候,直接将该文字块设置为文章的引题;若存在多个文字块的时需合并成为 一个文字块,将多个文字块设置为合并文字块的子块,并将合并文字块设置为 文章的引题;最大字号以后的文字块只有一个的时候,直接将该文字块设置为 文章的副题;若存在多个文字块的时需合并成为一个文字块,将多个文字块设 置为合并文字块的子块,并将合并文字块设置为文章的副题;
(10.4)文章标题对应的文字块的排版类型为竖排无方向的文章,验证文章 的引题,副题是否需要互换。
验证文章的引题,副题是否需要互换按照如下标准进行 文章标题对应的文字块的排版类型为竖排无方向时,若以下任何一个条件 成立的话,文章的引题,副题需要互换;文章的引题成为文章的副题,副题成 为文章的引题;
(A)获取文章引题,副题对应文字块的排版类型;如果任一文字块的排版 类型为"从右到左的竖排",那么文章的引题和副题互换;(B) 设文章的正文对应的文字块为Tl,左上角坐标为(X1,Y1),右下角 坐标为(X1,,Y1,);标题对应的文字块为T2,左上角坐标为(X2,Y2),右下角 坐标为(X2,,Y2,);若(X1 +乂1,)<(乂2 + 乂2,)成立,那么文章的引题和副题互换;
(C) 设文章存在引题,对应的文字块为Tl,左上角坐标为(X1,Y1),右 下角坐标为(X1,,Y1,);文章的标题对应的文字块为T2 ,左上角坐标为
(X2,Y2),右下角坐标为(X2,,Y2,);若Y1〉Y2成立,那么文章的引题和副 题互换;
(D)设文章存在副题,对应的文字块为T1,左上角坐标为(X1,Y1),右 下角坐标为(X1,,Y1,);文章的标题对应的文字块为T2 ,左上角坐标为 (X2,Y2),右下角坐标为(X2,,Y2,);若Y1〈Y2成立,那么文章的引题和副 题互换。
在图3和图6中,文章标题对应的文字块的排版类型为竖排无方向,经过
上面的计算,实现了引题和副题的互换,保证了提取的文章标题的正确性。 本发明通过自动成文的方法,找到属于同一篇文章的引题,标题,副题以
及正文等文字块,能够还原原有的文章内容之间上下文关系。
同样,本发明还提供一种版式文件自动成文系统,该成文系统包括 文字块集合生成器,用于从版式文件中生成文字块集合; 标题块集合筛选器,用于从文字块集合中筛选出属性为标题的文字块; 文章集合生成器,用于得到文章集合,所述文章集合按文字块的信息,对
标题块集合进行比较、聚类得到;
文章正文生成器,用于从文字块集合中获取与文章集合中匹配的文字块,
并将此设置为文章正文;
文章其他组成信息生成器,用于从文章集合中获取文章其他信息,并进行设置。
所述文章其他信息,包括但不限于引题,标题,副题中的一种或者全部
信息进行匹配以及是否近邻的操作与本发明方法实施例的实现方式是——对 应的,在》匕不再重复名又述。
通过本发明提供的技术方案,能够找到属于同一篇文章的引题,标题,副 题以及正文等文字块,能够还原原有的文章内容之间上下文关系,另外,还可以 提高标引人员的工作效率,节省数据加工成本。
明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及 其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
权利要求
1、一种版式文件自动成文的方法,其特征在于,该方法包括A从文字块集合{S}中筛选出标题块集合{T},根据所述标题块集合{T}得到文章集合{A};B从文字块集合{S}中获取与文章集合{A}中匹配的文字块,设置为文章正文;C获取文章集合{A}中的每篇文章,设置所述文章的其他组成信息。
2、 如权利要求1所述的版式文件自动成文方法,其特征在于步骤A具 体为Al:从版式文件中获取的文字块集合(S)中筛选出文字块属性为标题的文 字块,设置为标题块集合{丁},并将其从原集合(S)中去除;A2:创建文章集合(A);按文字块的信息,对标题块集合(T)进行比较、 聚类;筛选出属于同一文章的标题块,得到文字块集合;验证筛选文字块集合 中的文字块是否属于同一篇文章;创建相应的文章,将文字块集合^:置为文章 的标题块集合;将创建的文章添加到文章集合(A〉中;最后得到文章集合(A〉。
3、 如权利要求2所述的版式文件自动成文方法,其特征在于按文字块 的信息,对标题块集合(T)进行比较、聚类的具体实现方法为A21:创建一个新的文字块集合{11},选取标题块集合{丁}中第一个文字块, 设为Tl,将文字块T1添加到集合{11}中,并从标题块集合{丁}中删除;A22:以文字块T1为依据,对标题块集合{丁}进行遍历,筛选出标题块集 合(T)中与文字块T1的近邻的文字块;筛选出来的文字块放置在文字块集合(R〉 中,并从标题块集合{丁}中删除筛选出来的文字块;依次获取筛选出来的文字 块,设置为Tl,再次执行本步骤,直至文字块集合(R》中的文字块取完为止; 最终得到文字块集合(R);A23:创建一篇文章;筛选文字块集合(R),筛选出不属于同一篇文章的文字块并重新添加到标题块集合{丁}中,并从文字块集合(R)中删除;检索完之 后,将该文字块集合(R)设置成为文章的标题块集合;将创建的文章添加到文 章集合(A)中;A24:重复步骤A21和A23;直至标题块集合{丁}中文字块取完为止;最 后得到文章的集合(A)。
4、如权利要求3所述的版式文件自动成文方法,其特征在于判断两个 文字块近邻的操作为设取到的文字块T1的左上角坐标为(X1,Y1),右下角坐标为(X1,,Y1,); 文字块T1的宽度为Wl-Xl,-Xl,文字块T1的高度H卜Y1,-Y1 ,文字块T1 的字体大小为fl ;被遍历到的文字块T2左上角坐标为(X2,Y2),右下角坐标为(X2,,Y2,); 文字块T2的宽度为W2-X2,-X2 ,文字块T2的高度112= Y2,-Y2 ,文字块 T2的字体大小为f2 ;版面平均字体大小为所有的文字块的字号的平均值,设置为AvgFontSize; 然后进行如下操作(4.1) 通过如下公式计算文字块Tl与文字块T2紧邻的有效距离 DistThreshold = Cl*AvgFontSize + max(fl ,f2)/C2;其中Cl为两个文字块之间的间距系数,C2为文字块的均分系数;(4.2) 计算文字块T1与文字块T2最小重叠度 水平方向上的最小重叠度OverlapXMin = (min(Xl,,X2,)-max(Xl,X2)))/min(Xr國Xl ,X2,墨X2); 垂直方向上的最小重叠度OverlapYMin = (min(Yl,, Y2,) — max(Yl, Y2) ))/min(Yl,- Yl ,Y2,- Y2》;(4.3) 计算文字块与文字块的重叠距离 水平方向上的重叠距离DistX:DistX - max (Xl, X2) - min (XI,, X2,);垂直方向上的重叠距离DistY: DistY = max (Yl, Y2)國min (Yl ,, Y2,);以上max(a,b)表示取两者的较大值,min(a,b)表示取两者的较小值; (4.4)判定如下条件是否其中一项成立AA.文字块T1对应的文字块的排版类型为从左到右的横排或者从右到左 的4黄排时,且OverlapXMin 〉Dxmin且DistY〈DistThreshold ;BB.文字块Tl对应的文字块的排版类型不是从左到右的横排或者从右到 左的横排时,且OverlapYMin 〉Dymin且DistX〈DistThreshold ;其中Dxmin和Dymin为两个文字块之间水平和垂直方向上的最小近邻重叠系数;如果以上任何一项成立,那么文字块T1与文字块T2近邻,将文字块T2 从标题块集合(T〉中删除,添加到文字块集合(R〉中。
5、如权利要求3所述的版式文件自动成文方法,其特征在于筛选出不 属于同一文章的文字块,得到文章的标题块集合步骤如下(5.1) 获取最大字号的文字块的排版类型,若为从左到右的横排或者从右 到左的横排时,按照"从低到高,从左到右"排序文字块集合(R)中的文字块; 若不是,按照"从左到右,从低到高"排序文字块集合{11}中的文字块;获 取文章的标题块集合{11}中最大字号的文字块;(5.2) 以最大字号的文字块为分界点,如果最大字号以前存在多个文字块 那么从后往前遍历最大字号以前的多个文字块的字号是否相等;从后往前遍历 的比较过程是以最大字号的文字块前一个文字块作为当前块,遍历当前块和 它前一个文字块字号是否相等;相等则将前一个块设置为当前块,继续同它的 前一个文字块进行比较;不等则从集合{11}中第一个文字块到当前块的前一个 文字块从集合(R〉中删除,并添加到标题块集合{丁}中,以保证最大字号前的文 字块的字号大小相等; '(5.3) 以最大字号的文字块为分界点,如果最大字号以后存在多个文字块那么从前往后遍历最大字号以后的多个文字块的字号是否相等;从前往后遍历 的比较过程是以最大字号的文字块后一个文字块作为当前块,遍历当前块和 它后一个文字块字号是否相等;相等则将后一个块设置为当前块,继续同它的 后一个文字块进行比较;不等则将集合(R)中当前块以后的文字块从集合(R》 中删除,并添加到标题块集合(T)中,以保证最大字号后的文字块的字号大小 相等。
6、 如权利要求1所述的版式文件自动成文方法,其特征在于步骤B具 体操作为Bl:将文字块集合(S)中的每一个文字块与文章集合(A)进行聚类比较, 找到能跟文章集合(A)中文章匹配的文字块,设置该文字块为该文章的正文, 并从文字块集合(S)中删除该文字块;B2:查看文字块集合(S)中是否存在文字块,若存在,为该文字块创建一篇 文章,并将文字块设置为该文章的正文,将此文章添加到文章集合(A)中。
7、 如权利要求6所述的版式文件自动成文方法,其特征在于,所述其他 组成信息包括但不限于引题,标题,副题中的一种或者全部信息。
8、 如权利要求6-7任一所述的版式文件自动成文方法,其特征在于从 文字块集合(S)中获取与文章集合(A〉中匹配的文字块,具体包括以下步骤(8.1) 从文字块集合(S〉中取第一个文字块,文字块设为Tl(8.2) 从文章集合(A)中依次获取文章,设置为A,从文章A中获取该文 章的标题块集合;(8.3) 依次获取文章标题块集合中的文字块,设为T2,查看文字块T1是 否与文字块T2是否是近邻;近邻条件成立,记录文字块与文章的重叠度,之 后重新获取文章,执行(8.2)步骤;近邻条件不成立,获取文章标题块集合中 的下一个文字块继续同文字块Tl比较是否为近邻关系;如果文章标题块集合 依次遍历结束后,重新获取文章,执行(8.2)步骤;文章集合遍历结束后,执 行以下步骤;(8.4) 获取与文字块Tl重叠度最大的文章,设置该文字块到文章对象的 正文块集合中,并且从文字块集合(S)中删除;(8.5) 从文字块集合(S)中取下一个文字块,设文字块为Tl ,再次从步 骤(8.2)开始执行,直至文字块集合(S)中对应的文字块取完为止;(8.6) 依次从文章集合中获取每篇文章的正文块集合,如果文章的正文块 集合包含多个文字块时将其合并成为一个文字块,文章正文块集合中所有文字 块成为合并文字块的子块,将此合并文字块设置为文章的正文;如果文章的正 文块集合只包含一块则将该正文块设置为文章的正文。
9、如权利要求8所述的版式文件自动成文方法,其特征在于,判断两个 文字块近邻的方法如下(9.1) 利用权利4中的4.2步骤计算两个文字块垂直方向上的最小重叠度 OverlapYMin以及水平方向上的最小重叠度OverlapXMin;(9.2) 计算文字块T1与文字块T2重叠度 垂直方向上的重叠度OverlapY = (min(Yl,, Y2,) — max(Yl, Y2) ))/( max(Yl,, Y2,)- min(Yl, Y2)); 水平方向上的重叠度OverlapX= (min(X1,, X2,) — max(Xl, X2)))/(max(X1,, X2,)- min(Xl, X2)); 以上max(a,b)表示取两者的较大值,min(a,b)表示取两者的较小值; (9.3 )计算文字块Tl与文字块T2紧邻的有效距离DistThreshold: DistThreshold = Cl*AvgFontSize + f2/ C2 ;其中Cl为两个文字块之间的间距系数,C2为文字块T2均分系数; AvgFontSize为版面的平均字体大小;f2为T2文字块的字体大小;(9.4) 利用权利4中的4.3步骤中计算文字块与文字块的重叠距离DistX 和DistY;(9.5) 判定如下条件是否其中一项成立 A. OverlapX>Dx且OverlapY>Dy;B. OverlapXMin 〉Dxmin且OverlapY〉Dy;C. OverlapYMin〉Dymin且OverlapX 〉Dx;D. OverlapYMin〉Dymin 且 OverlapXMin >Dxmin 且 (X2,-X2)>C*AvgFontSize;E. 文章的标题块集合中最大字号的文字块的排版类型为从左到右的横排 或者从右到左的横排时,且OverlapX >0且OverlapXMin>Dxmin且DistY< DistThreshold且Y2< Yl;F. 文章的标题块集合中最大字号的文字块的排版类型不是从左到右的横 排或者从右到左的横排时,且OverlapY >0且OverlapYMin>Dymin且DistX< DistThreshold;上述中Dx和Dy为两个文字块之间水平和垂直方向上的近邻重叠系数, Dxmin和Dymin为两个文字块之间水平和垂直方向上的最小近邻重叠系数, 其中C为字体的放大系数;如果以上条件任何一项都成立,则表示两个块近邻;近邻成立的时候记录 两个文字块的重叠度;文章的标题块集合中最大字号的文字块的排版类型若为 从左到右的横排或者从右到左的横排时,那么文字块T1与文章对象的重叠度 为OverlapX;若不是,文字块Tl与文章对象的重叠度为OverlapY。
10、如权利要求9所述的版式文件自动成文方法,其特征在于设置文章 其他组成信息的步骤具体如下(10.1) 从文章集合中依次获取文章;获取每篇文章的标题块集合(R);获 取标题块集合(R)中最大字号的文字块,将此文字块i殳置为文章A的标题;(10.2) 获取文章标题对应的文字块的排版类型,若为从左到右的横排或者 从右到左的横排时,按照"从低到高,从左到右"排序文字块集合(R)中的文 字块;若不是从左到右的横排或者从右到左的横排时,按照"从左到右,从 低到高"排序文字块集合(R)中的文字块;(10.3 )以最大字号的文字块为分界点,最大字号以前的文字块只有一个的时候,直接将该文字块设置为文章的引题;若存在多个文字块的时需合并成为 一个文字块,将多个文字块设置为合并文字块的子块,并将合并文字块设置为 文章的引题;最大字号以后的文字块只有一个的时候,直接将该文字块设置为 文章的副题;若存在多个文字块的时需合并成为一个文字块,将多个文字块i殳 置为合并文字块的子块,并将合并文字块设置为文章的副题;(10.4)文章标题对应的文字块的排版类型为竖排无方向的文章,验证文章 的引题,副题是否需要互换。
11、 如权利要求10所述的版式文件自动成文方法,其特征在于验证文 章的引题,副题是否需要互换按照如下标准进行文章标题对应的文字块的排版类型为竖排无方向时,若以下任何一个条件 成立的话,文章的引题,副题需要互换;文章的引题成为文章的副题,副题成 为文章的引题;(A) 获取文章引题,副题对应文字块的排版类型;如果任一文字块的排版 类型为"从右到左的竖排",那么文章的引题和副题互换;(B) 设文章的正文对应的文字块为Tl,左上角坐标为(X1,Y1),右下角 坐标为(X1,,Y1,);标题对应的文字块为T2,左上角坐标为(X2,Y2),右下角 坐标为(X2,,Y2,);若(X1 +乂1,)<(乂2 + 乂2,)成立,那么文章的引题和副题互换;(C) 设文章存在引题,对应的文字块为Tl,左上角坐标为(X1,Y1),右 下角坐标为(X1,,Y1,);文章的标题对应的文字块为T2 ,左上角坐标为(X2,Y2),右下角坐标为(X2,,Y2,);若Y1〉Y2成立,那么文章的引题和副 题互换;(D) 设文章存在副题,对应的文字块为Tl,左上角坐标为(X1,Y1),右 下角坐标为(X1,,Y1,);文章的标题对应的文字块为T2 ,左上角坐标为(X2,Y2),右下角坐标为(X2,,Y2,);若YKY2成立,那么文章的引题和副 题互换。
12、 一种版式文件自动成文系统,其特征在于,该成文系统包括文字块集合生成器,用于从版式文件中生成文字块集合; 标题块集合筛选器,用于从文字块集合中筛选出属性为标题的文字块; 文章集合生成器,用于得到文章集合,所述文章集合按文字块的信息,对标题块集合进行比较、聚类得到;文章正文生成器,用于从文字块集合中获取与文章集合中匹配的文字块,并将此设置为文章正文;文章其他组成信息生成器,用于从文章集合中获取文章其他信息,并进行设置。
13、如权利要求11所述的版式文件自动成文系统,其特征在于,所述文 章其他信息,包括但不限于引题,标题,副题中的一种或者全部信息。
全文摘要
本发明公开了一种版式文件中自动成文的方法及系统,用于进行文字块的自动类型识别,还原版面文章的引题,标题,副题以及正文等信息,本发明提供的自动成文方法包括从文字块集合{S}中筛选出标题块集合{T},根据所述标题块集合{T}得到文章集合{A};从文字块集合{S}中获取与文章集合{A}中匹配的文字块,设置为文章正文;获取文章集合{A}中的每篇文章,设置所述文章的其他组成信息。采用本发明,可以提高标引人员的工作效率,节省数据加工成本。
文档编号G06F17/22GK101441621SQ20081022730
公开日2009年5月27日 申请日期2008年11月26日 优先权日2008年11月26日
发明者徐剑波, 辉 王, 宁 董 申请人:北大方正集团有限公司;北京方正阿帕比技术有限公司