一种基于混合匹配的指纹识别方法
扫描二维码
随时随地手机看文章
摘要:为克服传统的基于细节点匹配的不足,对基于点模式匹配算法与改进的2DPCA 匹配算法的混合识别算法进行了改进。改进后的算法在点模式匹配算法中加入改进的2DPCA 算法的初匹配得分权重, 提高了点模式匹配算法的准确性; 并利用点模式匹配算法对2DPCA 算法的匹配结果进行二次匹配,同时也提高了2DPCA 算法匹配的准确率。
指纹识别技术是一种非常重要的生物特征识别技术, 应用十分广泛。指纹识别一般包括指纹图像采集、指纹图像增强、特征提取和匹配几个部分, 其中特征匹配在整个系统中占有重要地位。指纹识别系统中的匹配算法主要分为基于细节信息和基于全局信息两种模式。
目前, 大部分的指纹识别系统都是采用基于细节特征的匹配方法, 即提取细化后的指纹图像的端点和分叉点信息, 采用一定的算法实现匹配。此类算法虽然取得了较好的识别效果, 但是对发生偏移、形变、断纹等低质量的指纹图像效果不佳, 并由于该类方法在提取特征之前要对指纹图像做一系列的预处理, 耗时较长。
本文采用了一种基于点模式算法和改进的2DPCA的混合匹配算法, 能够充分利用指纹纹线中脊线和谷线的全局信息, 弥补点模式算法的不足。
1 基于点模式的匹配算法
本文采用一种在极坐标下基于中心点的指纹匹配算法, 该算法的具体实现步骤如下。
(1) 构造指纹图像特征点的集合, 在预处理阶段计算出指纹图像的特征点及其特征点信息, 包括特征点的坐标FeatureX 与FeatureY、特征点的方向DirectiON 和特征点的类型Type( 包括端点和分叉点)。通过上述信息, 设系统数据库中已存在的指纹图像为P, 其特征点的数量为m, 在线录入的指纹图像为Q, 其特征点的数量为n ,则它们对应的两个点集为:
其中,
(2) 获取中心点CorePoint_X、CorePoint_Y 及中心点的方向CorePoint_Dir。
(3) 以各自图像的中心点为极点, 按照公式将所有的特征点都转换到极坐标下:
通过上述公式转换后, 指纹图像中的任一特征点可以表示为一个四维向量(Radius,θ,Dir,Type)。其中,Radius表示该特征点在极坐标下的极径,θ 表示极角,Dir 表示该特征点在极坐标下的方向;Type 表示该特征点的类型。
(4) 分别将模板指纹P 和输入Q 特征点按照极角递增的方向排序, 形成两个新的特征点集:
(5) 匹配误差值的设定。为了克服指纹出现旋转、形变等非线性形变带来的误差,本文引入了可变界限盒的概念, 如图1 所示, 其中,Rw为两个特征点间的极径允许的误差范围,θw为极角间的允许误差范围。
图1 可变界限盒示意图
距离中心点远的特征点有可能发生的位移或形变的幅度较大, 而距离中心点近的特征点往往发生的位移或形变较小, 为减少误判, 将Rw和θw设为两个动态的值, 其具体值由不同的极径决定。
同时也在特征点方向匹配时设置方向误差范围Dw, 由于采用的是离散的8 个方向, 故范围为Dw={Dir-1,Dir,Dir+1} , 其中当Dir=1 时,Dir-1=8;当Dir=8 时,Dir+1=1。
(6) 排序后, 将输入点集Q 的特征点和模板点集P 中的特征点进行逐一匹配。当输入图像和模板图像中超过13 对特征点满足条件时, 则认为这两幅指纹来自同一手指, 匹配成功; 反之, 失败。
2 基于改进的2DPCA 的指纹识别
2DPCA 算法是一种以图像为分析对象的特征提取算法, 因此在构造图像协方差矩阵时, 可以直接利用图像矩阵。2DPCA 算法以图像的全局信息为处理对象, 在实现降维和提取特征的过程中, 赋予了图像矩阵中每个像素相同的地位, 如果直接采用2DPCA 算法对图像进行处理, 将不可避免地损失掉一部分类间训练样本所包含的判别信息。
基于以上不足,本文设计一种基于样本类别信息的改进2DPCA 算法,该算法根据样本类别信息的差异性,利用样本的类内协方差矩阵作为特征向量的产生矩阵,利用类聚值向量和类间协方差矩阵来提取训练样本的特征。
2.1 改进的2DPCA 算法
假设训练样本为m×n 的图像矩阵,总数量为P,训练样本的类别数为L,设第l 类的训练样本数量为Pl,则满足:
对于第l 类某一幅训练样本X′, 其投影空间为U′,将X′投影到U′将产生一个投影矩阵Y′=X′U′ 。用投影Y′的总离散度作为准则函数J(U′)来衡量投影空间U′ 的优劣,其准则函数满足:
其中,SU′ 是投影矩阵Y′=X′U′ 的协方差矩阵,tr (SU′ ) 为SU′的迹。对于数量为Pl的第l 类样本图像xi′ (i=1,2,…,Pl),可以得到样本类的平均图像满足:
采用式(7)将该样本类中的所有图像去均值:
得到其协方差矩阵满足:
在得到样本类内的协方差矩阵G′后, 计算其特征值矩阵和特征向量矩阵。则该类样本的特征值就是特征值矩阵的对角元素,同时得到对应的特征向量。对于每一类样本, 取其前k 个特征值所对应的特征向量作为投影空间U′:
Ui′T U′j =0; i≠j ; i, j=1,2,…,k这样, 就可以得出第l 类样本图像Xi′(i=1,2,…,Pl)在空间U′中的投影满足:
则Yi′即为该类别原始图像xi′降维后的特征向量, 作为此类别图像的投影向量矩阵,用来对该样本类的图像进行识别。同理, 将L 类共P 幅训练样本按样本类别分别训练, 可以得到L 个投影向量矩阵。
2.2 改进的2DPCA 算法的指纹匹配
指纹分类后, 将训练样本进行有效区域提取, 得到四类新的样本集。然后对每一类训练样本进行处理, 分别得到其投影后的特征向量。
对于在线输入的测试样本, 同样要得到它在空间U的投影向量。假设T 是一幅待识别的测试样本图像, 经过样本类别判断后确定T 属于第l 类, 即T∈Pl, 用式(10)先去均值:
将其投影到特征空间, 由式(11) 得到输入样本的投影向量:
将投影向量Yt与其所属类别的Pl幅训练样本的投影向量Yi′进行距离匹配,按照式(12)计算其欧氏距离:
最后采用最近邻法则, 当诸如样本T 与其同类的某一幅训练样本Plj (Plj∈Pl) 拥有最小欧氏距离且该距离满足一定的阈值的时候,即可判定输入样本T 与训练样本为同一幅图像,即完成整个识别。
3 基于混合模式的指纹识别算法
基于混合模式的指纹识别算法的流程图如图2 所示。
图2 混合模式匹配算法流程图
设共采集到N 幅指纹图像, 样本共分为K 类, 其中第k(k∈[1,K]) 类包含M 幅图像, 则具体实现步骤如下:
(1) 输入指纹图像的采集与质量*估;(2) 对输入指纹图像进行样本类别划分, 设该输入属于第k 类;(3) 对输入指纹图像进行2DPCA 的预处理;(4) 提取输入图像的2DPCA 特征向量集;(5) 采用2DPCA 匹配算法在指纹图像的第k 类数据库中进行初匹配, 若不满足匹配要求, 则系统最终匹配失败; 满足时, 通过相应阈值的设定得到m(m《 M) 幅候选指纹和它们的匹配得分权重, 并同时按照索引得到它们的点模式特征点;(6) 对输入指纹图像进行点模式预处理;(7) 对预处理后的输入指纹图像进行点模式特征集中, 采用点模式匹配算法进行二次匹配, 并加入对应的2DPCA 匹配的得分权重。若满足匹配要求, 则系统最终匹配成功; 若不满足, 则失败。
4 实验结果与分析
本文在CPU 为2.00 GHz 、1.99 GHz , 内存为2.00 GB的PC 和Matlab R2007B ,Visual STudio 2007 的开发环境下, 选用FVC2002DB2_A 中的880 幅指纹图像进行匹配算法的实验。该指纹库共采集110 个指纹, 每个手指分别采集8 次得到8 幅指纹。实验采用交叉匹配的方式,即每个手指从8 幅中选取6 幅作为模板指纹,2 幅作为输入指纹, 一共进行220 次匹配, 得到实验结果如表1所示。
从 表中可以看出, 采用本文算法进行指纹匹配的识别率为93.57%, 与点模式匹配算法相比, 识别率有所提高。改进的2DPCA 算法在空间降维提取特征方面由于指纹图像出现较大程度的位移, 且部分粘连现象较为严重, 使得最终算法中根据最近邻原则所得到的匹配图像出现错误, 但是观察其欧氏距离值的排序, 正确的指纹图像一般位于前列, 这就为混合匹配算法提供了依据。采用混合匹配, 识别率略有提升。本文将点模式匹配算法与2DPCA 结合起来, 在点模式匹配算法中加入了2DPCA 算法的初匹配得分权重, 提高了点模式的准确性; 并采用基于样本类别信息的方法, 大大减少了点模式匹配中与原始数据点集之间的搜索和逐对匹配的次数, 因此要比原有点模式的效率高。
表1 三种模式指纹匹配算法实验结果
本文对基于细节点的指纹匹配算法和基于全局信息的改进2DPCA 匹配算法进行了分析;然后对三种模式的算法进行了比较,总结了其优缺点;最后将两种模式的算法相结合,设计了一种混合指纹识别算法。该算法具有两种模式的优点, 能够缩小匹配范围, 减少匹配次数, 并且在一定程度上提高了识别率,降低误判和拒识率。