CN112232159B - 指纹识别的方法、装置、终端及存储介质 - Google Patents
指纹识别的方法、装置、终端及存储介质 Download PDFInfo
- Publication number
- CN112232159B CN112232159B CN202011062601.7A CN202011062601A CN112232159B CN 112232159 B CN112232159 B CN 112232159B CN 202011062601 A CN202011062601 A CN 202011062601A CN 112232159 B CN112232159 B CN 112232159B
- Authority
- CN
- China
- Prior art keywords
- fingerprint
- finger
- image
- area
- acquiring
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/12—Fingerprints or palmprints
- G06V40/13—Sensors therefor
- G06V40/1312—Sensors therefor direct reading, e.g. contactless acquisition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/12—Fingerprints or palmprints
- G06V40/1347—Preprocessing; Feature extraction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/12—Fingerprints or palmprints
- G06V40/1382—Detecting the live character of the finger, i.e. distinguishing from a fake or cadaver finger
Landscapes
- Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Input (AREA)
- Collating Specific Patterns (AREA)
Abstract
本公开提供了一种指纹识别的方法、装置、终端及存储介质。其中,方法包括:获取步骤,获取包括指纹的图像;判断步骤,判断所述图像是否是对指纹进行非接触式拍摄所得的图像;指纹参数获取步骤,在所述判断步骤中判断为所述图像是对指纹进行非接触式拍摄所得的图像时,获取所述指纹的尺寸和纹线密度;归一化步骤,根据预设标准,将所述尺寸调节至预设尺寸,将所述纹线密度调节至预设纹线密度,获得归一化的指纹图像;及指纹识别步骤,基于在归一化步骤中获得的归一化的指纹图像执行指纹识别。本公开可以实现指纹识别,提升了用户体验。
Description
技术领域
本公开涉及指纹识别领域,尤其涉及一种指纹识别的方法、装置、终端及存储介质。
背景技术
随着人工智能的发展,依靠生物特征的身份认证技术近年来得到了广泛的应用,相关应用场景例如有人脸识别、声纹识别等。
基于人脸的身份认证技术发展的较快,无论是1:N人脸比对和1:1身份核验,均有非常多的落地场景,如身份证认证合一验证、闸机通行、线下支付等。
尽管人工智能的进步让人脸识别技术有了很大的进展,近几年来得到比较快速的普及,但因为人脸的个人隐私特殊性,以及背后所涉及的年龄、种族偏见问题,引起了社会和群众的普遍争议,并且人脸识别技术在库容较大时,精度不够高。
指纹作为生物识别中占据超过50%市场份额的生物识别技术,在刑侦、出入境、个人消费电子、安防、金融银行等领域都有广泛而深入的应用。而传统光学或电容式等接触式指纹采集设备,除了接触式采集带来的卫生风险,还存在着采集质量低、采集面积小、对皮肤干湿敏感、采集一致性低等问题。
各种公共卫生事件的发生,使得接触式指纹采集设备存在着不小的卫生风险;而人脸识别则无法戴着口罩进行。并且个人用户在进行生物特征身份识别时,存在着诸多不便。
发明内容
本公开正是为了解决上述课题而完成,提供了一种指纹识别的方法、装置、终端及存储介质。
本公开提供该发明内容部分以便以简要的形式介绍构思,这些构思将在后面的具体实施方式部分被详细描述。该发明内容部分并不旨在标识要求保护的技术方案的关键特征或必要特征,也不旨在用于限制所要求的保护的技术方案的范围。
为了解决上述技术问题,本公开实施例提供一种指纹识别的方法,包括:
获取步骤,获取包括指纹的图像;
判断步骤,判断所述图像是否是对指纹进行非接触式拍摄所得的图像;
指纹参数获取步骤,在所述判断步骤中判断为所述图像是对指纹进行非接触式拍摄所得的图像时,获取所述指纹的尺寸和纹线密度;
归一化步骤,根据预设标准,将所述尺寸调节至预设尺寸,将所述纹线密度调节至预设纹线密度,获得归一化的指纹图像;及
指纹识别步骤,基于在归一化步骤中获得的归一化的指纹图像执行指纹识别。
在本公开实施例中,在所述判断步骤中判断所述图像是对指纹进行接触式采集所得的图像时,在所述指纹参数获取步骤中获取所述指纹的纹线密度,并且在所述归一化步骤中,根据预设频率,将所述纹线密度调节至预设纹线密度,获得归一化的指纹图像。
在本公开实施例中,所述判断步骤包括:
根据所述图像的属性,判断所述图像是否是对指纹进行非接触式拍摄所得的图像;或
根据深度学习模型,判断所述图像中是否包括手指的外轮廓和/或指节线的步骤;如是,则所述图像是对指纹进行非接触式拍摄所得的图像;如否,则所述图像是对指纹进行接触式采集所得的图像。
在本公开实施例中,所述指纹参数获取步骤包括:
获得手指的长度的步骤;或
根据指节线模型,获取所述指节线的两个端点,并获得所述两个端点之间的距离的步骤;或
根据指节线模型,获取所述指节线的两个端点,根据手指轮廓线模型,获取手指边缘的多个边界点;依次平滑连接所述两个端点及所述多个边界点,形成所述手指的轮廓线;及计算所述轮廓线面积,获得所述面积的步骤;
其中,在所述归一化步骤中,将所述尺寸调节至预设尺寸包括:
将所述长度调节至预设长度的步骤;或
将所述距离调节至预设距离的步骤;或
将所述面积调节至预设面积的步骤。
在本公开实施例中,所述归一化步骤中,将所述纹线密度调节至预设纹线密度包括:
将所述指纹所在的区域分为多个子区域的步骤;
分别获取所述多个子区域中每一子区域的指纹方向和纹线密度的步骤;
根据相同指纹方向的纹线之间的平移不变性,分别获得所述每一子区域的最小平移不变距离的步骤;
根据所述最小平移不变距离,分别调节所述每一子区域的纹线密度,使相邻的所述每一子区域的纹线密度的差值小于预设差值;及
根据预设频率,获得所述预设纹线密度的步骤。
在本公开实施例中,所述方法还包括:
从所述图像中提取出指纹区域以排除所述图像中的背景区域的步骤;
其中,所述指纹区域中的指纹具有大致均匀的纹线密度。
为了解决上述技术问题,本公开实施例还提供一种指纹识别的装置,包括:
获取模块,用于获取包括指纹的图像;
判断模块,用于判断所述图像是否是对指纹进行非接触式拍摄所得的图像;
指纹参数获取模块,用于在所述判断模块中判断为所述图像是对指纹进行拍摄所得的图像时,获取所述指纹的尺寸和纹线密度;
归一化模块,用于根据预设标准,将所述尺寸调节至预设尺寸,将所述纹线密度调节至预设纹线密度,获得归一化的指纹图像;及
指纹识别模块,用于基于在归一化模块中获得的归一化的指纹图像执行指纹识别。
在本公开实施例中,所述装置还包括:
提取模块,用于从所述图像中提取出指纹区域以排除所述图像中的背景区域。
为了解决上述技术问题,本公开实施例还提供一种终端,包括:
至少一个存储器和至少一个处理器;
其中,所述至少一个存储器用于存储程序代码,所述至少一个处理器用于调用所述至少一个存储器所存储的所述程序代码执行如上所述的方法。
为了解决上述技术问题,本公开实施例还提供一种存储介质,所述存储介质用于存储程序代码,所述程序代码用于执行如上所述的方法。
本公开的技术方案可以实现指纹识别,提升了用户体验。
附图说明
图1是本公开可以应用于其中的示例性系统架构图;
图2是本公开一个实施例的非接触指纹识别方法的流程图;
图3是本公开一个实施例的手指识别框的示意图;
图4是本公开另一个实施例的非接触指纹识别方法的流程图;
图5是本公开一个实施例的一种非接触的手指的指纹图像;
图6是本公开一个实施例的活体手指在关闭和开启闪光灯时拍摄的图像;
图7是本公开一个实施例的非活体手指在关闭和开启闪光灯时拍摄的图像;
图8是本公开一个实施例的同一个活体手指在不同光源颜色下拍摄的图像;
图9是本公开一个实施例的同一个活体手指在不同光源颜色且使用偏振片的条件下拍摄的图像;
图10是本公开一个实施例的活体手指的红外图像;
图11是本公开一个实施例的指纹采集方法的流程图;
图12是本公开一个实施例的归一化步骤的流程图;
图13是本公开一个实施例的指纹比对方法的流程图;
图14是本公开一个实施例的指纹区域检测方法的流程图;
图15是本公开一个实施例的手指识别框的应用示意图;
图16是本公开一个实施例的指纹识别方法的流程图;
图17是本公开一个实施例的轮廓线的示意图;
图18是本公开一个实施例的非接触指纹识别装置的结构示意图;
图19是本公开一个实施例的指纹比对装置的结构示意图;
图20是本公开一个实施例的指纹区域检测装置的结构示意图;
图21是本公开一个实施例的指纹识别装置的结构示意图;
图22是本公开一个实施例的一种非接触指纹采集装置的示意图;
图23是本公开一个实施例的另一种非接触指纹采集装置的示意图;
图24是本公开一个实施例的另一种非接触指纹采集装置的示意图;
图25是本公开一个实施例的一种具有光路调节装置的非接触指纹采集装置的示意图;
图26是本公开一个实施例的电子设备的结构示意图。
图中标记:1、壳体;11、第一组成部;12、第二组成部;13、第三组成部;2、图像采集装置;3、处理装置;4、照明装置;41、光照部件;5、光路调节装置;6、结构光投射装置;7、飞行时间(Time of Flight)装置。
结合附图并参考以下具体实施方式,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,元件和元素不一定按照比例绘制。
具体实施方式
除非另有定义,本文所使用的所有的技术和科学术语与属于本公开的技术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本公开;本公开的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本公开的说明书和权利要求书或上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本公开的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
应当理解,本公开的方法实施方式中记载的各个步骤可以按和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
需要注意,本公开中提及的“一个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
为了使本技术领域的人员更好地理解本公开方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
[系统结构]
首先,说明本公开的一个实施例的系统的结构。如图1所示,系统结构100可以包括终端设备101、102、103、104,网络105和服务器106。网络105用以在终端设备101、102、103、104和服务器106之间提供通信链路的介质。
在本实施例中,本公开的方法运行于其上的电子设备(例如图1所示的终端设备101、102、103或104)可以通过网络105进行各种信息的传输。网络105可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。需要指出的是,上述无线连接方式可以包括但不限于3G/4G/5G连接、Wi-Fi连接、蓝牙连接、WiMAX连接、Zigbee连接、UWB连接、局域网(“LAN”)、广域网(“WAN”)、网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络)以及其他现在已知或将来开发的网络连接方式。网络105可以利用诸如HTTP(HyperText Transfer Protocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。
用户可以使用终端设备101、102、103、104通过网络105与服务器106交互,以接收或发送消息等。终端设备101、102、103或104上可以安装有各种客户端应用,例如视频直播与播放类应用、网页浏览器应用、购物类应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等。
终端设备101、102、103或104可以是具有触摸显示屏和/或支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、MP3(动态影像专家压缩标准音频层面3)播放器、MP4(动态影像专家压缩标准音频层面4)播放器、头戴式显示设备、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等。另外,终端设备101、102、103或104也可以是专用于执行本发明方法的专用设备。
服务器106可以是提供各种服务的服务器,例如对终端设备101、102、103或104上显示的页面或传输的数据提供支持的后台服务器。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
这里,终端设备可以独立或通过与其他电子终端设备配合运行各类操作系统例如安卓系统中的应用实现本公开的实施例方法,也可以运行其他操作系统中的应用例如iOS系统、Windows系统、鸿蒙系统等的应用实现本公开的实施例方法。
[非接触指纹识别方法]
如图2所示,图2是本公开实施例的非接触指纹识别方法的流程图,包括以下步骤。
S100,手指识别步骤,对识别对象的手进行拍摄,判断在拍摄的画面中是否存在手指,以及在存在所述手指时确定所述手指的位置。
具体地,本公开实施例可以包括获取手指识别模型的步骤;根据所述手指识别模型判断所述画面是否包括所述手指的步骤;及当所述画面包括所述手指时,确定所述手指各自的远节指骨段的位置的步骤;其中,所述手指的朝向包括平行于所述画面的任意方向。其中,获取手指识别模型的步骤可以包括获取样本集的步骤;其中,所述样本集包括在不同条件下采集的经数据增广处理的手指图像,所述不同条件包括不同角度、不同远近、不同光照、不同清晰度和不同采集设备;及根据所述手指图像训练获得所述手指识别模型的步骤。
此外,本公开实施例还可以包括使用多个不同面积的识别框扫描所述画面,在每个所述识别框扫描的过程中,当所述识别框限定的区域内含有所述手指的可信度大于预设值时在所述区域保留所述识别框作为标记并继续扫描,直至完成对所述画面的扫描,以使每个作为标记的所述识别框至少包括所述手指的一部分的步骤;根据所述可信度,对所述识别框进行排序,获得排序结果的步骤;根据所述排序结果,从所述识别框中获取目标识别框的步骤;及在包括所述目标识别框的预设范围内追踪所述手指的步骤;其中,每个所述目标识别框中包含一个手指的最小完整区域。更具体地,在包括所述目标识别框的预设范围内追踪所述手指的步骤可以包括通过所述手指识别模型,检测所述预设范围内含有所述手指的所述可信度;当所述可信度大于所述预设值时,将所述目标识别框移动至所述预设范围内的所述可信度大于所述预设值的位置;及调节所述目标识别框,以使所述目标识别框中包含一个手指的最小完整区域,例如图3中由外侧虚线框缩至内侧虚线框。
例如,本公开实施例可基于SDK形式,提供一个调用函数。上层应用在调用这个函数时,可调出一个采集页面。此时可从每一帧画面中捕捉是否有手指存在。当人手放在设定的位置并稳定时,可获取当前图像,并通过一系列的模型和计算,返回含手指图像的数据。基于深度学习训练的模型,可以实时地对于每一帧视频流进行推理计算,检测图中是否存在手指和手指位置,如在进入预览画面时,对于每一帧图像,通过模型和计算,判断是否能够识别到手指框。如果连续一段时间未识别到手指框,可以在交互上提示用户没有在画面中发现手指;如果在更长的一段时间内,仍未识别到手指,则可以进行超时报错。其中包括但不限于识别区分不同指位的手指;识别所用的框包含端点到第一条指节线的指头区域,可不包含其余手指区域;手可以在画面中自由旋转,且不影响正确识别;根据手指的区别,自动识别左右手等。支持识别的手指组成可包括双手拇指、单手五指、单手四指、单手单指等。其中,手指识别可包括手指检测和手指追踪。例如,通过摄像头获取预览画面,对第一帧图像进行手指检测模型推理计算,如将图像分割为若干长宽组合的框,每个框会有一个值:是否含手指的可信度;通过处理得到若干手指框,通过可信度,对图中对应所有的手指框进行排序,通过业务逻辑进行手指框合并(如一个300x300的手指框、和一个310x310的手指框,两个手指框包含相同手指),调整后一个手指只对应一个手指框,及返回识别到的手指框。从第二帧图像开始,若前一帧图像检测到手指框,则可进行手指追踪。例如,利用之前的手指位置,在目标位置附近进行手指的模型匹配,再根据检测模型,进行精确的手指框定位,通过可信度判断是否为手指,及返回识别的手指框。手指追踪可在进一步提升识别准确度的同时,降低单帧图像识别所需时间。为适配不同的采集设备例如不同的摄像头等,本公开实施例还可对模型进行泛化处理,例如采集不同角度、不同远近、不同光照、对焦是否清晰等不同场景的数据样本,采集不同设备例如不同摄像头的数据,以及进行数据增广,如平移、旋转、加噪声、平滑处理等等。基于以上数据训练得到模型后,在图像清晰度较差时(例如非完全失焦状态)、在不同分辨率的设备下、在手离摄像头一定距离内(如10-40cm),均能够达到稳定识别。
S200,指纹获取步骤,在所述手指识别步骤中检测出所述手指存在的情况下,对所述手指进行对焦拍照,并获取所述手指各自的指纹图像。
具体地,本公开实施例可以包括获取包含所述手指的连续多帧画面,检测所述手指在所述连续多帧画面中的位置,判断所述位置的变化范围是否在预设阈值范围内的步骤;如是,检测所述手指各自的对焦状态的步骤;如所述手指同时对焦,则以相应焦距拍摄获得一个图像的步骤;如所述手指不同时对焦(例如,各个手指不在同一焦平面上),根据每个所述手指各自的焦距,分别拍摄获得与每个所述手指对应的多个图像的步骤。
在预览时,手指所处位置可以通过框的形式显示画面中,如图3所示。为了保证获取图像的质量,需要稳定地从预览画面中检测到手指,并且手指需处于合适的位置。例如,手指如果距离摄像头过近,可能会出现对焦模糊、手指拍不全等问题,此时,可以根据摄像头的分辨率,和手指在图中大小占比,判断手的距离是否过近,并在过近时提示用户将手放远一些。相对地,手指如果距离摄像头过远,可能会出现对焦到背景处、手指因分辨率限制而纹线不清楚等问题,此时,可以根据摄像头的分辨率,和手指在图中大小占比,判断手的距离是否过远,并在过远时提示用户将手靠近一些。此外,在手指闭拢时手指的清晰度相对更高。因为当手指分开时,相距较远的手指由于对焦平面错位的问题,容易拍摄模糊,此时,可以根据手指框的位置,判断手指的间隔距离,并通过逻辑运算,判断手指是否闭拢,当检测到手指未闭拢时,可提示用户将手指闭拢。当手指处于合适位置时,可以获取当前的图像,例如可通过调用相机拍照接口进行拍照,或者直接采用预览视频流的一帧图像,且这两种图像获取的形式都可以支持主动和自动的模式。其中,主动获取可以是操作人手动点击按钮获取相关图像;自动获取可根据连续多帧画面,计算手指所处的位置变化是否在一定阈值范围内,并判断手是否相对稳定;若采集设备是可移动设备(如手机)且有加速陀螺仪,则还可以读取陀螺仪信息,判断设备是否相对稳定。当判断稳定时,可自动触发图像获取。特别地,当画面中存在多枚手指时,手指可能不在同一个焦平面,因而可能出现部分手指清楚、部分手指模糊的情况。为实现高质量图像,本公开实施例可进行多次对焦拍摄。例如,根据模型识别的手指框,可以获得多个手指的位置;根据各手指位置,分别设置对焦点,触发对焦和拍照;并在每张拍摄的图像中分别取出每个手指的清晰图像。
S300,图像传送步骤,对在所述指纹获取步骤中获取的所述手指各自的所述指纹图像进行加密处理,将经所述加密处理的所述指纹图像传送到比对系统。
具体地,本公开实施例可以包括为所述指纹图像分配密钥的步骤;其中,所述密钥用于当接收所述指纹图像的访问请求时,验证所述密钥,当所述密钥验证通过时,通过所述访问请求,当所述密钥验证失败时,拒绝所述访问请求。更具体地,在将经所述加密处理的所述指纹图像传送到比对系统之前,本公开实施例还可以包括选择传送接口的步骤;其中,所述传送接口包括指纹图像入库接口、单指比对接口和多指比对接口。
本公开实施例可对指纹图像进行加密处理。例如,调用采集接口前,可先从比对系统后台获取一个一次性密钥,该密钥可存在一定的有效期限;调用采集接口时,可传入该密钥。拍摄时可对密钥进行验证,如果验证通过,则可以开始拍摄。在拍摄完成后,还可以利用这个密钥对采集数据进行加密。更具体地,可以使用提供给集成方的秘钥产生一次性令牌(token)(OTP),完成采集后利用OTP产生加密的指纹信息,传输安全,防止篡改。本公开实施例可通过全流程数据的加密传输和存储,并将敏感的图片数据和不敏感的特征文件数据分开存储,控制图片数据的访问,及将特征文件数据进行哈希处理,保证哈希过后的特征仍然能够进行高精度的比对,但无法从哈希后的特征文件中恢复出任何的原始信息,从而确保了指纹图像数据的安全性。
S400,指纹比对步骤,将所述指纹图像与所述比对系统中的指纹数据进行比对,获得比对结果。
具体地,本公开实施例可包括指纹认证比对和指纹搜索比对的步骤。例如可通过开放API等形式提供指纹的比对能力,其中可包括指纹图像入库、指纹图像一对一比对和指纹图像一对多比对三个接口。其中,指纹图像一对一比对可为将采集到的指纹与后台指纹库中某已知ID的指纹进行1:1比对,完成身份核验;指纹图像一对多比对可为将采集到的指纹与后台指纹库中的数据进行1:N比对,检查该指纹是否存在等。此外,比对系统可以设置在本地或云端服务器中。
此外,本公开还可以包括在所述指纹获取步骤中获取的所述指纹图像进行处理的图像处理步骤,所述图像处理步骤还包括:根据指节线模型,获取所述手指中每个手指远侧指间关节线的两个端点,根据所述两个端点,调节指节线至预设状态的步骤;根据手指轮廓线模型,获取所述每个手指边缘的多个边界点的步骤;依次平滑连接所述每个手指的所述两个端点及所述多个边界点,形成所述每个手指的轮廓线的步骤;及分别从每个所述多个图像中提取所述轮廓线,获得所述指纹图像的步骤。
此外,本公开实施例还可以包括获取所述每个手指远侧指间关节线的所述两个端点之间的距离和所述每个手指的所述轮廓线的面积,根据所述距离或所述面积调节所述指纹图像的比例,获得预设规格的指纹图像的步骤;或获取所述手指的物距,统一所述物距获得预设规格的指纹图像的步骤。其中,获取所述手指的物距可包括获取所述焦距与物距的预设比率,根据所述预设比率与所述焦距,获得所述物距;或获取所述图像的深度信息,根据所述深度信息获得所述物距。
此外,本公开实施例还可以包括将所述指纹图像分区的步骤;分别获取所述指纹图像每一区域的指纹方向和纹线密度的步骤;及对所述每一区间进行图像变换处理,使所述每一区域的所述纹线密度的差值小于预设差值的步骤。
此外,本公开实施例还可以包括连接所述轮廓线形成凸函数的步骤;及根据所述凸函数及所述每个手指的长度,将所述手指分类为左手或右手的手指,并分别将所述轮廓线对应为拇指、食指、中指、环指和小指的步骤。
此外,本公开实施例还可以包括对所述指纹图像做均衡化处理;根据指纹的纹线对应的频域信号对所述指纹图像进行信号过滤;及计算所述频域信号,获得所述指纹图像的质量分数。
从摄像头得到的图像可以通过模型进行手指识别和图像分割,最终获取每个手指的图像。具体地,可利用手指识别模型获取一或多个手指框,即各手指所处位置。利用指节线模型,获取手指第一条指节线的两个端点的位置,参见图3中的A和B;再利用手指轮廓线模型获取手指边缘的若干端点,连接组成手指的轮廓线。根据手指识别模型,可得到若干个手指框,并生成一或多个手指图像;对每张手指图像,分别进行手指指节线和轮廓线的模型推理,得到指节线两侧端点和组成手指轮廓线的若干点;通过处理,调整手指方向和去掉手指的背景,例如,通过指节线两侧端点,进行方向调整,通过调整指节线到水平状态,确保手指指尖在最终输出图是朝上的,拍摄时手可以进行旋转,然后通过指节线调整方向,保证输出的手指方向一致;通过手指轮廓线得到手指区域,并且去掉手指外的背景区域。各手指框相连会形成一个凸函数,可通过这个函数和手指之间的关系(如拇指最远、小指最短),计算判断拍摄的手是左手还是右手,并且得到每个手指框对应的是拇指、食指、中指、环指、小指。当无法判断是左右手时,也可以通过用户来指定是左右手。手指图像可进行比例调整,统一输出成例如500dpi的图像。例如,通过对一定数量的指纹图像进行过统计,得到不同指位对应的指纹面积、指节线长度的均值,基于经验值,加上每个手指框内的手指面积、指节线长度,可对每张手指图像进行图像比例的调整;及对若干款设备进行校准分析,得到设备端设备读出来的焦距和实际物距的关系,在拍照时,从设备的拍照接口读取焦距,换算出手指的实际物距,以此来进行手指图像的比例调整;还可以通过双摄像头、结构光、ToF等手段来获取图像的深度信息,以此来估算手指到设备的实际物距,以此来调整手指图像的比例。此外,手指图像是通过摄像头拍摄获取,因为手指是三维的物体,而拍摄出的图像是二维的,可能导致指纹不同区域的纹线密度不一致:指纹中间部分纹线较稀疏,四周的纹线较密。为能够进行较好的比对,还可以对手指图像进行归一化处理,例如通过计算不同区域的指纹方向和频率,得到一个大致纹线密度,通过图像变换处理,使得图像各区域的纹线密度达到或接近一个固定值。此外,深度信息还可以帮助我们做指纹边缘的展开,使得指纹中心区域和边缘区域有一致的纹线密度,后期在和接触式指纹采集仪采集的指纹进行比对时,能够实现更高的精度。为了保证后续指纹比对的精确度,手指图像要相对较清晰,因此可以通过图像处理的形式加入质量判断,包括对图像做均衡化处理、根据指纹纹线对应的频域信号对图像进行信号过滤、对图中纹线信号进行计算,判断整体图像质量等。通过上述图像处理流程后,例如可获得多张640x640 500dpi的手指灰度图。
为了实现本公开实施例中的非接触指纹识别方法的技术方案,本公开的一个实施例提供了一种非接触指纹识别装置,该装置具体可以应用于各种电子终端设备中,如图18所示,本公开实施例还提供一种非接触指纹识别的装置,包括识别模块181,可用于手指识别步骤,对识别对象的手进行拍摄,判断在拍摄的画面中是否存在手指,以及在存在手指时确定手指的位置;获取模块182,可用于指纹获取步骤,在手指识别步骤中检测出手指的存在的情况下,对手指进行对焦拍照,并获取手指各自的指纹图像;传送模块183,可用于图像传送步骤,对在指纹获取步骤中获取的手指各自的指纹图像进行加密处理,将经加密处理的指纹图像传送到比对系统;及比对模块184,用于指纹比对步骤,将指纹图像与比对系统中的指纹数据进行比对,获得比对结果。此外,本公开实施例还可包括处理模块(图未示),可用于对在指纹获取步骤中获取的指纹图像进行处理的图像处理。
[活体识别方法]
上面对本发明的非接触指纹识别方法进行了整体的说明。另外,由于在指纹识别的应用中,一些人通过盗取用户的指纹并用橡胶等仿制手指,以欺骗指纹识别设备,造成安全隐患。故而,优选在本发明的非接触指纹识别方法中,在最终进行指纹识别之前进行活体识别,并仅对识别对象为活体的情况下进行指纹识别。下面,具体式对本发明的非接触指纹识别方法中的活体识别方法进行说明。
如图4所示,本公开的方法包括如下步骤。
(1)获取步骤,通过非接触的拍摄方式获取被识别对象的至少一个手指的至少一部分指纹的指纹图像。
具体的,现有技术中,在获取手指的指纹图像时,手指与指纹采集装置(例如指纹打卡机)相接触,通过接触式的方式获取指纹图像,现有的接触式的指纹图像是二值化的指纹图像,本实施例中采用非接触的拍摄方式获取指纹图像,手指不与采集指纹图像的装置相接触,且采集的指纹图像可以是彩色的指纹图像。
(2)活体识别步骤,通过至少一种方式判断被识别对象是否为活体得到至少一个的判断结果,根据至少一个判断结果得到识别结果。
具体的,本实施例中采用至少一种方式判断被识别对象是否为活体,被识别对象为上述至少一个手指的至少一部分指纹的指纹图像的所有者,一种方式对应一个判断结果,本申请中可以采用多种判断方式,则会得到多个判断结果,因此一些实施例中可以采用多个判断结果得到识别结果。本实施例中,识别结果为活体识别步骤得到的被识别对象是否为活体的最终结果,即判断结果作为确定识别结果的依据,当判断结果只有一个时,识别结果与判断结果可以相同,当判断结果为多个时,需要综合考虑各个判断结果的可靠性得到识别结果,可以预先为各个判断结果设置加权,根据加权结果确定识别结果。
(3)指纹识别步骤,在识别结果显示被识别对象为活体的情况下,对指纹图像执行指纹识别。
具体的,在本实施例中,会根据识别结果确定是否执行指纹识别结果,在指纹识别结果显示被识别对象为活体的情况下,排除了手指为伪造的非活体手指的情况,此时对图像执行指纹识别,从而提高了安全性,并减少了不必要的计算。
这里,获取指纹图像的内容在上述非接触指纹识别方法的部分中已经进行了具体的说明,在此仅以区别点为中心进行说明,其他内容可参见上述部分中的描述。
在本公开的一些实施例中,获取步骤包括:获取被识别对象至少一个手指的指尖图像,活体识别步骤包括:将指尖图像输入经训练的神经网络模型,根据神经网络模型的输出得到所述第一结果。
具体的,一些实施例中,在进行获取步骤时,拍摄非接触指纹的指纹图像,通过手指的跟踪和检测算法,定位出一个或多个指尖位置,如图5所示,指尖位置可以包括指纹区域,对于采集的指尖图像,将其输入经过训练的神经网络模型进行处理,该神经网络模型的输出结果用于表征输入的指尖图像是否为活体的结果,即得到第一结果。
在本公开的一些实施例中,在建立神经网络模型时,预先收集活体的非接触指纹图像,以及非活体的2D或3D指纹图像,可以设定x_i用于表征第i张指纹图像,y_i用于表征x_i表征的指纹图像是否为活体的指纹图像,在指纹图像为活体的指纹图像时y_i=1,i是变量用于标识图像,在指纹图像不是活体的指纹图像时y_i=0。对于建立的神经网络模型需要进行训练,具体的,训练一个包含卷积层、池化层和全连接层的神经网络的分类器F,利用随机梯度下降或者其他优化方法优化F,使得F(x_i)与y_i相关联,例如可采用如下公式对分类器进行训练:max_{F}1/N*\sum_i y_i log F(x_i)+(1-y_i)(1-log F(x_i))。
在分类器F完成训练后,F(x_i)即表示x_i为活体的非接触指纹图像的概率,如果F(x_i)>0.5,即表示x_i大概率为活体的非接触指纹图像,如果F(x_i)<0.5,则表示x_i大概率不是活体的非接触指纹图像。一些实施例中,默认采用0.5作为判定的阈值与F(x_i)进行比对确定指纹图像是否为活体的指纹图像,也可以通过调整该判定阈值来调整系统的误报率和漏报率,以适应场景的需要。
在本公开的一些实施例中,通过数据增广和对抗生成网络(GAN)中的至少一种生成非活体的非接触指纹图像,采用生成的非活体的非接触指纹图像对神经网络模型进行训练。具体的,现实中各类不同的非活体的非接触指纹图像不易批量获得,因此采用数据增广和对抗生成网络来生成更多的非活体的非接触指纹图像,减少神经网络的过拟合,提高实际应用中判定指纹图像是否为活体的指纹图像的准确率。
在本公开的一些实施例中,所述活体识别步骤包括:包括:获取被识别对象至少一个手指的rPPG(远程光电容积扫描,Remote Photoplethysmography)信号,根据rPPG信号得到表征被识别对象是否为活体的第二结果;具体的,在本实施例中,至少一个判断结果包括第二结果。rPPG信号是反射的周围光来测量的皮肤的细微亮度变化,皮肤的细微亮度变化是由于心脏跳动导致的血液流动导致的,对于活体的指纹图像会有部分周围光穿透皮层到达血管,反射回到相机,因此活体的指纹图像中能够监测到血液流动导致的亮度变化,而对于非活体的指纹图像则无法监测到血液流动导致的亮度变化。可以通过对被识别对象拍摄视频以获取rPPG信号。
在一些实施例中,根据rPPG信号得到表征被识别对象是否为活体的第二结果,包括:通过rPPG信号确定被识别对象的光学性质的变化特征,根据光学性质的变化特征确定第二结果。在本实施例中,可以根据被识别对象的手指的图像的不同区域确定第二结果,也可以根据被识别对象的手指的同一区域的图像确定第二结果。对于活体的指纹图像,在不同区域血液流动情况不同,因此一张图像中手指不同区域的rPPG信号会有差异,而采用橡胶等制备的非活体的不同区域的rPPG信号差异较小,因此可根据不同区域的rPPG信号得到第二结果,另一方面,活体的手指的同一区域在不同时间的血液流动情况不同,而非活体的同一区域在不同时间的状态基本一致,因此可以根据同一区域在不同时间的rPPG信号确定第二结果。可选的,rPPG信号可以是多个手指的rPPG信号,具体的,在获取rPPG信号时可以是通过对被识别对象的手指进行跟踪,定位并拍摄一个或多个手指的在时间上不同的至少两个指纹图像,例如可以采用被识别对象的手指的视频的方式获取指纹图像,计算出至少一个手指在每一帧图像中RGB分量均值,即每一帧图像得到3个特征值作为连续的rPPG信号输出,在根据rPPG信号得到第二结果的过程中,可以先对rPPG信号进行滤波,再将滤波后的信号通过傅里叶变换转为频域信号,进行频域信号分析得到特征,对于分析得到的特征进行分类,确定特征是活体的特征还是非活体的特征,从而得到第二结果,其中,对分析得到的特征进行分类的方法可以是采用神经网络模型(例如ConvLSTM模型)或者支持向量机模型进行分类。本实施例中,考虑到活体相对于非活体具有心跳,心跳影响到指纹图像的光学性质,从而实现了对被识别对象是否为活体的判断。
在本公开的一些实施例中,获取步骤还包括:获取被识别对象的至少一个手指的非接触指纹在不同光照条件下的图像。活体识别步骤还包括:根据不同光照条件下的图像得到表征被识别对象是否为活体的第三结果。具体的,在本实施例中,至少一个判断结果还包括:第三结果。对于活体和非活体而言,在光照条件发生变化时,拍摄的指纹图像也将发生变化,其中活体的指纹图像与非活体的指纹图像的变化情况存在差异,因此可以通过改变光照条件,并拍摄不同光照条件下的指纹图像,从而判断指纹图像对应的被识别对象是活体还是非活体。
在本公开的一些实施例中,光照条件包括亮度、光源颜色以及光源偏振状态中的至少一种;不同光照条件下的图像包括:在不同亮度下获取到的图像,在不同光源颜色下获取到的图像或在不同光源偏振状态下获取到的图像中至少一种。一些非活体的被识别对象可能是打印的纸板上的手指图像或者通过电子屏幕显示的手指图像,因此可以分别拍摄开闪光灯和不开闪光灯的情况下的图像,得到不同亮度下的图像,由于纸板和电子屏幕具有近似平面反射的特点,因此可以通过改变亮度提高活体识别的准确度。活体和非活体的物理特性不同,因此在不同的光源下的显示状态不同,可以通过改变光源颜色提高活体识别的准确度。光源可以发射偏振光和非偏振光,根据在偏振光下待识别对象的反光的差异确定是否为活体。
具体的,在本实施例中,可以通过改变拍摄指纹图像时亮度、改变投射到被识别对象的手指上的光的颜色以及改变投射到被识别对象上的光的偏振状态,需要注意的是,可以分别获取不同亮度下的拍摄的指纹图像、不同光源颜色下拍摄的指纹图像以及不同光源偏振状态下的指纹图像,基于这三种不同的光照条件,分别确定被识别对象是否为活体,得到三个子判断结果,根据三个子判断结果得到第三结果,这样综合多种光照条件下的子判断结果可以提高判断的准确性。
在本公开的一些实施例中,计算不同光照条件下获得的图像的反射率,根据反射率得到表征被识别对象是否为活体的第三结果。具体的,人体皮肤具有特定的光学特征,其吸收特定波长范围的光并发生特定波长范围的光,非人体皮肤反射的光与人体皮肤反射的光不会完全相同,因此,可以通过比较反射率确定被是被对象是否为活体。由于部分材料与人体在某些波长范围的反射率可能存在部分重合,但不会在所有的波长范围内都重合,因此,可选的,可以分别获得不用光源颜色下拍摄的图像,计算不同光源颜色下被识别对象的反射率,从而根据不同光源颜色下的反射率确定被识别对象是否为活体,例如,不同光源颜色下的图像可以是一段波长范围内波长连续变化的光照下的视频图像,从而得到反射率随波长的连续变化,此时得到的是反射率随光照的波长变化的曲线,采用这种连续的反射率变化的曲线相比于采用反射率点值,能够更好将活体的指纹图像的与非活体的指纹图像相区分。
在本公开的一些实施例中,将不同光照条件下获得的图像输入深度神经网络,通过深度神经网络得到表征被识别对象是否为活体的第三结果。具体的,对于获得的不同光照条件下的图像,可以采用神经网络模型进行识别,其中,以光照条件为亮度为例,预先采集活体的手指在关闭闪光灯和打开闪光灯条件下拍摄的图像,以及非活体的手指在关闭闪光灯和打开闪光灯条件下拍摄的图像,其中,在关闭闪光灯的条件下拍摄的图像为X_i^1,在打开闪光灯的条件下拍摄的图像记为X_i^2,i是变量,用于区分不同对象的照片,一个对象的照片可记为(X_i^1,X_i^2),并且(X_i^1,X_i^2)具有对应的y_i,在对象为活体时,y_i=1,否则y_i=0,用预先采集的(X_i^1,X_i^2)和对应的y_i训练包含卷积层、池化层和全连接层的深度神经网络F,使得F(X_i^1’,X_i^2’)~y_i,这样即可将被识别对象在关闭闪光灯和打开闪光灯的条件下拍摄的图像输入深度神经网络F,深度神经网络F输出被识别对象对应的y_i,被识别对象对应的y_i是被识别对象是活体的概率,可以设定y_i大于0.5时认定被识别对象为活体,否则被识别对象为非活体。
在一些可选的实施例中,将不同光照条件下获得的指纹图像输入深度神经网络之前,还包括:对不同光照条件下获得的图像进行傅里叶变换得到频域信号,将频域信号也输入深度神经网络,从而提高模型活体识别的准确性。本公开的发明人发现,活体和非活体在不同的光照条件下拍摄的图像的频域信号具有非常高的区分度,通过向深度神经网络中输入频域信号可以显著提高对于活体和非活体的区分,本实施例中的深度神经网络参考频域信号进行活体和非活体的识别,相比于现有技术大幅度提高了识别的准确度。
在本公开的一些实施例中,将不同光照条件下获得的指纹图像输入支持向量机模型,通过支持向量机模型得到表征被识别对象是否为活体的第三结果。在一些可选的实施例中,将不同光照条件下获得的图像输入深度神经网络,包括:对不同关照条件下获得的图像的各个区域进行亮度分析,计算各个区域在不同光照条件下亮度的变化值,亮度变化值输入到深度神经网络,或者支持向量机模型中,也可以显著提高活体识别的准确性。
在本公开的一些实施例中,获取步骤包括:获取被识别对象的红外图像,活体识别步骤还包括:根据红外图像得到表征被识别对象是否为活体的第四结果。在本实施例中,至少一个判断结果还包括:第四结果。在对被识别对象进行拍照时,在拍摄可见光照片时使用可见光进行照明,并关闭相机的红外滤镜,在拍摄红外图像时,可以配置红外补光灯,并关闭相机的红外滤镜,从而拍摄到被识别对象的红外图像,或者可以采用一个额外的红外摄像头拍摄红外图像,人体的手指表面皮肤对于红外光的反射率较低,红外光可以部分穿透手指的皮肤,这是活体与非活体的重要区别,这些区别反映在拍摄的红外图像上,因此可以根据被识别对象的红外图像确定被识别对象是否为活体。
在本公开的一些实施例中,根据红外图像得到表征被识别对象是否为活体的第四结果,包括:根据所述红外图像获取所述被识别对象在红外光下的光学性质,根据所述红外光下的光学性质得到所述第四结果。具体的,活体和非活体在红外光下的光学性质是不同的,具体表现在人体手指表面皮肤对红外光的反射率较低,红外光可以穿透手指的部分皮肤,因此根据拍摄的红外图像可以确定被识别对象对红外光的反射率或者透射率,根据反射率或者透射率确定被识别对象是否为活体对象,得到第四结果。
在本公开的一些实施例中,根据红外图像得到表征被识别对象是否为活体的第四结果,包括:从所述红外图像中提取静脉特征,将所述静脉特征与预先获得的活体静脉特征进行比对得到所述第四结果。具体的,由于红外光能够穿透人体的手指表层皮肤,因此如果被识别对象为活体,则红外图像中能够拍摄出人体皮肤下的指静脉,从红外图像中提取指静脉的静脉特征,与预先获得的人体的静脉特征进行比对,如果两者符合度高于预设值,则可判断被识别对象为活体,如果两者的符合度低于预设值,则判断被识别对象为非活体,从而得到第四结果。具体的,可以采用深度神经网络对红外图像进行识别。在一些实施例中,可以根据被识别对象的手指的指纹图像确定该图像对应的目标对象,用预先存储该目标对象的静脉特征作为所述预先获得的活体静脉特征,此时,同时根据被识别对象的指纹和静脉特征进行联合判断,从而提高了判断的准确度,例如,在指纹打卡机中同时存储员工的指纹和静脉特征,在进行打卡时拍摄红外图像和指纹图像,只有在红外图像中的静脉特征和指纹图像中的指纹都与同一个员工存储的静脉特征和指纹相对应时,才认为打卡成功。
在本公开的一些实施例中,获取步骤还包括,获取被识别对象的红外测温结果;活体识别步骤还包括:根据红外测温结果得到表征被识别对象是否为活体的第五结果。具体的,本实施例中至少一个判断结果还包括:第五结果。具体的,人体会自动向外界发射红外光,根据人体发射的红外光可以探测人体的体温,人体的手指的温度在一个窄的预设范围内,而采用橡胶制备的手指,或者是用打印的手指的纸张图像的温度与预设范围不同,因此可以根据红外测温结果得到第五结果,考虑到人体的手指可能会受到所在环境的影响,因此,在根据红外测温结果得到第五结果时,可以是结合环境温度得到第五结果,即可以根据环境温度对预设范围进行修订,用修订后的预设范围与红外测温结果进行比对,如果红外测温结果落在修订后的预设范围内,则第五结果为确定被识别对象为活体。
在本公开的一些实施例中,在获取步骤之前,还包括:提示步骤,提示被识别对象进行固定的或随机生成的手指动作;活体识别步骤还包括:根据获取的图像确定所示被识别对象所进行的手指动作,将被识别对象所进行的手指动作与提示被识别对象进行的手指动作进行对比得到表征被识别对象是否为活体的第六结果。具体的,在本实施例中,至少一个判断结果还包括:第六结果。对于伪造的手指或者是采用纸张打印的手指图像,手指无法进行运动,因此无法对提示步骤所提示的动作进行响应,因此可以据此确定被识别对象是否为活体,考虑到被识别对象可能手机,在手机上播放录制的手指的图像,如果一直提示使用固定的手指动作,则可能会提前在手机上录制手指的图像,因此,可提示随机生成的手指动作,进一步提高第六结果的准确性。手指同坐例如可以是张开、并拢、旋转、四指绷直或轻微弯曲等。
实施例1
为了更好的说明本公开提出的方法,以下以本公开的一个实施例中的方法用于手机为例进行说明,可以是手机中的应用实现本实施例中的方法。在本实施例中,对待识别对象的多个手指拍摄指纹图像,同时采用多种方式根据指纹图像进行判断,即具有多个判断结果,综合多个判断结果得到识别结果。具体的,本实施例中先拍摄被识别对象的指纹图像,然后根据被识别对象的彩色指纹图像、被识别对象在不同亮度条件下的图像和被识别对象的rPPG信号得到三个判断结果,综合三个判断结果得到识别结果,以下具体说明。
以下介绍根据被识别对象的彩色指纹图像得到判断结果。
开启手机摄像头,手机摄像头定位待识别对象的指尖区域并拍摄指尖区域的指纹图像,可以参考图5,将拍摄的指纹图像输入深度神经网络模型,深度神经网络模型输出指纹图像是活体的指纹图像的概率。
具体的,本实施例中待识别对象的至少一个手指的至少一部分指纹图像是彩色图像,传统的接触式指纹识别技术因为是接触式全反射成像,所采集的图像是二值化图像,额外信息包含的较少,难以利用指纹图像做有效的活体识别;非接触的指纹图像因为是利用RGB相机成像,包含的信息大大丰富,从而让基于图像的深度学习方法来检测活体指纹成为可能。预先批量的收集活体的非接触指纹图像和非活体的非接触指纹图像,指纹图像对应一个表征其是否为活体的指纹图像的参数y_i,活体的非接触指纹图像的y_i等于1,非活体的非接触指纹图像的y_i等于0,用收集到的活体和非活体的非接触的指纹图像训练一个包含卷积层,池化层和全连接层的深度神经网络的分类器F,并利用随机梯度下降对深度神经网络的分类器F进行优化,使得F(x_i)~y_i,分类器F的输入值为非接触的指纹图像,分类器F的输出值为输入的非接触的指纹图像的y_i,即输出值为输入的非接触指纹图像是活体的非接触指纹图像的概率,如果输入的非接触指纹图像的y_i是大于0.5,认为输入的非接触指纹图像是活体的非接触指纹图像,否则是非活体的非接触指纹图像,这样根据被识别对象的指纹图像得到判断结果。其中,因为现实中各类不同的非活体的非接触指纹图像不易大量获得,因此可通过数据增广和对抗生成网络来生成更多的非活体的非接触指纹图像,减少深度神经网络的过拟合,提高实际应用中判定的准确率。
以下介绍根据不同亮度条件下的图像得到判断结果。
手机摄像头在关闭闪光灯的情况下,拍摄待识别被识别对象的指纹图像,然后开启闪光灯再次拍摄手指的指纹图像,其中,可以同时拍摄多个手指的指纹图像,将开启闪光灯和关闭闪光灯条件下拍摄的指纹图像输入深度神经网络模型,输出该指纹图像对应的被识别对象是否为活体的判断结果。
具体的,非活体的指纹图像可能是纸板上打印的指纹图像或者电子屏幕显示的指纹图像,由于纸板图片和电子屏幕图片对于光线的反射具有平面或近平面反射的特点,其对光线产生的漫反射或镜面反射,都与活体的手指三维实体在视觉上产生了明显的区别,尤其由于手机的后置摄像头都是配置有闪光灯,而在打开闪光灯的情况下,产生的区别就尤为明显,因此分析手指在打开或关闭闪光灯时不同的光学性质,将两张指纹图片堆叠在一起用深度神经网络来判定活体。这样,不利用额外的照明设备,可以更加准确的在手机上对非接触指纹图像进行活体检测。特别是,当被识别对象为活体对象时,在关闭和开启闪光灯时拍摄的图像会存在明显不同,可参见图6,图6左侧为关闭闪光灯时拍摄的图像,图6右侧为开启闪光灯时拍摄的图像,相比于关闭闪光灯时拍摄的图像,在开启闪光灯后拍摄的图像上会显示有明显的手指的影子,即会有明显的阴影变化,当拍摄的指纹图像是伪造的打印在纸板上的指纹图像或电子屏幕上显示的图像时,在开启闪光的情况下其所显示的手指不会显示出影子,可参考图7,图7中显示的是在纸张上打印出手指图像,再通过手机在关闭闪光灯(图7左侧)和开启闪光灯(图7右侧)的条件下拍摄后得到的图像,可以看到,图7中左右两侧的图像中没有阴影变化,并且由于纸张的反光可以很清楚的看到图7右侧部分存在反光区。而当被识别对象为采用橡胶等材质制作的手指时,虽然在开启闪光灯的条件下能够产生阴影变化,但手指的反射率等光学性质与活体的手指仍不同,因此可以根据不同亮度条件下拍摄的图像得到被识别对象是否为活体的判断结果。
以下介绍根据rPPG信号得到判断结果。
手机拍摄被识别对象的手指的视频流,在视频流中持续跟踪手指的位置,并计算一个或多个手指的rPPG信号,根据rPPG信号得到判断结果。
具体的,rPPG通过分析反射的周围光来测量被识别对象的皮肤的细微亮度变化。皮肤的细微亮度变化是由于心脏跳动导致的血液流动导致的,进而可以用来活体判断,可以先定位出多个手指的区域,计算每个手指每一帧的RGB分量均值,从而得到每一帧的3个特征,作为连续信号rPPG输出。进而对rPPG连续信号进行滤波,傅立叶变换转为频域,进行频域分析得到特征,并利用支持向量机模型或者深度神经网络模型对特征进行分类,从而检测活体指纹。可选的,当定位出每一帧中的手指位置后,也可以直接利用时序深度神经网络(例如ConvLSTM)方法判定被识别对象是否为活体,这种方法会利用更多的原始输入信息,使得结果更加稳定可靠。
如上所述,本实施例中分别根据指纹图像、根据不同亮度条件下的图像和根据rPPG信号得到三个判断结果,综合三个判断结果得到识别结果,在综合的过程中,可以用于数字表示判断结果,如果判断结果显示被识别对象是活体,则判断结果为1,如果判断结果显示被识别对象为非活体,则判断结果为0,为三个判断结果设置权重,且各个权重的和等于1,对三个判断结果进行加权计算,则可得到一个0到1之间的结果值,如果结果值大于0.5,则识别结果为被识别对象为活体,否则为非活体。在识别结果显示被识别对象为活体时,继续对被识别对象的指纹图像进行处理,例如完成被识别对象的打卡操作。
实施例2
为了更好的说明本公开提出的方法,以下以本公开的一个实施例中的方法用于非接触采集设备为例进行说明,在本实施例中,对待识别对象的手指拍摄指纹图像,同时采用多种方式根据指纹图像进行判断,即具有多个判断结果,综合多个判断结果得到识别结果。具体的,本实施例中先拍摄被识别对象的指纹图像,然后根据被识别对象的彩色指纹图像、被识别对象在不同光源颜色下的图像、被识别对象在不同光源颜色且使用偏振片情况下的图像、被识别对象的红外图像和被识别对象的红外测温结果得到五个判断结果,综合五个判断结果得到识别结果,以下具体说明。
根据被识别对象的彩色指纹图像得到判断结果的步骤可以与实施例1相同,在此不重复描述。
以下介绍根据被识别对象在不同光源颜色下的图像得到判断结果。
使用不同颜色的光源依次向被识别对象上照射不同颜色的光,并拍摄不同颜色的光照下被识别对象的图像,对拍摄的图像进行光学特征识别得到判断结果。
具体的,不同颜色的光的波长不同,不同材质的物体对不同波长的光线会有选择性的吸收和反射。光源发出特定颜色的光线,经过物体反射后,在成像系统中呈现的是损失了一些波长的光。如图8所示,图8中显示了同一个活体手指在四个不同颜色的光照射下拍摄的图像,图8中从做到右依次为对同一个活体手指在蓝光(波长430nm)、绿光(波长530nm)、红光(波长630nm)和白光下拍摄的图像,可以看到,手指在不同光照下的成像效果有很大的差别,这是因为手指上的皮肤对不同颜色的光的反射率不同,通过控制不同颜色的光源依次打开,并采集不同光源颜色下的图像,在得到了不同光源颜色下的图像后,可以通过支持或者深度神经网络等方法来判定被识别对象是否为活体。举例而言,可以采集大量活体手指以及非活体手指在不同颜色的光源照射下的非接触图像,计算不同非接触图像在各个颜色的光照下的反射率,并通过支持向量机利用反射率的差别来判定被识别对象是否为活体。
以下具体介绍根据被识别对象在不同光源颜色且使用偏振片情况下的图像得到判断结果。
使用不同颜色的光源依次向被识别对象上照射不同颜色的光,并拍摄不同颜色的光照下被识别对象的图像,其中,拍摄用的相机镜头上设置偏振片,在光源上设置偏振片,对拍摄的图像进行光学特征识别得到判断结果。
具体的,不同材质在不同颜色的光源加偏振片下也会呈现不同的光学性质。可以在拍摄图像的相机镜头前加一个偏振片,并在发光光源前放置另一个偏振片,两个偏振片偏振方向呈一定角度,可以有多个光源,不同光源对应不同偏振方向的偏振片,通过获得更多在不同照明条件下的指纹图像,提高活体识别的准确率。图9展示了相机镜头上加一个偏振片且光源上放置另一个偏振片的情况下,不同颜色光源照射下同一手指的指纹图像,相机镜头上的偏振片和光源上的偏振片的偏振方向相交叉。图9中,从左到右依次为同一手指在蓝光、绿光、红光和白光光源下拍摄的图像,从图中可以看出,可见不同波段的光照明在手指上,经过偏振片后会呈现出不同的照明效果,通过分析活体手指和非活体手指的图像的光学性质,使用支持向量机模型或深度神经网络模型确定被识别对象是否为活体。
以下具体介绍根据被识别对象的红外图像得到判断结果。
可以配置额外的红外补光等,以及在相机上配置红外滤镜(IR-Cut filter)。拍摄手指的可见光图像时,使用可见光照明,并用红外滤镜过滤红外光;当拍摄红外图像时,打开红外补光灯,关闭红外滤镜拍摄红外图像,或者采用一个额外的红外摄像头来拍摄红外图像。
具体的,相比于可见光,人体手指表面皮肤对红外光的反射率低,红外光甚至可以穿透手指的皮肤,照见皮肤下的指静脉。因此,当被识别对象为活体时,可以拍摄得到如图10所示的红外图像。对于得到的待识别对象的红外图像,可以分析红外图像的手指表面的光学性质,利用支持向量机或深度神经网络确定待识别对象是否为活体,或者其他方法来检测活体;或者,也可以提取红外图像中的指静脉的特征,并通过指静脉特征比对来判断指静脉是否和预先录入的活体的指静脉特征相同,例如获得红外图像中指纹图像对应的活体的指静脉特征作为待比对特征,用红外图像中的指静脉特征与待比对特征进行特征比对。指静脉特征的获取比指纹要困难,同时比对指纹和指静脉也会大大提高非接触指纹活体识别的可靠性。可选的,预先采集一系列活体手指和非活体手指的红外照片,对于用x_i表示照片,用y_i表示照片是否为活体的照片,如果是活体的照片,则y_i=1,否则y_i=0,用采集的照片训练包含卷积层、池化层和全连接层的深度神经网络模型F,使得F(x_i)~y_i,通过深度神经网络模型F建立x_i和y_i的联系,从而采用深度神经网络F得到判断结果。
以下具体介绍根据被识别对象的红外测温结果得到判断结果。
采用红外测温传感器拍摄被识别对象的手掌区域,直接读取手掌区域的温度,如果该温度位于预先设定的温度范围内,则判断被识别对象为活体,否则不是活体。测温时可以采用是单点测温的传感器,也可以采用面阵测温的传感器,当采用面阵测温的传感器时,可以计算手掌区域的平均温度来判断被识别对象是否为活体,也可以利用红外温度的图像,结合深度神经网络准确地判定是否是活体指纹。
在得到了上述五种方式的五个判断结果后,可以采用SVM/Boosting机器学习方法,把多种方法的判断结果合并,得到一个更加准确的最终结果。例如,如果有m个方法,用决策值表示各个方法的判断结果,决策值分别为Z_1,...Z_m,而y_i表示是否为真实的手指,那么SVM/Boosting机器学习方法通过数据学习函数G,使得G(Z_1,..,Z_m)~y_i,从而利用多种方法进一步提高活体检测的准确率。
为了实现本公开实施例中的非接触指纹识别方法中的活体识别方法的技术方案,本公开的一些实施例中还提出一种非接触式活体识别装置,包括:
获取单元,用于通过非接触的拍摄方式获取被识别对象的至少一个手指的至少一部分指纹的图像;
活体识别单元,用于通过至少一种方式判断被识别对象是否为活体得到至少一个的判断结果,根据至少一个判断结果得到识别结果;
指纹识别单元,用于在识别结果显示被识别对象为活体的情况下,对图像执行指纹识别。
[指纹采集比对方法]
本公开中上述所介绍的非接触指纹识别方法与现有的接触式指纹识别方法的区别之一在于,能够同时采集并识别多枚指纹。但是,在该情况下,由于需要将每个指纹与库中存储的海量指纹进行比对,因此会造成比对速度下降从而影响用户体验。因此,鉴于上述问题,本公开公开了一套指纹采集比对方法以应对这一技术问题。
实施例1
下面,说明应用本公开的指纹采集比对方法的指纹采集方法的流程图。如图11所示,本实施例的指纹采集方法包括:
S111,图像获取步骤,获取至少一个包含手指的图像;
这里,获取手指图像的内容在上述非接触指纹识别方法的部分中已经进行了具体的说明,在此仅以区别点为中心进行说明,其他内容可参见上述部分中的描述。另外,除了采取拍照获得手指图像的方式之外,在本实施例中也可以从外部获取已经对手指拍摄好的图像,具体将在下面进行说明。
S112,附带信息确定步骤,确定手指的附带信息;其中,附带信息至少包括以下信息之一:指位信息、左右手信息、镜像信息、手指数量信息。
这里,附带信息确定步骤S112还包括指位信息确定步骤:
将图像中包含的至少一个手指分别分割为单独区域;确定每个区域的中心位置;按照顺时针或逆时针确定区域的顺序;根据顺序确定指位信息。在一个或多个实施例中,如图15所示,识别出图像中包括第一关节的手指,分别确定每个手指的手指框区域,这里以4个手指框为例,找出4个手指框的中心位置,并按照相对于中心顺时针/逆时针方向确定框的顺序,联合左右手信息确定指位信息。
S113,组合设定步骤,基于手指与附带信息设定至少一种组合方式;
这里,对不同组合方式的意义进行解释,其中例如,fa,fb,fc,fd...fj代表提交时的图片顺序,后面紧跟数字代表该指纹图片对应的指位,例如fa2,fb3代表一次提交,分别为指位2和3;如fa,fb,fc代表一次提交三枚指纹,无指位。
·给定指位单指:一次提交单指,且带指位,如fa3;
·给定指位多指:一次提交多指,且都需带指位,如fa2,fb3、fa2,fb7、fa2,fb3,fc4,fd5;
·不给定指位单指:一次提交单指,且不带指位,如fa;
·不给定指位连指:一次提交多指,且不带指位,如fa,fb(连指)、fa,fb,fc,fd(连指);
·左右手连指(数量不定):一次提交多指,且不带指位,是连指,并给定左右手信息,如fa,fb(连指,左手)、fa,fb,fc,fd(连指,右手)。
在一个或多个实施例中,组合设定步骤基于现有信息先假设一种可能的指纹-指位对应情况,例如给定3枚指纹abc,附带信息“是连指”,假设为abc-左手食指、中指、无名指。
S114,数据存储步骤,提取手指的指纹特征并与附带信息按照至少一种组合方式存储为指纹数据;
在一个或多个实施例中,还包括,归一化步骤,将获取的手指的图像分别进行归一化以获取指纹信息;
请参见图12,图12是本公开实施例的对根据不同方式获取的图像进行处理的流程图。在判断步骤中判断图像是对指纹进行接触式采集所得的图像时,在指纹参数获取步骤中获取指纹的纹线密度,并且在归一化步骤中,根据预设频率,将纹线密度调节至预设纹线密度,获得归一化的指纹图像。由图12可知,相比于通过非接触式拍摄所得的图像,通过接触式拍摄所得的图像无需获取指位、手指轮廓和指节线信息,而直接提取指纹频率/纹线密度信息进行调节。换言之,手指轮廓例如指节线长度、轮廓线面积等属于粗调参照,指纹的纹线密度属于微调参照。在一些图像的面积相对较小时,例如不包括手指形状和指节线信息时,通过非接触式拍摄所得的图像也可仅采用纹线密度为参照进行调节。
在一个或多个实施例中,还包括比例拓展步骤,将获取的指纹信息进行至少一次比例扩展,以获取至少一个比例的指纹样本。
在一个或多个实施例中,还包括图像展开步骤,对手指的图像进行展开以进行模拟转化,并获得手指的至少一份指纹数据。
本公开实施例的指纹识别的方法在不依赖除图像采集设备例如手机外的辅助硬件的情况下,通过调整图像采集设备拍摄或者接触式采集仪采集的指纹图像尺寸,使得同一手指的不同批次采集的指纹图像都被缩放和调整到接近相同的尺寸,保持指纹特征纹线的相对距离和角度误差不超过一定阈值,例如5%,进而支持指纹比对系统的后续处理。
实施例2
下面,说明应用本公开的指纹采集比对方法的指纹比对方法的流程图。如图13所示,本实施例的指纹比对方法包括:
S131,图像获取步骤,获取至少一个包含手指的图像;
这里,获取手指图像的内容在上述非接触指纹识别方法的部分中已经进行了具体的说明,在此仅以区别点为中心进行说明,其他内容可参见上述部分中的描述。
S132,附带信息确定步骤,确定手指的附带信息;
其中,附带信息至少包括以下信息之一:指位信息、左右手信息、镜像信息、手指数量信息。指位信息、左右手信息、镜像信息、手指数量信息至少包括以下之一:给定指位单指、给定指位多指、不给定指位单指、不给定指位连指、左右手连指。
在一个或多个实施例中,附带信息确定步骤S132还包括指位信息确定步骤:将图像中包含的至少一个手指分别分割为单独区域;确定每个区域的中心位置;按照顺时针或逆时针确定区域的顺序;根据顺序确定指位信息。在一个或多个实施例中,如图15所示,识别出图像中包括第一关节的手指,分别确定每个手指的手指框区域,这里以4个手指框为例,找出4个手指框的中心位置,并按照相对于中心顺时针/逆时针方向确定框的顺序,联合左右手信息确定指位信息。
S133,组合设定步骤,基于手指与附带信息设定至少一种组合方式;
在一个或多个实施例中,例如基于现有信息,先假设一种可能的指纹-指位对应情况,例如给定3枚指纹abc,附带信息“是连指”,假设为abc-左手食指、中指、无名指。
在一个或多个实施例中,例如基于已有是否连指、是否有指位的信息,在不改变其他条件的情况下对当前已经获得的所有假设进行扩展,例如abc-左手食指、中指、无名指,可以扩展为如下三种假设:
1.abc-左手无名指、中指、食指
2.abc-左手中指、无名指、小指
3.abc-左手小指、无名指、中指
在一个或多个实施例中,例如基于已有左右手信息,在不改变其他条件的情况下对当前已经获得的所有假设进行扩展,例如已有假设abc-左手无名指、中指、食指,在未指定左右手的情况下会扩展为:abc-右手无名指、中指、食指。
在一个或多个实施例中,例如基于已有是否镜像信息,在不改变其他条件的情况下对当前已经获得的所有假设进行扩展。例如已有假设abc-右手无名指、中指、食指。在未指定指纹数据是否镜像的情况下,会扩展为:abc-右手无名指、中指、食指。指位假设不变,但是所有的指纹数据都做左右镜像的操作。
在一个或多个实施例中,还包括归一化步骤,将获取的手指的图像分别进行归一化以获取指纹信息;获取手指的图像的方式为拍摄获取方式,归一化步骤包括:判断是否为拍摄获取方式;若是,则提取指纹数据的指位信息、手指轮廓信息、指节线信息之一;根据指位信息、手指轮廓信息、指节线信息之一提取指纹频率信息;根据指纹频率信息对指纹数据进行归一化。这里,手指轮廓和指节线识别,由深度学习模型提供,据此可以估算出手指需要缩放的大致尺寸。
在一个或多个实施例中,提取指纹频率信息的方法包括:进一步的局部缩放,依赖于指纹频率的计算,具体方法是在一个滑动窗口内部,取一个局部的指纹图像;利用指纹图像的近似平行的纹线之间的平移不变性,计算最小平移不变距离,从而估算出指纹频率。
在一个或多个实施例中,归一化步骤还包括对身份证指纹图像和捺印指纹图像进行归一化处理,对于身份证指纹图像,面积相对较小,一般不包含手指形状和指节线信息,可以采取指纹纹线密度进行归一化;对于接触式采集仪采集的捺印指纹图像,可以测量纹线的频率,从而保持对这类图像的兼容性以进行归一化处理。
这里,归一化处理的内容在上述部分中已经进行了具体的说明,具体可参见上述部分中的描述。
在一个或多个实施例中,还包括比例拓展步骤,将获取的指纹信息进行至少一次比例扩展,以获取至少一个比例的指纹样本,使得同时每人次中,每一枚手指对应多枚指纹图片,数量由比例策略和展开方案分别影响决定;
在一个或多个实施例中,还包括图像展开步骤,对手指的图像进行展开以进行模拟转化,并获得手指的至少一份指纹数据,取其中每一枚照片形式获得的指纹图像进行展开算法,从拍摄指纹模拟成平面指纹,使用不同展开参数获得多枚指纹,数量由指纹数量及给定信息的多少决定。
S134,指纹比对步骤,提取手指的指纹特征并与附带信息按照至少一种组合方式与已有指纹数据进行比对;
在一个或多个实施例中,例如指纹数据例如至少通过以下获取方式之一获取:
指纹采集仪:采集仪形式有多种多样,一次采集可以完成的采集有单指的、多指的、单手四指的、两手拇指的等等;采集仪的技术,可大致分为接触式采集仪&非接触采集仪;
直接拍摄获得指纹:例如一般用移动设备拍摄,也可以泛化为使用移动设备/固定设备,拍摄手指获取数据;
指纹数据读取:例如身份证读卡器;社保卡、驾照等等ID证件的读取设备。
在一个或多个实施例中,例如进行对比的指纹数据的至少以下信息之一相同或不同:获取方式信息、像素点信息、数据格式信息,当然也可以包括其他不同的信息,例如:对于捺印指纹,其一般为指纹采集仪的输出,或从存储捺印指纹的介质中读取获得,并且多为黑白的图片,不同的捺印指纹照片的区别主要在DPI、像素、颜色、灰度等几个维度;对于手指照片图像,一般为拍摄获得,当然也可以是通过非接触指纹采集仪提供;对于指纹特征,可以是从存储指纹特征的介质中读出指纹特征文件当然也可以是通过一些指纹采集设备采集指纹后提取指纹特征。
S135,结果确定步骤,根据不同组合方式的比对结果确定最终比对结果;
在一个或多个实施例中,结果确定步骤S135还包括,
得分获取步骤,获取至少一种组合方式下的至少一个手指的指纹特征与已有指纹数据比对后得到的最高分作为手指的比对得分。
得分汇总步骤,将不同手指的比对得分进行汇总,将至少一种组合方式下的多指的比对得分求加权平方和作为最终比对得分。
将至少一种组合方式的最终比对得分中的最大值作为最终比对结果。
为了实现上述本公开实施例中的指纹采集比对方法的技术方案,本公开的一个实施例提供了一种指纹采集比对装置,该装置具体可以应用于各种电子终端设备中,如图19所示,其特征在于,包括,
图像获取模块191,用于获取至少一个包含手指的图像;
附带信息确定模块192,用于确定手指的附带信息;其中,附带信息至少包括以下信息之一:指位信息、左右手信息、镜像信息、手指数量信息。
在一个或多个实施例中,附带信息确定模块192还包括指位信息确定模块,用于将图像中包含的至少一个手指分别分割为单独区域;确定每个区域的中心位置;具体实现方式可以参加上述方法中说明的内容。
组合设定模块193,用于基于手指与附带信息设定至少一种组合方式;对于组合方式的解释同上述方法中的内容,这里不再赘述。
数据存储模块194,用于提取手指的指纹特征并与附带信息按照至少一种组合方式存储为指纹数据;
在一个或多个实施例中,还包括,归一化模块,用于将获取的手指的图像分别进行归一化以获取指纹信息,包括,获取手指的图像的方式为拍摄获取方式,归一化模块用于:判断是否为拍摄获取方式;若是,则提取指纹数据的指位信息、手指轮廓信息、指节线信息之一;根据指位信息、手指轮廓信息、指节线信息之一提取指纹频率信息;根据指纹频率信息对指纹数据进行归一化;
其中,在一个或多个实施例中,归一化模块,用于提取指纹频率信息的方法包括:缩放指纹数据的指纹图像;利用指纹图像的近似平行的纹线之间的平移不变性,计算最小平移不变距离。
在一个或多个实施例中,归一化模块还用于对身份证指纹图像和捺印指纹图像进行归一化处理,对于身份证指纹图像,面积相对较小,一般不包含手指形状和指节线信息,可以采取指纹纹线密度进行归一化;对于接触式采集仪采集的捺印指纹图像,可以测量纹线的频率,从而保持对这类图像的兼容性以进行归一化处理。
归一化模块的用于实现上述方法中的作用,这里不再赘述。
在一个或多个实施例中,还包括,比例拓展模块,用于将获取的指纹信息进行至少一次比例扩展,以获取至少一个比例的指纹样本,使得同时每人次中,每一枚手指对应多枚指纹图片,数量由比例策略和展开方案分别影响决定;
在一个或多个实施例中,还包括,图像展开模块,用于对手指的图像进行展开以进行模拟转化,并获得手指的至少一份指纹数据,取其中每一枚照片形式获得的指纹图像进行展开算法,从拍摄指纹模拟成平面指纹,使用不同展开参数获得多枚指纹,数量由指纹数量及给定信息的多少决定。
指纹比对模块195,用于提取手指的指纹特征并与附带信息按照至少一种组合方式与已有指纹数据进行比对;
结果确定模块196,用于根据不同组合方式的比对结果确定最终比对结果;
在一个或多个实施例中,结果确定模块还包括,
得分获取模块,用于获取至少一种组合方式下的至少一个手指的指纹特征与已有指纹数据比对后得到的最高分作为手指的比对得分;
得分汇总模块,用于将不同手指的比对得分进行汇总,将至少一种组合方式下的多指的比对得分求加权平方和作为最终比对得分;
结果确定模块将至少一种组合方式的最终比对得分中的最大值作为最终比对结果。
在一个或多个实施例中,上述各个模块可以集成或者单独实现指纹采集装置或指纹比对装置,并不做限定。
[指纹区域检测方法]
另外,如上所述,在本公开的非接触指纹识别方法,由于是对多个手指的整个手指进行拍摄,因此如何快速检测指纹区域对于指纹识别速度的提升至关重要。因此,鉴于上述问题,本公开公开了一套指纹区域检测方法以应对这一技术问题。
图14示处了本公开一个实施例的指纹区域检测方法的流程图。本公开一个实施例的指纹区域检测方法主要包含以下步骤:
S141,图像获取步骤,对对象的手进行非接触拍摄并获取至少一个包含指关节的手指的图像;
这里,获取手指图像的内容在上述非接触指纹识别方法的部分中已经进行了具体的说明,在此仅以区别点为中心进行说明,其他内容可参见上述部分中的描述。
S142,方向调整步骤,调整手指的方向,使得手指朝向预设方向;
在一个或多个实施例中,方向调整步骤包括:识别图像中的指关节的端点;根据指关节的端点确定指节线的方向;根据指节线的方向调整图像,使得调整后的图像中的指节线朝向与预设方向垂直的方向。例如,识别出图像中包括第指一关节的手指头图片,在该图上识别出第一指关节端点,根据第一指关节的端点确定指节线方向,根据指节线方向调整图片,使得在调整后的图片中的指节线方向保持水平方向。
在一个或多个实施例中,方向调整步骤还可以包括:将图像中至少一个包含指关节的手指分别分割为单独区域;确定分割的单独区域的方向;调整单独区域的方向以使得手指朝向预设方向,例如将四个手指分别分割为四个单独区域,确定分割的单独的区域的手指的指向的方向,把每个单独区域的手指的指向的方向朝向垂直向上的方向。
在一个或多个实施例中,方向调整步骤还可以包括:确定图像中至少一个包含指关节的手指的外边缘的方向;调整外边缘的方向以调整手指的方向,使得手指朝向预设方向,例如分别确定四个手指的外边缘,确定形成的外边缘图像的指向的方向,把每个外边缘的指向的方向朝向垂直向上的方向。
S143,背景处理步骤,对图像中的背景进行预设处理;
在一个或多个实施例中,背景处理步骤包括:识别图像上手指与背景的边缘并形成边缘的多边形;获取多边形内部图像作为前景,去除多边形外部的背景。
在一个或多个实施例中,背景处理步骤还可以包括:将图像中至少一个包含指关节的手指分别分割为单独区域;获取单独区域中的手指图像;去除单独区域中手指图像之外的背景,例如将四个手指分别分割为四个单独区域,获取每个单独区域中的手指图像,确定分割的单独的区域的手指的图像之外的背景,把每个单独区域的手指图像之外的背景去除。
S144,指位确定步骤,确定手指的指位信息;
在一个或多个实施例中,指位确定步骤包括:将图像中至少一个包含指关节的手指分别分割为单独区域;确定区域的中心位置;按照顺时针或逆时针确定区域的顺序;根据顺序确定指位信息。请参见图15,例如识别出图像中包括第一关节的手指头图片并对每个手指头形成手指框,这里可以是4个手指框或5个手指框,这里以4个为例,找出4个手指框的中心位置,相对于中心顺时针/逆时针方向确定手指框的顺序,联合左右手信息确定指位信息。
S145,区域检测步骤,至少根据手指的预设方向、预设处理的背景、手指的指位信息之一检测手指的指纹区域。
在一个或多个实施例中,区域检测步骤还包括对手指进行跟踪。
在一个或多个实施例中,还包括比例获取步骤,利用手指的宽度获得与物理世界对应的比例尺信息。
为了实现上述本公开实施例中的指纹区域检测方法的技术方案,本公开的一个实施例提供了一种指纹区域检测装置,该装置具体可以应用于各种电子终端设备中,如图20所示,其特征在于,包括,
图像获取模块201,用于对对象的手进行非接触拍摄并获取至少一个包含指关节的手指的图像;
方向调整模块202,用于调整手指的方向,使得手指朝向预设方向;例如,用于识别出图像中包括第指一关节的手指头图片,在该图上识别出第一指关节端点,根据第一指关节的端点确定指节线方向,根据指节线方向调整图片,使得在调整后的图片中的指节线方向保持水平方向。
在一个或多个实施例中,方向调整模块202还用于:将图像中至少一个包含指关节的手指分别分割为单独区域;确定分割的单独区域的方向;调整单独区域的方向以使得手指朝向预设方向,例如将四个手指分别分割为四个单独区域,确定分割的单独的区域的手指的指向的方向,把每个单独区域的手指的指向的方向朝向垂直向上的方向。
在一个或多个实施例中,方向调整模块202还用于:确定图像中至少一个包含指关节的手指的外边缘的方向;调整外边缘的方向以调整手指的方向,使得手指朝向预设方向,例如分别确定四个手指的外边缘,确定形成的外边缘图像的指向的方向,把每个外边缘的指向的方向朝向垂直向上的方向。
背景处理模块203,用于对图像中的背景进行预设处理;
在一个或多个实施例中,背景处理模块203用于:识别图像上手指与背景的边缘并形成边缘的多边形;获取多边形内部图像作为前景,去除多边形外部的背景。
在一个或多个实施例中,背景处理模块203还用于:将图像中至少一个包含指关节的手指分别分割为单独区域;获取单独区域中的手指图像;去除单独区域中手指图像之外的背景,例如将四个手指分别分割为四个单独区域,获取每个单独区域中的手指图像,确定分割的单独的区域的手指的图像之外的背景,把每个单独区域的手指图像之外的背景去除。
指位确定模块204,用于确定手指的指位信息;例如识别出图像中包括第一关节的手指头图片并对每个手指头形成手指框,这里可以是4个手指框或5个手指框,这里以4个为例,找出4个手指框的中心位置,相对于中心顺时针/逆时针方向确定手指框的顺序,联合左右手信息确定指位信息。
区域检测模块205,用于至少根据手指的预设方向、预设处理的背景、手指的指位信息之一检测手指的指纹区域。
在一个或多个实施例中,还包括,比例获取模块,用于利用手指的宽度获得与物理世界对应的比例尺信息;
手指跟踪模块206,用于对手指进行跟踪。
在一个或多个实施例中,还包括,区域分割模块,用于将图像中至少一个包含指关节的手指分别分割为单独区域。
[指纹归一化方法]
另外,如上所述,在本公开的非接触指纹识别方法,由于是对多种指纹数据、指纹图像等进行处理识别以及采集存储对比,因此如何实现多种指纹数据、指纹图像的归一化问题也同样重要。因此,鉴于上述问题,本公开公开了一套指纹归一化方法以应对这一技术问题。
如图16所示,图16是本公开实施例的指纹识别方法的流程图,包括以下步骤。
S161,获取步骤,获取包括指纹的图像。
具体地,本公开实施例可通过各种图像采集设备,包括但不限于照相机、设置有摄像头的手机、采用接触方式采集指纹的采集仪等。利用上述图像采集设备,本实施例可以获取多种形式的包括指纹的图像。这里,获取指纹图像的内容在上述非接触指纹识别方法的部分中已经进行了具体的说明,在此仅以区别点为中心进行说明,其他内容可参见上述部分中的描述。
S162,判断步骤,判断图像是否是对指纹进行非接触式拍摄所得的图像。
具体地,本公开实施例可根据图像的属性,判断图像是否是对指纹进行非接触式拍摄所得的图像;或根据深度学习模型,判断图像中是否包括手指的外轮廓和/或指节线的步骤;如是,则图像是对指纹进行非接触式拍摄所得的图像;如否,则图像是对指纹进行接触式采集所得的图像。
其中,深度学习是一类模式分析方法的统称,就具体研究内容而言,主要涉及三类方法:(1)基于卷积运算的神经网络系统,即卷积神经网络(CNN)。(2)基于多层神经元的自编码神经网络,包括自编码(Auto encoder)以及稀疏编码(Sparse Coding)两类。(3)以多层自编码神经网络的方式进行预训练,进而结合鉴别信息进一步优化神经网络权值的深度置信网络(DBN)。通过多层处理,逐渐将初始的“低层”特征表示转化为“高层”特征表示后,用“简单模型”即可完成复杂的分类等学习任务。深度学习通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的分布式特征表示。从一个输入中产生一个输出所涉及的计算可以通过一个流向图(flow graph)来表示:流向图是一种能够表示计算的图,在这种图中每一个节点表示一个基本的计算以及一个计算的值,计算的结果被应用到这个节点的子节点的值。考虑这样一个计算集合,它可以被允许在每一个节点和可能的图结构中,并定义了一个函数族。
S163,指纹参数获取步骤,在判断步骤中判断为图像是对指纹进行非接触式拍摄所得的图像时,获取指纹的尺寸和纹线密度。
具体地,本公开实施例可包括获得手指的长度的步骤;或根据指节线模型,获取指节线的两个端点,并获得两个端点之间的距离的步骤;或根据指节线模型,获取指节线的两个端点,根据手指轮廓线模型,获取手指边缘的多个边界点;依次平滑连接两个端点及多个边界点,形成手指的轮廓线;及计算轮廓线面积,获得面积的步骤;其中,在归一化步骤中,将尺寸调节至预设尺寸包括:将长度调节至预设长度的步骤;或将距离调节至预设距离的步骤;或将面积调节至预设面积的步骤。
请参见图17,图17是本公开实施例的轮廓线的示意图。如图17所示,轮廓线可由手指边缘的多个边界点和指节线围成。其中,点A和点B分别为指节线的两个端点。
S164,归一化步骤,根据预设标准,将尺寸调节至预设尺寸,将纹线密度调节至预设纹线密度,获得归一化的指纹图像。
具体地,本公开实施例可包括将指纹所在的区域分为多个子区域的步骤;分别获取多个子区域中每一子区域的指纹方向和纹线密度的步骤;根据相同指纹方向的纹线之间的平移不变性,分别获得每一子区域的最小平移不变距离的步骤;根据最小平移不变距离,分别调节每一子区域的纹线密度,使相邻的每一子区域的纹线密度的差值小于预设差值;及根据预设频率,获得预设纹线密度的步骤。
此外,本公开实施例还可以是在一个滑动窗口内部,取一个局部的指纹图像,利用近似平行的纹线之间的平移不变性,计算出最小的平移不变距离,从而估算出指纹频率。
S165,指纹识别步骤,基于在归一化步骤中获得的归一化的指纹图像执行指纹识别。
此外,本公开实施例还可包括从图像中提取出指纹区域以排除图像中的背景区域的步骤;其中,指纹区域中的指纹具有大致均匀的纹线密度。本公开实施例还可包括通过用户输入左右手和深度学习模型检测指位框相结合的方式,定位手指的指位。
为了实现上述本公开实施例中的指纹识别方法的技术方案,如图21所示,本公开实施例还提供一种指纹识别的装置,包括获取模块211,可用于获取包括指纹的图像;判断模块213,可用于判断图像是否是对指纹进行非接触式拍摄所得的图像;指纹参数获取模块215,可用于在判断模块中判断为图像是对指纹进行拍摄所得的图像时,获取指纹的尺寸和纹线密度;归一化模块217,可用于根据预设标准,将尺寸调节至预设尺寸,将纹线密度调节至预设纹线密度,获得归一化的指纹图像;及指纹识别模块219,可用于基于在归一化模块中获得的归一化的指纹图像执行指纹识别。此外,本公开实施例还可包括提取模块(图未示),可用于从图像中提取出指纹区域以排除图像中的背景区域。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(ROM)等非易失性存储介质,或随机存储记忆体(RAM)等。
[非接触指纹采集装置]
在本公开的一些实施例中提出一种非接触式指纹采集装置,请参考图22,图22中示意性的展示了一种非接触式指纹采集装置固定在墙体上时的示意图,本实施例中非接触式采集包括:壳体1、图像采集装置2和处理装置3,其中,壳体1包括相互连接成L形的第一组成部11和第二组成部12。图像采集装置2设置在壳体1上,用于拍摄指纹图像,图像采集装置2的拍摄区域位于第一组成部11靠近第二组成部12的一侧;处理装置3设置在壳体1中,用于对图像采集装置2拍摄的图像进行识别处理。
具体的,在本实施例中,壳体1可以采用非透光材料制备,图像采集装置的拍摄方向可以朝向竖直向下,图像采集装置2用于拍摄非接触式的指纹图像,第二组成部12远离第一组成部11的一侧可以用于固定,例如固定在图22所示的墙壁上。由于第一组成部11和第二组成部12形成L形结构,且图像采集装置2的拍摄区域位于L形的凹侧,因此第一组成部11和第二组成部12能够遮挡大部分杂光,从而减少杂光对于采集非接触式指纹图像的干扰。现有技术中的接触式指纹采集时手指与采集图像的装置相接触,因此无需担心杂光的干扰,而采用非接触式指纹采集时,杂光将会对拍摄指纹图像产生较大的影响,因此本实施例中的壳体1至少能够阻挡两个方向的杂光以保证图像采集装置2采集的图像的质量。
在一些可选的实施例中,如图23所示,壳体1还包括:第三组成部13;在本实施例中,第一组成部11、第二组成部12和第三组成部13依次连接,且第一组成部11与第三组成部13相对间隔设置,第一组成部11、第二组成部12与第三组成部13围绕形成采集空间,图像采集装置2的拍摄区域位于采集空间内。如图23所示,第一组成部11、第二组成部12与第三组成部13围绕形成了凹形的结构,一些实施例中,图像采集装置2的拍摄方向朝向第三组成部13,此时第三组成部13遮挡住了直接摄入图像采集装置2的光线,从而极大的减少了摄入图像采集装置2中的杂光,进一步提高图像采集装置采集的图像的清晰度。
在本公开的一些实施例中,请继续参考图23,非接触式图像采集装置中还包括:照明装置4,设置在壳体1中,用于在图像采集装置2拍摄时进行照明。具体的,照明装置4可以包括一个或多个光源,通过照明装置4对图像采集装置2拍摄的手指进行照明,从而可以显著提高被拍摄的手指的亮度,以提高指纹的对比度。
在本公开的一些实施例中,请参考图24,照明装置4包括:至少两个光照部件41;光照部件41用于在图像采集装置2拍摄时进行照明,且至少两个光照部件41所发出的光线的颜色不同,以使图像采集装置能够在不同光线颜色下拍摄指纹图像。具体的,在进行指纹采集时,可以依次发射不同颜色的光,这样可以获取到不同颜色的光照下的指纹图像,采用这种方式可以有效的防止假手指,因为人体和橡胶等材质在不同颜色的光照下的反射率存在差异,因此可以根据不同颜色的光照下图像计算被拍摄的手指的反射率,从而判断被拍摄的手指是人体的手指还是伪造的假手指。
在本公开的一些实施例中,请参考图25,本实施例中的非接触式指纹采集装置还包括:光路调节装置5,设置在壳体1靠近图像采集装置2的拍摄区域的侧面上,图像采集装置2的镜头朝向光路调节装置5,光路调节装置5用于改变图像采集装置2的拍摄方向,图像采集装置2通过光路调节装置5拍摄拍摄区域的指纹图像。在本实施例中,设置光路调节装置5的原因是图像采集装置2与手指之间的距离较小时,拍摄的指纹图像容易产生畸变,如果不在图像采集装置2的外部额外设置光路调节装置5,为了保证拍摄的指纹图像不产生畸变,需要保证图像采集装置2与被拍摄的手指之间的距离足够大,这将导致非接触式指纹采集装置的尺寸增加,不利于实现小型化,而在采用了光路调节装置后,增加了图像采集装置2与被拍摄的手指之间的光线的距离,增加了景深,从而可以在不增大非接触式指纹采集装置整体的尺寸的情况下,保证拍摄的指纹图像足够清楚。
在一些可选的实施例中,继续参考图25,光路调节装置5包括:反光镜;反光镜设置在壳体1靠近图像采集装置2的拍摄区域的侧面上,反光镜所在的平面与图像采集装置2的拍摄方向之间呈预设夹角。在拍摄手指时,手指的图像经反光镜反射摄入图像采集装置2的镜头中,通过调节图像采集装置的拍摄方向与反光镜之间预设夹角可以调节图像采集装置2的拍摄区域。
在本公开的一些实施例中,请继续参考图23,非接触式指纹采集装置还包括:结构光投射装置6,设置在壳体1上,用于在图像采集装置2拍摄时投射结构光,以使图像采集装置2拍摄结构光图像。通过增加结构光投射装置6从而可以捕捉到用户手指图像带有结构光的条纹,在进行处理装置3对图像进行处理时就能够根据这些条纹对手指进行三维建模,然后对识别和切割出来的手指图像进行展开,得到更加接近按压的手指图像。
在本公开的一些实施例中,如图23所示,非接触式指纹采集装置,还包括:飞行时间装置7;飞行时间装置7用于向待拍照物体发射红外光线脉冲,并根据待拍照物体返回的光信号计算待拍照物体的深度信息;图像采集装置2用于根据深度信息在拍摄待拍照物体的指纹图像时进行对焦。具体的,本实施例中采用了飞行时间测距法,飞行时间装置7可以通过向待拍照的物体(例如手指)发射连续的特定波长的红外光线脉冲,通过飞行时间装置7上的传感器接收待拍照物体传回的光信号,计算光线往返的飞行时间或相位差得到待拍照物体的三维深度信息,现有技术中,相机在对焦时花费的时间往往较长,用户体验差,因此本实施例增加了飞行时间装置(TOF模组),测量图像采集装置到手指的距离,然后在对焦时直接指定距离,达到快速对焦的效果。
在本公开的一些实施例中,图像采集装置2包括:多个相机,多个相机中的至少两个相机的对焦在不同位置;这样可以同时拍摄多个位置的图像,扩大了手指可以放置的区域,并且多个相机可以提高景深,如果每个相机的景深为k cm,通过使用n个相机可以组件一个总景深为k*n cm景深的系统,在拍摄时可以通过清晰度为每个手指选择质量最高的一张图像。在一些实施例中,图像采集装置液态镜头的成像系统可以在几毫秒内改变焦平面,从而提供清晰的图像,而无论物体离相机的距离如何,这使得集成液态镜头成为需要在多个距离聚焦拍摄情景下的理想选择,液态镜头可以每秒步骤250个图像,且需要的能量跟梢,液态镜头时由一对水滴组成,它们暴露于高频声波下往返震动,随之改变透镜的焦距,通过软件可自动步骤焦距范围内的画面,并放弃焦距之外的画面。在一些实施例中,图像采集装置2具有弗雷泽镜头,弗雷泽镜头有极大的景深,可以同时对焦极远和极近的物体进行拍摄,弗雷泽镜头使用一个较大成像的大广角镜头,将具有较大景深的影响投影在一张薄膜上,然后再用一个变焦镜头去捕捉薄膜上的影像,来实现变焦并控制光圈,弗雷泽镜头通过这一设计实现了远超普通镜头的景深。在一些实施例中,图像采集装置2包括:光场相机。光场相机可以捕捉有关场景光线方向的信息,记录下所有方向光束的数据,因此它可以聚焦拍摄的照片中的任何深度,后期再根据实际的画面需要通过软件进行对焦,获得更清晰的画面效果。
本申请实施例中还提出一种非接触式指纹采集方法,本实施例中的方法包括:
(1)采集步骤,采用非接触式的拍摄手指的待识别指纹图像。
在采集步骤中,采用本申请提出的任一项的非接触式指纹采集装置采集指纹图像,在采集步骤中,需要对手指进行识别,对于手指进行识别的过程可以为本申请任一实施例中的手指识别步骤。
(2)处理步骤,对待识别指纹图像中的各个手指进行分割并得到各个手指对应的指纹图像。
具体的,采集的指纹图像中拍摄有一个或多个手指,因此为了方便对各个手指的指纹图像进行分别处理,需要先对拍摄的指纹图像中的手指进行分割处理,以得到各个手指的指纹图像。处理步骤具体采用本申请任一实施例中的指纹获取步骤。
(3)判断步骤,根据手指的数量以及各个手指对应的指纹图像确定是否符合条件。
(4)存储步骤,在符合条件时存储各个手指对应的指纹图像。
具体的,在本实施例中具有预先设定的条件,只有才符合条件时才存储各个手指对应的指纹图像,在不符合条件时不存储各个手指的图像,预先设定的条件例如可以是采集的指纹图像的清晰度满足要求,采集的指纹图像确认是活体的指纹图像,在满足条件时存储采集的指纹图像,从而可以用于指纹比对等操作,在不满足条件时放弃存储,重新采集指纹图像。
在本申请的一些实施例中,采集步骤可以包括拍摄多组对焦不同的待识别指纹图像。具体的,人体的各个手指并不在同一平面内,手指本身也具有高低起伏,如果只采集一张指纹图像,则不同的手指可能拍摄的清晰度不足,通过采集多组对焦不同的待识别的指纹图像,可以保证各个手指的指纹图像足够清楚。
在本申请的一些实施例中,在拍摄待识别指纹图像时降低相机镜头的相对孔距并在拍摄时进行补光。具体的,镜头的相对孔距和景深大致呈反比关系,通过降低相机镜头的而相对孔距能够提高景深,提高景深可以在无需重新对焦的情况下实现大范围的非接触指纹采集,但降低相对孔距会减少进光量,因此需要在拍摄时进行补光,从而保证拍摄的指纹图像的质量。
在本申请的一些实施例中,待识别指纹图像为结构光图像;存储步骤还包括:在符合条件时根据指纹图像建立对应的3D指纹模型,将指纹图像覆盖到对应的3D指纹模型上,对3D指纹模型进行展开得到对应的2D指纹图像,存储2D指纹图像。在本实施例中采用的非接触式指纹采集装置具有结构光投射装置,拍摄的是结构光图像,采用结构光技术可以获得3D图像信息,提高3D成像的精度,因此本实施中可以获取到手指的3D信息,存储的2D图像中记录了3D信息,相比于现有的指纹采集的方式大大丰富了指纹图像中的信息,有利于后期提高指纹比对精度。
在本申请的一些实施例中,处理步骤,包括:识别待识别指纹图像的第一指关节线,根据第一指关节线从待识别指纹图像中获取手指头部图像;从手指头部图像中获取手指前景图像作为指纹图像。具体的,手指包括多个指节,位于最靠近手指端部的指关节线为第一指关节线,指纹位于手指的头部,因此只需对手指头部图像进行采集和处理,无需对手指的其他部分进行采集和处理,对手指头部图像进行采集处理和处理可以减少后期的数据处理量,提高响应速度,同样的,手指头部图像的背景中没有指纹信息,因此只需要对手指前景图像进行处理。在一些实施例中,从手指头部图像中获取手指前景图像,包括:识别手指头部图像中手指与背景的边缘,根据边缘从手指头部图像中获取手指前景图像。
在一些实施例中,识别待识别指纹图像的第一指关节线,包括:识别待识别指纹图像中包括第一指关节的手指头部;识别第一指关节的指关节端点;根据指关节端点确定第一指关节的指节线。具体的,本实施例中先在待识别指纹图像中找到手指头部,因为手指头部位于手指的末端,因此可以较为快速的找到手指头部对应的区域,由于手指的内部具有指纹线等多条走线,难以直接找到第一指关节线,因此,根据手指的轮廓找到轮廓上的第一指关节的指关节端点,再根据第一指关节端点找到第一指关节线,相比于直接从手图像中找第一指关节线的方式,本实施例可以提高计算速度,并且因为手指轮廓上的特征点较少,因此可以提高准确度。
在一些实施例中,识别待识别指纹图像的第一指关节线之后,还包括:根据第一指关节线调节手指头部图像中手指指向。具体的,在进行指纹比对时,为了提高比对的准确度和速度,手指的朝向应当尽可能相近,因此,在本实施例,在确定了第一指关节线后调节手指的位置,例如让手指的指向朝向预设方向,预设方向例如可以是图像的正上方,此时可以通过将第一指关节线调到与图片中的横向相平行的方式调整手指指向。
在一些实施例中,处理步骤,还包括:确定待识别指纹图像中各个手指的相对位置关系;根据相对位置关系以及手指的左右手信息确定各个手指的手指名称。存储步骤还包括:存储指纹图像对应的手指名称。具体的,本实施例中拍摄的指纹图像中具有多个手指,左右手的形状明显不同,因此可以直接根据拍摄的指纹图像确定所拍摄的是左手还是右手,另一方面,左右手的手指的高低起伏变化是不同的,彼此间具有相对位置关系,相对位置关系例如可以包括各个手指的手指头部所在的相对位置,根据左右手信息和相对位置关系确定各个手指具体是食指、中指还是无名指等。例如,当拍摄有五个手指时,大拇指明显与其余手指的位置不在一条线上,可以很清楚的根据大拇指与其他手指的相对位置确定哪一个是大拇指,并根据大拇指所在的位置判断出是左手还是右手,在根据其余四指的顺序确定各个手指的手指名称,又例如,当拍摄有不含大拇指的四个手指的图像时,由于中指最高,因此可以很容易确定到中指,根据中指左右的手指个数可以确定哪一个是食指,或者可以根据最矮的小拇指的位置确定其他手指的手指名称。
在一些实施例中,判断步骤,还包括:根据指纹图像确定手指是否为活体对象,若手指不是活体对象,确定不符合条件。对于活体识别的方法,可以采用本申请任一实施例中的活体识别步骤中记录的方法,在此不作赘述。
对于装置的实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中作为分离模块说明的模块可以是或者也可以不是分开的。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
应该理解的是,虽然附图的框图中的每个方框可以代表一个模块,该模块的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令,但是这些模块并不是必然按照顺序依次执行。本公开中装置实施例中的各模块及功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上的模块或功能单元集成在一个模块中。上述集成的各个模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。上述提到的存储介质可以是只读存储器,磁盘或光盘等。
[电子设备]
下面参考图26,其示出了适于用来实现本公开实施例的电子设备(例如图1中的终端设备或服务器)500的结构示意图。本公开实施例中的终端设备可以是上述系统中的各种终端设备。图26示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图26所示,电子设备500可以包括处理装置(例如中央处理器、图形处理器等)501,用于控制电子设备的整体操作。处理装置可以包括一个或多个处理器来执行指令,以完成上述的方法的全部或部分步骤。此外,处理装置501还可以包括一个或多个模块,用于处理和其他装置之间的交互。
存储装置502用于存储各种类型的数据,存储装置502可以是包括各种类型的计算机可读存储介质或者它们的组合,例如可以是电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
传感器装置503,用于感受规定的被测量的信息并按照一定的规律转换成可用输出信号,可以包括一个或多个传感器。例如,其可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器等,用于检测电子设备的打开/关闭状态、相对定位、加速/减速、温度、湿度和光线等的变化。
处理装置501、存储装置502以及传感器装置503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。
多媒体装置506可以包括触摸屏、触摸板、键盘、鼠标、摄像头、麦克风等的输入装置用以接收来自用户的输入信号,在各种输入装置可以与上述传感器装置503的各种传感器配合完成例如手势操作输入、图像识别输入、距离检测输入等;多媒体装置506还可以包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置。
电源装置507,用于为电子设备中的各种装置提供电力,可以包括电源管理系统、一个或多个电源及为其他装置分配电力的组件。
通信装置508,可以允许电子设备500与其他设备进行无线或有线通信以交换数据。
上述各项装置也均可以连接至I/O接口505以实现电子设备500的应用。
虽然图26示出了具有各种装置的电子设备,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置从网络上被下载和安装,或者从存储装置被安装。在该计算机程序被处理装置执行时,执行本公开实施例的方法中限定的上述功能。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。
要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
此外,虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。
Claims (10)
1.一种指纹识别的方法,包括:
获取步骤,获取包括指纹的图像;
判断步骤,判断所述图像是否是对指纹进行非接触式拍摄所得的图像;
归一化步骤,获得归一化的指纹图像;
其中,如果判断步骤判断为所述图像是非接触式拍摄所得的,则所述归一化步骤包括粗调以及微调;
指纹识别步骤,基于在归一化步骤中获得的归一化的指纹图像执行指纹识别;
所述粗调包括:获取所述指纹的尺寸;根据预设标准,将所述尺寸调节至预设尺寸;
所述微调包括:获取所述指纹的纹线密度,将所述纹线密度调节至预设纹线密度;
所述获取所述指纹的尺寸,包括:根据指节线模型,获取第一指节线的两个端点;根据手指轮廓线模型,获取手指边缘的多个边界点;依次平滑连接所述第一指节线的两个端点及手指边缘的多个边界点,形成所述手指的轮廓线;及计算所述轮廓线包围区域的面积,获得所述面积的步骤;
相应的,将所述尺寸调节至预设尺寸包括:将所述面积调节至预设面积的步骤。
2.根据权利要求1所述的方法,其特征在于,获取所述指纹的纹线密度,包括:
将所述图像中所述指纹所在的区域分为多个子区域;
分别获取所述指纹所在的区域中多个子区域中每一子区域的指纹方向和纹线密度;
将所述纹线密度调节至预设纹线密度,包括:
对每一子区域进行图像变换处理,使各所述子区域的所述纹线密度的差值小于预设差值。
3.根据权利要求2所述的方法,其特征在于,分别获取所述多个子区域中每一子区域的指纹方向和纹线密度的步骤,包括:
获取每一子区域的图像中指纹方向;
对于每一子区域,根据该子区域中指纹方向近似平行的纹线之间的平移不变性,获得该子区域对应的最小平移不变距离;
根据所述最小平移不变距离确定该子区域的纹线密度。
4.根据权利要求1所述的方法,其特征在于,所述判断步骤包括:
根据所述图像的属性,判断所述图像是否是对指纹进行非接触式拍摄所得的图像;或
根据深度学习模型,判断所述图像中是否包括手指的外轮廓和/或指节线;如是,则所述图像是对指纹进行非接触式拍摄所得的图像;如否,则所述图像是对指纹进行接触式采集所得的图像。
5.根据权利要求1-4任一项所述的方法,其特征在于,非接触式拍摄所得的所述图像是通过手指识别模型在非接触式拍摄所得的手指图像中识别出手指框并根据所述手指框的位置获得的;所述手指框包含手指端部到第一指节线的指头区域,所述第一指节线为最靠近手指端部的指关节线。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
从所述图像中提取出指纹区域以排除所述图像中的背景区域的步骤;
其中,所述指纹区域中的指纹具有大致均匀的纹线密度。
7.一种指纹识别的装置,包括:
获取模块,用于获取包括指纹的图像;
判断模块,用于判断已获取的所述图像是否是对指纹进行非接触式拍摄所得的图像;
归一化模块,用于获得归一化的指纹图像;
其中,如果判断模块判断为所述图像是非接触式拍摄所得的,则所述归一化模块进行粗调以及微调;
指纹识别模块,用于基于在归一化模块中获得的归一化的指纹图像执行指纹识别;
所述粗调包括:获取所述指纹的尺寸;根据预设标准,将所述尺寸调节至预设尺寸;
所述微调包括:获取所述指纹的纹线密度,将所述纹线密度调节至预设纹线密度;
所述获取所述指纹的尺寸,包括:根据指节线模型,获取第一指节线的两个端点;根据手指轮廓线模型,获取手指边缘的多个边界点;依次平滑连接所述第一指节线的两个端点及手指边缘的多个边界点,形成所述手指的轮廓线;及计算所述轮廓线包围区域的面积,获得所述面积的步骤;
相应的,将所述尺寸调节至预设尺寸包括:将所述面积调节至预设面积的步骤。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
提取模块,从所述图像中提取出指纹区域以排除所述图像中的背景区域;
其中,所述指纹区域中的指纹具有大致均匀的纹线密度。
9.一种终端,包括:
至少一个存储器和至少一个处理器;
其中,所述至少一个存储器用于存储程序代码,所述至少一个处理器用于调用所述至少一个存储器所存储的所述程序代码执行权利要求1至6中任一项所述的方法。
10.一种存储介质,所述存储介质用于存储程序代码,所述程序代码用于执行权利要求1至6中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011062601.7A CN112232159B (zh) | 2020-09-30 | 2020-09-30 | 指纹识别的方法、装置、终端及存储介质 |
PCT/CN2021/122240 WO2022068931A1 (zh) | 2020-09-30 | 2021-09-30 | 非接触指纹识别方法、装置、终端及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011062601.7A CN112232159B (zh) | 2020-09-30 | 2020-09-30 | 指纹识别的方法、装置、终端及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112232159A CN112232159A (zh) | 2021-01-15 |
CN112232159B true CN112232159B (zh) | 2021-12-07 |
Family
ID=74120156
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011062601.7A Active CN112232159B (zh) | 2020-09-30 | 2020-09-30 | 指纹识别的方法、装置、终端及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112232159B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022068931A1 (zh) * | 2020-09-30 | 2022-04-07 | 墨奇科技(北京)有限公司 | 非接触指纹识别方法、装置、终端及存储介质 |
CN115426710A (zh) * | 2022-08-15 | 2022-12-02 | 浙江工业大学 | 一种面向室内指纹定位的稀疏特征补全方法 |
CN116405211B (zh) * | 2023-06-07 | 2023-09-01 | 深圳市乐凡信息科技有限公司 | 基于生物特征的多重加密方法、装置、设备及存储介质 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1238809C (zh) * | 2002-09-04 | 2006-01-25 | 长春鸿达光电子与生物统计识别技术有限公司 | 指纹识别方法、以及指纹控制方法和系统 |
CN101344915A (zh) * | 2007-07-09 | 2009-01-14 | 上海耀明仪表控制有限公司 | 光学式智能指纹识别方法 |
CN102254163A (zh) * | 2011-08-03 | 2011-11-23 | 山东志华信息科技股份有限公司 | 自适应模板大小的Gabor指纹图像增强方法 |
CN105205802B (zh) * | 2015-02-13 | 2017-04-12 | 比亚迪股份有限公司 | 纹线距离的计算方法和装置 |
CN106897989B (zh) * | 2016-03-01 | 2019-09-20 | 闽南师范大学 | 一种基于线密度计算的指纹图像分割方法 |
CN108121940A (zh) * | 2016-11-29 | 2018-06-05 | 深圳指芯智能科技有限公司 | 一种指纹图像分析的方法和装置 |
KR102459852B1 (ko) * | 2017-02-08 | 2022-10-27 | 삼성전자주식회사 | 지문 인식을 위한 후보 지문 이미지를 선정하는 장치 및 방법 |
CN107451549B (zh) * | 2017-07-24 | 2020-05-12 | 云南大学 | 非接触式指纹增强方法及曲率驱动的自适应滤波器 |
CN109271890B (zh) * | 2018-08-29 | 2021-07-13 | 墨奇科技(北京)有限公司 | 自动指纹图像提取的方法和设备 |
CN109766876B (zh) * | 2019-03-11 | 2024-01-26 | 北京至简墨奇科技有限公司 | 非接触式指纹采集装置和方法 |
CN110008892A (zh) * | 2019-03-29 | 2019-07-12 | 北京海鑫科金高科技股份有限公司 | 一种基于四连指指纹图像采集的指纹核验方法及装置 |
CN110728201B (zh) * | 2019-09-20 | 2023-04-07 | 南京元初科技有限公司 | 用于指纹识别的图像处理方法及装置 |
CN111179265B (zh) * | 2020-01-10 | 2023-04-18 | 敦泰电子(深圳)有限公司 | 基于图像的指纹质量评估方法、装置及电子设备 |
CN112232155B (zh) * | 2020-09-30 | 2021-12-17 | 墨奇科技(北京)有限公司 | 非接触指纹识别的方法、装置、终端及存储介质 |
-
2020
- 2020-09-30 CN CN202011062601.7A patent/CN112232159B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112232159A (zh) | 2021-01-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112232155B (zh) | 非接触指纹识别的方法、装置、终端及存储介质 | |
CN112232163B (zh) | 指纹采集方法及装置、指纹比对方法及装置、设备 | |
KR102587193B1 (ko) | 모바일 장치를 사용하여 촬영된 이미지를 이용한 지문-기반 사용자 인증 수행 시스템 및 방법 | |
CN112016525A (zh) | 非接触式指纹采集方法和装置 | |
CN110326001B (zh) | 使用利用移动设备捕捉的图像执行基于指纹的用户认证的系统和方法 | |
US11263432B2 (en) | Systems and methods for performing fingerprint based user authentication using imagery captured using mobile devices | |
US10339362B2 (en) | Systems and methods for performing fingerprint based user authentication using imagery captured using mobile devices | |
CN112232159B (zh) | 指纹识别的方法、装置、终端及存储介质 | |
WO2022068931A1 (zh) | 非接触指纹识别方法、装置、终端及存储介质 | |
CN106529436B (zh) | 一种身份一致性认证方法、装置和移动终端 | |
CN112232157B (zh) | 指纹区域检测方法、装置、设备、存储介质 | |
CN110059579A (zh) | 用于活体检验的方法和装置,电子设备和存储介质 | |
CN112232152B (zh) | 非接触式指纹识别方法、装置、终端和存储介质 | |
CN212569821U (zh) | 非接触式指纹采集装置 | |
CN116982093A (zh) | 呈现攻击检测 | |
Dixit et al. | SIFRS: Spoof Invariant Facial Recognition System (A Helping Hand for Visual Impaired People) | |
Nguyen | Face Recognition and Face Spoofing Detection Using 3D Model | |
Jadhav et al. | Information extraction for touch free biometric authentication system from large databases using deep learning algorithm | |
CN114694265A (zh) | 活体检测方法、装置及系统 | |
Nechyporenko ОV | AUTOMATIC HUMAN RECOGNITION SYSTEMS USING BIOMETRIC COMPUTER-INTEGRATED TECHNOLOGIES |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230814 Address after: Room 1507-1512, 13th Floor, No. 27 Zhichun Road, Haidian District, Beijing, 100083 Patentee after: Beijing jianmozi Technology Co.,Ltd. Address before: 100016 1 / F, building 5, yard 5, Jiangtai Road, Chaoyang District, Beijing Patentee before: Moqi Technology (Beijing) Co.,Ltd. |
|
TR01 | Transfer of patent right |