一种文本图像的快速匹配方法和装置
技术领域
本发明属于文字处理技术领域,涉及一种文本图像的匹配方法,具体涉及一种基于归一化图像模板的文本图像快速匹配方法和装置。
背景技术
文本图像是以文字为主要内容的图像,主要用于将印刷文字转化为电子格式字符的过程中。文本图像的识别处理在文献信息数字化、纸质档案数字化、金融票据自动识别、现代化物流以及银行、保险、税务、海关、公安、边检等重要领域得到广泛应用。目前光学字符识别OCR(Optical character recognition)技术是解决上述文本图像中字符识别的主要手段。
另外,文本水印技术在基于文档的信息安全方面发挥着积极作用。将某些具有标识作用的信息诸如文档生成时间、文档的归属等隐藏在涉密的文档数据中,这些隐秘信息在视觉上是不可见的。当文档被非法获取或复制时,通过特定的装置提取的隐藏在文本中信息可以追踪文本的源头以达到版权保护及追溯源头的作用。为了提高嵌入载体中的水印信息的鲁棒性能,出现了基于字库修改的水印方法。专利申请号为200410057153.6,专利名称为“对电子公文或文档进行加密及鉴别真伪的方法”(申请人:北京大学,发明人:张力等,公开日期:2005.3.2)提出了一种针对电子公文或文档进行加密及鉴别真伪的方法。该发明通过专用字库,在公文交换或者打印过程中,自动加密电子公文或文档,使接收单位打印的每份电子公文或文档彼此在部分字形上有细微差别,形成电子公文或文档的特殊编码。对于这种特殊编码,将嵌入水印信息后的纸质文档扫描为文本图像文件,然后使用OCR技术进行变形字体的识别,通过提取相应的水印信息来进行公文或者文档的出处溯源与防伪鉴真。但是由于技术水平的限制,OCR不能保证100%的正确识别率。每一个误识别的文字字符都可能会影响所有水印信息的正确提取。
综上所述,现有的依赖于OCR进行文本图像识别处理的技术都存在着误识别的问题。因此,需要提供一种辅助手段进行快速的文本图像匹配,从而判定字符识别结果是否正确。
发明内容
本发明提供一种基于归一化图像模板的文本图像快速匹配方法和装置,用以解决现有技术中的文本图像的自动匹配精度低和速度慢的问题。
本发明中一种文本图像快速匹配的方法,技术方案中包括如下步骤:
步骤一,将模板字符图像A和待匹配字符图像B进行图像卷积操作,得到图像A和图像B的卷积矩阵R;
步骤二,计算待匹配字符图像B的像素值累加和矩阵IsB和平方累加和矩阵IsB2;
步骤三,依据卷积矩阵R和累加和矩阵IsB、IsB2,计算模板字符图像A和待匹配字符图像B的相似度δ;
步骤四,通过比较δ值的大小判定文本图像匹配是否成功。
较佳地,所述的图像卷积操作,具体的计算过程为:
Step1.首先将模板字符图像A旋转180度得到Ar,其中图像A和图像B的宽和高分别为w和h;
Step2.分别将字符图像Ar和B进行变倍扩展处理后得到图像A′和B′;
Step3.分别将图像A′和B′进行二维傅里叶变换并得到频谱图像FA和FB;
Step4.将频谱图像FA和FB进行点乘运算得到矩阵FC;
Step5.对矩阵FC做二维傅里叶逆变换后得到矩阵R,即为图像A和图像B的卷积矩阵。
较佳地,所述的变倍扩展处理,是指将图像进行矩阵排列后得到新图像,新图像的宽和高分别变为2w和2h,其中左上角子矩阵即为原始的图像矩阵数据,其余三个等大的子矩阵均为零矩阵。
较佳地,所述的累加和计算,通过动态规划的思想以查表的方式计算得出待匹配字符图像B中以(0,0)点到(u,v)点为对角线元素所构成子矩阵的所有元素值的累加和,以及通过子矩阵中所有元素值的平方相加得到的平方累加和。
较佳地,所述的图像相似度计算,是指利用归一化的自相关匹配算法(NCC,normalized cross-correlation)计算两幅图像的相似度:
将模板字符图像A在待匹配图像B上滑动至位置(u,v)时,按照如下方法计算A滑动到B的每一点时的自相关系数:
其中,f(i,j)是图像B位于坐标(i,j)点的灰度值,t(i,j)是图像A位于坐标(i,j)处的灰度值,与分别为图像B与图像A在滑动窗口内的灰度平均值。
上述所有系数中的最大值即为两幅图像的相似度δ。
较佳地,所述的自相关系数r(u,v)计算,等价为如下方式:
其中,C表示等价的自相关系数矩阵,
R[i,j]为图像A和图像B的卷积矩阵R的元素,sum(B)为图像B的所有像素灰度值的和。
std(A)为图像A的像素值标准方差,其计算方法如下:
其中avg(A)为图像A的所有像素平均值。
较佳地,所述的相似度δ,当δ≥ρ时,判定文本图像匹配成功,否则匹配失败。ρ为阈值,一般地,ρ取值0.90。
基于同一发明构思,本发明还提供了文本图像快速匹配的装置,包括:
图像卷积计算模块,负责将模板字符图像A和待匹配字符图像B进行图像卷积操作,得到图像A和图像B的卷积矩阵R;
累加矩阵计算模块,负责计算待匹配字符图像B的像素值累加和矩阵IsB和平方累加和矩阵IsB2;
图像相似度计算模块,负责依据卷积矩阵和累加和矩阵,计算模板字符图像A和待匹配字符图像B的相似度δ;
匹配结果判定模块,通过比较图像相似度计算模块得到δ值的大小判定文本图像匹配是否成功。
本发明的有益效果如下:
由于本发明中,通过基于归一化的自相关匹配算法(NCC,normalized cross-correlation)计算两幅图像的相似度,并依据动态规划思想将图像自相关系数进行加速运算,从而可以进行文本图像的快速匹配,解决了目前字符图像匹配的配精度低和速度慢的问题。同时,该方法可以在水印字库的自动识别和图文自动比对领域具有广泛应用。
附图说明
图1为实施例1中所述的一种文本图像快速匹配方法的实施流程示意图;
图2为字符图像变倍扩展效果示意图;
图3为累加和矩阵结构示意图;
图4为累加和矩阵计算方法示意图;
图5为字符图像匹配示意图;
图6为实施例1中所述的一种文本图像快速匹配装置的结构示意图;
图7实施例2中的水印字体结构设计效果示意图;
图8为含水印信息的字符经过打印扫描后的效果示意图;
图9为使用字符匹配方法进行的字体变形识别效果示意图。
具体实施方式
下面结合附图对本发明的具体实施作出说明。
实施例1:
图1为实施例1中所述的一种文本图像快速匹配方法的实施流程示意图。
S101,将模板字符图像A和待匹配字符图像B进行图像卷积操作,得到图像A和图像B的卷积矩阵R。
上述的图像卷积操作的具体计算过程为:
Step1.首先将模板字符图像A旋转180度得到Ar,其中图像A和图像B的宽和高分别为w和h;
Step2.分别将字符图像Ar和B进行变倍扩展处理后得到图像A′和B′。
所述的图像变倍扩展处理,是指将图像进行矩阵排列后得到新图像,具体如图2所示,新图像的宽和高分别变为2w和2h,其中左上角子矩阵即为原始的图像矩阵数据,其余三个等大的子矩阵均为零矩阵。将图像Ar和B均做相同的操作,从而得到扩展后的图像A′与B′。
Step3.分别将图像A′和B′进行二维傅里叶变换并得到频谱图像FA和FB。
频谱图像的计算方法如下:
FA=fft2(A′),FB=fft2(B′) (1)
其中fft2为二维傅里叶变换。
Step4.将频谱图像FA和FB进行点乘运算得到矩阵FC。
频域信号上的点乘计算方法如下:
FC=FA*FB (2)
Step5.对矩阵FC做二维傅里叶逆变换后得到矩阵R,即为图像A和图像B的卷积矩阵。
具体卷积计算方法如下:
R=ifft2(FC) (3)
其中ifft2为二维傅里叶逆变换。
S102,计算待匹配字符图像B的像素值累加和矩阵IsB和平方累加和矩阵IsB2。
所述的累加和计算,是指通过动态规划的思想以查表的方式,计算得出待匹配字符图像B中以(0,0)点到(u,v)点为对角线元素所构成子矩阵的所有元素值的累加和,以及通过子矩阵中所有元素值的平方相加得到的平方累加和。
设图像B的像素值矩阵如下:
图像B的所有元素进行平方操作后得到像素值平方矩阵B2:
针对矩阵B与B2分别做累加和操作计算得到累加和矩阵IsB=f(B)及IsB2=f(B2)。变换f的主要思想如下:
设变换前原始矩阵K,令其第i行第j列的元素K[i,j]=Kij,矩阵K的行数和列数为w和h,计算得到的累加和矩阵Kr=f(K)的行数和列数分别为2w和2h。Kr的结构如图3所示,其中,Kr的子矩阵KD、KJ、KF、KK与原始矩阵K等大小。
子矩阵KD的元素值为:
即元素KD[i,j]为矩阵K的左上角子矩阵中的所有元素的和,如图4中(a)图的阴影部分所示。
子矩阵KJ的元素值为:
即元素KJ[i,j]为矩阵K的右上角子矩阵中的所有元素的和,如图4中(b)图的阴影部分所示。
子矩阵KF的元素值为:
即元素KF[i,j]为矩阵K的左下角子矩阵中的所有元素的和,如图4中(c)图的阴影部分所示。
子矩阵KK的元素值为:
即元素KK[i,j]为矩阵K的右下角子矩阵中的所有元素的和,如图4中(d)图的阴影部分所示。
S103,计算模板字符图像A和待匹配字符图像B的相似度δ。
字符图像的匹配过程就是计算两幅图像的相似度,而所述的图像相似度计算,是指利用归一化的自相关匹配算法(NCC,normalized cross-correlation)计算两幅图像的相似度。即将模板字符图像A在待匹配图像B上滑动至位置(u,v)时,按照如下方法计算A滑动到B的每一点时的自相关系数:
其中,f(i,j)是图像B位于坐标(i,j)点的灰度值,t(i,j)是图像A位于坐标(i,j)处的灰度值,与分别为图像B与图像A在滑动窗口内的灰度平均值。上述所有系数中的最大值即为两幅图像的相似度δ。
由于上述公式(10)的计算复杂度较高,实际应用中可以采取如下的加速计算方法:
首先,令则(10)式的分子可以表述为如下形式:
显然,(11)式的后一项恒等于零,将(11)式的前一项展开可以得到:
(12)式的第一项可以看作是时域中两个信号的卷积运算,针对时域的卷积等价于基于频域的系数相乘运算,等价于如下形式:
F-1[F(f)F*(t)] (13)
其中,F是对原始信号做傅里叶变换,F*是对变换后的结果做共轭复数运算,F-1是针对频域信号做傅里叶逆变换。
接着,针对(10)式的分母部分进行分析,其后一项为模板字符图像A的像素值方差。第一项经过简化后可以得到如下结果:
若计算出式(14),需得到待匹配字符图像B在(u,v)处的滑动窗口内所有像素值的累加和,以及待匹配字符图像B在(u,v)处的滑动窗口内所有像素值平方累加和。
因此,结合步骤S101中计算得到的卷积矩阵R,以及步骤S102中计算得到的待匹配字符图像B的像素值累加和矩阵IsB和平方累加和矩阵IsB2,所述的自相关系数r(u,v)计算,等价为如下方式:
其中,C表示等价的自相关系数矩阵,
R[i,j]为图像A和图像B的卷积矩阵R的元素,sum(B)为图像B的所有像素的灰度值的和。
std(A)为图像A的标准方差,计算如下:
其中avg(A)为图像A的所有像素平均值。
通过公式(10)计算自相关系数时,模板字符图像A在待匹配图像B上滑动的过程中相同位置处的重复计算很多,计算复杂度高,运算速度慢。而在等价的自相关系数矩阵计算过程中使用了累加和的方法,有效避免了重复计算的问题。因此,本发明所述的文本图像匹配方法计算复杂低,计算速度快。
S104,通过比较δ值的大小判定文本图像匹配是否成功。
如图5所示,当模板字符图像A滑动到点(u,v)处时,滑动窗口内像素的累加和以及累加平方和,也即图像B中灰色区域标出的子矩阵部分的累加和以及累加平方和,此时的图像匹配度最高。当图像匹配的相似度δ≥ρ时,判定文本图像匹配成功,否则匹配失败,一般地,ρ取值0.90。
基于同一发明构思,本发明还提供了文本图像快速匹配的装置,如图6所示,包括:
图像卷积计算模块,负责将模板字符图像A和待匹配字符图像B进行图像卷积操作,得到图像A和图像B的卷积矩阵R;
累加矩阵计算模块,负责计算待匹配字符图像B的像素值累加和矩阵IsB和平方累加和矩阵IsB2;
图像相似度计算模块,负责依据卷积矩阵和累加和矩阵,计算模板字符图像A和待匹配字符图像B的相似度δ;
匹配结果判定模块,通过比较图像相似度计算模块得到δ值的大小判定文本图像匹配是否成功。
由于本发明中,通过基于归一化的自相关匹配算法(NCC,normalized cross-correlation)计算两幅图像的相似度,并依据动态规划思想将图像自相关系数进行加速运算,从而进行文本图像的快速匹配,解决了目前字符图像匹配的配精度低和速度慢的问题。
实施例2:
在基于字符结构特征修改的文本水印嵌入和提取的方法中,通常会事先设计特殊的水印基因字库文件,即通过适当改变字符或者字符串的拓扑结构,设计出语义上相同的字符(串)的多种字形,每种字形赋予不同的字符编码,代表不同的水印信息位串,并将所有字符编码保存到新的字库文件中;接着,当文本文档被打印输出或者屏幕显示时,通过电脑中终端监控服务程序截获打印或屏幕显示的文本内容;最后,根据待嵌入的水印信息位串,通过动态替换字符的不同字形结构来实现水印信息的嵌入,并将修改的文本文档内容数据发送至物理的打印机输出,或者在屏幕上进行显示输出。
将如图7中(a)图所示的原始的仿宋字体汉字字符“在”的字形拓扑结构进行修改后,映射为两个不同字形结构,分别为图7中(b)图和(c)图所示,并分别代表水印信息位串“0”和“1”。即在水印信息嵌入时,根据水印位串信息,分别将图7中(a)图替换为(b)图或(c)图两种字形结构。水印信息提取识别时,将嵌入水印信息的纸质文档扫描为数字化的文本图像,并从中切分出汉字字符“在”的子图像块,即为包含水印信息的字符经过打印扫描后的字符图像,如图8所示。然后通过归一化字符图像模板匹配的方法检测不同水印字符结构之间的差异,从而提取事先嵌入的水印信息位串。
下面以图8为例,具体描述文本图像匹配过程如下:
Step1.首先从水印字库中读取“在”的两种不同的变形结构图像,如图7中(b)和(c)所示,并视为待匹配字符图像B1和B2;
Step2.将图8所示的包含水印信息的字符图像视为模板字符图像A,并分别和待匹配字符图像B1和B2进行图像卷积操作得到卷积矩阵R1和R2;
Step3.分别计算待匹配字符图像B1和B2的像素值累加和矩阵IsB和平方累加和矩阵IsB2;
Step4.分别计算模板字符图像A和待匹配字符图像B1和B2的相似度δ1和δ2;
Step5.通过比较δ1和δ2的大小,判定图8跟图7中(b)和(c)哪个匹配度高,从而提取相应的水印信息位串。
匹配效果如图9所示,图9中的(a)图和(b)图为图8分别跟图7中(b)图和图7中(c)图的最大匹配效果示意图。根据公式(12)计算出的最大的相关系数分别为0.94249和0.79489,可以判断得出图8跟图7中(b)图的匹配度更高,从而推算出该字符所代表的水印信息位串为“0”。
另外,本发明所述方法还可以图文自动比对领域具有广泛应用。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。