发明内容
鉴于上述原因,本发明提供一种文字识别方法及装置。
根据本发明的一个方面,提供一种文字识别方法,包括:根据彩色图像求各像素的反映色彩信息的梯度值和梯度方向;根据各像素的梯度值和梯度方向求该图像的梯度方向直方图特征;将该直方图特征输入分类器,进行文字识别。
根据本发明的另一方面,所述根据彩色图像求各像素的反应彩色信息的梯度值和梯度方向,是在R、G、B三色色彩通道分别对图像各像素点求梯度值和梯度方向,然后对各像素点取最大梯度值,从而融合该三个通道的梯度值和梯度方向。
根据本发明的另一方面,所述根据彩色图像求各像素的反应彩色信息的梯度值和梯度方向,是在R、G、B三色色彩三维空间,求图像中各像素点的梯度矢量值和梯度方向。
根据本发明的另一方面,使用边缘检测算子计算各像素的梯度值和梯度方向。
根据本发明的另一方面,所述梯度方向直方图特征包括4个方向或8个方向。
根据本发明的另一方面,提供一种文字识别装置,包括:梯度求解单元,用于根据彩色图像求各像素的反映色彩信息的梯度值和梯度方向;梯度统计单元,用于根据各像素的梯度值和梯度方向求该图像的梯度方向直方图特征;分类器单元,用于对该直方图特征进行文字识别。
根据本发明的另一方面,所述梯度求解单元在R、G、B三色色彩通道分别对图像各像素点求梯度值和梯度方向,然后对各像素点取最大梯度值,从而融合该三个通道的梯度值和梯度方向。
根据本发明的另一方面,所述梯度求解单元在R、G、B三色色彩三维空间,求图像中各像素点的梯度矢量值和梯度方向。
根据本发明的另一方面,梯度求解单元使用边缘检测算子计算各像素的梯度值和梯度方向。
根据本发明的另一方面,所述梯度方向直方图特征包括4个方向或8个方向。
通过将彩色图像的色彩信息反映到梯度值中,使得不同颜色的像素之间的色彩差异能够被识别出来并作为用于文字识别的特征而被记录在梯度值中。这样,彩色图像中的文字识别的准确率能够大幅提高,文字识别也不会受到背景颜色的干扰。
具体实施方式
附图中的流程图和框图,图示了按照本发明各种实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
现在将仅通过示例性方式来详细地描述本发明的各种实施方式。
图1是根据本发明优选实施例的一文字识别方法的流程图。该方法具体包括下列步骤:
首先执行步骤S11,根据彩色图像求各像素的反映色彩信息的梯度值和梯度方向。梯度值和梯度方向能反映文字的轮廓的特征,是识别文字的重要的参考特征。为了尽量体现不同色彩中所包含的信息,以便于对不同色彩的像素进行区分,在梯度值的计算中考虑像素点的色彩的RGB信息,即红、绿、蓝三色信息。
在一个优选实施方式中,在R、G、B三色色彩通道分别对图像各像素点求梯度值和梯度方向,然后对各像素点取最大梯度值,从而融合该三个通道的梯度值和梯度方向。每种颜色都对应了不同的RGB值,通过对各像素点的RGB三通道分别求梯度值,能够使得各像素点与周围像素点的色彩差异被描述出来。例如,某像素点在R通道的梯度值为10,在G通道的梯度值为2,在B通道的梯度值为0,则选择其中最大的梯度值,即R通道的梯度值10作为该像素点的梯度值,并记录该R通道下的梯度方向作为该像素点的梯度方向。这样,只要该像素点与周围像素点在色彩三通道中之一有较大的差异,即认为该像素点与周围像素点之间产生显著变化,而将体现该差异的最大梯度值作为特征信息进行记录,以供用于文字识别。
求解各像素点的梯度值和梯度方向可根据分别求解水平梯度和垂直梯度而获得。设各像素点的水平梯度为Gx,垂直梯度为Gy,则各像素点的梯度值G为:
而梯度方向θ则为:
而对于水平梯度Gx和垂直梯度Gy的计算,可以使用各种图像边缘检测算子进行计算,包括但不限于Sobel算子、Prewitt算子和Roberts Cross算子等。优选使用索贝尔算子(Sobel)进行计算。例如,设A为图像中各像素点在某一色彩通道下的RGB数值矩阵,则各像素点在该色彩通道下的水平梯度
垂直梯度
根据以上卷积函数,可以快速的计算出各通道下的像素点的水平和垂直梯度,并从而计算出各像素点的各通道下的梯度值和梯度方向。然后从中选择每个像素点在三个通道中的最大的梯度值作为该像素点的梯度值。
在另一优选实施方式中,在R、G、B三色色彩三维空间,求图像中各像素点的梯度矢量值和梯度方向。仍然优选按照上述公式(3)计算各像素点在R、G、B三个色彩通道下的水平梯度值GxR、GxG、GxB,按照上述公式(4)计算各像素点在R、G、B三个色彩通道下的垂直梯度值GyR、GyG、GyB。然后在RGB三维空间分别计算各像素点的水平梯度矢量值Gx和垂直梯度矢量值Gy,有:
然后按照上述公式(1)、(2)计算各像素点的梯度值和梯度方向。该方法以各像素点在RGB三维空间的梯度矢量值作为各点的梯度值,使得该梯度值综合反映了该点与周围点的全部色彩信息,从而不同的色彩的差异对应有非常显著的梯度值大小,有利于文字特征的识别。
在获得了所有像素点的梯度值和梯度方向后,即进行步骤S12,根据各像素的梯度值和梯度方向求该图像的梯度方向直方图特征。该梯度方向直方图优选分为4个方向或8个方向,等分360度。将该图像中的每个像素点的梯度值按照其对应的梯度方向投票到其所属的方向象限中去。
可以使用硬投票或软投票方法进行投票。对于硬投票,例如,某像素点的梯度值为10,梯度方向(方向角的反正切值)为0.5,其对应的梯度方向的角度应为30度,则在8方向的直方图中,该像素点的梯度值应投票到0-45度的象限中,因此在0-45度的象限中累加该梯度值10。将图像中所有像素点都按此方法投票后,在每个象限中都得到一个总的梯度值。这样得到的包含多个象限的多个梯度值的直方图就是体现该图像的轮廓特征的梯度方向直方图特征。对于软投票,例如对应的梯度方向的角度为30度,位于0度和45度之间,可以用线性插值的方法,往0度上投影一个值10*(1-t),往45度上投影一个值10*t,t是0-1之间的权重,30度离0度更远,离45度更近,因此可取t=(30-0)/(45-0)=2/3。这样,软投票方法使得该30度的梯度值在0度和45度象限根据权重不同分别都有投票值,使得该投票结果能更加反映该特征在各象限的分布规律,更有利于该特征的识别。
梯度方向直方图特征作为光学字符识别(OCR)分类器的标准输入,可以由已知的各种分类器进行文字识别。因此,最后进行步骤S13,将该直方图特征输入分类器,进行文字识别。该分类器可以是MQDF(改性二次判别函数分类器)、SVM(向量机)等已知的分类器。
上述文字识别方法适于通过计算机程序算法来实现。
图2是适于用来实践本发明实施方式的文字识别装置200的示意性框图。该文字识别装置200包括梯度求解单元201,用于根据彩色图像求各像素的反映色彩信息的梯度值和梯度方向;梯度统计单元202,用于根据各像素的梯度值和梯度方向求该图像的梯度方向直方图特征;分类器单元203,用于对该直方图特征进行文字识别。该文字识别装置可用于实现以上所述的文字识别方法。
该文字识别装置适于通过载入以上文字识别算法的计算机硬件来实现。该文字识别装置尤其适于通过载入以上文字识别算法的、具有计算处理功能的手机等移动设备来实现。该移动设备优选还具有数码相机,用于拍摄名片等包含文字的图像信息。该移动设备可通过载入的算法程序,即时对拍摄的名片等图像中的文字信息进行识别、存储。
下面参考图3,其示出了适于用来实践本发明实施方式的移动终端300的示意性框图。在图3所示的示例中,移动终端300是一个具有无线通信能力的移动设备。然而,可以理解,这仅仅是示例性而非限制性的。其他类型的移动终端也可以容易地采用本发明的实施方式,诸如便携式数字助理(PDA)、寻呼机、移动计算机、移动电视、游戏设备、膝上型计算机、照相机、录像机、GPS设备以及其他类型的语音和文本通信系统。固定式移动终端同样可以容易地使用本发明的实施方式。
移动终端300包括一个或天线312,其可操作地与发射机314和接收机316进行通信。移动终端300还包括处理器312或者其他处理元件,其分别提供去往发射机314的信号和接收来自接收机316的信号。信号包括按照适当蜂窝系统的空中接口标准的信令信息,并且还包括用户语音、接收的数据和/或用户生成的数据。在此方面,移动终端300能够利用一个或多个空中接口标准、通信协议、调制类型以及接入类型来进行操作。作为示范,移动终端300能够根据多个第一代、第二代、第三代和/或第四代通信协议等中的任何协议来进行操作。例如,移动终端300可以能够按照第二代(G)无线通信协议IS-136(TDMA)、GSM和IS-95(CDMA)来进行操作,或者按照诸如UMTS、CDMA2000、WCDMA和TD-SCDMA的第三代(G)无线通信协议来进行操作,或者按照第四代(4G)无线通信协议和/或类似协议进行操作。
可以理解,处理器312包括实现移动终端300的功能所需的电路。例如,处理器312可以包括数字信号处理器设备、微处理器设备、各种模数转换器、数模转换器和其他支持电路。移动终端300的控制和信号处理功能按照这些设备各自的能力在其间分配。处理器312由此还可以包括在调制和传输之前对消息和数据进行卷积编码和交织的功能。处理器312还可以另外包括内部语音编码器,并且可以包括内部数据调制解调器。此外,处理器312可以包括对可以存储在存储器中的一个或多个软件程序进行操作的功能。例如,处理器312可以能够操作连接程序,诸如传统的Web浏览器。连接程序继而可以允许移动终端300例如按照无线应用协议(WAP)、超文本传输协议(HTTP)等来发射和接收Web内容(诸如基于位置的内容和/或其他web页面内容)。
移动终端300还可以包括用户接口,其例如可以包括耳机或者扬声器324、振铃器322、麦克风326、显示屏328以及输入接口331,所有这些设备都耦合至处理器312。移动终端300可以包括小键盘330。小键盘330可以包括传统的数字键(0-9)和相关键(#、*),以及用于操作移动终端300的其他键。备选地,小键盘330可以包括传统的QWERTY小键盘布置。小键盘330还可以包括与功能相关联的各种软键。移动终端300还可以包括相机模块336,用于捕获静态和/或动态图像。
特别地,显示屏328可以包括触摸式屏幕和/或邻近式屏幕,用户可以通过直接操作屏幕而操作移动终端300。此时,显示屏328同时充当输入设备和输出设备二者。在这样的实施方式中,输入接口331可以配置用于接收用户通过例如普通的笔、专用触笔和/或手指在显示屏328上提供的输入,包括指点输入和手势输入。处理器312可配置用于检测此类输入,并且识别出用户的手势。
此外,移动终端300可以包括诸如操纵杆的接口设备或者其他用于输入接口。移动终端300还包括电池334,诸如振动电池组,用于为操作移动终端300所需的各种电路供电,以及可选地提供机械振动作为可检测输出。
移动终端300可以进一步包括用户标识模块(UIM)338。UIM 338通常是具有内置处理器的存储器设备。UIM 338例如可以包括订户标识模块(SIM)、通用集成电路卡(UICC)、通用订户标识模块(USIM)、可移动用户标识模块(R-UIM)等。UIM 338通常存储与移动订户相关的信元。
移动终端300还可以具有存储器。例如,移动终端300可以包括易失性存储器340,例如包括用于数据临时存储的高速缓存区域的易失性随机存取存储器(RAM)。移动终端300还可以包括其他非易失性存储器342,其可以是嵌入式的和/或可移动的。非易失性存储器342可以附加地或者可选地包括例如EEPROM和闪存等。存储器可以存储移动终端300所使用的多个信息片段和数据中的任意项,以实现移动终端300的功能。
所述移动终端300可以配置用于实现上文结合图1描述的方法以及作为结合图2描述的装置。
应当理解,图3所述的结构框图仅仅为了示例的目的而示出的,而不是对本发明范围的限制。在某些情况下,可以根据具体情况而增加或者减少某些设备。
已经出于示出和描述的目的给出了本发明的说明书,但是其并不意在是穷举的或者限制于所公开形式的发明。本领域技术人员可以想到很多修改和变体。本领域技术人员应当理解,本发明实施方式中的方法和装置可以以软件、硬件、固件或其组合实现。
因此,实施方式是为了更好地说明本发明的原理、实际应用以及使本领域技术人员中的其他人员能够理解以下内容而选择和描述的,即,在不脱离本发明精神的前提下,做出的所有修改和替换都将落入所附权利要求定义的本发明保护范围内。