基于模型的去扭曲方法和设备的制作方法

文档序号:6454662阅读:192来源:国知局
专利名称:基于模型的去扭曲方法和设备的制作方法
技术领域
本发明涉及一种用于对获取的图像进行处理的设备和方法,更具体地讲,涉及一种对包括文档的获取的图像进行处理的设备和方法。
背景技术
由于诸如CD-ROM的存储介质变得越来越便宜,所以越来越多的文档不再以ASCII码进行存储而是以图像或像素格式进行存储。这些成像文档能够用于进行参考、搜索或发行。通常,通过诸如扫描仪或数字相机的输入装置来获取文档的存储图像。然而,当通过扫描仪或者在更坏的情况下通过数字相机获取图像中的文档内容时,会产生图像畸变的问题。
图1A是示出了扫描仪的典型组件的框图。扫描仪通常用于获取文档110的图像。文档110被放置在扫描仪板112上。扫描头120在移动越过文档110,该扫描头120通常包括光学子系统122和电荷耦合器件("CCD") 124。尽管图1A仅仅示出了二维视图,但是扫描头120既可以在由箭头114指示的方向上跨越文档进行移动,也可以在与箭头114垂直的方向上跨越文档进行移动。光学子系统122将从文档110反射的光聚焦到CCD 124上。通常,CCD 124被实现为光敏电容性元件的二维阵列。当光入射到CCD 124的光敏元件上时,电荷被俘获在半导体元件的耗尽区中。与这些光敏电容性元件相关联的电荷量与在一个取样周期内接收到的入射到各个元件上的光的强度有关。因此,通过经由对各个光敏电容性元件进行取样确定这些光敏电容性元件处的入射光的强度来获取图像。由光敏电容性元件产生的
模拟信息经由模拟-数字(A/D)转换器130被转换成数字信息。A/D转换器130可将从CCD 124接收到的模拟信息按照串行方式或者并行方式进行转换。转换后的数字信息可以被存储在存储器140中。然后,根据存储在ROM 180中的控制软件,由处理器150对该数字信息进行处理。用户可以经由用户接口 170控制扫描参数,并且经扫描的图像经由输出端口 160被输出。
图1B示出了数字相机的框图。与扫描仪几乎一样,可以利用数字相机的光学子系统122将从文档110反射的光聚焦到CCD 124上。在其它数字相机中,利用与CCD不同的诸如CMOS传感器的器件来获取从图像反射的光。在数字相机的情况下,与扫描仪相对,光学子系统122不像在扫描仪中那样沿着文档的表面移动。相反,在数字相机中,通常,光学系统122相对于诸如文档的待成像物体是静止的。除了数字相机以外,也可以将从胶片式相机获取的照片进行数字化。
针对获取文档图像和其它图像,相机提供了超过扫描仪的显著优点。例如,与扫描仪相比,相机通常是更加便携的。此外,由于扫描仪需要将获取的图像放置于扫描仪板上,所以与扫描仪相比,相机能够获取更大批的图像。然而,利用相机获取图像会产生利用扫描仪时不存在的困难。例如,当利用相机时光环境会发生改变,而在扫描仪中光环境通常是受到控制的。此外,利用相机会引入图像畸变,这取决于各种变量,诸如相机相对于图像的角度、相机使用的透镜及其到图像的距离、包括文档的图像是位于平坦表面上还是位于弯曲表面上、以及其它因素。由于扫描仪利用位于距待成像文档的固定距离处的移动扫描仪头,所以在扫描仪中通常不会发生这些畸变。
已经进行了关于解决图像畸变的问题的许多研究。Brown和Seales提出了一种基于3D图像的针对任意扭曲文档的通用去歪斜(de-skewing ) 算法 ("Image Restoration Arbitrarily Warped
6Documents," IEEE Transactions on Pattern Analysis and MachineIntelligence, Vol. 26, No. 10, (2004).) 。 Zhang等人开发了 一种用于对由平板扫描仪获取的文档图像进行处理的阴影深度(depth-from-shading )算法。("Restoration of curved Document Image Through3D Shape Modeling," Pro. of the 6th International Conference onDocument Analysis and Recognition, pp. 10-15(2004》)。但是,这种技术高度依赖于照明条件,因此不适于用数字相机获取的图像。
认识到数字相机与扫描仪相比较而言是更加方便的输入装置,研究人员已经开发出了用于减小由数字相机获取的图像中的图像畸变问题的模型。例如,Cao等人开发了一种用于估计打开的书籍的柱面形状的参变模型("Rectifying the Bound Document Image Captured bythe Camera: A Model Based Approach," Proc. of InternationalConference on Document Analysis and Recognition, pp. 71-75
(2003))。利用这种技术的主要限制在于仅当相机透镜的透镜平面与成像书籍的表面平行时,该模型才起作用。Liang等人已经开发了一种用于对书籍的页表面进行建模并且利用页面上的印刷文本内容的属性(平行和相等的行间距)来恢复表面形状的可展表面
("Flattening Curved Documents in Images," InternationalConference on Computer Vision and Pattern Recognition, pp. 338-345(2005年6月))。通过利用这种技术,相机透镜的透镜平面不再需要与书籍的表面平行。然而,被Cao和Liang用来校正成像文档上的畸变的模型基于文本行信息。换言之,这些模型高度依赖于成像书籍中的文本行的存在。如果书籍的一页具有许多照片或等式而非文本行,则该Cao和Liang模型将不会良好工作。
因此,仍然需要一种用于获取文档的图像的改进设备和方法,该改进设备和方法可以利用相机相对于扫描仪的优点,还能减小经由相机而非扫描仪获取文档图像通常会出现的畸变。优选的是,该设备和方法应该能够不管在成像文档上是否存在文本行都可以减小获取的图像中的畸变,从而使得可以对具有照片和等式的文档的获取的图像中的畸变进行校正。此外,优选的是,该设备和方法不应该受限于当相机透镜的透镜平面与书籍的表面平行时产生的图像。

发明内容
本发明描述了 一种用于对包括成像文档的获取的图像进行处理的设备和方法。在一个实施例中,该设备包括用于获取成像文档的静止相机。在另一个实施例中,利用非静止相机获取成像文档。在另一个实施例中,用于对包括文档的获取的图像进行处理的方法包括如下步
骤将成像文档与其背景进行区分;对获取的图像进行调整以减小由于利用相机而导致的畸变并且恰当地对文档进行定向。在另一个实施例中,提供了 一种用于对获取的弯曲文档的图像进行去扭曲的设备和方法。


图1A示出了现有技术的文档扫描仪。图1B示出了现有技术的数字相机。
图2示出了用于对获取的图像进行处理的优选方法的总体流程图。
图3示出了用于对获取的图像进行处理的方法的另一个实施例的流程图。
图4示出了根据本文公开的对文档进行成像的方法的实施方式之一执行分割的方法的流程图。
图5示出了执行图4所示的随机取样一致步骤的一个方法的流程图。
图6示出了执行图4所示的异常值去除步骤的一个方法的流程图。
图7示出了根据本文公开的对文档进行成像的方法执行分割的另一个方法的流程图。
图8示出了执行图2和图3所示的畸变去除步骤的一个方法的流
8程图。
图9示出了执行图3所示的文本行步骤的一个方法的流程图。图10示出了根据本文公开的对文档进行成像的方法的一个实施
方式确定是否以正立方式对文档进行恰当定向的一个方法的流程图。图11示出了用于获取并且处理包括成像文档的图像的设备的一
个实施例。
图12示出了根据本文公开的对文档进行成像的方法的一个实施方式确定是否以正立方式对文档进行恰当定向的一个方法的流程图。图13示出了用于对获取的图像进行处理的系统的一个实施例。图14示出了根据本发明的执行图像去扭曲的方法的流程图。图15示出了用于针对扭曲文档的图像产生弯曲坐标网的方法的流程图。
图16示出了执行图15所示的局部方向增强步骤的一个方法的流程图。
图17示出了要由图14的图像去扭曲技术校正的分割后的原始图像并且示出了将弯曲坐标网应用于扭曲文档的图像的另选方法。
图18示出了具有弯曲坐标网的扭曲文档页面的图像的例子。
图19示出了具有在图14的拉伸步骤后生成的拉伸的不成比例的矩形网的文档的图像。
图20示出了例示在用于执行图14的拉伸步骤的本发明的优选实施例中使用的模型的3D投影图。
图21示出了在图14的调整步骤后的矩形网。
图22示出了进一步例示用于执行图14的拉伸步骤的优选模型的投影图。
图23示出了用于示出执行图14的调整步骤的优选模型的打开书籍的侧视图。
图24示出了用于进一步例示执行图14的调整步骤的方法的投影图。
图25示出了用于进一步例示执行图15的文本区域分割步骤的方法的略像。
图26A示出了用于进一步例示执行图16的文本行距离检测步骤的方法的文本图像的小段。
图26B示出了用于进一步例示执行图16的文本行距离检测步骤的方法的略像。
图27A到27F示出了可以用于执行图16的计算和增强方向矩阵步骤的6个9x9方向模板。
图28A示出了用于进一步例示执行图16的基于方向矩阵的增强步骤的方法的获取的包括文本行的文档图像。
图28B示出了在图16的基于方向矩阵的增强步骤以后可以从图28A的图像中的文本行产生的文本行的基干的图像。
图29A示出了用于进一步例示执行图15的文本行提取步骤的一个方法的文本行的基千的图像。
图29B示出了在图15的文本行提取步骤的一个方法中可以从图29B中的图像产生的变细的文本行的基千的例子。
图30示出了在图15的文本行提取步骤中在从图29B的图像提取文本行的一个方法的过程中可以利用的垂直检测带。
图31A到31B示出了用于进一步例示执行图15的文本行提取步骤的另一个方法的文本行图像。
图32示出了在根据图14的一个图像去扭曲技术中使用的从图17的分割后的图像提取的图像的例子。
图33示出了在图14的图像去扭曲技术中使用的从图32中的图像产生的提取出的边缘行的图像。
具体实施例方式
这里描迷的实施例可以用于对从相机获取的包括文档的图像进行处理。这里描述的实施例可以用于从获取的文档图像的背景中识别该获取的文档图像。在将获取的文档图像与其背景隔离以后,这里描述的实施例可以用于减小或去除获取的文档图像的畸变。这里描迷的实
10施例还可以用于将获取的文档图像旋转到它的恰当定向。此外,这里描述的实施例向用户提供实施它的各种实施例中的每个步骤是否成功的评估。
图2示出了用于对获取的数字图像进行处理的优选方法的总体流程图。在步骤210中开始以后,在步骤220中接收数字图像。在步骤220中接收的图像包括文档图像。可以从各种源接收该数字图像。例如,在一个实施例中,可以从数字相机接收该图像。在另一个实施例中,可以从包括数字相机的静止单元接收该图像。在另一个实施例中,可以从已经被数字化的胶片照片接收该图像。在早先已通过电子成像装置获取了图像的情况下,还可以从任何已知的用于电子文件的存储介质接收该图像。
步骤230用于将获取的文档图像从图像的剩余部分或背景中识别出来。步骤230称作分割。这个步骤230可以用于检测获取的文档图像的边缘。这个步骤230还可以用于从获取的文档图像中剪掉图像的背景,从而将文档与其背景分离。步骤240称作畸变去除,用于减小或去除获取的文档图像的畸变。这个步骤240可以校正的一些畸变是透视畸变、透镜畸变、扭曲畸变和光畸变。在这个步骤2W中还可以对其它的畸变进行校正。步骤250用于校正文档的定向。这个步骤250可以用于确定获取的文档图像是应该处于纵向定向还是横向定向并且相应地对获取的文档图像进行旋转。这个步骤250还可以用于确定获取的文档图像是否上下颠倒并且相应地对获取的文档图像进行旋转。在步骤260中,输出处理后的文档图像。在步骤260中,能够通过各种方式将处理后的文档图像输出,例如,将处理后的文档图像的图像显示在监视器上,将处理后的文档图像保存到计算机文件中,对文档图像进行电子传输,或者打印处理后的文档图像。
在一些实施例中,可能期望执行比图2中反映的步骤更少的步骤或者将某些步骤的顺序颠倒。例如, 一些实施例可以仅仅包括畸变去除、或分割和畸变去除。在其它的实施方式中,可能期望仅仅执行畸变去除步骤和定向步骤。
ii图3示出了用于对获取的图像进行处理的方法的另一个实施例的流程图S00。在步骤350中开始以后,在步骤310中接收图像。在步骤M5中,将接收图像转换成装置无关的位图。在步骤320中,利用基于边缘的分割处理执行分割。基于边缘的分割处理320识别获取的图像文档的边缘以将获取的文档图像与它的背景进行区分。
图4示出了基于边缘的分割处理320的一个实施例的流程图。在这个实施例中,水平和垂直边缘点被定位。这是通过搜索边缘点而完成的。通过对接收图像的包含从接收图像的背景部分到接收图像的文档部分的过渡的部分进行识别来确定边缘点。在一个实施例中,在步骤410中从接收图像的中心开始对接收图像进行扫描,并且在步骤420中还从接收图像的边沿开始对接收图像进行扫描。在一个实施例中,假定文档图像占据了接收图像的中心。在另一个实施例中,假定获取的文档图像的非文本部分的像素强度大于它的背景的像素强度。在步骤410中从接收图像的中心开始进行的扫描中,在找到能够被识别为文档像素的区域以后,伴随扫描对到背景像素的过渡进行搜索。在步骤420中从接收图像的边沿开始进行的扫描中,识别作为背景像素的区域并且识别到文档图像像素的过渡。可以利用这两个扫描步骤410和420 二者或者它们中的任何一个执行该处理。在一个实施例中,在步骤410和步骤420中,在水平方向和垂直方向上对接收图像进行扫描。
然后,执行随机取样一致(consensus)步骤430。图5示出了随机取样一致步骤的一个实施例。在这个实施例中,通过在步骤510中从在步骤410和步骤420中选择的边缘点中随机地选择两个点,执行随机取样一致步骤430。然后,在步骤520中计算连接这两个随机选择的点的线。在一个实施例中,利用角度距离坐标,其中角度值对应于线段的环绕接收图像的中心的角度,并且距离值对应于从接收图像的中心到该线段中的最近点的距离。在其它的实施例中,可以利用其它的坐标系,包括例如笛卡尔坐标或极坐标。然后将这些值存储。在步骤530中,对从在步骤410和420中获得的边缘点中选择两个随机点的处理进行重复以获得足够的取样组。在一个实施例中,需要对这个处理重复五千次,但是可以使用不同的取样大小。在取样以后,将
均位于同一条线上的点对分组到仓(bin)中。如果在步骤410和步骤420中选择的初始边缘点准确地代表接收图像中的文档的边缘,则这些点中的大约四分之一将会被分布到与四个文档边缘对应的四个小的范围中,而剩余的点将会大致均匀地散布在其余的可能坐标上。将具有最多分组线段(540)且满足分组线段的最小阈值的四組分組线段识别为代表接收图像中的文档的四个边缘(550 )。在一个实施例中,根据这些线段集合的在接收图像中的相对位置,将它们确定为左边缘、右边缘、上边缘和下边缘。
在执行随机取样一致步骤430以后,在一个实施例中,在边缘点的集合中执行异常值去除步骤440,从而进一步改进对文档边缘的识别。在一个实施例中,如图6所示,通过在与接收到的文档图像的边缘之一对应的边缘点的集合之间执行线性回归来执行这项工作。在线性回归技术中,绘制一条线,尝试最准确地连接边缘点的集合(610)。如果将离这条线性回归线最远的点确定为足够远离该线性回归线的距离(620 ),则在步骤630中去除该点,并且执行新的线性回归。重复该处理,直到离该线性回归线最远的点位于阈值内并且得到的线性回归线被确定为边缘线。对代表接收图像文档的四个边缘的四个边缘点集合的每一个执行这项工作。
返回参照图3,在步骤325中,根据基于边缘的分割320确定边缘线的识别的准确度的计算。这个步骤325可以称作置信度的计算。在一个实施例中,针对接收到的文档图像的每个边缘计算置信度,并且最低值被确定为整体置信度。在另一个实施例中,将边缘线中的最高置信度值确定为整体置信度。在另一个实施例中,利用边缘线的置信度的組合(例如线边缘的置信度的均值)来确定整体置信度。在用于计算特定线边缘的确定的置信度的一个实施例中,计算在异常值去除(440)以后剩余在该边缘的集合中的像素点的数目与本来能够在该边缘上找到的像素点的总数之间的比率。该置信度确定能够用于改
13善接收到的文档图像的畸变去除(240, 350),并且还能够用于针对特定的接收图像通知用户该系统的执行准确度。
在一个实施例中,如果不能够找到图像中的文档和文本的边缘,则对处理器进行编程以假定该图像是非文档图像并且不改变该图像。利用这个实施例的优点在于能够检测出在提供的图像中根本没有文档的情况。这是有用的,因为这个实施例能够用于处理包含文档照片与诸如人物或风景照片的人们日常利用他们的相机拍摄的类型的照片的混合物的一 系列图像。检测到不存在文档意味着这些照片将不会发生畸变。在步骤330中,如果基于边缘的分割步骤320中的置信度不足够高,则还可以执行步骤335的基于内容的分割。作为另一种选择,基于内容的分割可以是执行的唯一的分割类型。
基于内容的分割步骤335利用获取的图像文档的文本来计算获取的图像文档的关于文本的边缘。在图7中示出了基于内容的分割处理的一个实施例。在图7的基于内容的分割处理中,通过在步骤710中识别接收到的文档图像中的连接成分并且在步骤720中找到与这些成分最近的邻居来完成分割。连接成分是指图像中的一組像素,在这组像素中每个像素都是黑色或暗色并且每个像素都与这组像素中的至少一个其它像素相邻。然后,在步骤730中,将连接成分的中心连接成线,然后在步骤740中,利用这些线确定文本的边沿。在步骤750中,从这些边界,页边空白被加入(750)以识別接收的文档图像的边缘的位置。尽管该页边空白的大小可以改变,但是在一个实施例中,在步骤750中加入标准页边空白。
返回参照图3,在步骤340中,计算获取的文档图像的角、corner )。在一个实施例中,可以从边缘线的交点计算角。
如先前所述,畸变去除步骤240和350可以包括对接收图像的多种调整。在一个实施例中,畸变去除步骤240和350将对接收到的文档图像进行调整以对接收图像中的透视畸变进行校正。例如,在没有以直接位于上方且位于文档中心的角度拍摄照片的情况下,将会出现接收到的文档图像的透视畸变。在图8中示出了用于对图像进行调整以校正透视畸变的一个实施例。这个实施例包括在步骤810中,将例如(x, y)的一组图像坐标映射到例如(u, v)的一组新的图像坐标。在分割步骤230、"0、 335以后,在步骤340中确定了文档的四个角。通常,在包含透视畸变的文档中,这四个角将对应于梯形,而文档通常应为矩形。因此,在一个实施例中,在接收到的梯形与期望矩形之间执行映射810。用于实现该映射810的一个实施例经由表示从畸变的像素坐标到非畸变的像素坐标的变换的齐次矩阵,利用非畸变的像素坐标与畸变的像素坐标之间的齐次转换,这使本领域所公知的。能够通过将在分割步骤230、 320和335中确定的四个角与非畸变的接收到的文档图像的校正后尺寸进行比较来计算该变换。在一个实施例中,通过简单地针对每条线计算变换并且利用线性插值来计算新的像素坐标,能够避免计算每个像素点的变换的需要。在映射与透视畸变减小的文档对应的新的坐标以后,在步骤815中执行像素的重新取样。
可以在畸变去除步骤240和350中进行调整的接收图像的另一个方面是对由相机透镜导致的畸变进行调整820。由相机透镜导致的畸变可以使直线发生弯曲。这个畸变取决于使用的特定透镜以及相机与获取的图像的距离。由透镜畸变导致的弯曲通常是径向的,因此,能够利用近似于透镜畸变的程度的参数来执行对透镜畸变的均匀径向调整。这个参数可由系统进行计算或者由用户输入。
可以在畸变去除步骤240和350中进行调整的接收图像的另 一个方面是对超过一个的畸变进行调整。例如,如果成像文档是如图18所示的书籍的页,则该成像页可能具有弯曲的表面,从而导致弯曲或扭曲畸变。另外,当按照相对于页面倾斜的角度拍摄成像文档时,会出现透视畸变。可以在畸变去除步骤240和350中对这些畸变都进行校正。在下文中,结合图14到图22描述用于对书籍和其它文档的获取的图像去扭曲以及如果需要的话从这些图像去除透视畸变的优选实施例的详细描述。
还可以对其它的畸变进行校正,并且这里对特定类型的畸变的描
15述并非是要限制可以减小或去除的畸变的类型。
在步骤365中,对在步骤360中创建的图像执行阈值化(thresholding)处理。该阈值化处理365减小图像的色深并且具有减小由当拍摄图像时可能使用的闪光灯导致的畸变的潜在优点。在一个实施例中,阈值化处理365将24位彩色图像缩减到1位黑白图像。将图像缩减为黑白图像的潜在优点在于能够减小由相机的闪光灯引入的效过并且减小由系统300进行处理所需的信息量。能够按照多种方式执行阈值化365。 一个实施例可以利用本领域中已知的抖动技术。可以在诸如Snobound软件>5^司的SNOWBOUND⑧IMAGELIBRARY的现有图像软件中找到抖动技术的例子。然而,利用抖动技术的一个缺点是将噪声引入到图像中。阈值化365的另一个实施例包括为图像选择全局阈值。在这种技术中,选择一阈值。强度大于该阈值的那些像素被认为是白色的,而其余像素被认为是黑色的。能够按照多种方式选择该阈值。在一个实施例中,针对所有接收图像选择并应用该阈值。这个技术的缺点是不考虑该接收图像中的变化的照明条件。在另一个实施例中,基于对接收图像的分析,诸如它的直方图,来计算该阈值。在包括对接收图像进行分析的一个这种实施例中,进行如下假定接收图像在它的强度直方图中包括与接收到的文档图像的前景和背景对应的两个峰值。这个实施例对于不满足该假定的那些图像可能执行得不好。在阈值化365的另一个实施例中,针对接收图像中的每个像素选择单独的阈值。这个实施例的优点在于能够响应文档中的变化条件,诸如照明变化或背景对比度。这种技术的一个实施例称作自适应阈值化。在这个实施例中,当针对阈值的确定而分析每个新的像素时,考虑先前的像素值。完成这项工作的一种方式是当对接收图像的每个渐进像素进行分析时,计算每个像素的加权平均值。这个实施例的一个潜在缺点是,如果接收图像包括彩色文档则会引入噪声。
在步骤370中,执行文本行步骤。在这个步骤370中,系统确定接收到的文档图像中的文本行。图9示出了文本行370的一个实施例。在一个实施例中,系统假定与接收到的文档图像中的文本对应的像素的强度低于接收到的文档图像的背景像素的强度。在这个实施例
中,在步骤910中,计算接收到的文档图像中的每行内的所有像素的强度之和。然后,在步骤920中,利用这些和来识别像素强度的局部峰和谷。然后,对这些峰和谷进行分析以确定文档中的文本行。例如,如果接收到的文档图像具有带有白色背景的黑色文本行,则完全为白色的像素行将具有最高的总计强度并且包含黑色文本的行将具有低得多的像素强度。然后,能够计算这些强度的差,并且由此能够确定文本行。在优选实施例中,在接收到的文档图像上水平地以及垂直地执行文本行步骤370。
在执行文本行步骤370的另一个实施例中,与在步骤335中执行的搜索相似地对文本行执行搜索。在一个这种实施例中,获取的文档图像的文本被识别并且形成行。能够通过识别获取的文档图像中的连接成分并且找到离这些成分最近的邻居来完成这项工作。连接成分是指图像中的一組像素,在这组像素中,每个像素都是黑色或更暗的,并且每个像素都与这组像素中的至少一个其它像素相邻。然后,将连接成分的中心连接成线。这个处理与在图7中的步骤710、 720和730中描述的处理相似。
步骤375确定获取的文档图像应该是横向格式还是纵向格式。在一个实施例中,通过确定相邻的连接成分是否形成主要垂直或水平的
文本行来完成这项工作。根据相邻的连接成分的方向, 一旦连接成分在水平方向上或者在垂直方向上生长出连接成分,则运行该处理。在
一个实施例中,确定得出较大数目的行的方向以定义接收到的文档图
像的定向。例如,在高度大于宽度的接收到的文档图像中,如果文本
的k目,则接收的图;象文档被确定为具有横向定向。、^为另一个例
子,如果在同一接收的图像文档中文本行步骤370在水平方向上得出的行的数目大于在垂直方向上得出的行的数目,则接收图像文件被确定为具有纵向定向。步骤380确定文档的正立(upright)定向。图IO示出了确定接收到的文档图像是否是正确定向为正立的一个实施例。在一个实施例中,对每个文本行进行分析。尽管可以对较少数目的文本行进行分析,但是这会导致可靠性较低的结果。在一个实施例中,在步骤1010中,将每个文本行划分成三个部分上延伸部分、中间部分和下延伸部分。英语字符包含某些固有的统计特征,这些固有的统计特征可以使用在 一 些实施例中用以确定接收到的文档图像的正立定向。例如,英语字母仅有5个字符(即,g、 j、 p、 q和y)向下延伸低于句子的下边界,并且具有更多的字符(即,b、 d、 f、 h、 i、 k、 1和t)向上延伸超过句子的上边界。在一个实施例中,当在步骤1020中计算包含在上延伸部分和下延伸部分中的各自像素的数目并且在步骤1030和1040中将这些像素密度进行比较时,能够考虑英语字符的这个特征。例如,具有上延伸字符像素多于下延伸字符像素的英语字符的接收到的文档图像很有可能处于正立位置并且不需要被旋转,然而如果同 一 文档的下延伸字符像素多于上延伸字符像素,则该文档很可能需要在步骤1050中旋转180度。
在其它的实施例中,还可以考虑英语字符的其它特征。例如,可以考虑水平方向上像素位置的特征。另外,还可以利用非统计方法确定文档的正立定向,诸如光学字符识别("OCR")。另一个实施例能够利用神经网络方法。此外,针对非英语文档可以利用相似的固有特征。例如,西班牙语字符与英语字符相似并且具有相似的固有特征。作为另一个例子,阿拉伯语字符包含更大数目的下延伸字符,并且可以相应地针对这些特征对实施例进行调整。
图12示出了执行步骤380并且确定接收到的文档图像是否是正确定向为正立的另一个实施例。在一个实施例中,连接成分被用于确定文本的每个字母行。在步骤1210中,每个成分按照高度分成两个类别,即小的和大的。然后,在步骤1220中确定文本行的中心。在一个实施例中,小字母的高度被用于在步骤1220中确定文本行的中心。这在文本行畸变的情况下,例如在它在整个页面上发生弯曲的情
18况下,可以改善文本行的中心的估计。大字母然后与文本行的中心进
行匹配,并且在步骤1230中基于与这个中心的相对位置按照上延伸或下延伸被分組。然后,在步骤1240中计算上延伸字母和下延伸字母的总数。在通常的英语文档中,大字符将朝向页面的顶部上延伸。因此,在一个实施例中,如果上延伸的大字符的数目多于下延伸的大字符的数目,则在步骤390中进行输出以前不需要在步骤385中对文档进行旋转。然而,如果下延伸的大字符的数目多于上延伸的大字符的数目,则在步骤390中进行输出以前需要在步骤385中对文档进行旋转。
然后,根据步骤380和375的确定,在步骤385中对图像进行旋转。然后,在步骤390中输出新的文档图像。
如上所述,可以通过胶片相机或者数字相机拍摄系统成像文档。作为对这些自由形式的装置的替换,可以采用静止相机系统来拍摄成像文档。图11示出了用于拍摄文档图像的静止相机系统的实施例。在这个实施例中,将文档1110置于该系统的基座1120上。在优选的实施例中,该系统的基座1120具有预定颜色,其具有便于进行上述分割处理的优点。支架1130从基座1120延伸出来,支架1130可以容纳相机1140和照明设备1150。该相机和照明设备可以永久地容纳在支架1130中或者可以拆卸或调整。该照明设备可以置于基座1U0或支架1130上的任何地方。在另一个实施例中,基座1120或支架1130上不包括另外的照明设备。在另一个实施例中,该照明设备与基座1120或支架1130分离。然后,将静止系统耦接到计算机1160以执行对接收的图像文档的上述处理。在另一个实施例中,还可以将该计算机建立在该设备中。在另一个实施例中,获取的图像文档可以简单地存储在数字相机1140中或者存储在另一个存储器源中,并且以后耦合到计算机以进行处理。这种静止相机系统可以作为用户的工作站的一部分而置于例如办公室中。
与自由形式的相机相对,利用静止相机系统具有几个优点。例如,当利用静止相机系统时,由于文档更可能相对于相机透镜垂直并居于中心,所以可以减小透视畸变的量。此外,由于使用的相机与透镜之间的距离将是已知的,所以另 一个优点是允许该系统更好地针对透镜畸变进行调整,从而减小了计算或近似得出这些参数的需要。另一个潜在的优点是减小由相机闪光灯导致的畸变。在优选的实施例
中,将对静止系统的照明设备1150进行定位从而使得可以减小由相机闪光灯导致的眩光和其它畸变。
尽管期望利用静止相机系统,但是针对许多的文档成像需要,这种系统并非总是实际的或者可用的。因此, 一种即使当以倾斜角度拍摄图像时也能去除由成像文档或书籍的扭曲表面导致的图像畸变的方法将是非常有用的。下文中结合图14到图22描迷的去扭曲处理提供了这种畸变去除处理。在下文中结合图14到图22描述用于对获取的书籍和其它文档的图像进行去扭曲并且如果需要的话还从这些图像去
除透视畸变的优选实施例的详细说明。
图14的去扭曲处理可以用于上面在图2和图3中描迷的畸变去除步骤240和350。作为另一种选择,它可以用作独立的成像处理技术,或者它可以与包括分割和图像定向步骤中的一个或更多个的、结合图2和图3描述的方法中的所选步骤进行结合。
图14所示的去扭曲处理包括三个步骤,这三个步骤共同将扭曲文档的图像变换成对应的平坦文档的图像。通过将成像文档从弯曲坐标系转换到笛卡尔坐标系来完成这项工作。在这个基于模型的去扭曲处理的步骤10中,如图18所示,将弯曲坐标网132应用于要进行变换的扭曲文档的图像131。在步骤11中,将弯曲坐标网132拉伸以形成如图19所示的矩形坐标网134。在步骤12中,对图19中的矩形坐标网134进行调整以产生图21所示的调整后的矩形坐标网136。矩形坐标网136优选地是比例恰当的,从而能够减小,优选地大幅减小,并且更加优选地完全去除由原始成像的文档的扭曲和/或由于相机的透视所导致的图像畸变。
图18中的弯曲坐标网132包括线段33、 34、 37-39以及y轴32。线段33、 34、 37-39是一系列并存而非平行的直线的一部分,所述直线通常在y轴32的方向上延伸但是在一公共消影点上相交,由于该公共消影点位于附图之外,所以没有显示。因此,在所示的实施例中,并存的线段33、 34、 37-39在它们的底部彼此更加分离,并且在它们的顶部彼此间隔更近。另外,由于靠近对应于成像书籍的中心的y轴32处弯曲度较大,所以离y轴32越远,这些线段之间的间距就越大。因此,线段33和37之间的间距大于y轴32与线段38之间的间距。尽管存在可以用于将恰当的弯曲坐标网132应用于扭曲文档的图像131的多种方法,但是在下文中结合图15到图17描述两个优选的方法。在一个实施例中,从成像书籍页的角的坐标确定弯曲坐标网132的y轴32以及并存的线段33、 34和37-39。这种才支术的优点在于它与获取的图像中的文本无关并且因此使得可以对包括图像或公式的页面进行去扭曲。
针对图18中的每个点,能够通过在弯曲坐标网132上分别找到它的x和y坐标来确定它在笛卡尔坐标系上的对应坐标。另外,当恢复成非畸变图像时,图18中沿着y轴32的同一线段(例如,线段P,Qf 39)上的每个点应该具有相同的x坐标。另外,在非畸变图像中,在图18中沿着x轴31的同一弯曲线段上的每个点应该具有相同的y坐标。在一个实施例中,通过绘制从消影点经由成像页面上的像素并且与图像131中的书籍页的底部边缘35相交的线,来确定成像页面上的每个像素的x坐标。于是,该交点与y轴32之间的距离是该像素的x坐标。
然而,确定弯曲坐标网132上的每个像素的y坐标更加复杂。可以利用的一个方法是将在y轴32的方向上延伸的并存直线段33、 34和37-39种的每个划分成许多小的部分。图20和图22用于解释这个处理。图20示出了将图像131 (图18所示)中的书籍图像投影到被成像的书籍的页表面142上。尽管点P (x)和Q (x)位于页表面142的两个相对角处,但是应该明白P (x)可以位于顶部弯曲边缘144上的任何点处并且Q (x)位于P (x)所处的线段与页表面的底部弯曲边缘146的交点处。图像131中示出的P,(x)和Q'(x)也是
21这样的。
图22是从图18中的弯曲坐标网132上的线段P,Q, 39到成像书籍的页表面142上的对应线段P'Q' 49的投影的侧视图。因此,图22中的线段P'Q, 39位于像平面67上并且在y轴32的方向上延伸,而线段PQ 49是P,Q, 39在页表面142上的投影。应该注意,图22中的页表面142上的线段PQ 49还对应于图19中的矩形网134上的线段PQ 49。
在图22的投影图中,S对应于用于拍摄成像书籍的页表面142的图4象131的透镜66。对应于图22中的z轴65的、透镜66的光轴在O处与像平面67相交并且在R处与页表面142相交。H和I分别是P和Q在z轴65上的足点(foot point)。因此,如果
ZPRH-e,则通过几何学,可以推导出下面的等式
so — p,6>和so =
为了计算P'O,
尸'<9 — W.所—SO.池in^ 一 S(9 i sin夕 (j )
一S//一 M +肪 _ Si +尸i cos^
另外,通过设置SO=f, SR=d, P,0=yp'(其中yp'是图18中点P,的y坐标),PR=yp,其中yp是图19中的点P的y坐标,则等式(1)能够被重写为
Asir^ (2)
这里,如果假定从相机透镜66到书籍上的每个点的距离是相同的,
则f、 d和e可被认为是常量。因此,通过令
d , COS9
-,6二-
/ sin (9 / sin (9
可将等式(2)简化。将a和b代入等式(2)获得下面的等式m 。
(3)
p +
等式(3)是P与P,之间的y坐标的变换函数。类似地,通过设置Q'0=yq,,QR=yq,则能够推导出Q和Q'的等式
22返回参照图19, 令Po、 P!、 P2..... Pn为线段PQ49上均匀地分离
的n+l个点。每个点Pi具有能够由点P和点Q的y坐标表式的y坐标。对于每个点Pi,我们得出
x' "9 +丄(力-a)
其中,i是0、 1、 2..... n。与等式(4)相结合,我们现在获得了
像平面上的所有y坐标P。'、 P 、 P2,、 ..,、 Pn'。
利用等式(5),线段P'Q' 39被划分成n个部分。通过沿着y轴划分所有的线段,通过从图18的弯曲坐标网132逐像素地进行映射形成了图19中的不成比例的矩形网134。
尽管图19中的矩形网134具有平行的垂直线段43-44、 47-49和平行的水平线段45和46,但是线段43与47之间的间距要大于y轴42与线段48之间的间距。因此,去扭曲处理中的下一个步骤12是调整不成比例的矩形网134的平4亍的垂直线段43、 44和47-49之间的宽度。
参照图23,将页面的书籍表面认为是柱状表面,如果从底侧观看该书籍,则它应该具有右侧弯曲页表面91和左侧弯曲页表面92。在图23中,书脊80位于原点并且书籍位于x-y平面上。从侧视图进行观察,书籍侧边缘83和84被显示为点。线段PaQa 89也被显示为一个点,该点与x轴81上的PQ 90 (也显示为一个点)之间的距离是bpq86。为了分别考虑右侧页面和左侧页面,我们利用未确定的函数b (x) 82,该未确定的函数b (x) 82可以用于表示右侧弯曲书籍页表面91上的每个点。因此,在原点80处,b(0)-0。
参照图24,详细描述透镜到物体的距离的调整。在图24中,PaQa 78是弯曲页表面142上的线段,Ra是PaQa 78与z轴75的交点。PaQa 78与z轴75形成角度6 71。调整后的线段PaQa 78与PQ74平行,其中,线段PQ 74在R处与z轴75相交。线段PQ 74与线段PaQa 78之间的距离是bpq 72。因此,通过三角法,线段RaR
73的长度是、/sir^。
返回参照图22,由于除了在书脊和书籍侧面边缘处以外从页表面142到桌子有一距离,所以现在我们能够通过从SR减去b(x)/sin0来调整从透镜66到页表面142的距离。结果,d(x)-d(O)-b(x)/sin0。将这个等式代入等式(2),得到
(、= T^sinP_
"一 ,)+ _^ cose-6(x)/sin^
A。sin^ 反sin^
h 0) 一 >V (0) =-^---^-
^、 / , +力cos"(x)/sin^ , +力cos^
=__
("(0) +力cos 。("(()) +力cos (9 - / sin 。
假定6(jc)《d + yp cos(9 ,
,p 々 (y(0) + ^cos60(rf(0) +力cos^)
3V(x)-)v(o) = C.6(x) (6)
其中,由于一旦获取了图像以后f、 d(O)、 e和yp均是常量,所以C是常量。"(x)是在步骤320和335中决定的顶部边缘36的线函数。
通过应用等式(6),现在能够算出b (x)。
返回参照图23, x轴81可被划分成许多小段。针对x轴81上的每个小段Ax87,在页表面91上存在对应的弧88。如果Ax非常小,则弧88的长度接近于值AArc, AArc等于(/^2+/^2(乂))1/2。因此,通过令j(x)对应于从原点80到页表面91上的任何点的弧的长度,能够写出下面的等式
_/(jc)=〖A/^c二〖0 + 乡("))/ ^ '
可以针对页表面92写出相似的公式。当获得了y(x)以后,能够将图19中的矩形网134调整为图21所示的比例恰当的矩形网136。
在图21中,书籍页面显示了从图18中的书籍页面进行去扭曲变换的结果。利用具有2304x1704分辨率即近似200dpi的图像获得这些结果。透镜与页表面之间的距离大约是50cm。透镜与书籍表面之间的角度小于30度。另外,获得的OCR率大约是90,。。尽管当背景是暗色时上述去扭曲处理能够最好地工作,但是也可以采用其它背景。即使当成像文档包括相对较少的文本行时,对于从既具有弯曲畸变又具有透视畸变的成像文档去除畸变,刚才描述的去扭曲实施例是非常有用的。
现在,将结合图15和图16描述用于产生弯曲坐标网132的优选方法。
当打开书籍时,页表面通常不会放平,尤其是当书籍较厚时,结果文本行变弯曲。在图15的方法中,成像页面上的最长文本行被定位。然后,基于分离最宽的且最长的文本行执行变换,其继而可以用于产生弯曲坐标网132。
图15所示的产生弯曲坐标网132的方法包括四个主要步骤。首先,文本区域分割步骤1被用于将包含文本的书藉页面的存储图像中的区域分离。其次,局部方向增强步骤2被用于揭示隐藏的文本行。第三,文本行提取步骤3被用于针对每个文本行估计基干曲线。最后一个步骤是文本行收集步骤4,用于选择合适的多项式函数来表示文本行。
在一个实施例中,假定成像文档的文本区域包括大面积的光空间,并且在该光空间上具有一些暗的字符或图形。为了在步骤l中分离文本区域,产生原始图像的小尺寸略图。针对该略图中的每个像素,如果它在原始图像中表示的所有像素都是暗的,则该像素被设置为黑色,否则将该像素设置为白色。根据略像,可以容易地搜索将与成像书籍或文档的页面区域对应的最大的连接白色像素。这个处理将书籍页面或文档的图像与它的背景分离,由此构成执行分割步骤230和335的另一种方法。当从书籍页面或文档的背景分离出该数据页面或文档以后,成像页面上的文本区域被识别。为了完成这项工作,可以优选利用逆取样方法产生另一个略图,也就是说,针对该略图中的每个像素,如果它在成像页面区域中并且它在原始图像中覆盖的区域具有高强度差异和至少一个暗像素,则将它设置为白色。结果,这个略图中的白色区域代表原始图像中的文本区域。在图25所示的另一个实施例中,产生了略图450,其中,针对略图450中的每个像素,如果它在页面区域中并且它在原始图像中覆盖的区域具有高强度差异和至少一个暗像素,则将它设置为黑色。结果,这个略图450中的黑色区域代表原始图像中的文本区域。
在获得了文本区域以后,准备好执行文本区域分割步骤1。当处理打开的书籍的通常包括两个页面的图像时,这是尤其有用的。还能够用于对成像页面上的文本栏进行分割。在一个实施例中,通过沿着略像450中的页面区域的垂直线454对略图450进行扫描来执行分割,从而通过检测同一垂直线上的每个像素是否都是白色像素(或者在利用逆取样方法的情况下为暗像素)来识别文本区域之间的间隙。如果答案是肯定的,则整个垂直线位于文本区域之间的间隙。恰当的阈值将分离大多数的文本区域(例如,当在同一图像中拍摄了书籍的两个页面时分离一个成像页面与另一个成像页面,并且/或者分离同一成像页面上的多个文本栏)。
在步骤2中,优选执行局部方向增强。尽管人们"逐行,,阅读书籍,但是在文本行中没有几何线。人们明白,由于字符的密度、它们的方向和文本意义,两个不同的字符属于同一文本行。然而,计算机并不知道字符的方向和它们的意义。仅供图像处理器可用的信息是基于字符密度的字符局部方向。在一个实施例中,执行局部方向增强步骤2以通过计算每个字符的密度来显示隐藏的文本行。图16示出了用于执行局部方向增强步骤2的处理的流程图,该处理还包括四个子步骤。
首先,优选执行文本行距离检测步骤5以检测文本行的高度。当确定用于下一个步骤6的压缩率时,文本行的高度是重要的因素。在步骤6中,输入图像被压缩并被转换成二进制图像。接下来在步骤7中,使用 一处理来计算和增强表示图像中的每个像素的局部方向的方向矩阵。在一个实施例中,16个预定义的方向模板被用于估计每个像素的方向。在针对每个像素计算了方向矩阵以后,利用平滑算法消除矩阵中的噪声。在步骤8中,执行基于方向矩阵的增强。使用该方
26向矩阵和原始图像来进行局部方向增强以消除同 一文本行中的单词之间的任何间隙并且由此产生连续的文本行。从上述增强处理获得灰度
图像,然后在图15的文本行提取步骤3中对该灰度图像进行处理。
在文本行提取步骤3中,来自步骤2的图像被转换成二进制图像。在下文中详细描述局部方向增强步骤2的子步骤5、 6、 7和8中的每个子步骤。
优选的是,通过产生与文本区域检测步骤1中使用的略像相似的略像来执行图16的文本行距离检测步骤5。在一个实施例中,利用垂直分辨率为步骤l中的垂直分辨率的四倍的略像。然后,将文本区域划分成多个较小部分。利用图26A和26B对此进行例示。图26A示出了文本图像的小段460。图26B示出了图26A中的图像的略像。针对与文本区域的段460对应的每个略图464,选择略图464的中心部分处的矩形像素条462。优选将这个矩形像素条462设置为具有与正被分析的文本区域的段460相同的高度,但是优选仅占据整个段460的宽度的1/32。然后,当对每个矩形条462进行扫描时,从顶部到底部对每个矩形条462进行垂直扫描。如果存在被认为构成文本的像素,则该扫描的相同水平高度上的每个像素也可以被视为文本。因此,可以在条462内产生许多矩形区域466。基于对条462的扫描,对具有至少一个黑色像素的像素行的数目L进行计数。此外,对文本行的总数C进行计数。因此,每个文本区域的文本行的粗略高度Ho对于该文本区域等于L/C。为了使得估计更加准确,可以重复计算高度,同时滤除L/C值大于2H。的那些行。这个过滤步骤可以用于去除诸如照片的元素。这个分析的最终结果是文本高度H。按照相同的方式,可以计算出文本行之间的平均间距S。最终,文本行之间的距离就是S和H之和。
在图16的步骤6中,优选执行对输入图像进行压缩并且将其转换成二进制图的处理。基于从步骤5计算出的不同文本行之间的距离,可以选择可将输入图像压缩从而使同一行中的字符连接在一起而不在同一行中的字符被分离的压缩率。在一个实施例中,然后执行局部二进制算法。首先,根据期望的压缩率将输入图像划分成小的窗口。然后,针对每个窗口,识别出最暗的像素。如果该最暗像素的灰度值大于一阈值或者大于第二阈值与该小窗口的平均灰度值的和,则
同一窗口中的每个像素的灰度值被设置为255。否则,该窗口的每个像素被设置为0。
在图16的步骤7中,执行计算方向矩阵并使其平滑的处理。在一个实施例中,可以使用16个预定的9x9方向模板对每个像素处的方向进行估计。图27A到图27F示出了可用于执行图16的步骤7的16个9x9方向模板中的6个。在图27A到27F中,该9x9方向才莫板470的中心处的黑色块474表示中心像素,而8个灰色块472描述了中心像素的方向。因此,例如,图27A代表具有垂直方向的文本线,而图27E代表相对于水平倾斜45度的文本行。能够从如图27A到27F所示的前6个方向模板的趋势得出可以在执行步骤7时使用的其它10个方向模板的图案(即,灰色块逐个地顺时针移动)。利用这16个9x9方向模板,可以执行计算方向矩阵的步骤7。
首先,针对成像页面中的每个像素,计算由16个9x9方向模板提供的所有16个方向上的16个灰度等级值和。接下来,确定由sum—max、 sum—min和sum—avg 表示的灰度等级值的和的最大值、最小值以及均值。每个灰度等级值和由通过16个方向模板之一定义的中心像素(暗块)和8个像素(灰色块)的和来表示。sum_max的值表示16个灰度等级值和中的最大值。sum—min的值是16个灰度等级值和中的最小值。sum—avg的值是所有16个灰度等级值和的均值。由得出sum—min的方向模板指示的方向暗示中心像素位于文本行上并且中心像素的方向由该方向模板表示。由于相同的原因,由得出sum—max的方向模板指示的方向暗示中心像素不位于文本行上并且中心像素的方向由该方向模板表示。基于此,可以确定每个像素的方向。
在 一 个实施例中,通过如下比较像素(i, j)的灰度值(gray一value(i, j))来设置像素的方向如果9 x gray—value(i,j)+sum一max+sum一min > 3xsum—avg,则该《象素的方向-皮i殳置为^寻出sum_max的9x9方向才莫板的方向,否则,该^象素的方向祐z没置为得出sum_min的9x9方向模板的方向。每个^象素的估计出的方向形成方向矩阵。然而,由于书籍图像中的字符的复杂性, 一些像素的方向可能是不正确的。例如,位于揭示文本行,空白块的方向是没用的。因此,在一个实施例中,利用平滑算法将在同一垂直线上的每个像素的方向设置为具有相同方向。可以通过执行表决处理完成这项工作,这意味着在任何垂直线上的像素中的最普遍的方向应该成为该相同垂直线上的每个像素的方向。
在图16的步骤8中,执行用于执行基于方向矩阵的增强的处理。图28A和28B用于示出图16的基于方向矩阵的增强步骤8的一个实施例。图28A示出了文本图像。图28B示出了在执行图16的基于方向矩阵的增强步骤以后从图28A所示的图像产生的方向矩阵。
知道了每个像素的方向,能够消除属于同一文本行的字符之间的间隙480。能够通过对每个像素及其相邻像素的灰度值求平均并且利用该平均后的灰度值表示该像素来完成这项工作。然后,根据阈值将灰度值设置为0或者255。在一个实施例中,灰度值是与最靠近的8个像素求平均而得到的。在这个处理之后,填充了相邻字符之间的多数间隙并且产生了文本行482的基干,从而得到了图28B所示的增强图像。
返回参照图15,现在利用文本行提取步骤3来估计在先前步骤中揭示的每个文本行的基干曲线。参照图29A,在先前步骤中揭示的文本行490由于太粗而不能够提取。因此,优选对文本行490执行变细处理以产生图29B所示的增强文本行492。执行变细处理以使得每个增强文本行492的高度为一个像素的大小。可以通过垂直地扫描图29A中的文本行4卯的基干上的像素值来完成这项工作。例如,当找到暗像素时,它的y坐标可被记录为y_start。然后,对它之下的像素逐个地进行扫描,直到找到白色像素。可以针对正好在该白色像素之上的像素记录y_end。因此,提取的变细行的y坐标可以被设置为
29(y—start+y_end)/2。该变细处理的结果是图29B所示的增强文本行492。然后,优选执行包括下面子步骤的文本行跟踪处理以完成步骤3。
图30示出了具有垂直检测带492的变细后的文本行492的基干,该垂直检测带492可以用于执行文本行跟踪处理。在一个实施例中,通过在页面的中间设置垂直检测带642来检测每个变细后的文本行492。这将检测大多数的长文本行646。通过检测该检测带上的像素的灰度值是否是黑色的,能够收集每个文本行的中间点。在获得每个文本行的中间点以后,对于每个文本行,从中间点开始在左和右方向上跟踪该文本行。为了在左方向上跟踪文本行,斜率K (从0开始)的跟踪线跟踪左侧的0到12个像素。如果在这个跟踪线之上或之下的3个像素内存在黑色像素,则这个点被认为是文本行的点。记录这个点并且确定该线上的下一个点。当找到新点时,为了继续进行跟踪处理,计算一个新的斜率。能够通过等式K=10 x K—previous/11+10 x (y_new-y_previous)/(x_new-x—previous)来决定新的斜率K,其中x—previous和y_previous是先前收集的文本行上的点的x和y坐标,x—new和y_new是当前收集的文本行上的点的x和y坐标。这个处理能够调整跟踪的方向并且适应文本行的多种扭曲。重复该处理,直到遇到文本行的边缘或者用光点。尽管以上处理用于跟踪文本行的左部,但是对右部的跟踪是对称的。如果在这个处理后仍然存在一些不连续的文本行,则可以利用自适应收集算法跟踪每个文本行。
图15中的步骤4包括用于产生弯曲坐标网132的多项式的计算和文本行选择步骤。图31A和31B用于示出执行该步骤的一个方法。图MA示出了文本行图像,图31B示出了提取出的文本行重叠于其上的文本行图像。在步骤4中,去除短于最长文本行6"和648的预定量的文本行650。优选的是,去除小于最长文本行644和648的长度的一半的那些文本行。此外,还优选去除左缩进的行656。选择两个最长的剩余行644、 648。在一个实施例中,使用两个分离最远的行。这两个行644、 648的端点632、 634、 636和638确定了成像文档的左侧652和右侧654的两个文本边缘。左边缘线652和右边缘线654应该在消影点处相交,该消影点在附图之外因此没有显示。最终,可以利用多项式函数对所选择的文本行644和648进行建模。在一个实施例中,该多项式函数被设置为五次。
当获得了用于这些文本行的多项式函数以后,能够产生弯曲坐标网132以执行图14的去扭曲处理。在一个实施例中,当获得了用于这些文本行的多项式函数以后,执行行延伸处理以将所选择的文本行644和648延伸到它们的左侧和右侧以在文本区域的每侧上保持页边空白。能够基于文本区域的宽度以公式表示延伸的程度。延伸的行还可以适应先前获得的多项式功能。延伸的行的两个右端定义了应该通过消影点的一条线,而这些延伸的行的两个左端也定义了也应该通过过消影点的一条线。当获得了这些延伸的行以后,能够产生弯曲坐标网132以执行图14的去扭曲处理。
现在,结合图17描述用于产生弯曲坐标网132的另一优选方法。
图17的方法能够提取角,并且更加重要的是,能够提取书籍的弯曲页表面的弯曲的顶部和底部边缘的函数。参照图n,可以通过找到边缘线19、 20、 27-30的交点来计算成像书籍的页面的6个角21-26。要注意,在图17中,顶部边缘27和28是曲线,底部边缘29和30也是曲线。两个侧边缘19和20是直线。在一个实施例中,如下文所述并且如图32和图33中示出地确定了 6个角21-26和边缘线19、 20、 27-30的计算。首先,将原始图像的分辨率降低,优选降低到100x100,然后通过利用灰度等级阈值将其转换成黑白图像676。灰色区域660表示背景,白色区域674表示页面区域。第二,找到白色区域的边界670-673并且指定4个边界670-673的顶点662、 664、 666和668。第三,将顶部边界672和底部边界6"70用作用于沿着顶部边界672和底部边界670打开一 系列小窗口的引导线。第四,对小窗口执行Canny边缘检测,并且将检测结果组合成两个弯曲图像,其中,这两个弯曲图像之一用于顶部边缘684,而另一个用于底部边缘682。这两个弯曲图像684和682的宽度最好与上述的小窗口的宽度相同。第五,对图像的边缘进行跟踪以得到顶部弯曲边缘686、 687以及底部弯曲边缘688、 689。
返回参照图17,顶部弯曲边缘是27和28,底部弯曲边缘是29和30。顶部弯曲边缘和底部弯曲边缘的端点定义了 4个角21-24。连接两个右侧角22和24将形成书籍的右侧边缘19,连接两个左侧角21和23将形成书籍的左侧边缘20。顶部弯曲边缘27和28以及底部弯曲边缘29和30的每一个中的最大弯曲点25和26成为另两个角25和26,并且这两个角25和26之间的连接包括书脊和弯曲坐标网132中的y轴。能够利用右侧边缘19和左侧边缘20的投影找到消影点并且由此产生弯曲坐标网132。
这里描述的用于处理获取的图像的方法适用于任何类型的处理应用并且(不受到限制)尤其良好地适合用于处理获取的图像的基于计算机的应用。这里描迷的方法可以以硬件电路、计算机软件或者硬件电路与计算机软件的组合实现,并且不限于特定的硬件或软件实施方式。
图13示出了计算机系统1300的框图,可以在该计算机系统1300上实现本发明的上述实施例。计算机系统1300包括总线1345或用于传送信息的其它通信机构以及与总线1345耦接用以处理信息的处理器1335。计算机系统1300还包括诸如随机存取存储器(RAM)或其它动态存储装置的主存储器1320,该主存储器1320耦接到总线1345用以存储要由处理器1335执行的指令和信息。主存储器1320还可以用于在执行要由处理器1335执行的指令时存储临时变量或其它中间信息。计算机系统1300还包括用于存储用于处理器1335的静态信息和指令的耦接到总线1345的只读存储器(ROM)1325或其它的静态存储装置。诸如磁盘或光盘的存储装置1330被提供并耦接到总线1345用以存储信息和指令。
计算机系统1300可以经由总线1345耦接到诸如阴极射线管
32(CRT)的用于向计算机用户显示信息的显示器1305。包括字母数字和其它键的输入装置1310被耦接到总线1345,用于向处理器1335传送信息和命令选择。另一种类型的用户输入装置是诸如鼠标、轨迹球或光标方向键的光标控制器1315,用于向处理器1335传送指示信息和命令选择并且用于控制显示器1305上的光标移动。这个输入装置通常具有两个轴(即第一轴(例如,x)和第二轴(例如y))上的两个自由度,从而使得该装置可以指定平面上的位置。
这里描迷的方法涉及使用计算机系统1300来处理获取的图像。根据一个实施例,响应于执行包含在主存储器1320中的一个或更多个指令的一个或更多个序列的处理器1335,由计算机系统1300提供获取的图像的处理。这些指令可以从诸如存储装置1330的另一个计算机可读介质读入到主存储器1320中。执行包含在主存储器1320中的指令序列使得处理器1335执行这里描述的处理步骤。还可以采用多处理布置中的一个或更多个处理器来执行包含在主存储器1320中的指令序列。在另选的实施例中,可以利用硬接线电路来代替软件指令或者与软件指令相结合来实现这里描述的实施例。因此,这里描述的实施例不限于硬件电路和软件的任何特定组合。
本文中使用的术语"计算机可读介质,,是指参与向处理器13"提供用于执行的指令的任何介质。这种介质可以采取多种形式,这些形式包括但不限于非易失性介质、易失性介质和传输介质。例如,非易失性介质包括诸如存储装置1330的光盘或磁盘。易失性介质包括诸如主存储器1320的动态存储器。传输介质包括同轴线缆、铜线和光纤,包括包含总线1345的导线。传输介质还能够釆取声波或光波的形式,诸如在无线电波和红外线数据通信中产生的那些声波或光波。
例如,计算机可读介质的普通形式包括软盘、柔性盘、硬盘、磁带、或任何其它磁介质、CD-ROM、任何其它光介质、穿孔卡、纸带、具有孔图案的任何其它物理介质、RAM、 PROM和EPROM、FLASH-EPROM、任何其它存储器芯片或盒、下文中描述的载波、或者计算机能够读取的任何其它介质。
33各种形式的计算机可读介质可以携载供处理器1335执行的一个 或更多个指令的一个或更多个序列。例如,这些指令可以最初携栽在 远程计算机的磁盘上。该远程计算机能够将这些指令加载到它的动态 存储器中并且利用调制解调器在电话线上发送这些指令。计算机系统 noo本地的调制解调器能够接收电话线上的数据并且利用红外发送 器将该数据转换成红外信号。耦接到总线1345的红外探测器能够接 收在红外信号中携载的数据,并且将该数据置于总线1345上。总线 1345将该数据运送到主存储器1320,处理器1335从该主存储器 1320取回并执行这些指令。可选地,由主存储器1320接收到的指令 可以在由处理器1335执行之前或者之后存储在存储装置1330上。
计算机系统1300还包括耦接到总线1345的通信接口 1340。通 信接口 1340提供耦接到网络链接1375的双向数据通信,该网络链接 1375连接到本地网1355。例如,通信接口 1340可以是综合业务数字 网(ISDN)卡或调制解调器,用以提供与对应类型的电话线的数据 通信。作为另一个例子,通信接口 1340可以是局域网(LAN)卡, 用以提供与兼容LAN的数据通信连接。还可以实现无线链接。在任 何这些实施方式中,通信接口 1340发送并且接收携载表示各种类型 的信息的数字数据流的电信号、电磁信号或光信号。
通常,网络链接1375经由一个或更个多网络向其它数据业务提 供数据通信。例如,网络链接1375可以经由本地网1355向主机计算 机1350或者由互联网业务提供商(ISP) 1365操作的数据设备提供 连接。ISP 1365进而经由通常称作"互联网"1360的全球分组数据通 信网络提供数据通信业务。本地网1355和互联网1360均利用携栽数 字数据流的电信号、电磁信号、或光信号。经由各种网络的信号以及 网络链接1375上的和经由通信接口 1340的信号携载进出计算机系统 1300的数字数据,这些信号是传输信息的载波的示例性形式。
计算机系统1300能够经由网络、网络链接1375和通信接口 1340发送消息并且接收包括程序代码的数据。在互联网例子中,服 务器1370可以经由互联网1360、 ISP1365、本地网1355和通信接口1340发送用于应用程序的被请求代码。根据本发明, 一个这种下载的应用程序提供如这里所述的对获取的图像的处理。
接收到的代码可以在被接收到时由处理器1335执行,并且/或者被存储在存储装置1330或其它的非易失性存储器中以在以后执行。以这种方式,计算机系统1300可以获得载波形式的应用程序代码。
权利要求
1. 一种用于对包括成像文档的获取的图像进行处理的方法,所述方法包括检测所述获取的图像中的与所述成像文档和所述获取的图像的剩余部分之间的过渡有关的图形信息;从所述图形信息中选择与所述成像文档的边缘对应的一条或多条线;基于与所述成像文档的边缘对应的一条或多条线的交点,计算所述成像文档的角;基于与所述成像文档的边缘对应的一条或多条线,将所述成像文档从所述获取的图像的背景隔离;在所述成像文档上设置弯曲坐标网;将所述弯曲坐标网拉伸为矩形坐标网;以及将所述矩形坐标网调整为比例恰当的矩形坐标网。
2. 如权利要求l所述的方法,还包括如下步骤基于所述计算出的偏差,将所述成像文档的像素的坐标映射到与 所述成像文档的非畸变透视图对应的坐标。
3. 如权利要求2所述的方法,还包括如下步骤 根据对所述非畸变成像文档的格式的所述确定,旋转所述非畸变成像文档。
4. 一种用于对获取的图像进行处理的系统,所述获取的图像包 括成像文档,所述系统包括用于从所述图形信息中选择与所述成像文档的边缘对应的 一条或 多条线的装置;用于基于与所述成像文档的边缘对应的一条或多条线的交点计算 所述成像文档的角的装置;用于基于与所述成像文档的边缘对应的一条或多条线将所述成像 文档从所述获取的图像的背景隔离的装置;用于在所述成像文档上设置弯曲坐标网的装置;用于将所述弯曲坐标网拉伸为矩形坐标网的装置;用于将所述矩形坐标网调整为比例恰当的矩形坐标网的装置。
5. —种用于对获取的图像进行处理的计算机可读介质,该计算 机可读介质携载有一个或更多个指令的一个或更多个序列,当所述一 个或更多个指令的一个或更多个序列被一个或多个处理器执行时使得 所述一个或更多个处理器执行如下的计算机实现的步骤检测所述获取的图像中的与所述成像文档和所述获取的图像的剩 余部分之间的过渡有关的图形信息;从所述图形信息中选择与所述成像文档的边缘对应的 一条或多条线;基于与所述成像文档的边缘对应的一条或多条线的交点,计算所述成像文档的角;基于与所述成像文档的边缘对应的一条或多条线,将所述成像文档从所述获取的图像的背景隔离;在所述成像文档上设置弯曲坐标网; 将所述弯曲坐标网拉伸为矩形坐标网; 将所述矩形坐标网调整为比例恰当的矩形坐标网。 基于所述计算出的偏差对所述成像文档的像素重新取样;
6. 如权利要求5所述的方法,还包括如下步骤 基于所述计算出的偏差,将所述成像文档的像素的坐标映射到与所述成像文档的非畸变透视图对应的坐标。
7. 如权利要求6所述的方法,还包括如下步骤 根据对所述非畸变成像文档的格式的所述确定,旋转所述非畸变成像文档。
8. —种用于对包括成像文档的获取的图像进行处理的方法,所 述方法包括将文本区域从所述获取的图像的剩余部分分离; 增强所述文本区域中的文本行的方向;提取所述文本行;选择适合所述文本行的多项式函数。
9. 如权利要求8所述的方法,其中,所述增强步骤还包括如下 步骤检测所述文本行之间的距离; 在一压缩率下对所述获取的图像进行压缩; 计算所述文本行中的每个像素的方向;消除字符之间的间隙,从而使得在同 一文本行中的字符连接在一 起而不在同一文本行中的字符被分离。
10. 如权利要求9所述的方法,其中,利用多个9x9方向模板来 确定所述文本行中的每个像素的方向,其中每个才莫板包括一个黑色块 和八个灰色块,其中该黑色块位于代表该像素的中心处,所述八个灰 色块从所述黑色块延伸,用于描述该像素的方向,并且针对所述多个 方向模板中的每个模板对灰度等级值进行求和以确定该像素的方向。
全文摘要
本发明涉及基于模型的去扭曲方法和设备。提供了一种用于对获取的图像进行处理的设备和方法,更具体地讲,涉及一种用于对包括文档的获取的图像进行处理的设备和方法。在一个实施例中,描述了一种包括用于拍摄文档的相机的设备。在另一个实施例中,描述了一种用于对包括文档的获取的图像进行处理的方法,该方法包括如下步骤将成像文档从其背景中区分出来;对获取的图像进行调整以减小由于利用相机所导致的畸变并且恰当地对文档进行定向。
文档编号G06F15/00GK101460937SQ200780015379
公开日2009年6月17日 申请日期2007年3月2日 优先权日2006年3月2日
发明者卡尔·钱, 吴明辉, 小爱德华·P·希尼, 库尔特·A·雷佩尔杰, 李文新, 李荣锋 申请人:计算机连接管理中心公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1