MATLAB的指纹识别系统的设计与实现
- 课题介绍
本文系统地介绍了指纹识别技术的发展和国内外研究应用现状,阐述了建立指纹识别系统的必要性和意义。以数字图像处理为基础,研究指纹识别的原理和方法,重点分析基于神经网络指纹识别算法、滤波特征和不变矩指纹识别算法和指纹匹配算法,将matlab作为仿真工具,针对已有的三种指纹识别算法进行编程识别;并通过实验论证各种算法的优缺点。
二、 指纹识别的理论和方法
2.1指纹识别的基本原理
指纹其实是比较复杂的。与人工处理不同,许多生物识别技术公司并不直接存储指纹的图象。多年来在各个公司及其研究机构产生了许多数字化的算法(美国有关法律认为,指纹图象属于个人隐私,因此不能直接存储指纹图象)。但指纹识别算法最终都归结为在指纹图象上找到并比对指纹的特征。
1.指纹的特征
我们定义了指纹的两类特征来进行指纹的验证:总体特征和局部特征。在考虑局部特征的情况下,英国学者E.R.Herry认为,只要比对13个特征点重合,就可以确认为是同一个指纹。
总体特征:总体特征是指那些用人眼直接就可以观察到的特征,包括:基本纹路图案环型(loop),弓型(arch),螺旋型(whorl)。其他的指纹图案都基于这三种基本图案。仅仅依靠图案类型来分辨指纹是远远不够的,这只是一个粗略的分类,但通过分类使得在大数据库中搜寻指纹更为方便。
局部特征:局部特征是指指纹上的节点的特征,这些具有某种特征的节点称为特征点。两枚指纹经常会具有相同的总体特征,但它们的局部特征--特征点,却不可能完全相同。
2.指纹的特征点
指纹纹路并不是连续的、平滑笔直的,而是经常出现中断、分叉或打折。这些断点、分叉点和转折点就称为“特征点”。就是这些特征点提供了指纹唯一性的确认信息。
三、识别流程
![v2-85db8a2793cc56c756ebbaa38b124639_b.jpg](https://ss.csdn.net/p?https://pic2.zhimg.com/v2-85db8a2793cc56c756ebbaa38b124639_b.jpg)
图3.1 指纹识别系统工作原理框图
四、指纹识别技术的方法
本文重点研究基于神经网络指纹识别算法、滤波特征和不变矩指纹识别算法和指纹匹配算法,,针对已有的三种指纹识别算法进行编程识别,通过matlab仿真,从而进一步论证三种算法的优缺点。
4.1 神经网络指纹识别算法
用神经网络进行识别选用哪种特征是个关键问题考虑到本文这里的识别过程是在同类型指纹间进行的这些指纹具有相似的纹线走向指纹的方向信息在这里就显得无关紧要了通过对同类型指纹的分析发现它们差别主要体现在具体的每个细节点上因此本文就提取了指纹的细节点特征作为识别特征每个样本提取的细节点特征是一个80×1维的向量包含20个特征点每个特征点的特征值是个4维的向量分别是特征点的类型特征点与参考点的纹线方向差值特征点与参考点的距离特征点与参考点的角度我们认为特征点的这些信息即可充分体现同类型指纹间的细微差别也同时具有一定的抗平移和抗旋转性。
本文采用的是学习矢量量化LVQ神经网络模型LVQ神经网络由于其自身的自组织和聚类特性可以很好地给出模式在多维空间的概率分布估计从而可较好地完成指纹的识别,其识别模型如图2.2所示.
![v2-6bbf332eacdc99982d09c71953a334e3_b.jpg](https://i-blog.csdnimg.cn/blog_migrate/ec44d588c5626ace230c3e167643daf0.png)
图4.2 基于神经网络的自动指纹识别模型