圆形印章图像比对软件的设计与实现
2017-11-10佟喜峰梁吉胜郭玲玲尹晓喆
佟喜峰 梁吉胜 郭玲玲 尹晓喆
(东北石油大学计算机与信息技术学院 黑龙江大庆 163318)
圆形印章图像比对软件的设计与实现
佟喜峰 梁吉胜 郭玲玲 尹晓喆
(东北石油大学计算机与信息技术学院 黑龙江大庆 163318)
伪造的印章会严重破坏社会秩序,给相关部门造成重大损失。因此,印章的真伪鉴别是一项重要的任务。文章笔者开发了一个用于比对圆形印章的软件。该软件首先通过水平和垂直两个方向的投影定位印章图像中心,然后绕印章中心进行印章图像旋转,最后通过匹配的点的个数以及总的点的个数计算匹配相似度。经测试,该软件能够比对印章,并能根据匹配相似度鉴别印章真伪。
印章;投影;匹配相似度
印章在我国政府、企业、事业单位等众多部门担任着重要的角色[1]。印章是一种许可标记,伪造的印章会严重破坏社会秩序,给相关部门造成重大损失,影响到社会稳定。因此,印章的真伪鉴别是一项重要的任务。目前印章的真伪鉴别主要是通过人工比较两张纸上的印章图案,费时费力且效果不好。也有一些研究人员研究了全自动的印章鉴别系统,基于图像识别技术,对印章真伪进行鉴别[2,3]。这些自动鉴别系统的主要的缺点是人不能参与到鉴别过程中,对印章真伪的判别完全依靠计算机,对不清晰的印章鉴别的准确率较低等[4]。本文开发了一个能够比较两个印章图像的软件,它采用半自动方式工作,能够自动寻找印章中心,每旋转一个角度,都能自动计算匹配相似度。
一、印章图像比对算法
(一)定位印章图像中心。由于是通过印章的旋转来对齐印章的,因此,定位印章中心位置是一个必不可少的步骤。另外,如果计算出的中心的位置有较大的误差,则在印章旋转时也会导致像素点的位置误差。所以,准确地定位印章图像中心非常重要。
假设印章是红色的,首先需要根据颜色找到印章的位置。在24位BMP图像中,每个像素点用三个字节分别表示Red、Gree、Blue三种颜色的强度。如果某个像素点的颜色是纯红色,则Red的值为255。但是,如果Red的值为255,则不能判定该点为红色,例如,Red、Gree、Blue的值均为255时,像素点的颜色为白色。基于以上的考虑,采用下面的条件判断像素点是否为红色:
上式中 VRed、VGreen和 VBlue分别为某个像素点的 Red、Gree、Blue三种颜色的强度值,T为阈值。经检测为红色的像素点,把VRed、VGreen和VBlue的值均置为0,否则把这三个值都置为255,即白色。
检测圆形印章中心的主要步骤如下:
(1)在检测出红色区域并把它作为印章区域后,通过垂直和水平两个方向进行投影,计算每一行和每一列内的红色像素点个数,分别保存在数组Hx和Hy中。
(2)根据Hx找到红色区域的左右边界,假设分别为Bl和Br。
(3)根据Bl和Br计算印章的水平中心:
(3)根据Hy找到红色区域的上下边界,假设分别为Bu和Bd。
(4)根据Bu和Bd计算印章的垂直中心:
(二)印章图像的旋转。在进行印章比对时,先读取两个印章图像的数据,假设两个图像分别保存在一维数组D1和D2中。假设图像D1保持不变,通过旋转图像D2比对两个图像。旋转图像D2的主要步骤如下:
(1)用2.1节的算法分别计算两个图像的印章中心,得到的中心分别为(Cx1,Cy1)和(Cx2,Cy2)。
(2)假设拟旋转的角度为θ,则通过如下的公式得到(x, y)旋转后的坐标(x',y'):
(3)由于两个印章图像的中心坐标一般是不重合的,需要对第二个印章图像做坐标平移,达到印章中心重合的目的:
则即为经旋转和平移后的坐标。为了后续步骤中便于计算匹配相似度,根据坐标可以得到旋转和平移后的图像D2"。
(三)匹配相似度计算。假设图像数组D2经过旋转和平移以后变为D2",则通过直接比较相同坐标的像素点的亮度,即可计算匹配相似度。匹配相似度的计算过程如下:
(1)统计图像1的黑像素点个数P1;
(2)统计图像2的黑像素点个数P2;
(3)统计图像1和图像2的位置重合的黑点个数Pcoi;
(4)匹配相似度通过如下公式得到:
上式中max(P1,P2)用于求P1和P2的最大值。
二、软件界面设计
用VC++的文档视图类开发该比对软件,软件的界面如图1所示。界面窗口分为四个部分,左上和右上窗口为印章1和印章2的显示区域。左下窗口为印章比对区域,在该窗口中,印章1和印章2重合区域的颜色为黑色,印章1和印章2未重合的区域,印章1以紫色显示,印章2以绿色显示。右下窗口为控制区域,在该区域包含了打开图像、旋转图像的控制按钮。为了能够方便地旋转,旋转尺度可以从20O、20、0.20、0.020度中选择一个,而且可以从顺时针和逆时针两个方向旋转。图2给出了印章比对的一个例子,包括对齐前和对齐后的图像。
图1 软件界面
图2 印章比对的一个例子
三、结语
本文设计并实现了圆形印章比对软件。首先通过水平和垂直两个方向的投影定位印章图像中心;然后对一个印章进行旋转和平移使两个圆心重合;最后通过位置重合的黑点个数与总的黑点个数的比值计算匹配相似度。每次打开两个图像,并旋转其中一个图像。根据对72个真伪印章图像的测试,若经过仔细旋转对齐以后,匹配度大于0.7,则认为印章是真的,否则可以判断为伪造印章。
[1]胡建颖,赵荻,周玲,等.基于集合统计差异性的伪造印鉴识别方法[J].计算机工程与设计,2014(9):3029-3033.
[2]万水龙,刘进,余彪.二维斜分指数交叉熵的印章图像阈值分割[J].微型机与应用,2013(24):46-49.
[3]史晶晶,杜江,王磊,等.基于SIFT的印鉴配准方法研究[J].计算机应用与软件,2013(12):315-317.
[4]余彪,万水龙,刘进,等.基于NSCT-GLCM的印章图像特征提取[J].微计算机与应用,2014(4):29-31.
TP391.4
A
2095-0438(2017)11-0147-02
2017-05-19
佟喜峰(1974-),男,黑龙江大庆人,东北石油大学计算机与信息技术学院副教授,博士,研究方向:图像处理与模式识别。
黑龙江省教育厅科学技术研究项目(编号:12541078)。
[责任编辑 郑丽娟]