一种获取指纹数据的方法及装置、指纹识别方法及装置的制造方法_3

文档序号:9327407阅读:来源:国知局
应的分段点同时位于与指纹图像平行的平面上,构造出虚拟指纹图像A1B1C1D1、虚拟指纹图像A2B2C2D2。
[0131]步骤212:根据指纹图像和虚拟指纹图像,在每个虚拟指纹图像中载入对应的指纹纹路。
[0132]具体地,根据当前虚拟指纹图像的面积,在对应的指纹图像中截取相同面积的指纹图像切片,将截取的指纹图像切片载入到当前虚拟指纹图像中。
[0133]如图4所示,对于虚拟指纹图像A1B1C1D1,将虚拟指纹图像A1B1C1D1垂直投影到A3B3C3D3上,将投影部分作为指纹图像切片载入到A1B1C1D1中。
[0134]步骤213:确定所有指纹图像和所有虚拟指纹图像的边缘上的指纹纹路边缘像素点。
[0135]步骤214:将任意相邻的构造图像上对应的指纹纹路边缘像素点相连,确定指纹纹路的空间轨迹,所述构造图像包括:指纹图像、虚拟指纹图像。
[0136]具体地,在相邻的构造图像之间,将属于同一指纹纹路的对应的指纹纹路边缘像素点相连。根据图像上的分辨率的不同,将用来表示指纹纹路的像素点抽象为数据1,其他空白区域置零,将这些数据填充到虚拟指纹图像。连接相邻的构造图像的边缘上对应的指纹纹路像素点,确定指纹纹路的空间轨迹。在确定空间轨迹时,还可以考虑指纹图像的采集时间参数,是的构造图像中的指纹纹路在时间轴上依次排列,使得空间轨迹更加准确。
[0137]步骤215:根据所述指纹图像和所述空间轨迹,构建当前手指对应的三维指纹。
[0138]本发明实施例提供的一种获取指纹数据的方法,可以将上述步骤在数据空间中实现。
[0139]实施例2:
[0140]参见图6,本发明实施例提供了一种指纹识别方法,包括:
[0141]步骤601:根据实施例1中任一所述的获取指纹数据的方法,预先构建待匹配手指对应的三维指纹;
[0142]步骤602:确定所述待匹配手指对应的三维指纹的第一识别码;
[0143]还包括:
[0144]步骤603:根据实施例1中任一的获取指纹数据的方法,构建待识别手指对应的三维指纹;
[0145]步骤604:确定所述待识别手指对应的三维指纹的第二识别码;
[0146]步骤605:判断所述第一识别码与所述第二识别码是否匹配,如果匹配,则指纹识别成功,否则,指纹识别失败。
[0147]在构建三维指纹后,可以将三维指纹用于指纹识别。当设备检测到在某一时段内指纹的变化超出了预期值时,就可以判定其为仿冒行为,因为仿冒指纹无法完整重现指端的物理特性。
[0148]根据上述的三维指纹确定出该三维指纹的识别码,该识别码可以是三维指纹的md5值。识别码数据主要包括:完整的指纹纹理结构、指纹纹理的空间结构、手指的空间轮廓、以及由按压持续时间的不同所对应的结构特征(空间几何结构是完整的指纹还原,内容比二维指纹更丰富,以数据空间中的几何结构进行模拟)等。其中,完整的指纹纹理结构是指纹纹路之间的平面几何结构。指纹纹理的空间结构:指纹纹路在空间中的空间轨迹。手指的空间轮廓:指的是手指的三维指纹。按压持续时间所对应的结构特征:此处指的是从用户接触指纹采集器的接触面开始,到过程结束的时间间隔所对应的空间移动轨迹,包括:下压式按压、滑动式按压等,以便提升更多类型的指纹识别设备在识别过程中的兼容性。
[0149]在指纹识别过程中,预先将用户的指纹按照本发明实施例提供的一种获取指纹数据的方法,生成三维指纹,保存该三维指纹,并生成该三维指纹对应的第一识别码,保存该第一识别码。获取待识别手指的指纹图像,生成待识别手指的三维指纹,生成待识别手指的三维指纹的第二识别码。根据第一识别码和第二识别码,判断待识别手指与第一识别码对应的手指是否相同。
[0150]具体的指纹识别过程如下:
[0151]步骤1:初始化算法结构,循环等待识别信号。
[0152]当前有手指接触指纹采集器的接触面时,产生到识别信号。
[0153]步骤2:激活识别模块,调用函数GetFingerprintPartO,获取当前指纹图像。
[0154]具体地,由指纹采集器获取接触面的当前指纹图像。
[0155]步骤3:调用函数IsFinishedO等待识别终止信号,如无终止信号,则按照一定频率循环调用步骤2,将所识别到的指纹图像存入结构体数组bmpFinger[]中,否则进入步骤4。
[0156]步骤4:将结构体数组bmpFinger[]传入多维度指纹数据生成函数CreateXdFingerShape O中,生成多维数据的识别码。
[0157]具体地,函数CreateXdFingerShape根据bmpFinger[]中的指纹图像和间隔时间计算出三维指纹,再确定该三维指纹的识别码。
[0158]步骤5:调用函数ReadFingerShape O读取设备预先存储的识别码。
[0159]步骤6:调用函数CompareFingerShape O对比步骤4与步骤5的识别码。
[0160]步骤7:如对比成功则返回true,否则返回false。
[0161]具体地,一般两个识别码的差异率低于预设值,则确定识别成功,返回true,用户通过识别,否则,确定识别失败,返回false,用户没有通过识别,该预设值可以是百分之三十。
[0162]不同的指纹图像的边缘都存在其相对应的指纹纹路,而这种指纹纹路的连续性可以让指纹识别的容错性得到提升。假设用户的指纹出现了物理性破损,只要这种破损不会影响到绝大多数的纹路变化轨迹,那么就可以认为该指纹可被识别,从而减少指纹识别行为对用户造成的困扰。
[0163]实施例3:
[0164]参见图7,本发明实施例提供了一种获取指纹数据的装置,包括:
[0165]采集单元701,用于采集当前手指的至少两个指纹图像;
[0166]第一确定单元702,用于确定所述至少两个指纹图像的边缘在空间中的变化曲线;
[0167]第二确定单元703,用于根据所述指纹图像和所述变化曲线,确定指纹纹路的空间轨迹;
[0168]构建单元704,用于根据所述指纹图像和所述空间轨迹,构建当前手指对应的三维指纹。
[0169]在一种可能的实现方式中,所述采集单元701,用于按照时间顺序,依次采集当前手指的至少两个指纹图像;
[0170]还包括:设置单元,用于按照采集的时间顺序,将采集到的所有指纹图像依次相互平行设置;
[0171]所述第一确定单元702,用于执行步骤S21至步骤S28:
[0172]S21:在每个指纹图像的边缘上确定M个构造点,M为大于I的自然数;
[0173]S22:令 i = I ;
[0174]S23:针对第i层指纹图像,令k = I ;
[0175]S24:将第i层上的第k个构造点与第i+Ι层的指纹图像上对应的第k个构造点相连,获得第i层与第i+Ι层之间的第k个相邻连线;
[0176]S25:判断k的当前值是否等于M,如果是,执行步骤S26,否则,执行步骤S27 ;
[0177]S26:判断i的当前值是否等于N-1,如果是,则执行步骤S28,否则,令i = i+Ι,然后返回步骤S23 ;
[0178]S27:令 k = k+Ι,返回步骤 S24 ;
[0179]S28:根据所有已获得的相邻连线,确定指纹图像在空间中的变化曲线。
[0180]在一种可能的实现方式中,所述第二确定单元703,包括:
[0181]虚拟指纹图像设置子单元,用于根据所述变化曲线,在相邻的指纹图像之间设置与指纹图像平行的虚拟指纹图像;
[0182]载入子单元,用于根据指纹图像和虚拟指纹图像,在每个虚拟指纹图像中载入对应的指纹纹路;
[0183]像素点子单元,用于确定所有指纹图像和所有虚拟指纹图像的边缘上的指纹纹路像素点;
[0184]空间轨迹子单元,用于将任意相邻的构造图像上对应的指纹纹路边缘像素点相连,确定指纹纹路的空间轨迹,所述构造图像包括:指纹图像、虚拟指纹图像。
[0185]在一种可能的实现方式中,所述采集单元701,用于判断指纹采集器的接触面上是否有手指接触,当确定所述接触面上有手指接触时,周期性采集当前手指的至少两个指纹图像。
[0186]上述装置内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
[0187]实施例4:
[0188]参见图8,本发明实施例提供了一种指纹识别装置,包括:
[0189]实施例3中任一所述的获取指纹数据的装置801、第一识别码确定单元802、第二识别码确定单元803、识别单元804 ;
[0190]所述获取指纹数据的装置801,用于构建待匹配手指对应的三维指纹,构建待识别手指对应的三维指纹;
[0191]所述第一识别码确定单元802,用于确定所述待匹配手指对应的三维指纹的第一识别码;
[0192]所述第二识别码确定单元803,用于确定所述待识别手指对应的三维指纹
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1