确定平均字符宽度的方法和装置及字符切分方法和设备转让专利

申请号 : CN201110355148.3

文献号 : CN103093224B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 许梅芳罗兆海

申请人 : 佳能株式会社

摘要 :

本发明提供了确定平均字符宽度的方法和装置以及字符切分方法和设备。用于确定字符组的平均字符宽度的方法包括:得到字符组的第一平均字符宽度;通过置信度计算方法得到用于表示第一平均字符宽度与字符组的真实平均字符宽度的接近程度的第一平均字符宽度的置信度;以及根据第一平均字符宽度的置信度,确定字符组的平均字符宽度为第一平均字符宽度还是第二平均字符宽度。

权利要求 :

1.一种用于确定字符组的平均字符宽度的方法,所述方法的特征在于包括:切分步骤,切分字符组以得到字符备选作为切分结果;

第一平均字符宽度得到步骤,通过第一平均字符宽度计算方法得到字符组的第一平均字符宽度;

置信度得到步骤,通过第一置信度计算方法得到第一平均字符宽度的置信度;以及平均字符宽度确定步骤,根据第一平均字符宽度的置信度来确定字符组的平均字符宽度是等于第一平均字符宽度还是第二平均字符宽度,其中,所述第二平均字符宽度是通过不同于第一平均字符宽度计算方法的第二平均字符宽度计算方法得到的,其中,第一置信度计算方法包括以下步骤:

以所述第一平均字符宽度为中心设定字符宽度的范围作为第一范围;

从所述切分结果中选择宽度在第一范围内的字符备选;以及计算所选字符备选的宽度的平均值与所述第一平均字符宽度的比作为所述第一平均字符宽度的置信度。

2.根据权利要求1所述的方法,其中,所述第一平均字符宽度计算方法包括:计算所述切分结果中的字符备选的宽度的平均值作为字符组的第一平均字符宽度。

3.根据权利要求1所述的方法,其中,所述第一平均字符宽度计算方法包括:计算字符组的行高与第一特定因子的乘积作为字符组的第一平均字符宽度。

4.根据权利要求1所述的方法,其中,第二平均字符宽度计算方法包括:设定字符宽高比的范围作为第二范围;

选择所述切分结果中字符宽高比处于第二范围内的字符备选;以及计算所选字符备选的宽度的平均值作为字符组中的字符的第二平均字符宽度。

5.根据权利要求1所述的方法,其中,所述第二平均字符宽度计算方法包括:在所述切分结果的字符备选数量大于或等于第一阈值的情况下,设定字符宽高比的范围作为第三范围;

选择所述切分结果中字符宽高比处于第三范围内的字符备选;

得到所选字符的宽度的平均值作为字符组中的字符的第三平均字符宽度;

通过第二置信度计算方法得到第三平均字符宽度的置信度;以及根据第三平均字符宽度的置信度,确定第二平均字符宽度是等于第一平均字符宽度还是等于第三平均字符宽度。

6.根据权利要求1所述的方法,其中,所述第二平均字符宽度计算方法包括:在字符组具有两个相邻字符组的情况下,通过第二置信度计算方法得到所述两个相邻字符组中的字符的平均字符宽度的置信度,并以所述两个相邻字符组之中具有较大的平均字符宽度的置信度的一个相邻字符组作为所选相邻字符组;以及在字符组具有一个相邻字符组的情况下,以这一个相邻字符组作为所选相邻字符组并且通过第二置信度计算方法得到该所选相邻字符组中的字符的平均字符宽度的置信度;

得到字符组的行高与所选相邻字符组的行高之间的差值;

如果所述差值大于或等于第二阈值,则将第一平均字符宽度设为第二平均字符宽度;

否则

通过第一平均字符宽度与所选相邻字符组中的字符的平均字符宽度的加权平均来得到第四平均字符宽度;以及根据所选相邻字符组中的字符的平均字符宽度的置信度,确定第二平均字符宽度是等于第一平均字符宽度还是等于第四平均字符宽度。

7.根据权利要求1所述的方法,其中,所述第二平均字符宽度计算方法包括:通过将字符组的行高乘以第二特定因子得到第五平均字符宽度;

在所述切分结果的字符备选数量小于第三阈值的情况下,将第五平均字符宽度设为第二平均字符宽度,否则通过第二置信度计算方法得到第五平均字符宽度的置信度;以及根据第五平均字符宽度的置信度,确定第二平均字符宽度是等于第一平均字符宽度还是等于第五平均字符宽度。

8.根据权利要求5~7中的任一项所述的方法,其中,对于特定平均字符宽度,所述第二置信度计算方法包括:以所述特定平均字符宽度为中心设定字符宽度的范围作为第三范围;

从所述切分结果中选择宽度在第三范围内的字符备选;以及计算所选字符备选的宽度的平均值与所述特定平均字符宽度的比作为所述特定平均字符宽度的置信度。

9.根据权利要求5~7中的任一项所述的方法,其中,对于特定平均字符宽度,所述第二置信度计算方法包括:根据所述切分结果中的字符备选的宽度,通过聚类算法将所述切分结果中的字符备选聚类到不同的组;

计算各组内的字符备选的宽度的平均值作为该组中的字符备选的平均字符宽度;

向各组中的字符备选分配权重并且计算各组的加权后的字符备选数量;

从各组中选择加权后的字符备选数量最大的一个组作为所选组;以及计算所选组中的字符备选的平均字符宽度与所述特定平均字符宽度之比作为所述特定平均字符宽度的置信度。

10.根据权利要求9所述的方法,其中,向各组中的字符备选分配权重包括:对于各组中的每个字符备选,如果在作为切分点的两个边界处的黑像素投影均为波谷,则向该字符备选分配大于1且小于2的权重;而如果在作为切分点的两个边界处的黑像素投影不是均为波谷,则向该字符备选分配大于0且小于1的权重。

11.根据权利要求5~7中的任一项所述的方法,其中,对于特定平均字符宽度,所述第二置信度计算方法包括:以所述特定平均字符宽度为中心设定平均字符宽度的范围作为第四范围;

从所述切分结果中选择宽度在第四范围内的字符备选作为第三字符备选组,并且计算所述第三字符备选组的字符备选数量作为第三字符备选数量;

根据所述特定平均字符宽度,将所述切分结果中宽度比第四范围的上限大的字符备选切分成字符备选和片段,并将切分的片段与宽度比第四范围的下限小的字符备选进行组合以形成新的字符备选;

从所述新的字符备选中选择宽度在第四范围内的字符备选作为第四字符备选组,并计算所述第四字符备选组的字符数量作为第四字符备选数量;以及计算第三字符备选数量及第四字符备选数量之和与所述切分结果的字符备选数量之比作为所述特定平均字符宽度的置信度。

12.一种用于对字符组进行切分的方法,其特征在于包括:使用根据权利要求1~11中的任一项所述的方法来确定字符组的平均字符宽度,以及根据字符组的平均字符宽度来对字符组进行字符切分和合并。

13.一种用于确定字符组的平均字符宽度的装置,所述装置的特征在于包括:切分单元,被配置为切分字符组以得到字符备选作为切分结果;

第一平均字符宽度得到单元,被配置为通过第一平均字符宽度计算部件得到字符组的第一平均字符宽度;

置信度得到单元,被配置为通过第一置信度计算部件得到第一平均字符宽度的置信度;以及平均字符宽度确定单元,被配置为根据第一平均字符宽度的置信度,确定字符组的平均字符宽度是等于第一平均字符宽度还是等于第二平均字符宽度,其中,所述第二平均字符宽度是通过不同于第一平均字符宽度计算部件的第二平均字符宽度计算部件得到的,其中,所述第一置信度计算部件被配置为:

以所述第一平均字符宽度为中心设定字符宽度的范围作为第一范围;

从所述切分结果中选择宽度在第一范围内的字符备选;以及计算所选字符备选的宽度的平均值与所述第一平均字符宽度的比作为所述第一平均字符宽度的置信度。

14.根据权利要求13所述的装置,其中,所述第一平均字符宽度计算部件被配置为:计算所述切分结果中的字符备选的宽度的平均值作为字符组中的字符的第一平均字符宽度。

15.根据权利要求13所述的装置,其中,所述第一平均字符宽度计算部件被配置为:计算字符组的行高与第一特定因子的乘积作为字符组中的字符的第一平均字符宽度。

16.根据权利要求13所述的装置,其中,所述第二平均字符宽度计算部件被配置为:设定字符宽高比的范围作为第二范围;

选择切分结果中字符宽高比处于第二范围内的字符备选;以及计算所选字符备选的宽度的平均值作为字符组中的字符的第二平均字符宽度。

17.根据权利要求13所述的装置,其中,所述第二平均字符宽度计算部件被配置为:在所述切分结果的字符备选数量大于或等于第一阈值的情况下,设定字符宽高比的范围作为第三范围;

选择所述切分结果中字符宽高比处于第三范围内的字符备选;

得到所选字符的宽度的平均值作为字符组中的字符的第三平均字符宽度;

通过第二置信度计算部件得到第三平均字符宽度的置信度;以及根据第三平均字符宽度的置信度,确定第二平均字符宽度是等于第一平均字符宽度还是等于第三平均字符宽度。

18.根据权利要求13所述的装置,其中,所述第二平均字符宽度计算部件被配置为:在字符组具有两个相邻字符组的情况下,通过第二置信度计算部件得到所述两个相邻字符组中的字符的平均字符宽度的置信度,并以所述两个相邻字符组中具有较大的平均字符宽度的置信度的一个相邻字符组作为所选相邻字符组;以及在字符组具有一个相邻字符组的情况下,以这一个相邻字符组作为所选相邻字符组,并且通过第二置信度计算部件得到该所选相邻字符组中的字符的平均字符宽度的置信度;

得到字符组的行高与所选相邻字符组的行高之间的差值;

如果所述差值大于或等于第二阈值,则将第一平均字符宽度设为第二平均字符宽度;

否则

通过第一平均字符宽度与所选相邻字符组中的字符的平均字符宽度的加权平均来得到第四平均字符宽度,以及根据所选相邻字符组中的字符的平均字符宽度的置信度,确定第二平均字符宽度是等于第一平均字符宽度还是等于第四平均字符宽度。

19.根据权利要求13所述的装置,其中,所述第二平均字符宽度计算部件被配置为:通过将字符组的行高乘以第二特定因子来得到第五平均字符宽度;

在所述切分结果的字符备选数量小于第三阈值的情况下,将第五平均字符宽度设为第二平均字符宽度;否则,通过第二置信度计算部件得到第五平均字符宽度的置信度;以及根据第五平均字符宽度的置信度,确定第二平均字符宽度是等于第一平均字符宽度还是等于第五平均字符宽度。

20.根据权利要求17-19中的任一项所述的装置,其中,所述第二置信度计算部件被配置为:对于特定平均字符宽度,

以所述特定平均字符宽度为中心设定字符宽度的范围作为第三范围;

从所述切分结果中选择宽度在第三范围内的字符备选;以及计算所选字符备选的宽度的平均值与所述特定平均字符宽度之比作为所述特定平均字符宽度的置信度。

21.根据权利要求17-19中的任一项所述的装置,其中,所述第二置信度计算部件被配置为:对于特定平均字符宽度,

根据所述切分结果中的字符备选的宽度,通过聚类算法将所述切分结果中的字符备选聚类为不同的组;

计算各组内的字符备选的宽度的平均值作为该组中的字符备选的平均字符宽度;

向各组内的所述字符备选分配权重,并且计算各组的加权后的字符备选数量;

从各组中选择加权后的字符备选数量最大的一个组作为所选组;以及计算所选组中的字符备选的平均字符宽度与所述特定平均字符宽度之比作为所述特定平均字符宽度的置信度。

22.根据权利要求21所述的装置,其中,所述第二置信度计算部件进一步被配置为:对于各组内的每个字符备选,如果在作为切分点的两个边界处的黑像素投影均为波谷,则向该字符备选分配大于1且小于2的权重;而如果在作为切分点的两个边界处的黑像素投影不是均为波谷,则向该字符备选分配大于0且小于1的权重。

23.根据权利要求17-19中的任一项所述的装置,其中,所述第二置信度计算部件被配置为:对于特定平均字符宽度,

以所述特定平均字符宽度为中心设定平均字符宽度的范围作为第四范围;

从所述切分结果中选择宽度在第四范围内的字符备选作为第三字符备选组,并且计算所述第三字符备选组的字符备选数量作为第三字符备选数量;

根据所述特定平均字符宽度,将所述切分结果中宽度比第四范围的上限大的字符备选切分成字符备选和片段,并将切分的片段与宽度比第四范围的下限小的字符备选进行组合以形成新的字符备选;

从所述新的字符备选中选择宽度在第四范围内的字符备选作为第四字符备选组,并计算所述第四字符备选组的字符数量作为第四字符备选数量;以及计算第三字符备选数量及第四字符备选数量的和与所述切分结果的字符备选数量之比作为所述特定平均字符宽度的置信度。

24.一种用于对字符组进行切分的设备,其特征在于所述设备被配置为:通过根据权利要求13~23中的任一项所述的装置来确定字符组的平均字符宽度;以及根据字符组中的字符的平均字符宽度来对字符组进行字符切分和合并。

说明书 :

确定平均字符宽度的方法和装置及字符切分方法和设备

技术领域

[0001] 本发明涉及用于切分文档图像(具体地,文本行或文本列)中的字符的字符切分方法和设备,并且更特别地,涉及用于通过使用平均字符宽度来执行字符切分的方法和设备,所述平均字符宽度是通过用于确定文档图像中的文本行或文本列的平均字符宽度的方法和装置而得到的。

背景技术

[0002] 在光学字符识别(OCR)系统中,通常例如通过使用“黑像素投影”的方法来执行字符切分。但是,当使用该方法时,将出现两种切分错误。一种切分错误是“不能检测连通字符的切分点”,另一种切分错误是“将至少由两部分构成的并且在这些部分之间具有空白的字符(以下,为了简洁起见,这样的字符将被称为具有规定结构的字符),例如具有左右结构或者上下结构的字符,划分为两个或多个部分”。例如,在中文字符中常常出现上述的“连通字符”和“具有规定结构的字符”。图12示例性地示出了一些错误切分的字符。
[0003] 鉴于以上情况,作为有效的辅助手段,当文档图像中的文本段或文本行/列包括宽度基本上相互一致的字符时,平均字符宽度(ACW)常常被用于进一步切分连通字符以及合并具有规定结构的字符的各部分。
[0004] 具体地,对于连通字符,基于图像的切分方法(例如投影,轮廓或相邻列的黑像素连通度等)可能能够通过调整它们的阈值来检测切分点。但是,即便如此,也出现错误的切分点。在很多情况下,正确的切分点只是所有被检测的切分点中的一小部分。如果不加考虑地处理所有的切分点,那么OCR的速度将急剧降低。此时,平均字符宽度可以对于切分点的数量和它们的位置进行粗略的估计,并且,很多错误的切分点将被放弃。这样,可以大大地提高OCR的速度。另外,对于具有规定结构的字符,当两个或更多个被误分离的部分是被OCR引擎支持的字符或者是具有相似的形状并且具有较高识别置信度的字符时,基于识别置信度的切分后处理方法难以找到正确的切分图形。此时,这些字符的宽度与平均字符宽度之间的差可被用来判断哪个切分图形在当前行/列中是合理的,这能够有效地提高字符切分的精度。
[0005] 因此,为了校正被误分离的或被误组合的字符,希望以高的精度计算平均字符宽度,并且不精确的平均字符宽度将导致切分错误,由此将降低OCR的精度。
[0006] 当前,存在两种用于计算平均字符宽度的方法。
[0007] 第一种方法(也被称为“方法1”)在本文被称为行高方法,其中,基于字符的宽高比遵循某个限制的假设,可通过将文本行的高度(以下被称为“行高”)乘以某个系数而得到文本行的平均字符宽度。通过上述方法得到的平均字符宽度通常可满足上面的切分要求,但是,该方法难以应对常常出现在标题或页眉等中的太宽或太窄的字符。
[0008] 第二种方法(也被称为“方法2”)在本文中被称为宽高比(简写为WHR)范围方法,其中,基于诸如“黑像素投影”的通常的切分方法的切分结果,具有合理宽高比(WHR)的字符被选择并且然后这些所选字符的宽度的平均值被用作文本行的平均字符宽度。但是,在应用第二种方法时,设置宽高比的范围是困难的。具体地,如果宽高比的限制是严格的,那么该方法同样不能处理太宽或太窄的字符;相反,在不严格的限制下,一些被误切分的字符将影响平均字符宽度的精度,当文本行短时或者当存在很多具有规定结构的字符时尤其如此。
[0009] 由上可知,这两种方法不能处理所有的情况。也就是说,由这两种方法所得到的平均字符宽度不一定在所有情况下是精确的或者准确的(反映字符的真实宽度)。
[0010] 日本专利公布No.JP 2000-040122公开了一种字符切分方法。具体地,在该方法中,在执行字符切分和得到粗略的切分结果之后,计算各字符的宽度柱状图并且将字符数量最多的字符宽度当作标准字符宽度。在该方法中,使用了各字符的宽度的分布,并且与上面描述的方法2有点相似。
[0011] 日本专利公布No.H05-114048公开了一种用于识别字符的方法和设备,其中,通过利用投影的方法来执行字符切分,并且根据切分结果计算平均字符宽度。当单个字符的宽度大于平均字符宽度时,将通过边界追踪方法对该字符再次切分。但是,该方法仅关注如何利用平均字符宽度,而没有关注如何计算平均字符宽度。
[0012] 然而,缺少有效的用于判断所得到的平均字符宽度是否适当的方法。进一步地,如果所得到的平均字符宽度不适当,则需要用于得到适当的平均字符宽度的方法。

发明内容

[0013] 本发明旨在解决上面描述的问题。本发明的一个目的是提供解决上面的问题之一或其全部的方法和装置。
[0014] 根据本发明的第一方面,提供一种用于确定字符组的平均字符宽度的方法,所述方法包括:第一平均字符宽度得到步骤,通过第一平均字符宽度计算方法得到字符组的第一平均字符宽度;置信度得到步骤,通过置信度计算方法得到第一平均字符宽度的置信度;以及平均字符宽度确定步骤,根据第一平均字符宽度的置信度来确定字符组的平均字符宽度是等于第一平均字符宽度还是等于第二平均字符宽度,其中,所述第二平均字符宽度是通过不同于第一平均字符宽度计算方法的第二平均字符宽度计算方法得到的。
[0015] 根据本发明的第二方面,提供一种用于确定字符组的平均字符宽度的装置,所述装置包括:第一平均字符宽度得到单元,被配置为通过第一平均字符宽度计算部件来得到字符组的第一平均字符宽度;置信度得到单元,被配置为通过置信度计算部件得到第一平均字符宽度的置信度;以及平均字符宽度确定单元,被配置为根据第一平均字符宽度的置信度来确定字符组的平均字符宽度是等于第一平均字符宽度还是等于第二平均字符宽度,其中,所述第二平均字符宽度是通过不同于第一平均字符宽度计算部件的第二平均字符宽度计算部件得到的。
[0016] 根据本发明的第三方面,提供一种用于切分字符组的方法,所述方法包括:使用上面所述的用于确定字符组的平均字符宽度的方法来确定字符组的平均字符宽度;以及根据字符组的平均字符宽度对字符组执行字符切分与合并。
[0017] 根据本发明的第四方面,提供一种用于切分字符组的设备,所述设备被配置为通过上面所述的用于确定字符组的平均字符宽度的装置来确定字符组的平均字符宽度并且根据字符组的平均字符宽度对字符组执行字符切分与合并。
[0018] 从以下参照附图的描述,本发明的其它特性特征和优点将变得清晰。

附图说明

[0019] 并入到说明书中并且构成说明书一部分的附图示出了本发明的实施例,并且与描述一起用于解释本发明的原理。在这些附图中,相似的附图标记用于表示相似的项。
[0020] 图1是示出用于实现用于确定字符组的平均字符宽度的装置的计算设备的布置的框图。
[0021] 图2A和图2B是分别示例性地示出文本行和文本列的“行高”、“行宽”、以及“字符宽度”或“字符的宽度”(将在本文中使用)的解释图。
[0022] 图3是示出实现根据本发明的第一实施例的用于确定字符组的平均字符宽度的方法的过程的流程图。
[0023] 图4是示出一种置信度计算方法的示例性过程的流程图。
[0024] 图5是示出另一种置信度计算方法的示例性过程的流程图。
[0025] 图6是示出再一种置信度计算方法的示例性过程的流程图。
[0026] 图7是示出根据本发明的参照相邻的(前一个或后一个)字符组的平均字符宽度计算方法的示例性过程的流程图。
[0027] 图8是示出根据本发明的第六实施例的通过将几种不同的ACW计算方法组合在一起来实现混合ACW计算方法的示例性过程的流程图。
[0028] 图9示出了根据本发明的用于确定字符组的平均字符宽度的装置的框图。
[0029] 图10示出了根据本发明的另一个用于确定字符组的平均字符宽度的装置的框图。
[0030] 图11包括图11A、图11B和图11C,并且示出了本发明的切分结果与现有技术的切分结果之间的比较。
[0031] 图12示例性地示出了一些错误切分的字符。
[0032] 图13示出了几个字符的示例性黑像素投影。

具体实施方式

[0033] 以下将参照附图来详细描述本发明的实施例。
[0034] 在本发明中,尤其是当用于文档图像中时,对于文本行而言,术语“行高”(用H表示)和术语“行宽”(用W表示)分别指的是文本行的高度和宽度,并且术语“字符宽度”或“字符的宽度”(用h表示)指的是字符的宽度,如图2A所示的那样;对于文本列而言,术语“行高”(用H表示)和术语“行宽”(用W表示)分别指的是文本列的宽度和高度,并且术语“字符宽度”或“字符的宽度”(用h表示)指的是字符的高度,如图2B所示的那样。这里,关于文本行和文本列,文本行意味着其中的字符以基本水平的顺序被排列,并且文本列意味着其中的字符以基本垂直的顺序被排列。但是,它们的定义仅是示例性的,并且它们是可以彼此互换的。
[0035] 另外,在本说明书和权利要求书中,术语“黑像素投影”指的是通过投影所得到的文本行中的像素列或文本列中的像素行的黑像素的数量,如本领域普通技术人员已知的。
[0036] 在本说明书和权利要求书中,术语“左”和“右”表示当以人们在阅读书本或文档时通常所用的普通方式来观看页面时的左手侧和右手侧。
[0037] 下面,将以文本行为例进行描述,并且本领域普通技术人员可以理解,本发明也可适用于文本列。
[0038] 顺便提一句,字符组(例如文本行)的平均字符宽度是该字符组中的字符的宽度的平均值。例如,如果字符组中的字符的宽度分别为12、13、11、14、12、10(例如,以像素为单位),则该字符组的平均字符宽度为12。另外,这里,与一个字符集对应的一个平均字符宽度的置信度被用于表示该平均字符宽度与该字符集的真实平均字符宽度的接近程度。
[0039] 图1是示出用于实现根据本发明的用于确定字符组的平均字符宽度的装置的计算设备的布置的框图。为了简单起见,该装置被示出为构建在单个计算设备中。然而,无论该装置构建在单个计算设备中还是构建在作为网络系统的多个计算设备中,该装置都是有效的。
[0040] 如图1所示,计算设备100用于实现确定字符组的平均字符宽度的处理。计算设备100可以包含CPU 101、芯片组102、RAM 103、存储控制器104、显示控制器105、硬盘驱动器
106、CD-ROM驱动器107、以及显示器108。计算设备100还可以包括连接在CPU 101和芯片组
102之间的信号线111、连接在芯片组102和RAM 103之间的信号线112、连接在芯片组102和各种外围设备之间的外围设备总线113、连接在存储控制器104和硬盘驱动器106之间的信号线114、连接在存储控制器104和CD-ROM驱动器107之间的信号线115、以及连接在显示控制器105和显示器108之间的信号线116。
[0041] 客户端120可以直接或经由网络130连接到计算设备100。客户端120可以例如向计算设备100发送确定字符组的平均字符宽度的处理所需的指令和/或参数,并且计算设备100可以将信息返回给客户端120或者在显示器108上显示信息。
[0042] [第一实施例]
[0043] 将参照图3来详细描述第一实施例。图3是示出实现根据本发明的第一实施例的用于确定字符组的平均字符宽度的方法的过程的流程图。将在下面详细描述图3。
[0044] 在步骤S301中,通过ACW计算方法(称为第一ACW计算方法)来得到当前字符组的ACW(称为“第一平均字符宽度”,简写为ACW1)。这里,所得到的ACW1可以是粗略的平均字符宽度。
[0045] 例如,可以由对于通过例如基于图像的切分方法所得到的初始切分结果的字符宽度求平均而得到粗略的平均字符宽度。再例如,也可通过如上所述的方法1和方法2之一或者任何其它的方法来计算粗略的平均字符宽度。
[0046] 更具体而言,例如,在方法1中,可以通过将当前字符组的行高乘以特定因子而得到ACW,所述特定因子的范围例如为0.8~1.2(例如,0.9)。
[0047] 另外,例如,对于方法2,可以通过以下操作来得到ACW:在假定一个文本行的字符的宽高比为一定值的情况下,设置字符的宽高比的范围(即,例如设置为[0.5,2.0]),选择当前字符组中的其WHR在该范围中的字符(例如,通过之前的切分操作得到的切分字符),然后计算所选字符的宽度的平均值作为ACW。
[0048] 另外,优选地,在得到ACW1之前,可以先执行通过使用切分方法来切分当前字符组中的字符的操作。由此得到所切分的字符(初始切分结果,也称为“第一切分结果”)。这里,请注意,第一切分方法可以是但不限于诸如投影、轮廓或相邻列的黑像素连通度之类的基于图像的切分方法。这里,上述的基于图像的切分方法包括基于投影的切分方法,例如,黑像素投影方法。上述的切分操作可得到粗略的字符切分结果,即,包括一些切分得不正确的字符。
[0049] 接着,在步骤302中,通过置信度计算方法(将在后面描述)得到用于表示ACW1与当前字符组(当前字符组可以是文本行或文本列,在下面将以文本行为例)的真实平均字符宽度之间的接近程度的ACW1的置信度。然后,该过程进入到步骤303。
[0050] 步骤303用于确定当前字符组的最终的平均字符宽度(称为“第二平均字符宽度”,简写为“ACW2”),包括步骤3031、3032和3033。首先,在步骤3031,判断ACW1的置信度是否大于或等于第一阈值(简写为“TH1”,例如0.4)。如果是,则该过程进入到步骤3032。在步骤3032中,将ACW1确定为当前字符组的最终平均字符宽度。另一方面,如果不是,则该过程转到步骤3033,并且同时,将第二平均字符宽度确定为当前字符组的最终平均字符宽度,所述第二平均字符宽度是通过使用不同于上述第一ACW计算方法的ACW计算方法(称为第二ACW计算方法)而得到的。
[0051] 这里,第二ACW计算方法也可以使用方法1、方法2、或者任何其它的ACW计算方法。也就是说,第二ACW计算方法包括但不限于在本发明中示出的ACW计算方法。但是,请注意,第一ACW计算方法和第二ACW计算方法应当彼此不同,以便得到不同的ACW。
[0052] 而且,当重新计算ACW时,例如,也可以考虑下面的判断条件:初始切分结果的字符数量是否大于特定阈值,以及重新计算的ACW的置信度是否大于一定值等。这将在后面示例性地描述。
[0053] 直到现在,通过上述过程确定了文本行(当前字符组)的最终平均字符宽度。这里,请注意,在本说明书中,阈值(包括上述第一阈值和要在后面描述的阈值)仅是示例性的,并且它们不限于在示例性实施例中所示出的值。
[0054] 根据本发明的第一实施例,通过粗略的平均字符宽度的置信度来判断该粗略的平均字符宽度是否可真正地或准确地反映当前字符组的真实平均字符宽度,并且,在不能以高的精度反映真实的平均字符宽度的情况下,可以使用其它的ACW计算方法以尝试得到更精确的平均字符宽度。这样,在不能检测连通字符的切分点和/或具有规定结构的字符被错误地划分为至少两个部分的情况下,通过第二ACW计算方法重新计算的第二平均字符宽度可以有助于找到正确的切分点和/或防止字符被错误地划分为至少两个部分,由此,可以提高OCR的精度。另一方面,在本实施例中,如果确定ACW1的精度是高的或者是可以接受的,则不需要进一步的处理,因此,可以提高OCR的速度。
[0055] [第二实施例]
[0056] 根据本发明的第二实施例将示出一种置信度计算方法,该置信度计算方法可以用于第一实施例或者需要计算置信度的任何其它情况。图4是示出根据本发明的一种置信度计算方法的示例性过程的流程图。以下将对该置信度计算方法进行详细描述。
[0057] 首先,已经通过使用任意一种ACW计算方法得到了诸如上述的ACW1或ACW2之类的特定ACW。
[0058] 在步骤401中,以该特定ACW为中心设置字符宽度范围(称为第一范围)。
[0059] 例如,第一范围可被表示如下:
[0060] [minCharWidth,maxCharWidth],
[0061] 其中,
[0062] minCharWidth=coeffl*sAveCharWidth,
[0063] maxCharWidth=coeffu*sAveCharWidth。
[0064] 其中,“minCharWidth”和“maxCharWidth”分别是第一范围的下限和上限;“coeffl”在0~1之间变化,例如可以为0.75;并且,“coeffu”在1~2之间变化,例如可以为
1.25;“sAveCharWidth”是该特定ACW的值。请注意,第一范围不限于上面的表达,这里也可以使用本领域普通技术人员已知的任何其它表达。
[0065] 然后,在步骤402中,从初始切分结果中选择宽度在第一范围内的字符。
[0066] 接着,在步骤403中,通过将所选字符的宽度的平均值除以该特定ACW来计算该特定ACW的置信度。
[0067] 通过上述示例性的置信度计算方法,可以判断所得到的平均字符宽度与真实的平均字符宽度(通常用估计的宽度表示所述真实的平均字符宽度)是否充分接近。由此,可以判断是使用所得到的当前字符组的ACW1还是重新计算当前字符组的ACW。
[0068] [第三实施例]
[0069] 本发明的第三实施例将参照图5来示出另一种置信度计算方法,该置信度计算方法可以用于上面描述的平均字符宽度确定方法。图5是示出根据本发明的另一种置信度计算方法的示例性过程的流程图。以下将具体描述该置信度计算方法。
[0070] 首先,与第二实施例类似,已经得到了特定的平均字符宽度。在步骤501中,通过使用聚类(clustering)方法,根据如上所述的初始切分结果中的字符的宽度,将它们聚类到不同的组。这里,聚类方法不限于特定的方法,任何能够将字符划分为不同的组的聚类方法都适用于本发明。为了易于理解,以下示出聚类方法的例子。
[0071] 例如,假定在一个文本行中有宽度分别为w1,w2,w3,w4,w5,w6,w7,w8,w9,和w10的10个字符。首先,计算w2与w1的比值。如果该比值在某个范围(例如[0.8,1.2])内,则将w2聚类到由w1和w2构成的组中。否则,如果该比值在该范围之外,则w2保持原样。继续将其它的宽度与w1进行比较(即,以w1作为基准),直到w2~w10全部被比较。以这种方式,得到两个组,例如,假定是由w1,w2,w4,w5,w8,w9构成的第一组和由w3,w6,w7,w10构成的第二组。然后,在w6,w7,w10和w3之间进行比较(即,以w3作为基准)。以这种方式,可以得到新的组,例如,由w3,w6和w10构成的新的第二组以及由w7构成的第三组。最终,这些字符的宽度被聚类为以下三个组:[w1,w2,w4,w5,w8,w9],[w3,w6,w10],以及[w7]。
[0072] 这里,请注意,存在各种聚类方法,并且在本发明中不对聚类方法作特别限制。
[0073] 接着,在步骤502中,各组中的字符的宽度的平均值被计算为该组的ACW。
[0074] 接着,在步骤503中,对各组中的各个字符分配权重并且然后得到各组的加权后的字符数量。例如,如果一个组具有权重为[0.6,1.4,1.4,1.4,0.6,1.4]的6个字符,则通过将0.6,1.4,1.4,1.4,0.6,1.4相加,得到该组的加权后的字符数量为6.8。
[0075] 接着,在步骤504中,选择这些组中的具有最大的加权后的字符数量的组。
[0076] 接着,在步骤505中,通过将所选组的平均字符宽度除以该特定平均字符宽度(即,所选组的ACW/该特定ACW)来计算该特定ACW的置信度。
[0077] 这里,如果有至少两个组具有最大的加权后的字符数量,则计算所述至少两个组的ACW的置信度,并且然后可以选择既具有最大的加权后的字符数量又在所述至少两个组中具有最大置信度的组作为所选的组。
[0078] 这里,关于向组中的字符分配权重的方式,考虑以下方面:如果该组内的一个字符具有好的边界点(这意味着黑像素投影在例如左边界和右边界处是小的),则该字符将被分配具有例如大于1且小于2(例如1.5)的值的权重。另一方面,如果该组中的一个字符具有差的边界点(这意味着黑像素投影在例如左边界和右边界处是大的),则该字符将被分配具有例如小于1且大于0(例如0.5)的值的权重。
[0079] 具体地,首先,判断字符的两个边界(具体地,对于文本行中的字符而言是左边界和右边界;对于文本列中的字符而言是上边界和下边界)处的黑像素投影是否都是波谷(即,最小值)。图13示例性地示出了黑像素投影。在该图中,在第一个字符(字符1)的两个边界处的黑像素投影不是均属于最小值。在该图示出的第三个字符(字符3)在两个边界处具有两个波谷。如果在一个字符的两个边界处的黑像素投影均为波谷,则向该字符分配例如大于1且小于2(例如1.5)的权重。如果不是,则向该字符分配例如小于1且大于0(例如0.5)的权重。这里,可以仅分配一个较大的权重和一个较小的权重。或者,也可以分配一些较大的权重和一些较小的权重。而且,本发明不将权重值限于上面所示的那些。
[0080] 通过上述的示例性的置信度计算方法,可以判断所得到的平均字符宽度与真实的平均字符宽度(通常用估计的宽度表示所述真实的平均字符宽度)是否充分接近。由此,可以判断使用所得到的平均字符宽度来切分字符是否适当。而且,如果不适当,则可以使用其它的ACW计算方法来得到更精确的ACW。
[0081] [第四实施例]
[0082] 本发明的第四实施例将参照图6来示出再一种置信度计算方法,该置信度计算方法可以用于上面描述的平均字符宽度确定方法。图6是示出根据本发明的再一种置信度计算方法的示例性过程的流程图。以下将具体描述该置信度计算方法。
[0083] 在步骤601中,设置字符宽度范围(称为“第二范围”),其中心为先得到的特定平均字符宽度(称为“SACW”)。例如,第二范围可以为[0.8*SACW,1.2*SACW]。
[0084] 接着,在步骤602中,从初始切分结果中选择宽度在第二范围内的字符作为第一字符组。
[0085] 接着,在步骤603中,计算第一字符组的字符数量作为第一字符数量C1。
[0086] 然后,在步骤604中,根据该特定平均字符宽度,将宽度大于第二范围的上限的字符(称为较大字符)切分为片段。此时,要在该步骤中被切分的字符常常是诸如包含一个完整字符和一个片段/一些片段的字符,其中,所述一个完整字符可位于要被切分的字符的左部或者右部。因此,当将这样的字符切分成片段时,所述一个完整的字符将被保持原样,并且只是将其它的一个片段/一些片段与其切分开。例如,如果所述一个完整的字符位于左部,则可根据特定平均字符宽度从左向右执行切分操作,以便在右侧找到正确的切分点,从而进一步将一个片段/一些片段与其切分开。另一方面,如果所述一个完整的字符位于右部,则可根据特定平均字符宽度从右向左执行切分操作,以在左侧找到正确的切分点,从而进一步将一个片段/一些片段与其切分开。
[0087] 具体地,关于如何切分较大字符,以下示出示例性处理。首先,从较大字符的左边界,向着其右侧方向,提取其与左边界的偏移为所述特定平均字符宽度的位置作为第一提取位置,并且左边界和第一提取位置之间的区域被用作第一切分字符。在下一步骤中,从第n个切分字符(n是大于或等于1的整数)的右边界,向着其右侧方向,提取其与所述第n个切分字符的所述右边界的偏移是特定平均字符宽度的位置作为第(n+1)个提取位置,并且,所述第n个切分字符的所述右边界与第(n+1)个提取位置之间的区域为第(n+1)个切分字符,然后设置n=n+1,重复该步骤直到该较大字符内的剩余区域的宽度小于所述特定平均字符宽度,并且将其宽度小于SACW的剩余的区域当作片段。
[0088] 请注意,上面描述的切分方向仅是示例性的,并且切分方向可以从较大字符的右边界开始,然后沿着相反的方向切分该字符。另外,上面描述的左边界和右边界也是示例性的,并且关于上边界和下边界的操作与上面描述是类似的。
[0089] 此外,本发明不限于这里示出的处理,也可以采用其它的处理,只要这些处理能够得到类似的结果。
[0090] 接着,在步骤605中,将(如上所述的排除了完整字符的)切分片段与宽度小于第二范围的下限的字符(称为较小字符)相组合,以形成新的字符。
[0091] 这里,在下面示出用于组合片段的示例性处理。首先,将上面描述的切分的片段和较小字符均当作片段,然后确定彼此相邻并且其间未被插入有完整字符的片段(即,这些相邻片段是连续的)作为相邻片段组,由此找到当前字符组中的所有的相邻片段组(一个或多个相邻片段组)。然后,对于这些组中的每个相邻片段组,如果组合后的片段的宽度在诸如第二范围的其中心为特定平均字符宽度的一个范围(例如,[0.8*SACW,1.2*SACW])内,则组合任意两个或更多个相邻片段,继续组合这些片段,直到该相邻片段组中没有片段可被组合。例如,如果不能在该相邻片段组的剩余片段中找到任意两个或更多个相邻片段,则该组合过程停止。
[0092] 然后,在步骤606中,选择宽度在第二范围内的新字符作为第二字符组。
[0093] 然后,在步骤607中,计算第二字符组的字符数量作为第二字符数量C2。
[0094] 然后,在步骤608中,通过将第一字符数量C1和第二字符数量C2的和除以如上所述的初始切分结果中的字符的总数量C(即,(C1+C2)/C),计算所述特定平均字符宽度的置信度。
[0095] 由此,可以判断使用所得到的平均字符宽度来切分字符是否适当。而且,如果不适当,则可以使用其它的ACW计算方法来得到更精确的ACW。
[0096] [第五实施例]
[0097] 在第五实施例中,将参照图7来描述基于当前字符组的相邻(前一个或后一个)字符组(如果存在这样的相邻字符组)的平均字符宽度的平均字符宽度计算方法(简写为方法3)。图7是示例性地示出根据本发明的该ACW计算方法的过程的流程图。将在下面详细描述图7。
[0098] 可以在图3中的步骤3033之后执行图7的过程。
[0099] 在步骤701中,首先,确定所选相邻字符组然后计算所选相邻字符组的ACW的置信度,所述所选相邻字符组的ACW的置信度用于表示该平均字符宽度与所选相邻字符组的真实平均字符宽度的接近程度,并且是通过上述置信度计算方法中的任意一种而得到的。
[0100] 这里,当确定所选相邻字符组时,在当前字符组仅具有一个相邻字符组(前一个或后一个字符组)的情况下,所述一个相邻字符组被选作所选相邻字符组。
[0101] 另一方面,当确定所选相邻字符组时,在当前字符组具有两个相邻字符组(例如,前一个文本行和后一个文本行,或者前一个文本列和后一个文本列)的情况下,在相邻字符组的平均字符宽度的置信度之中其平均字符宽度的置信度较大的相邻字符组可被选作所选相邻字符组。或者,本发明也可根据这两个相邻字符组与当前字符组的行高差,从这两个相邻字符组中选择一个,例如,选择一个其与当前字符组的行高差比另一个相邻字符组与当前字符组的行高差小的相邻字符组。本领域普通技术人员将理解,选择方法不限于上面描述的方法。
[0102] 接着,在步骤702中,得到所选相邻字符组(例如所选相邻文本行)的行高与当前字符组(例如,当前文本行)的行高之间的差值。
[0103] 然后,在步骤703中,判断它们之间的差值是否大于或等于第三阈值(简写为“TH3”)。这里,第三阈值TH3可取决于当前文本行和所选相邻文本行中的所有字符之中的最大字符高度。例如,可以通过下式(1)来计算第三阈值:
[0104] TH3=toeff*max(cLineHeigh t,sLinehight)            式(1),
[0105] 其中,“cLineHeight”和“sLineHeight”分别是当前文本行和所选相邻文本行中的最大字符高度,“toeff”是系数并且在0~1之间变化。例如,“toeff”可以位于0.2~0.4内,例如,为0.3。
[0106] 在所述差值大于或等于TH3的情况下,使用第一平均字符宽度作为当前文本行的平均字符宽度(步骤7042),并且终止该过程。在所述差值小于TH3的情况下,判断所选相邻文本行的平均字符宽度的置信度是否大于或等于第四阈值(简写为“TH4”)(步骤7041)。阈值TH4可以取决于所选相邻文本行的字符数量。例如,可以通过下式(2)来计算阈值TH4:
[0107] 式(2),
[0108] 这里,“sCharCount”是所选相邻文本行的字符数量。
[0109] 如果所选相邻文本行的平均字符宽度的置信度大于或等于TH4,则该过程进入步骤7051,并且,在步骤7051中,得到第三平均字符宽度(ACW3)并且将ACW3确定为当前文本行的最终平均字符宽度(ACW2),其中,基于当前文本行的第一平均字符宽度和所选相邻文本行的平均字符宽度来计算第三平均字符宽度(将在下面描述)。
[0110] 在所选相邻文本行的平均字符宽度的置信度小于TH4的情况下,使用第一平均字符宽度作为当前文本行的平均字符宽度(步骤7052)。
[0111] 具体地,可以通过第一平均字符宽度和所选相邻字符组的平均字符宽度的加权平均,即,通过下式(3)而得到上述第三平均字符宽度:
[0112] nWidth=coeff*cWidth+(1-coeff)sWidth    式(3),
[0113] 其中,“nWidth”,“cWidth”以及“sWidth”分别是第三平均字符宽度、第一平均字符宽度以及所选相邻字符组的平均字符宽度,“coeff”是在0~1之间变化的调整因子,例如为0.7。
[0114] 根据本发明的第五实施例充分地利用了当前字符组的相邻(前一个或后一个)字符组的平均字符宽度以进一步校正之前得到的当前字符组的平均字符宽度,由此提高切分精度。这是因为有时相邻文本行可给出有意义的参考,当文档图像的文本段中的字符彼此基本一致时尤其如此。
[0115] [第六实施例]
[0116] 在第六实施例中,通过置信度来组合几种不同的ACW计算方法以便满足不同的情况。图8是示出了实现根据本发明的这种方法的过程的流程图。以下将详细描述图8。
[0117] 在步骤801中,例如,通过如上所述的那样对初始切分结果中的字符的宽度求平均来得到ACW1。
[0118] 接着,步骤802与图3中的步骤302类似,即,通过上面所述的置信度计算方法中的任意一种来得到ACW1的置信度。
[0119] 接着,在步骤803中,判断当前文本行(当前字符组)的初始切分结果的字符数量是否大于或等于第二阈值(简写为“TH2”)。如果该字符数量大于或等于TH2,则该过程进入到步骤804。否则,如果该字符数量小于TH2,则该过程转到步骤8062。
[0120] 在步骤804中,在假定文本行的字符的宽高比是一定值的情况下,设置字符的宽高比的范围(即,第三范围,例如为[0.5,2.0]),然后选择当前文本行中的其WHR在第三范围内的字符,并且然后计算所选字符的宽度的平均值作为第四平均字符宽度(ACW4),并且也通过上述置信度计算方法中的任何一种来得到ACW4的置信度。接着,该过程进入到步骤805。
[0121] 在步骤805中,与图3中的步骤3031类似,判断ACW4的置信度是否大于或等于第五阈值(简写为“TH5”,例如0.75)。如果ACW4的置信度大于或等于第五阈值,则在步骤8061中将ACW4确定为当前文本行的最终平均字符宽度(ACW2),并且该过程终止。否则,如果ACW4的置信度小于第五阈值,则该过程转到步骤8062。
[0122] 步骤8062、807、808和8081中的处理与图7中的步骤701、702、703、7041和7051中的处理类似。具体地,使用方法3来得到ACW5。如果当前文本行的行高与所选相邻文本行的行高之间的差值小于第六阈值(简写为“TH6”)并且所选相邻文本行的ACW的置信度大于或等于第七阈值(简写为“TH7”),则将ACW5确定为当前文本行的最终平均字符宽度(ACW2)。这里,可分别与上面描述的TH3和TH4类似地确定阈值TH6和TH7。这里,可与ACW3类似地确定ACW5。否则,该过程进入到步骤8082。
[0123] 与第一实施例中的类似,步骤8082用于根据方法1得到第六平均字符宽度。具体地,在步骤8082中,通过将当前文本行的行高乘以范围在0.8~1.2之间的特定值(例如,为0.9)来得到ACW6。
[0124] 接着,在步骤8083中,通过上述置信度计算方法中的任意一种或者任何其它置信度计算方法来得到ACW6的置信度。
[0125] 然后,在步骤8084中,判断ACW6的置信度是否大于或等于第八阈值(简写为“TH8”),例如,0.75。如果ACW6的置信度大于或等于“TH8”,则将ACW6确定为当前文本行的最终平均字符宽度(ACW2)(步骤8086),并且然后该过程终止。否则,将ACW1确定为当前文本行的最终平均字符宽度(ACW2)(步骤8085),并且然后该过程终止。
[0126] 在本实施例中,通过使用置信度来组合几种不同的ACW计算方法,以便满足各种各样的情况。也就是说,充分地利用这些方法的优点来进一步校正从通过初始切分操作而得到的粗略的切分结果得到的平均字符宽度。根据第六实施例,大大地提高了切分精度,由此大大地提高了OCR的精度。
[0127] 请注意,尽管本实施例描述了三种方法的一种组合(按照方法1+方法2+方法3的顺序),这三种方法的其他各种组合也是适当的。例如,也可以将方法1+方法3+方法2的组合应用于本发明。事实上,可以将几种方法(不限于上面描述的方法)的各种各样的组合应用于本发明,只要第二平均字符宽度计算方法与第一平均字符宽度计算方法不同即可。例如,也可以使用两种方法的组合,例如,方法1与方法2的组合、方法1与方法3的组合、方法2与方法3的组合等来计算当前字符组的ACW。这里,请注意,几种方法的组合具有与这几种方法的布置顺序有关的组合方案。例如,方法1与方法2的组合可以是“方法1+方法2”和“方法2+方法
1”,并且它们是不同的用于计算当前字符组的ACW的方案。但是,本发明不特定限制几种方法的布置顺序。相反,这些变型都在本发明的保护范围之内。只要如上面所述的那样通过置信度和/或判断条件来组合这些方法或者类似的方法即可。
[0128] [第七实施例]
[0129] 本实施例将示出根据本发明的用于确定当前字符组的平均字符宽度的装置(也称为ACW确定装置)。将参照图9来详细描述本实施例。
[0130] 如图9中所示,ACW确定装置901可以包括第一ACW得到单元902、置信度得到单元903、以及ACW确定单元904。
[0131] 第一ACW得到单元902被配置为通过第一平均字符宽度计算部件得到第一平均字符宽度(ACW1)。置信度得到单元903被配置为通过置信度计算部件得到第一平均字符宽度的置信度。ACW确定单元904被配置为根据ACW1的置信度,判断当前字符组的最终平均字符宽度是ACW1还是通过第二平均字符宽度计算部件得到的第二平均字符宽度(ACW2)。具体地,与图3中的步骤303类似,ACW确定单元904被配置为判断ACW1的置信度是否大于或等于第一阈值(简写为“TH1”,例如为0.4);如果是,则将ACW1确定为当前字符组的最终平均字符宽度;否则,将第二平均字符宽度(ACW2)确定为当前文本行的最终平均字符宽度。
[0132] 根据本发明的第七实施例,通过用第一平均字符宽度计算部件得到的粗略的平均字符宽度的置信度来判断该粗略的平均字符宽度是否能够真正地或准确地反映当前字符组的真实平均字符宽度,并且在不能准确地反映真实字符宽度的情况下,可以得到新的平均字符宽度。这样,在连通字符的切分点不能被检测到和/或具有规定结构的字符被误划分成至少两个部分的情况下,第二平均字符宽度可以有助于找到正确的切分点和/或防止字符被误划分成至少两个部分,由此可提高OCR的精度。另一方面,在本实施例中,如果确定ACW1的置信度是可接受的,则不需要进一步的处理,由此可提高OCR的速度。
[0133] [第八实施例]
[0134] 本实施例示出了根据本发明的用于确定当前字符组的平均字符宽度的另一个装置(也称为ACW确定装置)。将参照图10来详细描述本实施例。图10中的类似的附图标记表示与图9中的部件类似的部件。因此,对于这些类似部件的描述将被省略。
[0135] 第一切分单元1002被配置为通过使用诸如基于图像的切分方法之类的切分方法来切分当前字符组(例如文本行或文本列),由此得到初始切分结果。
[0136] 与第七实施例中的ACW确定装置901不同,ACW确定装置1001可进一步包括:使用方法1的基于行高的ACW计算单元1004,使用方法2的基于WHR(宽高比)范围的ACW计算单元1003,以及使用方法3的基于相邻字符组的ACW计算单元1005。可以通过一个或多个可选的选择器来切换这些计算单元。因此,本领域技术人员能够理解,可以任意地组合这三个计算单元并由此可以任意地组合这三种方法来计算新的平均字符宽度。
[0137] 根据本发明的第八实施例,该装置可提高切分精度并由此可提高OCR的精度和/或提高OCR的速度。
[0138] [本发明和现有技术的比较结果]
[0139] 以下,为了示例本发明的效果,将参照图11来描述本发明和现有技术的比较结果。请注意,这些比较是针对图8中所示的第六实施例进行的,由于该实施例包含组合的方法并且有助于比较。
[0140] 图11包括图11A、图11B和图11C,并且示出了本发明和现有技术的切分结果之间的比较。
[0141] 具体地,图11A示出了在当前文本行中的字符非常窄的情况下、在背景技术部分中提到的方法1的切分结果与本发明的切分结果之间的比较,其中,上一行是方法1的切分结果,下一行是本发明的切分结果。由方法1,该文本行的平均字符宽度被计算为45(以像素为单位)。但是,根据本发明,该文本行的平均字符宽度在图8中的步骤804被确定为13(以像素为单位)。这些字符的真实宽度为[14,14,14,14,13,13,13,13,5,14,14,14,14,13,13,13,8,8,12,13,11,12,10,11,12,13]。由此可知,通过本发明得到的平均字符宽度与真实的平均字符宽度非常接近。
[0142] 图11B示出了在当前文本行短并且没有相邻行的情况下、在背景技术部分中提到的方法1的切分结果与本发明的切分结果之间的比较,其中,上一行是方法1的切分结果,下一行是本发明的切分结果。由方法1,该文本行的平均字符宽度被计算为29(以像素为单位)。但是,根据本发明,该文本行的平均字符宽度在图8中的步骤8082被确定为58(以像素为单位)。这两个字符的真实宽度为[63,61]。由此可知,通过本发明得到的平均字符宽度与真实的平均字符宽度非常接近。
[0143] 图11C示出了在字符按列排列并且当前列具有相邻列的情况下、在背景技术部分中提到的方法2的切分结果与本发明的切分结果之间的比较,其中,左边部分是方法2的切分结果,右边部分是本发明的切分结果。由方法2,文本列(两列中位于左边的那一列)的平均字符宽度被计算为24(以像素为单位)。但是,根据本发明,文本列(两列中位于左边的那一列)的平均字符宽度在图8中的步骤8081被确定为34(以像素为单位)。该文本列中的这些字符的真实高度为[40,37,38,39,38,38,38,40]。由此可知,通过本发明获得的平均字符高度与真实的平均字符高度非常接近。这里,通过本发明得到的精确的平均字符高度利用了前一文本列(两列中位于右边的那一列)的信息。
[0144] 由上面的比较结果可知,通过本发明提供的方法可以得到比现有技术好得多的切分结果。
[0145] 尽管已经参照附图描述了本发明,但是方法和/或单元不限于本文描述的那些,本领域普通技术人员能够理解,其它的方法和/或单元也可适用于本发明。另外,请注意,在实施例中示出的阈值仅是例子,它们不限于那些值。
[0146] 另外,切分设备可被配置为通过使用上面所述的ACW确定装置来得到平均字符宽度,并且然后根据所得到的平均字符宽度来切分当前字符组。用于切分字符组的方法包括使用用于确定平均字符宽度的方法来确定当前字符组的平均字符宽度,然后根据所得到的平均字符宽度来切分当前字符组。
[0147] 可以通过许多方式来实施本发明的方法和装置。例如,可以通过软件、硬件、固件、或其任何组合来实施本发明的方法和装置。上述的方法步骤的次序仅是说明性的,本发明的方法步骤不限于以上具体描述的次序,除非以其它方式明确说明。此外,在一些实施例中,本发明还可以被实施为记录在记录介质中的程序,其包括用于实现根据本发明的方法的机器可读指令。因而,本发明还覆盖存储用于实现根据本发明的方法的程序的记录介质。
[0148] 虽然已通过示例详细展示了本发明的一些具体实施例,但是本领域普通技术人员应当理解,上述示例仅意图是示例性的而非限制本发明的范围。本领域普通技术人员应当理解,上述实施例可以被修改而不脱离本发明的范围和实质。本发明的范围是通过所附的权利要求来限定的。