一种通过神经网络来进行虹膜识别的方法与流程

文档序号:12468299阅读:263来源:国知局
一种通过神经网络来进行虹膜识别的方法与流程

本发明属于虹膜识别技术领域,尤其涉及一种通过神经网络来进行虹膜识别的方法。



背景技术:

虹膜识别技术是基于眼睛中的虹膜进行身份识别,目前应用于安防设备(如门禁等),以及有高度保密需求的场所。

人的眼睛结构由巩膜、虹膜、瞳孔晶状体、视网膜等部分组成。虹膜是位于黑色瞳孔和白色巩膜之间的圆环状部分,其包含有很多相互交错的斑点、细丝、冠状、条纹、隐窝等的细节特征。而且虹膜在胎儿发育阶段形成后,在整个生命历程中将是保持不变的。这些特征决定了虹膜特征的唯一性,同时也决定了身份识别的唯一性。因此,可以将眼睛的虹膜特征作为每个人的身份识别对象。

目前虹膜识别技术还未应用到移动终端,而且现有的虹膜识别技术直接采用的是虹膜图像解析识别,虹膜识别成功率还有待提高。



技术实现要素:

鉴于上述问题,本发明的目的在于提供一种通过神经网络来进行虹膜识别的方法,旨在解决现有虹膜识别技术识别成功率略低的技术问题。

本发明提供的通过神经网络来进行虹膜识别的方法应用于虹膜识别系统,所述虹膜识别系统包括通用信息终端、红外光源,所述通用信息终端上设置有红外摄像头,所述方法包括下述步骤:

设计和训练五个神经网络,分别为第一至第五神经网络,其中第一神经网络用于寻找瞳孔圆心;第二神经网络用于寻找虹膜外边界圆心;第三神经网络用于确定瞳孔半径,第四神经网络用于确定虹膜外边界半径;第五神经网络用于虹膜特征比对;

通过红外摄像头拍摄样本虹膜图像,然后通过第一至第四神经网络寻找得到瞳孔的圆心和半径,以及虹膜外边界的圆心和半径,最后得到样本虹膜编码并保存;

在登录认证时,通过红外摄像头拍摄登录虹膜图像,在登录虹膜图像上建立坐标系,然后使用二维加博滤镜进行卷积,得到登陆虹膜编码;

通过第五神经网络将登录虹膜编码与样本虹膜编码进行比较判断是否来源于同一个虹膜活体,如果是,则认证通过。

本发明的有益效果是:本发明将神经网络技术应用到虹膜识别中,通过设计和训练五个神经网络以实现寻找瞳孔圆心和半径、虹膜外边界圆心和半径、虹膜特征比对,实现虹膜登录认证,经试验验证,通过本发明方法虹膜登录认证一次性通过率达到98%以上,优于现有虹膜识别技术。

附图说明

图1是虹膜识别系统的结构图;

图2是通过神经网络来进行虹膜识别的方法流程图;

图3是图2中步骤S1的流程图;

图4是神经网络设计示意图;

图5是神经网络五判断示意图;

图6是红外光源节能模式和高效模式的控制流程图;

图7-1至7-6为红外光源和红外摄像头的位置关系图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。

图1示出了一种虹膜识别系统的结构,包括通用信息终端、红外光源2,所述通用信息终端1上设置有红外摄像头3,所述通用信息处理设备,包括但不限于台式计算机、笔记本电脑、智能手机、平板电脑、智能穿戴、智能手表、智能眼镜、智能手环、车载智能设备等。具体的,通过红外光源给虹膜拍照提供照明,然后通过红外摄像头拍摄虹膜的图像,找到虹膜识别的最佳位置。

本发明方法基于上述虹膜识别系统实现,如图2所示,具体实现时包括下述步骤:

步骤S1、设计和训练五个神经网络。

这五个神经网络分别为第一至第五神经网络,其中第一神经网络用于寻找瞳孔圆心;第二神经网络用于寻找虹膜外边界圆心;第三神经网络用于确定瞳孔半径,第四神经网络用于确定虹膜外边界半径;第五神经网络用于虹膜特征比对。

本步骤具体实现时,如图3所示,包括下述步骤:

S11、建立一个虹膜图像数据库,数据库中保存有多个用户的多张虹膜图像。

数据库中存在100以上的用户,每个用户存在10张以上的虹膜图像。其中特别的,数据库中包括佩戴眼镜用户和佩戴隐形眼镜用户的虹膜图像,即使用户佩戴眼镜也可以识别出。

S12、然后标定出每张虹膜图像中瞳孔的圆心和半径,以及虹膜外边界的圆心和半径。

S13、根据所述虹膜图像数据库中图像尺寸设计五个神经网络,如图4所示,所述神经网络包括输入层、中间层和输出层,选定一定形状区域作为神经网络的输入层,输入层的每个节点根据像素亮度由最黑的取值到最亮的取值映射到[0,1]的区间,区域内的像素作为训练样本。

一般来说,神经网络包括输入层、中间层和输出层,输入层为输入图像数据,输出层为输入层图像的判定结果。选定一定形状区域作为神经网络的输入层。如图4所示,选定矩形区域,对于第一至四神经网络,在使用1920x1080格式图像时,设计200x200的矩形区域作为神经网络的输入层,也可以设计300x300的矩形区域作为神经网络的输入层,也可以使用其它尺寸。尺寸设计可以参考覆盖虹膜外边界的最大直径。矩形区域的长宽也可以设计成不同的值。也可以使用非矩形区域作为神经网络的输入层。具体的,从数据库中取出的虹膜图像,以任意一点(x,y)为起点,截取一个尺寸与第一神经网络或者第二神经网络二的输入尺寸相同的矩形区域。将这个矩形作为神经网络的输入训练样本,为了增加样本的多样性,可以多次对同一个样本调整亮度或者对比度,也可以同时调整,也可以使用其它效果滤镜,也可以使用图像大小缩放。

输入层的每个节点根据像素亮度由最黑的取值到最亮的取值映射到[0,1]的区间。

对于第一至第四神经网络,可以使用三层的神经网络,也可以使用更深层的神经网络。在使用三层的神经网络时,中间层优选的可以使用15个网络节点,也可以使用20个网络节点,也可以使用其它数量的节点。

五个神经网络具体训练如下:

在训练第一神经网络时,当截取的训练样本中心与瞳孔圆心的距离小于等于误差半径r1时,将训练结果标定为1,表示训练样本中存在瞳孔并且位置在正中,当截取的训练样本中心与瞳孔圆心的距离大于误差半径r1,或者训练样本中没有瞳孔时,将训练结果标定为0。

在训练第二神经网络时,当截取的训练样本中心与虹膜外边界圆心的距离小于等于误差半径r2时,将训练结果标定为1,表示训练样本中存在虹膜外边界并且位置在正中。当截取的训练样本中心与虹膜外边界圆心的距离大于误差半径r2,或者训练样本中没有虹膜外边界时,将训练结果标定为0。

由于神经网络输出层的判定具有一定的不确定性,因此在训练第一神经网络和第二神经网络时,可以设计一个误差半径r,r的取值范围是大于等于0。根据经验r可以取5,也可以取10,也可以取其它值。训练第一和第二神经网络时的两个误差半径可以相同,也可以不同。

训练好了的第一第二神经网络后,这里两个神经网络将被用来定位瞳孔的圆心和虹膜外边界的圆心。

在训练第三神经网络和第四神经网络,只截取以瞳孔或者虹膜外边界的圆心为中心的图像作为输入层,为了增加样本的多样性,可以多次对同一个样本调整亮度或者对比度,也可以同时调整,也可以使用其它效果滤镜。为了产生半径不同的图像样本,可以使用图像大小缩放。输出层的每个节点标识一个半径的取值,训练一个图像样本时,其人为标定的半径值所对应的输出节点的训练结果标定为1,其余节点的训练结果标定为0。

对于第三神经网络,输出层的节点数可以设计为虹膜图像样本的瞳孔半径的测量范围的像素取值的整数个数。比如训练样本集中,瞳孔的半径取值范围是[15,40],这时输出层可以设计26个节点分别表示26个不同的结果。也可以使用更多的节点覆盖更广的取值范围。

对于第四神经网络,其神经网络输出层的节点数可以设计为虹膜图像样本的虹膜外边界的测量范围的像素取值的整数个数。比如训练样本集中,虹膜外边界的半径取值范围是[80,120],这时输出层可以设计41个节点分别表示41个不同的结果。也可以使用更多的节点覆盖更广的取值范围。

训练好了的第三第四神经网络,将被用来确定瞳孔和虹膜外边界的半径。

在训练第五神经网络时,其输出层为一个节点,用来表示两个虹膜编码是否来源于同一个虹膜活体的判定结果,在已知一个虹膜图像样本中的瞳孔圆心与半径、虹膜外边界的圆心与半径的基础上,从中抽取虹膜图案并得到虹膜编码,虹膜编码中的每个值对应输入层的一个节点,将两个虹膜编码进行异或运算,得到的结果作为神经网络五的输出,如果两个虹膜编码来源于同一个虹膜活体,则将训练结果标定为1,否则将训练结果标定为0。

第五神经网络是用来判定两个虹膜样本是否来源于同一个虹膜活体。根据虹膜编码(iris code)的尺寸来设计神经网络五。在已知一个虹膜图像样本中的瞳孔圆心与半径、虹膜外边界的圆心与半径的基础上,从中抽取虹膜图案并得到虹膜编码(iris code)的过程为现有技术,具体编码过程这里不赘述。

虹膜编码中的每个值对应输入层的一个节点。在使用三层的神经网络时,根据经验,中间层优选的可以使用15个网络节点,也可以使用20个网络节点。也可以使用其它数量的节点。

其输出层为一个节点,用来表示两个虹膜编码是否来源于同一个虹膜活体的判定结果。在训练神经网络五时,从数据库中取出两个虹膜图像样本,然后根据标定的瞳孔与虹膜位置将虹膜信息抽出并计算出两个虹膜编码。将两个虹膜编码进行异或运算,得到的结果作为神经网络五的输出。如果两个虹膜编码来源于同一个虹膜活体,则将训练结果标定为1,否则将训练结果标定为0。训练好了的第五神经网络将被用来判定两个虹膜编码是否来源于同一个虹膜活体。

步骤S2、通过红外摄像头拍摄样本虹膜图像,然后通过第一至第四神经网络寻找得到瞳孔的圆心和半径,以及虹膜外边界的圆心和半径,最后得到样本虹膜编码并保存。

训练好五个神经网络后,可以进入虹膜识别的应用阶段,包括虹膜信息的录入和认证。通过红外光源给虹膜提供照明,然后通过红外摄像头拍摄虹膜的图像,找到虹膜识别的最佳位置。

具体的,包括下述步骤:

S21、在寻找瞳孔/虹膜外边界圆心时,使用第一/第二神经网络对虹膜图像进行一次卷积,将得到一个灰度图像,瞳孔的周围将出现高值,其它地方则是低值;

S22、对灰度图像使用均值滤镜,以去除一些零散的噪音;

S23、然后将阈值n以下的像素清零;

S24、最后对高值区域的像素的横纵坐标分别计算加权平均数,得到的结果就是瞳孔/虹膜外边界的圆心;

S25、在得到瞳孔/虹膜外边界圆心后,以瞳孔/虹膜外边界圆心为中心截取一个矩形的图像,然后交给第三/第四神经网络来确定瞳孔/虹膜外边界的半径;

S26、在虹膜图像上建立坐标系,然后使用二维加博滤镜进行卷积,得到样本虹膜编码。

在图像样本中寻找瞳孔的圆心时,使用第一神经网络对样本进行一次卷积,将得到一个灰度图像。瞳孔的周围将出现高值,其它地方则是低值。为了去除一些零散的噪音,可以对结果图像应用均值滤镜。均值滤镜可以使用3×3,或者5×5。也可以使用其它功能相似的滤镜。然后再使用下述方法将阈值n以下的像素清零,也可以使用简单的二值化清零。

最后对高值区域的像素的横纵坐标分别计算加权平均数,得到的结果就是瞳孔的圆心。

其中v是每个象素的亮度值,x,y分别是各个象素的横纵座标。

左右双眼识别时,需要预定义双眼出现的区域,然后分别单独计算。

在图像样本中寻找虹膜外边界的圆心时,与上述方法相同,使用第二神经网络寻找虹膜外边界的圆心。

以瞳孔圆心为中心截取一个矩形的图像,然后交给第三神经网络来确定瞳孔的半径。以虹膜外边界圆心为中心截取一个矩形的图像,然后交给第四神经网络来确定虹膜外边界的半径。

找到虹膜内外边界后,在虹膜图像上建立坐标系统,然后使用二维加博滤镜进行卷积,得到样本虹膜编码。在虹膜信息录入时,将样本虹膜编码加密保存到本地。

步骤S3、在登录认证时,通过红外摄像头拍摄登录虹膜图像,在登录虹膜图像上建立坐标系,然后使用二维加博滤镜进行卷积,得到登陆虹膜编码;

步骤S4、通过第五神经网络将登录虹膜编码与样本虹膜编码进行比较判断是否来源于同一个虹膜活体,如果是,则认证通过。

在登录认证阶段,使用第五神经网络来判定预先录入的样本虹膜编码与验证时采集的虹膜图像所得的登录虹膜编码是否来源于同一个虹膜活体。将两个虹膜编码按位进行异或运算,并将结果交给第五神经网络,得到判定结果。具体的,如图5所示,先计算登录虹膜编码与样本虹膜编码的海明距离:在海明距离小于阈值a时,直接判定为来源于同一个虹膜活体;在海明距离大于阈值b时,直接判定为来源于不同的虹膜活体;在海明距离处与a与b之间时,将登录虹膜编码与样本虹膜编码按位进行异或运算,运算结果作为第五神经网络的输入层节点,第五神经网络的输出为1时则判定为来源于同一个虹膜活体,通过认证。

本发明实施例方法设计出五个神经网络,其中第一至第四神经网络用以实现寻找瞳孔圆心和半径、虹膜外边界圆心和半径,第五神经网络用于实现虹膜特征比对和登录认证,经试验验证,通过本发明方法虹膜登录认证一次性通过率达到98%以上,优于现有虹膜识别技术。

另外作为优选实施方式,还可以为所述红外光源设置一个长间隔闪动的节能模式和一个短间隔闪动的高效模式,在寻找到虹膜图像时,进入高效模式,在长时间没有虹膜登录认证动作时,进入节能模式。具体控制流程如图6所示,首先开启虹膜识别的红外摄像头,打开红外光源,进入长间隔闪动的节能模式,然后采集人眼部虹膜图像通过神经网络方法寻找虹膜位置,若找到虹膜位置,则进入短间隔闪动高效模式,然后对虹膜图像进行处理完成登入或认证流程;若找不到虹膜位置,当距离上次找到虹膜时间超过阈值时,进入长间隔闪动节能模式,否则继续采集眼部虹膜图像。由于通用信息终端的电池能量有限,本方案可实现为通用信息终端提供智能管理。高效模式中的闪动时间间隔应当兼顾虹膜照明设备的温度耐受与使用寿命。使用多个红外光源时,可以调整闪动的相位以获得更好更连续的照明效果。

由于通用信息终端的电池能量有限,可在红外照明的设备前端放置一个透镜或透镜组(以凸透镜为主,包含菲涅尔透镜)以收敛光线提高光线利用率,红外光源与凸透镜的距离必须小于凸透镜的焦距以保证光线的安全性。收敛的光线发散角度应当小于45度。优选的,发散角度应当小于30度。红外摄像头可以使用20cm-40cm的定焦模组,或者使用同一范围的自动变焦模组。

虹膜拍摄的最佳位置是在红外摄像头的正前方并注视红外摄像头,红外光源的最佳位置应当尽量靠近红外摄像头。为了帮助用户寻找虹膜识别最佳位置,在通用信息终端的屏幕上显示用户的图像,这时用户的使用习惯会注视屏幕中的图像,而没有注视红外摄像头,因此应当将红外摄像头设计在屏幕的上方正中央或者下方正中央,尽量靠近显示的图像。如果无法将红外摄像头设计在屏幕上方或者下方正中央时,拍摄的图像将会偏左或者偏右,优选的,可以通过软件方式平移或者截取图像然后显示。也可以不用平移或者截取。使用一个红外光源照明时,应当尽量靠近红外摄像头。使用两个及以上的红外光源照明时,应当分布在红外摄像头的周围。为了避免红外光源直接干扰摄像头拍摄的图像,两者之间的距离应该保持在1mm以上。或者设计时增加隔光层保证红外光源不会透过摄像头前壁直接干扰图像。通用信息终端为智能手机是一种最常见的实现结构,图7-1至图7-6分别示出了示出了红外光源和红外摄像头的几种位置,图7-1至7-3中,红外光源和红外摄像头在屏幕上方,图7-4至7-6中,红外光源和红外摄像头在屏幕下方,图7-3和图7-6中,红外光源有两个,中间是红外摄像头。本实施例包括但不限于这六种位置关系。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1