




已阅读5页,还剩18页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
指纹识别技术研究陈博毛庆凯曹泽南京大学电子学院,南京210046(人数问题说明本组包括三人陈博(071180004),毛庆凯(071180066),曹泽(071180003)。本组三人之前分别属于两组,后因时间紧迫,为了最终做出指纹识别这一共同目标,两组决定合作,遂造成了本组三人的局面,望老师谅解。不过本组分工明确前期三人都收集了若干资料,毛庆凯同学负责指纹图像预处理,最终得到了指纹的细化图像;陈博同学负责特征点提取和特征点匹配;曹泽同学负责将两部分结合,并完成了论文的创作。)摘要随着生物识别技术的不断发展,人们发现每个人的指纹具有唯一性和不变性。因此指纹识别技术逐步发展为一种新的身份识别方式,并且凭借其良好的安全可靠性,大有取代传统身份识别方式的趋势。本文简要介绍了指纹识别的基本步骤,分别是指纹图像预处理、指纹特征提取、指纹匹配。在图像预处理中,依次介绍了规格化处理、图像增强、二值化处理和细化处理的方法。预处理后将得到一幅宽度为一个像素的细化二值图像,然后通过特定的端点和交叉点的特征进行指纹匹配。实验表明,该方法效果良好。论文中采用MATLAB编程实现全部算法。关键词指纹识别,图像处理,特征提取,特征匹配1引言传统的身份识别技术包括基于密码的身份识别技术和基于令牌的身份识别技术。但是这两种方式都存在着一定的安全风险令牌容易丢失,密码容易忘记,且它们都容易被窃取或冒充。近年来,依赖人体特征的新型身份识别技术正在兴起,凭借其唯一且不变的特点,生物识别技术逐步成为人们研究的热点。而在生物识别技术中,指纹识别技术已经被广泛的研究和应用。它的基本原理框图如图一所示。图1指纹识别的基本原理框图2指纹图像预处理21图像规格化受采集设备参数和环境的影响,采集到的指纹图像可能总体对比度较差。图像归一化的作用就是使所有指纹图像具有相同的灰度均值和方差,从而将每一幅图像的灰度调整到统一的范围,方便后续处理。归一化的算法是(1)先计算图像的平均值和方差。这部分工作主要通过统计图像中各点像素值得到该图指纹采集指纹图像预处理特征点提取特征点匹配输出显示像的直方图,然后利用直方图来计算指纹图像的相关指标。10,HWIJMIII120,IJVARIIIJMI(2)指定期望经过处理后的图像均值和方差,计算归一化后的图像G。200200,VARIIJIIJGIJIJOTHERSR图像规格化的MATLAB程序如下(其中方差取VAR02000,M0150)归一化M0VAR0FORX1MFORY1NMMIX,YENDENDM1M/MNFORX1MFORY1NVARVARIX,YM12ENDENDVAR1VAR/MNFORX1MFORY1NIFIX,YM1IX,Y150SQRT2000IX,YM1/VAR1ELSEIX,Y150SQRT2000M1IX,Y/VAR1ENDENDENDFIGURE,IMSHOWUINT8I带入指纹图像ZHIWEN1BMP后得到的原始图像和归一化图像见图2和图3图2原始指纹图像图3规格化后的指纹图像22图像分割指纹图像通常包括纹线区域和周边的无用区域。如果保留这些无用区域,会致使计算冗余度增加。为此要先将其从待处理区域中去除。通常用的分离方法有像素领域特征的方法和基于像素分布概率的方法等。本文采取对各像素邻域特征进行分析,然后分割图像算法。吧图像分成TT的非重叠块,计算每一块的灰度均值M和方差VAR,通过下列条件区分前景与背景(1)如果MM1且VARVAR1,则认为前景,否则待定;(3)对所有分块划分完毕后,在对待定块进行判决。如果在8邻域中,背景景小于等于4则认为是前景,否则是背景在编程过程中通过几次调试后对图像进行33分块处理MATLAB程序如下分割M333HM/MLN/MAVEG1ZEROSH,LVAR1ZEROSH,L计算每一块的平均值FORX1HFORY1LAVEG0VAR0FORI1MFORJ1MAVEGIIX1M,JY1MAVEGENDENDAVEG1X,YAVEG/MM计算每一块的方差值FORI1MFORJ1MVARIIX1M,JY1MAVEG1X,Y2VARENDENDVAR1X,YVAR/MMENDENDGMEAN0VMEAN0FORX1HFORY1LGMEANGMEANAVEG1X,YVMEANVMEANVAR1X,YENDENDGMEAN1GMEAN/HL所有块的平均值VMEAN1VMEAN/HL所有块的方差GTEMP0GTOTLE0VTOTLE0VTEMP0FORX1HFORY1LIFGMEAN1AVEG1X,YGTEMPGTEMP1GTOTLEGTOTLEAVEG1X,YENDIFVMEAN1G2111111模板系数均值滤波IMDOUBLEIINZEROSM,NFORA2M1FORB2N1INA,BIMA1,B1TEMP1,1IMA1,BTEMP1,2IMA1,B1TEMP1,3IMA,B1TEMP2,1IMA,BTEMP2,2IMA,B1TEMP2,3IMA1,B1TEMP3,1IMA1,BTEMP3,2IMA1,B1TEMP3,3ENDENDIINIMZEROSM,NFORX5M5FORY5N5SUM1IX,Y4IX,Y2IX,Y2IX,Y4SUM2IX2,Y4IX1,Y2IX1,Y2IX2,Y4SUM3IX2,Y2IX4,Y4IX2,Y2IX4,Y4SUM4IX2,Y1IX4,Y2IX2,Y1IX4,Y2SUM5IX2,YIX4,YIX2,YIX4,YSUM6IX4,Y2IX2,Y1IX2,Y1IX4,Y2SUM7IX4,Y4IX2,Y2IX2,Y2IX4,Y4SUM8IX2,Y4IX1,Y2IX1,Y2IX2,Y4SUMISUM1,SUM2,SUM3,SUM4,SUM5,SUM6,SUM7,SUM8SUMMAXMAXSUMISUMMINMINSUMISUMMSUMSUMIBSUMM/8IFSUMMAXSUMMIN4IX,Y3SUMM/8SUMFSUMMINELSESUMFSUMMAXENDIFSUMFBIMX,Y128ELSEIMX,Y255ENDENDENDFORI1MFORJ1NICCI,JICCI,JIMI,JENDENDFORI1MFORJ1NIFICCI,J128ICCI,J0ELSEICCI,J1ENDENDENDFIGURE,IMSHOWDOUBLEICCTITLE二值化得到的二值化图像如图6图6二值化后的图像24图像增强在当前的指纹采集条件下,不可避免的会受到环境,皮肤上的油脂、水分、污渍的影响,使采集到的指纹图像出现纹线粘连、纹线断裂等缺陷,对后续的指纹特征提取带来很大困难。所以我们必须对指纹图像进行图像增强处理,例如分离粘连的纹线,连接断裂的纹线,平滑纹线的边缘等,以保证指纹特征提取的可靠性。实验中进行了初步去除空洞和毛刺的处理,程序如下UICCM,NSIZEU去除空洞和毛刺FORX2M1FORY2N1IFUX,Y0IFUX,Y1UX1,YUX,Y1UX1,Y3UX,Y1ENDELSEUX,YUX,YENDENDENDFIGURE,IMSHOWUTITLE去除毛刺FORA2M1FORB2N1IFUA,B1IFABSUA,B1UA1,B1ABSUA1,B1UA1,BABSUA1,BUA1,B1ABSUA1,B1UA,B1ABSUA,B1UA1,B1ABSUA1,B1UA1,BABSUA1,BUA1,B1ABSUA1,B1UA,B11寻找端点IFUA,B1UA1,B1UA1,BUA,B1UA1,B1UA1,BUA1,BUA1,B1UA,B1UA1,BUA1,B1UA,B10去除空洞和毛刺UA,B0ENDENDENDENDENDFIGURE,IMSHOWUTITLE去除空洞得到的去除毛刺后的图像和再去除空洞后的图像分别如图7和图8图7去除毛刺后的图像图8去除空洞后的图像25图像细化二值化后的纹线仍然具有一定的宽度,因为指纹识别只与纹线的走向有关,所以需要对二值图像进行细化,以减少冗余信息,突出纹线的有效特征,便于后续的特征提取。程序如下VUSESTRELSQUARE,3FOIMOPENV,SEVIMCLOSEFO,SE对图像进行开操作和闭操作WBWMORPHV,THIN,INF对图像进行细化FIGURE,IMSHOWWTITLE细化图得到的图像如图9图9细化后的图像3特征点提取31找出所有的端点和交叉点因为特征点必然是从端点和交叉点里找出,所以在得到细化的图像后,我们首先要找出所有的端点和交叉点。首先对通过定义函数PM对图像中每个点的8邻域位置进行坐标定义,方便后续编程。PM程序如下SUBFUNCTIONSFUNCTIONJPIMG,X,Y,IGETPIXELVALUEBASEDONCHART4|3|25|16|7|8SWITCHICASE1,9JIMGX1,YCASE2JIMGX1,Y1CASE3JIMGX,Y1CASE4JIMGX1,Y1CASE5JIMGX1,YCASE6JIMGX1,Y1CASE7JIMGX,Y1CASE8JIMGX1,Y1END然后定义函数POINTM来找出细化后图像的所有端点。将一个点的8个邻域依次两两相减并取绝对值,并将所有结果相加,从细化图像的特征来说,和为2时为端点,和为6时为交叉点。程序如下FUNCTIONTXYPOINTTHINCOUNT1TXYCOUNT,0,0,0SIZMINSIZETHIN,1,SIZETHIN,2FORX40SIZ40FORY40SIZ40IFTHINY,XCN0FORI18CNCNABSPTHIN,Y,X,IPTHIN,Y,X,I1ENDIFCN2TXYCOUNT,X,Y,2COUNTCOUNT1ENDIFCN6TXYCOUNT,X,Y,6COUNTCOUNT1ENDENDENDENDFORI1COUNT1XITXYI,1YITXYI,2ENDIMSHOWDOUBLETHINHOLDONPLOTX,Y,运行完程序后,将所有的端点和交叉点全部找出。定义的数组TXY第一项为横坐标,第二项为纵坐标,第三项为2或6(2为端点、6为交叉点)。得到的标出端点和交叉点的图像如图10图10标出端点和交叉点的细化图像32纹线光滑处理在指纹图像预处理中,已经对指纹图像进行过去除毛刺和空洞的处理。这里通过定义函数GUANGHUAM进一步对细化后的图像进行光滑处理。基本原理为找到每个端点,使其沿着纹线的方向移动5个像素,如果在5个像素之内遇到交叉点,则认为此端点为毛刺,去除此点。GUANGHUAM程序如下FUNCTIONWGUANGHUATHIN,TXYFORJ15TXYPOINTTHINPXYTXYFINDTXY,32,NSIZEPXY,1FORI1NERROR0ERRORWALKTHIN,PXYI,1,PXYI,2,5IFERROR1THINPXYI,2,PXYI,10ENDENDENDWTHINIMSHOWW光滑后的图像如图11所示图11光滑后的图像光滑完后需再次执行POINT函数来画出新的端点,如下图所示图12光滑后标出端点和特征点的图像33去除图像边缘的端点可以看出,在指纹图像的边缘,由于采集仪器的关系,不可避免的多出很多端点,一方面增加了后续工作量,另一方面还可能产生错误,所以有必要将这些边缘的端点去除。本实验中设计了CUT函数来进行处理。函数如下FUNCTIONTXYCUTTHIN,TXYS8,80DELTA8,80NSIZETXY,1FORI18FORJ18MPI,JTHIN131I13131I1,131J13131J1SI,JSUMSUMMPI,J/3131MPI,JMPI,JSI,J2DELTAI,JSUMSUMMPI,JIFDELTAI,J131I1PXY2TXYC,PXY2PXY2FINDPXY2,32,TSIZEPXY2,1IFT0ERROR1ELSEPLOTX,Y,BHOLDONPLOTPXY2,1,PXY2,2,REND比如在执行PXY2,ERRORSINGLE_POINTTXY,20后,会显示出下图图14执行SINGLEPOINT函数后MATLAB的显示情况由运行结果可知,有3个端点满足周围半径为20个像素的圆内没有任何端点和交叉点的条件。这三个点在下图中用红点标出。图15满足条件的特征点342WALK函数在此,我们还定义了一个WALK函数,用于进一步找出特征点,它的作用是判断离某一端点NUM距离是否有另一端点。函数如下FUNCTIONERROR,A,BWALKTHIN,X0,Y0,NUMERROR0THINY0,X00T10FORN1NUMIFERROR1BREAKELSEXX0YY0FORXX01X01IFERROR1BREAKELSEFORYY01Y01T1SUMSUMTHINY01Y01,X01X01IFT10|T12ERROR1AX0BY0BREAKELSEIFTHINY,X1BREAKELSETHINY,X0X0XY0YAX0BY0PLOTX0,Y0,RENDENDENDENDENDENDENDEND343LAST1函数综合以上两个找特征点的函数,可以设计一个新的LAST1函数。通过执行PXY3,ERROR2LAST1THIN,R,TXY,NUM可以找出周围半径为R个像素的圆内没有任何端点或交叉点,并且沿纹线走NUM个像素内没有另一个端点或交叉点的端点。程序如下所示FUNCTIONPXY3,ERROR2LAST1THIN,R,TXY,NUMERROR0PXY2,ERRORSINGLE_POINTTXY,RNSIZEPXY2,1L1ERROR20FORI1NERROR,A,BWALKTHIN,PXY2I,1,PXY2I,2,NUMIFERROR1PXY3L,1PXY2I,1PXY3L,2PXY2I,2PXY3L,3PXY2I,3LL1ERROR20PLOTPXY2I,1,PXY2I,2,RENDEND得到的MATLAB运行结果显示为图16LAST1函数的运行结果得到的图像如下图17执行LAST1函数后指纹图像的显示其中红色的端点为满足SINGLE_POINT函数的端点,红色的纹线为沿上述端点走一定距离后的纹线,一部分可以一直走到规定距离(这些即是要找的特征点),还有一部分走到端点或叉点停止。至此,每幅指纹图像的特征点均可找出。4特征点匹配41纹线长度匹配上面,我们已经可以找出每幅指纹图像的特征点,并画出一段纹线。下面就是匹配的问题了。在此,我们设置了三层匹配。首先是纹线长度匹配。对于上面找出的特征点和纹线,每沿着纹线走5个像素测量一下到原始端点的距离。由DISTANCE函数得到。FUNCTIONDDISTANCEX0,Y0,NUM,THINNUM2FIXNUM/5FORI1NUM2ERROR,A,BWALKTHIN,X0,Y0,5IIFERROR1DISQRTAX02BY02ELSEBREAKENDEND最后会得到一个装有长度信息的数组。试想如果两幅指纹图中的指纹是一样的,则它们会包含相同的特征点和从这个特征点出发画出的纹线,则这两个长度数组对应位置的比例应基本相等(考虑到老师所给的24幅指纹图像大小相同,这个比例应近似为1);最终的函数中定义了一个数FSUMABSD1/D21,所以F值越接近于0,这两幅图像的匹配度越高。42三角形边长匹配找到一个特征点后,可以找出距离其最近的2个端点或交叉点,与原特征点构成三角形,若两幅图像的三角形边长比例相等(本实验中都为1),则说明这两幅图像匹配。其中,找到距离最近的端点的函数FIND_POINT如下所示FUNCTIONPXYFIND_POINTX0,Y0,TXY,NUMXTXY,1YTXY,2NLENGTHXL1,N0LNN1PXYNUM,0,0,0FORI1NLISQRTXIX02YIY02ENDLLSORTLFORI1NUMXIAOLLILNNNNFINDLXIAOLNNLENGTHNNPXYI,XNN1,YNN1,TXYNN1,3ENDPLOTX0,Y0,BOX0Y0HOLDONPLOTPXY,1,PXY,2,RO在最终程序中定义了一个数FFSUMABSDD1/DD21,所以FF值越接近于0,这两幅图像的匹配度越高。43点类型匹配找到一个特征点后,在其周围找到40个端点或交叉点,统计这40个点中端点和交叉点的个数。若两幅图中端点占的比例近似相同,则两幅图像相匹配。在最终函数中定义了一个数FFFABSF11F21/F11F12,所以FFF值越接近于0,这两幅图像的匹配度越高。最终程序如下(里面调用到前面一些函数)CLOSEALLTICCLEARTHIN1TUXIANGYUCHULIZHIWEN8BMPTHIN2TUXIANGYUCHULIZHIWEN9BMPFIGURETXY1POINTTHIN1TXY2POINTTHIN2W1,TXY1GUANGHUATHIN1,TXY1W2,TXY2GUANGHUATHIN2,TXY2THIN1W1THIN2W2TXY1CUTTHIN1,TXY1TXY2CUTTHIN2,TXY2PXY31,ERROR2LAST1THIN1,8,TXY1,60PXY32,ERROR2LAST1THIN2,8,TXY2,60ERROR1NUM20CXY1PXY31CXY2PXY32D1DISTANCECXY11,1,CXY11,2,NUM,THIN1D2DISTANCECXY21,1,CXY21,2,NUM,THIN2FSUMABSD1/D21IFF05ERROR0ELSEERROR1ENDFC11FIND_POINTCXY11,1,CXY11,2,TXY1,1C12FIND_POINTCXY11,1,CXY11,2,TXY1,2C21FIND_POINTCXY21,1,CXY21,2,TXY2,1C22FIND_POINTCXY21,1,CXY21,2,TXY2,2CXY12,C11CXY13,C122,CXY22,C21CXY23,C222,X11CXY11,1Y11CXY11,2X12CXY12,1Y12CXY12,2X13CXY13,1Y13CXY13,2X21CXY2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年旅游地产项目可持续发展与旅游市场拓展策略报告
- 2025年绿色建材研发中心项目环保合规性分析报告
- 2025年纺织服装智能化生产环境监测与安全报告
- 现场交叉作业安全管理
- 现场临电知识培训内容课件
- 2026届黑龙江省七台河市化学高二第一学期期中监测试题含解析
- 2025年公务员考试行测数量关系高频考点专项训练及解析
- 2025年Python二级考试押题试卷 深度剖析版
- 星巴克广告策划案(定稿)
- 民法典护理课件
- 带病工作免责协议书
- 《创新大学英语综合教程 学生用书3》电子教案-综合教程第三册教案Unit2
- 保密警示教育典型泄密案例教育学习
- 东欧与北亚高二下学期 地理 区域地理复习课件
- 宠物食品基础知识培训课件
- 学校采购煤炭合同协议
- 图解6S管理课件
- 保安值班室管理制度
- 特种设备质量安全风险日管控-周排查-月调度管理制度
- 初中英语动词过去式不规则变化-过去分词-听写表格
- 2025劳动合同官方下载
评论
0/150
提交评论