用于确定文本二值化阈值的方法、设备和存储介质的制作方法

文档序号:6430617阅读:119来源:国知局
专利名称:用于确定文本二值化阈值的方法、设备和存储介质的制作方法
技术领域
本发明总体上涉及文档图像的处理,尤其涉及用于确定文本二值化阈值的方法、设备和存储介质。
背景技术
文本图像二值化是光学字符识别(OCR)系统的必要步骤。它将灰度文本图像转换为表示文本和背景的二值图像。OCR的识别率主要取决于二值图像的质量。
在文档二值化中使用的阈值是这样的灰度值当对文档进行二值化时,灰度值比该阈值大的像素被设置为黑像素,灰度值比该阈值小的像素被设置为白像素。
一般,对于前景和背景明显不同的图像来说,图像的直方图将具有两个峰和一个谷,二值化阈值就是谷的底。
但是,对于对比度差或者背景复杂的文本图像,非常难以找到合适的阈值来将文本与背景区分开,因为在这种情况下,直方图将具有多个峰和谷,或者具有宽而平坦的谷。尽管在过去若干年来已经提出了各种各样的阈值选择方法,但是当前的二值化方法仍然限制了OCR系统的性能。
因此,希望出现能够改善识别率的新的阈值确定方法。

发明内容
本发明的目的就是提供这样一种方法,以及实现该方法的设备和存储介质。
为此,本发明提供了新的、鲁棒的用于文本图像二值化的阈值选择方法。
具体地,提供了一种确定文本二值化阈值的方法,包括谷底确定步骤,用于确定对应于文本图像的灰度直方图的谷底的灰度值Tcenter;端点确定步骤,用于基于Tcenter获得所述谷的右端的灰度值Tend;上限阈值计算步骤,用于计算所述文本图像的上限阈值Tupper;最优阈值确定步骤,用于确定Tupper和Tend中较小的一个作为用于对所述文本图像进行二值化的最优阈值。
最好,所述谷底确定步骤首先寻找一个阈值区域[Tmin,Tmax],保证在直方图中只有一个谷位于该区域内,然后在[Tmin,Tmax]中寻找最优的Tcenter。
具体地,所述谷底确定步骤可以进一步包括边缘探测步骤,用于探测文本图像中的边缘,用所述边缘将文本图像中的像素分为黑像素和白像素;直方图计算步骤,用于计算所有像素的灰度直方图H-All以及黑像素的黑像素直方图H-Black;最小阈值计算步骤,用于根据所述H-Black计算一个平均灰度值作为最小阈值Tmin;最大阈值计算步骤,通过利用下述方式计算最大阈值Tmax在从Tmin到255的区间中寻找所有像素的累积直方图中所有像素的累积频率与黑像素累积直方图中黑像素的累积频率的最小比;谷中心计算步骤,通过在H-All中寻找在Tmin和Tmax之间的谷底中心来计算最优阈值Tcenter。
在本发明的另一方面,一种确定文本二值化阈值的设备包括谷底确定装置,用于确定对应于文本图像的灰度直方图的谷底的灰度值Tcenter;端点确定装置,用于基于Tcenter获得所述谷的右端的灰度值Tend;上限阈值计算装置,用于计算所述文本图像的上限阈值Tupper;最优阈值确定装置,用于确定Tupper和Tend中较小的一个作为用于对所述文本图像进行二值化的最优阈值。
还提供了一种存储介质,其特征在于,在其中存储了用于实现上述方法的程序代码。
试验和OCR测试表明,本发明的方法、设备和存储介质非常有鲁棒性,尤其是在处理背景复杂比如具有纹理背景或者多噪声背景的图像的情况下。


本发明的其它目的、特征和优点将在阅读下文对优选实施例的详细说明后变得更为清楚。附图作为说明书的一部分用于图解本发明的实施例,并和说明书一起用于解释本发明的原理。在附图中图1的流程解了在本发明的优选实施例中,用于定位谷底的步骤的总体流程图;图2用于图解边缘、黑像素和白像素;图3的流程图用于图解图1所示步骤S3中的Tmax计算步骤;图4图示了用于进一步说明图1所示步骤S3中的Tmax计算步骤的直方图和累积直方图;图5图示了用于图解如何定位Tcenter的直方图;图6图解了用于说明本发明的所述优选实施例的直方图;图7的流程图用于图解本发明的所述优选实施例;图8图示了现有技术和本发明的结果;图9是本发明的应用的流程图;图10的框示了可以实现本发明的方法和设备的计算机系统的一个例子。
具体实施例方式
计算机系统举例本发明的方法和设备可以在任何信息处理设备中实现。所述信息处理设备例如是个人计算机(PC)、笔记本电脑、嵌入扫描仪、复印机、传真机等的单片机(SCM),等等。对于本领域普通技术人员,很容易通过软件、硬件和/或固件实现本发明的方法和设备。尤其应注意到,对于本领域普通技术人员显而易见的是,为了执行本方法的任何步骤或者步骤的组合,或者本发明的设备的任何部件或者部件的组合,可能需要使用输入输出设备、存储设备以及微处理器比如CPU等。在下面对本发明的方法和设备的说明中不见得提到这些设备,但实际上使用了这些设备。
作为上述信息处理设备,图10的框图示出了一个计算机系统的举例,在其中可以实现本发明的方法和设备。应注意的是,示于图10的计算机系统只是用于说明,并非要限制本发明的范围。
从硬件的角度来讲,计算机1包括一个CPU 6、一个硬盘(HD)5、一个RAM 7、一个ROM 8和输入输出设备12。输入输出设备可以包括输入装置比如键盘、触控板、跟踪球和鼠标等,输出装置比如打印机和监视器,以及输入输出装置比如软盘驱动器、光盘驱动器和通信端口。
从软件的角度讲,所述计算机主要包括操作系统(OS)9、输入输出驱动程序11和各种应用程序10。作为操作系统,可以使用市场上可购买的任何操作系统,比如Windows系列以及基于Linux的操作系统。输入输出驱动程序分别用于驱动所述输入输出设备。所述应用程序可以是任何应用程序,比如文本处理程序、图像处理程序等,其中包括可以用在本发明中的以及专为本发明编制的、可调用所述已有程序的应用程序。
这样,在本发明中,可以由操作系统、应用程序和输入输出驱动程序在所述计算机的硬件中实现本发明的方法和设备。
另外,计算机1可以连接到数字装置3和应用设备2。数字装置可以用作图像源,可以是照相机、摄像机、扫描仪或者用于将模拟图像转换为数字图像的数字化仪。本发明的设备和方法获得的结果被输出到应用设备2,后者根据所述结果,执行适当的操作。该应用设备也可以实现为在计算机1中实现的另一个应用(与硬件相结合),用于进一步处理所述图像。
应用本发明的例子本发明可以用在文档分析系统中将文档图像转换为二值图像,如图9所示。可以分析灰度图像(彩色图像可以被转换为灰度图像)而获得文本图像,然后用本发明对之二值化。这样获得的二值图像然后可以用于OCR。
用于确定二值化阈值的方法和设备简言之,本发明提供了一种计算机实现的、用于在二值化文本图像之前确定合适的二值化阈值的方法和设备。
在大多数情况下,在直方图中对应于谷底的灰度值可以被用作二值化阈值,如图6A所示。但是,当直方图具有非常宽的谷,而前景峰(左边的峰)与谷相比并不那么陡峭时(如图6B所示),发明人通过试验发现,最优阈值应当在谷的右端,以使文本笔画更粗,避免断笔。
因此,在本发明中,提供了一种用于确定文本二值化阈值的设备,其包括谷底确定装置、端点确定装置、上限阈值计算装置和最优阈值确定装置。
图7是本发明的主流程图,图解了由本发明的设备执行的新的二值化阈值确定方法。
具体地,所述谷底确定装置被配置为确定与文本图像的灰度直方图中的谷底对应的灰度值Tcenter(步骤S200)。有许多种现有技术可用于寻找图像直方图中的谷底。但是,为了获得最佳结果,申请人还提出了一种新的设备和方法用于定位谷的中心,这将在后面参照图1加以描述。
所述端点确定装置被配置为基于Tcenter获取谷的右端的灰度值Tend(步骤S300)。谷的右端是这样的点在水平轴的正向上,直方图在该点突然上升,如图6A和6B所示。同样,存在许多种方法用于在图像的直方图中定位谷的右端。例如,首先,可以对直方图进行平滑处理,例如用预定大小的移动窗口对连续的灰度级加以平均。例如,对每五个连续的灰度级加以平均,获得一个新的直方图。如果在直方图H-All中灰度值I的频率被表示为H-All(I),在平滑后的直方图中则表示为H-All-New(I),则平滑操作可以用伪码表示如下H-All-New(I)=(H-All(I-2)+H-All(I-1)+H-All(I)+H-All(I+2)+H-All(I+1))/5
通过从直方图的一端到另一端扫描灰度值来进行平滑操作。
然后,从Tcenter向右搜索平滑后的直方图,直到找到这样的点TH-All-New(T)大于或等于H-All-New(Tcenter)。该点T可以被视为谷的右端Tend。
所述上限阈值计算装置被配置为计算一个上限阈值Tupper,作为二值化阈值的上限(步骤S100)。该上限阈值可以是Otsu阈值。Otsu阈值系基于判别分析,在″A Threshold Selection Method fromGray-Level Histograms,″IEEE Transactions on Systems,Man,andCybernetics,vol.9,no.1,pp.62-66,1979.″中有详细描述。Otsu阈值的计算可以被视为将图像的像素在灰度级t分为两类C0和C1(例如对象和背景)。也就是C0={0,1,...,t},C1={t+1,t+2,...,l-1}。令σW2,σB2和σT2分别为类内方差、类间方差和总方差,则可以使下述等效的判别函数之一相对于t最小化来确定最优阈值λ=σB2σW2,η=σB2σT2,]]>and&Kgr;=σT2σW2]]>在上述三个判别函数中,η是最简单的。这样,最优阈值t*为t*=ArgMint∈Gη,]]>其中σT2=Σi=0l-1(i-μT)2pi,]]>μT=Σi=0l-1ipi,]]>σB2=ω0ω1(μ1μ0)2,]]>ω0=Σi=0tpi,]]>ω1=1-ω0,μ1=μT-μt1-ω0,]]>μ0=μtω0,]]>μt=Σi=0tipi,]]>显然,计算上限阈值的步骤(步骤S100)不一定在步骤S200之前,而可以在将在下面描述的确定最优阈值的步骤(S400)之前的任何时候执行。
所述最优阈值确定装置被配置为确定Tupper和Tend中较小的一个作为用于二值化文本图像的最优阈值(步骤S400)。
这样,如果直方图是一个普通的直方图,没有宽的谷,如图6A所示,尽管通常会采用Tcenter作为二值化阈值,但是Tupper和Tend中的较小的一个也行,因为所述三个值Tcenter、Tupper和Tend相互非常接近。如果存在宽谷,如图6B所示,Tcenter就太小了,将出现断笔,因此应当采用Tupper和Tend中的较小值。这里,Tupper被用作二值化阈值的上限,因为根据现有的经验,大于Tupper的二值化阈值会使笔画太粗从而使得文本无法识别。
但是,由于噪声和复杂背景图案的问题,灰度直方图可以具有多个峰和多个谷,可能难以找到合适的Tcenter。因此,为了进一步改进本发明的设备和方法,通过试验,发明人发现可以选择一个阈值区域[Tmin,Tmax],该区域确保只有正确的谷位于该区域中。然后在该区域[Tmin,Tmax]中寻找Tcenter。
图1是用于获得Tcenter的主流程图,图解了图7中的由谷底确定装置执行的谷底确定步骤S200。
具体地,谷底确定装置包括边缘探测装置、直方图计算装置、最小阈值计算装置、最大阈值计算装置以及谷中心计算装置。
边缘探测装置被配置为探测待二值化的文本图像中的边缘(图1所示的步骤S1)。边缘探测技术(装置和方法)在本领域中也是公知的。在一幅灰度图像中,所谓边缘是由灰度值剧烈变化的地方的像素构成的。可以使用导数方法探测灰度值的这种变化。作为非限制性的例子,可以使用Sobel边缘探测器或者Otsu边缘探测器。下面是边缘探测技术的其它一些例子。
章毓晋著的《图象分割》(图象图形科学丛书,科学出版社,2001,ISBN 7-03-007241-3)介绍了用一阶导数来检测图像边缘的最常用的方法,比如,可以采用Roberts算子、Sobel算子、Prewitt算子等。如果所求得某一像素点的图像灰度一阶导数高于某一阈值,即图像边缘判据阈值,则可确定该像素点为图像的边缘点。
美国专利6192153B1公开了一种图像处理装置和方法,该发明用于精确地标识文档图像中的图像区域的类型,并按照图像区域的标识结果,对每一像素进行处理。其中在该发明中,图像处理装置包括图像边缘检测装置,它通过计算一个区域中的每一图像信号与一滤波参数之积的和,来检测位于图像中边缘部分的像素。其中上述区域包括一个观察像素和包围该观察像素的多个边缘像素。并根据所述图像边缘检测结果,通过一标识装置来标识包括所述观察像素的图像区域。它主要包括下面几个步骤将数字图像信号输入,然后将数字图像黑白进行反转,接着,检测图像的边缘,根据每一像素特性将它们划分为非照片像素和照片像素;然后,对非照片像素进行分类,并对照片像素进行平滑,从而输出所得到的图像信号。其中在图像边缘检测步骤使用了预定的固定阈值来检测图像边缘。
美国专利5583659公开了一种利用图像局部特性将图像阈值化的多窗口技术。它利用局部图像的亮度变化,图像像素的梯度变化等特性,采用多窗口技术,减少图像噪声并降低图像边缘的模糊性。在该专利所公开的方法中,使用Sobel算子和预定的固定图像边缘判据阈值来检测图像边缘。
回到图2。探测到的每一个边缘要么是水平边缘,要么是垂直边缘。如图2所示,如果水平梯度较大,则边缘为水平边缘,如果垂直梯度较大,则边缘为垂直边缘。在边缘的两侧,具有较低灰度值的像素被称为“黑像素”,具有较高灰度值的像素被称为“白像素”。在理想条件下,“黑像素”应当被二值化为黑像素,“白像素”应当被二值化为白像素。
所述直方图计算装置被配置为计算输入的文本图像中所有像素的灰度直方图(H-All),以及仅仅“黑像素”的灰度直方图(H-Black)。这些操作对应于图1所示的步骤S2。
同样,由于灰度直方图及其计算方法在本领域是公知的,在此省略了其详细说明。直方图表示具有特定灰度值的像素的出现频率。一般,纵轴坐标表示具有特定灰度值的像素的百分比,横轴坐标表示从0到255的灰度值,如图4的左半部分所示。
所述最小阈值计算装置被配置为计算最小阈值Tmin。在本发明中,Tmin被设定为H-Black的平均灰度值。
所述最大阈值计算装置被配置为计算最大阈值Tmax,其对应于下述比值在从Tmin到255的区间中,所有像素的累积直方图中所有像素的累积频率与黑像素累积直方图中黑像素累积频率之最小比。
最小阈值计算装置和最大阈值计算装置的操作对应于图1所示的步骤S3。
下面结合图3和图4进一步描述最大阈值计算装置的结构和操作。
如图3所示,最大阈值计算装置被配置为首先计算H-All的累积直方图CH-All(步骤S31),以及H-Black的累积直方图CH-Black(步骤S32)。本领域都知道,累积直方图是直方图的积分结果。也就是,直方图是累积直方图的微分结果。例如,图4B所示为图4A所示的直方图H-Black的累积直方图CH-Black,图4D所示为图4C所示直方图H-All的累积直方图CH-All。
接下来,最大阈值计算装置被配置为获取CH-All对CH-Black的比值曲线(步骤S33),如图4E所示。比值曲线也是本领域公知的。这里,在比值曲线图中,横坐标与CH-All和CH-Black是相同的,对于每一个灰度值,纵坐标是在CH-All中的频率与在CH-Black中的频率的比值。
最后,所述最大阈值计算装置被配置为在从Tmin到255的区域中,找出比值曲线图上的最小点(步骤S34)。该最小点的横坐标是最大阈值Tmax(步骤S35),如图4E所示。
这样就获得了一个区域[Tmin,Tmax]。根据本发明,正确的谷中心应当在该区域中。通过上述装置和步骤,确保了在所述区域中只有一个谷。因此,所述谷中心计算装置被配置为寻找H-All中在Tmin和Tmax之间的谷的中心,从而可以将Tcenter确定为该中心的横坐标(步骤S4)。
存在许多种装置和方法用于在直方图或者曲线图中定位谷的中心。本发明不局限于任何这样的装置和方法。但是,作为例子,发明人提出了如下面所述的谷中心计算装置以及相应的方法。
具体地,谷中心计算装置可以进一步包括中位点计算装置、调整装置和控制器。所述中位点计算装置被配置为计算两个灰度值之间的中位点。所谓中位点是指这样的灰度值在所述两个灰度值之一和中位点之间的直方图的积分等于所述两个灰度值中的另一个和中位点之间的直方图的积分。在本实施例中,所述两个灰度值是Tmin和Tmax。如果中位点同时也是Tmin和Tmax之间的中点,或者如果Tmin和Tmax之间的差足够小,例如小于一个预定值,则所述控制器将该中位点输出,作为最优阈值Tcenter,否则控制器控制所述调整装置来调整Tmin和Tmax。也就是,如果所述中位点更靠近Tmin而不是Tmax,则将该中位点设置为新的Tmin;或者,如果中位点更靠近Tmax而不是Tmin,则该中位点别设置为新的Tmax。重复上述操作,直到获得最优阈值Tcenter。
图5给出了定位过程的一个例子,该过程以Tmin和Tmax开始。在第一轮中,确定了一个中位点A并将其设置为新的Tmax。然后在Tmin和A之间确定了一个中位点B,又将其设置为新的Tmax。在第三轮中,在Tmin和B之间确定了一个中位点C,其被设置为新的Tmin。在最后一轮中,获得B和C之间的中位点,作为Tcenter。
存储介质本发明的所述目的还可以通过在如上所述的可以与所述图像源和后续处理设备通信的任何信息处理设备上运行一个程序或者一组程序来实现。所述信息处理设备、图像源和后续处理设备为公知的通用设备。因此,本发明的所述目的也可以仅仅通过提供实现所述方法或者设备的程序代码来实现。也就是说,存储有实现所述方法或者设备的程序代码的存储介质构成本发明。
对于本领域技术人员来说,可以轻易地用任何程序语言编程实现所述方法。因此,在此省略了对所述程序代码的详细描述。
显然,所述存储介质可以是本领域技术人员已知的,或者将来所开发出来的任何类型的存储介质,因此也没有必要在此对各种存储介质一一列举。
图8给出了使用otsu方法、佳能公司的ImageTrust和本发明对两个样本图像进行二值化的结果。
尽管结合具体步骤和结构描述了本发明,但是本发明不局限于这里所描述的细节。本申请应当覆盖所有不偏离本发明的精神和范围的变化、修改和变型。
权利要求
1.一种确定文本二值化阈值的方法,包括谷底确定步骤,用于确定对应于文本图像的灰度直方图的谷底的灰度值Tcenter;端点确定步骤,用于基于Tcenter获得所述谷的右端的灰度值Tend;上限阈值计算步骤,用于计算所述文本图像的上限阈值Tupper;最优阈值确定步骤,用于确定Tupper和Tend中较小的一个作为用于对所述文本图像进行二值化的最优阈值。
2.如权利要求1所述的方法,其中,所述谷底确定步骤包括边缘探测步骤,用于探测文本图像中的边缘,用所述边缘将文本图像中的像素分为黑像素和白像素;直方图计算步骤,用于计算所有像素的灰度直方图H-All以及黑像素的黑像素直方图H-Black;最小阈值计算步骤,用于根据所述H-Black计算一个平均灰度值作为最小阈值Tmin;最大阈值计算步骤,通过利用下述方式计算最大阈值Tmax在从Tmin到255的区间中寻找所有像素的累积直方图中所有像素的累积频率与黑像素累积直方图中黑像素的累积频率的最小比;谷中心计算步骤,通过在H-All中寻找在Tmin和Tmax之间的谷底中心来计算最优阈值Tcenter。
3.如权利要求2所述的方法,其中,所述谷中心计算步骤包括下述子步骤计算Tmin和Tmax之间的中位点;调整Tmin和Tmax,其中,如果中位点更靠近Tmin而不是Tmax,则将该中位点设置为新的Tmin,或者,如果中位点更靠近Tmax而不是Tmin,则将该中位点设置为新的Tmax;重复上述子步骤,直到Tmin和Tmax相互足够靠近或者所述中位点与Tmin和Tmax之间的中点重合,最后的中位点对应于Tcenter。
4.如权利要求1到3之一所述的方法,其中,所述端点确定步骤还包括下述子步骤用预定大小的窗口对相继的灰度级进行平均,从而对直方图H-All加以平滑;搜索平滑后的直方图,直到遇到其频率大于或者等于Tcenter的频率的点,该点被视为所述谷的右端点Tend。
5.一种确定文本二值化阈值的设备,包括谷底确定装置,用于确定对应于文本图像的灰度直方图的谷底的灰度值Tcenter;端点确定装置,用于基于Tcenter获得所述谷的右端的灰度值Tend;上限阈值计算装置,用于计算所述文本图像的上限阈值Tupper;最优阈值确定装置,用于确定Tupper和Tend中较小的一个作为用于对所述文本图像进行二值化的最优阈值。
6.如权利要求5所述的设备,其中,所述谷底确定装置包括边缘探测装置,用于探测文本图像中的边缘,用所述边缘将文本图像中的像素分为黑像素和白像素;直方图计算装置,用于计算所有像素的灰度直方图H-All以及黑像素的黑像素直方图H-Black;最小阈值计算装置,用于根据所述H-Black计算一个平均灰度值作为最小阈值Tmin;最大阈值计算装置,通过利用下述方式计算最大阈值Tmax在从Tmin到255的区间中寻找所有像素的累积直方图中所有像素的累积频率与黑像素累积直方图中黑像素的累积频率的最小比;谷中心计算装置,用于计算对应于H-All中Tmin和Tmax之间的谷底中心的最优阈值Tcenter。
7.如权利要求6所述的设备,其中,所述谷中心计算装置还包括中位点计算装置,用于计算Tmin和Tmax之间的中位点;调整装置,用于调整Tmin和Tmax,其中,如果中位点更靠近Tmin而不是Tmax,则将该中位点设置为新的Tmin,或者,如果中位点更靠近Tmax而不是Tmin,则将该中位点设置为新的Tmax;控制器,用于控制所述中位点计算装置和所述调整装置进行操作,直到Tmin和Tmax相互足够靠近或者所述中位点与Tmin和Tmax之间的中点重合,输出最后的中位点作为Tcenter。
8.如权利要求5到7之一所述的设备,其中,所述端点确定装置还包括平滑装置,用于用预定大小的窗口对相继的灰度级进行平均,从而对直方图H-All加以平滑;搜索装置,用于搜索平滑后的直方图,直到遇到其频率大于或者等于Tcenter的频率的点,该点被视为所述谷的右端点Tend。
9.一种存储介质,其特征在于,在其中存储了用于实现权利要求1到4之一所述的方法的程序代码。
全文摘要
本发明涉及用于确定文本二值化阈值的方法、设备和存储介质。为了确定更适合对例如要用OCR加以识别的文本图像进行二值化的阈值,提出了一种确定文本二值化阈值的方法,包括谷底确定步骤,用于确定对应于文本图像的灰度直方图的谷底的灰度值Tcenter;端点确定步骤,用于基于Tcenter获得所述谷的右端的灰度值Tend;上限阈值计算步骤,用于计算所述文本图像的上限阈值Tupper;以及最优阈值确定步骤,用于确定Tupper和Tend中较小的一个作为用于对所述文本图像进行二值化的最优阈值。
文档编号G06K9/38GK1797427SQ20041008186
公开日2006年7月5日 申请日期2004年12月24日 优先权日2004年12月24日
发明者胥立丰, 马小勇, 赵洪生 申请人:佳能株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1