一种识别异质虹膜的方法及计算设备
技术领域
本发明涉及图像处理技术领域,尤其涉及一种识别异质虹膜的方法及计算设备。
背景技术
随着人工智能的日益发展,生物特征识别的应用越来越广泛,生物特征是识别个体的重要特征,主要包括指纹、人脸、掌纹、虹膜和静脉等。虹膜识别由于其安全、快速、便捷受到各个应用领域的关注。虹膜是指位于人眼巩膜和瞳孔之间的环状组织,包含有丰富的纹理信息;同时,虹膜纹理受个体基因序列的影响很小,并且不会随着年龄的增长而发生明显改变。因而,虹膜识别技术是一项能够精确鉴别个体的生物特征识别技术,有着巨大的应用前景。
虹膜识别系统越来越多地被用于大规模应用场景,如国家级的身份证程序,虹膜识别系统将获得数以百万计的虹膜图像,以建立数十亿人之间的身份。然而,由于虹膜传感器的类型不同,或者同类型传感器部署在不同的光照环境下,虹膜识别的准确性大幅度下降,例如,同一个虹膜由于采集时的光照、传感器类型等不同,会被误判为不是来自同一只眼睛的虹膜。因此,提高异质虹膜识别的准确性的需求日益增加。
目前,商用的主流自动虹膜识别系统是Daugman博士在1993年实现的,Daugman在文献1(Daugman J.High confidence visual recognition of persons by a test ofstatistical in-dependence[J].IEEE Transactions on Pattern Analysis andMachine Intelligence.1993.)中提出使用Gabor滤波器获取虹膜特征,并使用虹膜区域Gabor特征的符号进行相位编码,最后在该系统中使用汉明距离作为相似度度量的方法计算虹膜特征之间的相似性。但是,异质虹膜带来的问题在该系统中仍是无法避免,同时,该系统没有考虑Gabor滤波器参数的优化,对不同的数据库需要遍历所有的Gabor滤波器参数,降低了系统的工作效率,另外,该系统选取整个虹膜作为识别对象,增加了计算复杂度。
公开号为CN103577813A的中国发明申请公开了如下步骤:通过构造异质虹膜的训练集,训练出同一眼睛注册虹膜和识别虹膜编码之间的映射关系以及注册虹膜编码邻域像素之间的相容关系;在识别过程中,将待识别虹膜编码与训练出的映射关系和相容关系相融合,再与注册虹膜进行比对。该方法在训练过程中使用的识别虹膜与实际场景中的待识别虹膜可能存在较大的差异性,训练出的映射关系和相容关系并不总是适用于处于变化状态的实际场景,这在一定程度上限制了该方法的应用范围。
综上所述,在异质虹膜识别需求日益增加的背景下,如何去除异质虹膜之间的差异性,来增强异质虹膜识别的准确性是一项亟待解决的问题。
发明内容
为此,本发明提供了一种识别异质虹膜的方法及计算设备,以力图解决或至少缓解上面存在的至少一个问题。
根据本发明的一个方面,提供了一种识别异质虹膜的方法,在计算设备中执行,该计算设备中存储有包含用户注册虹膜的虹膜图像,方法包括步骤:获取待识别虹膜的虹膜图像;利用预设字典对待识别虹膜的虹膜图像进行预处理,以得到处理后的虹膜图像;通过预设滤波器分别对处理后的虹膜图像和注册虹膜的虹膜图像进行编码处理,得到对应的第一编码和第二编码;计算第一编码和第二编码的距离;以及根据距离判断待识别虹膜与注册虹膜是否来自同一只眼睛。
可选地,在根据本发明的方法中,根据距离判断待识别虹膜与注册虹膜是否来自同一只眼睛的步骤包括:当距离大于阈值时,确认待识别虹膜与注册虹膜不是来自同一只眼睛;以及当距离不大于阈值时,确认待识别虹膜与注册虹膜来自同一只眼睛。
可选地,在根据本发明的方法中,利用预设字典对待识别虹膜的虹膜图像进行预处理、以得到处理后的虹膜图像的步骤包括:将待识别虹膜的虹膜图像进行分块处理,得到多个子图像块;计算各子图像块在预设字典上的稀疏系数;以及通过各子图像块的稀疏系数和预设字典计算出处理后的虹膜图像。
可选地,在根据本发明的方法中,计算各子图像块在预设字典上的稀疏系数的步骤包括:构建待识别虹膜的虹膜图像的优化模型;以及利用各子图像块和预设字典求解优化模型,得到稀疏系数。
可选地,在根据本发明的方法中,通过各子图像块的稀疏系数和预设字典计算出处理后的虹膜图像的步骤包括:分别计算各子图像块的稀疏系数和预设字典的乘积,作为各子图像块对应的处理后子图像块;对处理后子图像块进行加权平均计算,得到处理后的虹膜图像。
可选地,在根据本发明的方法中,还包括预先训练生成预设字典的步骤:对第一训练集中的虹膜图像进行分块处理,生成预定尺寸的图像块;采用K-SVD算法对所生成的图像块进行训练,生成关于虹膜的过完备字典,作为预设字典。
可选地,在根据本发明的方法中,还包括预先训练生成预设滤波器的步骤:构建多个预训练的滤波器;对来自第二训练集的虹膜图像进行预处理,得到多个样本;对多个样本进行两两分组,以得到多个样本对,其中各样本对具有样本对标签;利用各预训练的滤波器对各样本对进行编码处理,得到各编码值;计算样本对内两个编码值之间的距离,作为样本对的距离;以及利用各样本对的距离和样本对标签、通过线性规划算法训练得到滤波器参数,并选取至少一个最优滤波器作为预设滤波器。
可选地,在根据本发明的方法中,通过预设滤波器分别对处理后的虹膜图像和注册虹膜的虹膜图像进行编码处理、得到对应的第一编码和第二编码的步骤包括:通过至少一个预设滤波器分别对处理后的虹膜图像进行滤波、编码处理,得到处理后的虹膜图像的至少一个编码;对处理后的虹膜图像的至少一个编码进行拼接,作为第一编码;通过至少一个预设滤波器分别对注册虹膜的虹膜图像进行滤波、编码处理,得到注册虹膜的虹膜图像的至少一个编码;以及对注册虹膜的虹膜图像的至少一个编码进行拼接,作为第二编码。
可选地,在根据本发明的方法中,计算第一编码和第二编码的距离的步骤包括:计算第一编码和第二编码的汉明距离。
根据本发明的一个方面,提供一种计算设备,包括:至少一个处理器;和存储有程序指令的存储器,其中,程序指令被配置为适于由至少一个处理器执行,程序指令包括用于执行如上所述任一方法的指令。
根据本发明的一个方面,提供一种存储有程序指令的可读存储介质,当程序指令被计算设备读取并执行时,使得计算设备执行如上所述的任一方法。
根据本发明的识别异质虹膜的方案,首先根据已注册的清晰虹膜图像训练生成预设字典,结合稀疏表示原理,通过预设字典对待识别虹膜的虹膜图像去干扰,这样就降低了异质虹膜之间的差异性。然后用预设滤波器对注册虹膜和待识别虹膜的虹膜图像进行滤波、编码处理,计算各自编码的距离,并根据距离确定待识别虹膜和注册虹膜是否来自同一只眼睛,从而实现异质虹膜识别。本方案的鲁棒性更好,识别结果更准确。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。
图1示出了根据本发明一个实施例的计算设备100的示意图;
图2示出了根据本发明一个实施例的识别异质虹膜的方法200的流程图;
图3示出了根据本发明一个实施例的预设字典的部分示意图;以及
图4A-图4C示出了根据本发明一些实施例的滤波器示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了根据本发明一个实施例的计算设备100的示意图。
如图1所示,在基本的配置102中,计算设备100典型地包括系统存储器106和一个或者多个处理器104。存储器总线108可以用于在处理器104和系统存储器106之间的通信。
取决于期望的配置,处理器104可以是任何类型的处理,包括但不限于:微处理器(μP)、微控制器(μC)、数字信息处理器(DSP)或者它们的任何组合。处理器104可以包括诸如一级高速缓存110和二级高速缓存112之类的一个或者多个级别的高速缓存、处理器核心114和寄存器116。示例的处理器核心114可以包括运算逻辑单元(ALU)、浮点数单元(FPU)、数字信号处理核心(DSP核心)或者它们的任何组合。示例的存储器控制器118可以与处理器104一起使用,或者在一些实现中,存储器控制器118可以是处理器104的一个内部部分。
取决于期望的配置,系统存储器106可以是任意类型的存储器,包括但不限于:易失性存储器(诸如RAM)、非易失性存储器(诸如ROM、闪存等)或者它们的任何组合。系统存储器106可以包括操作系统120、一个或者多个应用122以及程序数据124。在一些实施方式中,应用122可以布置为在操作系统上由一个或多个处理器104利用程序数据124执行指令。
计算设备100还可以包括有助于从各种接口设备(例如,输出设备142、外设接口144和通信设备146)到基本配置102经由总线/接口控制器130的通信的接口总线140。示例的输出设备142包括图形处理单元148和音频处理单元150。它们可以被配置为有助于经由一个或者多个A/V端口152与诸如显示器或者扬声器之类的各种外部设备进行通信。示例外设接口144可以包括串行接口控制器154和并行接口控制器156,它们可以被配置为有助于经由一个或者多个I/O端口158和诸如输入设备(例如,键盘、鼠标、笔、语音输入设备、触摸输入设备)或者其他外设(例如打印机、扫描仪等)之类的外部设备进行通信。示例的通信设备146可以包括网络控制器160,其可以被布置为便于经由一个或者多个通信端口164与一个或者多个其他计算设备162通过网络通信链路的通信。
网络通信链路可以是通信介质的一个示例。通信介质通常可以体现为在诸如载波或者其他传输机制之类的调制数据信号中的计算机可读指令、数据结构、程序模块,并且可以包括任何信息递送介质。“调制数据信号”可以是这样的信号,它的数据集中的一个或者多个或者它的改变可以在信号中编码信息的方式进行。作为非限制性的示例,通信介质可以包括诸如有线网络或者专线网络之类的有线介质,以及诸如声音、射频(RF)、微波、红外(IR)或者其它无线介质在内的各种无线介质。这里使用的术语计算机可读介质可以包括存储介质和通信介质二者。
在根据本发明的计算设备100中,应用122包括执行识别异质虹膜的方法200的多条程序指令,程序数据124存储有用户注册虹膜的虹膜图像,形成注册虹膜集合。应当指出,用户注册虹膜的虹膜图像也可以集中存储在外部的计算设备(如服务器)上,计算设备100通过通信设备146从外部计算设备上获取用户注册虹膜的虹膜图像。本发明的实施例对此不做限制。
根据本发明的实施例,计算设备100可以实现为包括桌面计算机和笔记本计算机配置的个人计算机。当然,计算设备100也可以实现为小尺寸便携(或者移动)电子设备的一部分,这些电子设备可以是诸如蜂窝电话、数码照相机、个人数字助理(PDA)、个人媒体播放器设备、无线网络浏览设备、个人头戴设备、应用专用设备、或者可以包括上面任何功能的混合设备。
图2示出了根据本发明一个实施例的识别异质虹膜的方法200的流程图,方法200适于在计算设备(例如前述计算设备100)中执行。如图2所示,方法200始于步骤S210。
在步骤S210中,获取待识别虹膜的虹膜图像。
根据本发明的实施方式,通过专用的虹膜采集设备采集待识别虹膜的虹膜图像,并通过通信设备146传送给计算设备100来进行后续处理。当然,专用的虹膜采集设备亦可以直接布置在计算设备100之上,本发明的实施方式对此不做限制。
随后在步骤S220中,利用预设字典对待识别虹膜的虹膜图像进行预处理,以得到处理后的虹膜图像。
根据本发明的实施方式,在执行步骤S220之前,还需要预先训练生成预设字典。预设字典中存储了清晰的虹膜纹理信息,在根据本发明的实施例中,预设字典是一种过完备字典(或称之为“矩阵”),使得一个信号向量可以表示成字典中原子(矩阵的列向量)的稀疏线性组合。
以下示出了一种根据本发明一个实施例的训练生成预设字典的方法。
首先,从注册虹膜集合中抽取部分虹膜图像作为第一训练集,根据一种实施方式,注册虹膜集合中的虹膜图像均是清晰的虹膜图像。对第一训练集中的虹膜图像进行分块处理,生成预定尺寸的图像块。对图像的分块处理属于图像处理技术领域的常规做法,故此处不再做展开描述。在一种优选的实施方式中,预定尺寸为8*8,即,通过分块处理将各虹膜图像分成若干个8*8大小的图像块。其次,采用K-SVD算法对所生成的图像块进行训练,生成关于虹膜的过完备字典,作为预设字典。在一种优选的实施方式中,将8*8的图像块转换成64*1的向量后,再进行训练。应当指出,K-SVD是一种经典的字典训练算法。其基于误差最小原则,对误差项进行奇异值(SVD,Singular Value Decomposition)分解,选择使误差最小的分解项作为更新的字典原子和对应的原子系数,经过不断地迭代从而得到优化的解。关于K-SVD算法的具体内容此处不再展开赘述。根据上述方法生成的关于虹膜纹理信息的预设字典表示为该预设字典中包含1024个原子,每个原子的大小为64*1。如图3示出了根据本发明一个实施例生成的预设字典的部分示意图,其中每个小方块代表预设字典中的一个原子。
需要说明的是,本发明的实施方式对于训练生成预设字典的方法不做过多限制。本领域技术人员可以采用任意一种方法来生成关于虹膜纹理的过完备字典,以作为预设字典。
在生成预设字典后,利用预设字典对待识别虹膜的虹膜图像进行预处理、以得到处理后的虹膜图像的步骤包括如下三步。
第一步,将待识别虹膜的虹膜图像进行分块处理,得到多个子图像块。根据一种实施例,将待识别虹膜的虹膜图像记作Ytest,在Ytest中进行逐像素点扫描,得到每个像素点所在的子图像块(上标sub表示子图像块的序号),也就是说,在待识别虹膜的虹膜图像中,有多少个像素点就生成多少个相应的子图像块。此时子图像块的大小与训练生成预设字典时所生成的图像块的预设尺寸保持一致,在一些实施例中,子图像块的尺寸为8*8。
第二步,计算各子图像块在预设字典上的稀疏系数。根据一种实施例,采用稀疏分解的方法计算出各子图像块在预设字典D上的稀疏表示系数Xsub。具体的做法是:
1)构建待识别虹膜的虹膜图像的优化模型。根据本发明的一个实施例,优化模型要求预设字典与稀疏系数的乘积与各子图像块之间的误差尽量小,且稀疏系数的分布尽量稀疏,其可以表示为如式(1),即求出所有使得取得最小值的自变量X的集合:
式(1)中,表示待识别虹膜的各子图像块(上标sub表示子图像块的序号),Xsub表示对应的稀疏系数,λ为惩罚因子,表示在迭代计算过程中,残差项与1范数项||Xsub||1之间的惩罚因子,D表示预设字典,||·||1为1-范数,||·||2为2-范数。
2)利用各子图像块和预设字典求解优化模型,得到稀疏系数。根据一种实施例,采用正交匹配追踪(OMP,Orthogonal Matching Pursuit)算法求解上述优化模型,经多次迭代运算后,求得稀疏系数X∈[X1,X2,...,XM],M表示待识别虹膜的虹膜图像中像素点的总数。应当指出,本领域技术人员也可以选用其它方法来求解优化模型,例如,匹配追踪方法,本发明的实施例对此不做过多限制。鉴于OMP算法能保证在每次迭代后残差向量与以前选择的所有列向量(即,所选择的预设字典中的原子)正交,以减少迭代次数(即,加速收敛速度),故在本发明的一个实施例中选用OMP算法来求解优化模型。
第三步,通过各子图像块的稀疏系数Xsub和预设字典D计算出处理后的虹膜图像。根据一种实施例,先分别计算出各子图像块的稀疏系数Xsub和预设字典D的乘积,作为各子图像块对应的处理后子图像块其中,处理后图像块可以用公式(2)表示为:
其中,表示各子图像块对应的处理后图像块,D表示预设字典,Xsub表示各子图像块在预设字典上的稀疏系数。
而后,由第一步的分块处理可得,各子图像块之间有重复,所以各处理后图像块之间也必然会存在重复,故在根据本发明的实施例中,对各处理后子图像块进行加权平均计算,得到处理后的虹膜图像,其中,处理后的虹膜图像可以用公式(3)表示:
其中,表示处理后的虹膜图像,表示各子图像块对应的处理后图像块,Wsub表示各处理后图像块对应的权重,M表示处理后图像块的总数,sub表示各处理后图像块的序号,sub的取值范围是从1到M。
在根据本发明的一些实施例中,为了降低计算的复杂度,权重Wsub均取值为1,即将各处理后图像块相加就得到了处理后的虹膜图像。
在根据本发明的另一些实施例中,采用与上述第二步相同的方法计算出各子图像块对应的权重Wsub,然后再加权求平均,得到处理后的虹膜图像。
根据本发明的实施方式,利用清晰的注册虹膜图像训练生成预设字典,通过训练好的预设字典来对待识别虹膜的虹膜图像进行处理,能够有效去除待识别虹膜的虹膜图像中的干扰信息,也降低了异质虹膜间的差异性,提高后续异质虹膜识别的准确性。
随后在步骤S230中,通过预设滤波器分别对处理后的虹膜图像和注册虹膜的虹膜图像进行编码处理,得到对应的第一编码和第二编码。
根据本发明的实施方式,方法200还包括预先训练生成预设滤波器的步骤。以下示出根据本发明一个实施例的生成预设滤波器的过程。
1)构建多个预训练的滤波器,组成一个滤波器集合,记作f∈{f1,f2,...,fN}。根据一种实施例,构建的预训练的滤波器用于提取虹膜图像中非近邻区域之间的排序测度(OM,Ordinal Measures)特征。例如可以用“多极子滤波器”(Dissociated Multi-Pole,DMP),其定义如式(4):
式(4)中,fi(x+xi,y+yi)采用低通滤波器(如高斯滤波器、盒状滤波器等),每一个称为一个“极”,(xi,yi)表示这个低通滤波器的空间位置,f(x,y)的系数和为0,以确保OM完全随机。
和偶极子滤波器不同的是,多极子滤波器可能由更多的峰组成,每个峰的形状可能不同,且每个峰之间的相互位置可以根据识别的需求而定。
根据本发明的实施例,预训练的滤波器可以是两峰滤波器、三峰滤波器、四峰滤波器等等(可以是正峰,也可以是负峰),本发明的实施例对此不做过多限制。如图4A-图4C示出了根据本发明一些实施例的滤波器示意图,其中,图4A示出的是两峰滤波器,图4B示出的是三峰滤波器,图4C示出的是四峰滤波器。
2)从注册虹膜集合中抽取部分虹膜图像作为第二训练集,对第二训练集的虹膜图像进行预处理,得到多个样本。根据一种实施例,由于睫毛等对图像中的虹膜有一定的遮挡干扰,因此本步骤中的预处理操作实际上就是去除虹膜图像中的干扰。例如,将虹膜图像中有遮挡的部分用掩膜(MASK)标出,并从虹膜图像中分割出没有MASK的部分,作为样本。
3)对预处理后得到的样本进行两两分组,得到多个样本对。根据一种实施例,将样本两两分为一组,作为一个样本对,并且为每个样本对分配一个样本对标签。样本对标签用来标识这个样本对中的两个样本所代表的虹膜图像是否来自同一只眼睛,例如样本对标签表示为{Yy,y∈{+1,-1}},其中,y=+1表示两个样本的虹膜图像来自同一只眼睛;y=-1表示两个样本的虹膜图像来自不同的眼睛。应当指出,可以预先在第二训练集中标注每个虹膜图像的来源(如,眼睛编号***),以便于此时生成样本对标签,但本发明的实施例不限于此。
4)利用各预训练的滤波器对各样本对进行编码处理,得到各编码值。根据一种实施例,针对f∈{f1,f2,...,fN}中的每个滤波器fj,利用fj对各样本对内的两个样本(即,两个虹膜图像)进行滤波、并对滤波后的系数进行过零编码处理,得到在该滤波器下,各样本对内两个样本各自对应的编码值。
根据一种实施例,过零编码处理即,当滤波后的系数值大于0时,将其编码为1,当滤波后的系数值小于或者等于0时,将其编码为0。如表1示出了对一幅图像进行滤波处理后的系数值:
表1滤波后的系数值
-2.27472 |
4.145273 |
-4.4808 |
4.315352 |
-11.4042 |
8.974331 |
-5.55588 |
2.533436 |
3.648534 |
-2.90424 |
1.107536 |
1.360042 |
-0.0693 |
3.512915 |
-5.46588 |
5.819712 |
-4.96554 |
8.021049 |
-9.32237 |
8.869264 |
对表1中的系数进行过零编码,得到的编码结果如表2:
表2过零编码结果
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
5)计算样本对内两个编码值之间的距离,作为该样本对的距离。
在根据本发明的一个实施例中,编码值之间的距离通过计算汉明距离来表示,但不受限于此。
6)利用各样本对中样本对的距离和样本对标签,并通过线性规划算法训练得到滤波器参数。在根据本发明的一个实施例中,求解滤波器参数时的约束条件设为:滤波器中正峰的系数等于负峰的系数。通过线性规划算法计算滤波器参数的过程属于本领域技术人员已知内容,篇幅所限,此处不再展开赘述。应当指出,上述步骤4)、5)、6)是对滤波器集合中的每个滤波器分别进行处理的,以得到各滤波器的滤波器参数。
最后,从滤波器集合中选取至少一个最优滤波器作为预设滤波器。在根据本发明的一个实施例中,最终选取了4个最优滤波器作为预设滤波器。
应当指出,根据本发明的实施例在生成预设滤波器时,是对整个虹膜图像进行滤波处理,相比于将虹膜图像先分块再滤波的处理方式,本方案能更好地保留虹膜的完整性。当然,此处仅是作为示例,给出了一种根据本发明一个实施例的生成预设滤波器的过程,但本发明的实施例不受限于此。
根据本发明的实施方式,预设滤波器用于提取虹膜图像中非近邻区域之间的OM特征,相比于主流的使用水平方向、中等尺度、单峰形状的滤波器来提取图像近邻OM特征的方案,提取非近邻的OM特征具有更好地分类能力和鲁棒性。即便是对于图像质量较差、纹理较弱的一些虹膜图像,采用本发明的预设滤波器提取的特征依然具有很高的识别准确率。
在生成预设滤波器后,通过预设滤波器分别对处理后的虹膜图像和注册虹膜的虹膜图像进行编码处理、得到对应的第一编码和第二编码的过程可以概括如下:
一方面,通过至少一个预设滤波器分别对处理后的虹膜图像进行滤波、编码处理,得到处理后的虹膜图像的至少一个编码。再对处理后的虹膜图像的至少一个编码进行拼接,作为第一编码。在根据本发明的实施例中,对处理后的虹膜图像的编码处理还是采用过零编码的方式,具体可参考前文,此处不再赘述。
以预设滤波器包含4个滤波器(分别记作f1',f2',f3',f4')为例,利用这4个滤波器分别对处理后的虹膜图像进行滤波、编码处理,得到关于该图像的4个编码,假设4个编码为:1110,1101,1100,0001,那么该处理后的虹膜图像对应的第一编码就是:1110110111000001。
另一方面,对注册虹膜的虹膜图像亦执行同样的处理步骤,得到第二编码。即,先通过至少一个预设滤波器分别对注册虹膜的虹膜图像进行滤波、编码处理,得到注册虹膜的虹膜图像的至少一个编码;再对注册虹膜的虹膜图像的至少一个编码进行拼接,作为第二编码。
随后在步骤S240中,计算第一编码和第二编码的距离。根据一种实施例,计算第一编码和第二编码之间的汉明距离,计算汉明距离属于本领域技术人员已知内容,此处不再展开赘述。
随后在步骤S250中,根据计算出的距离来判断待识别虹膜与注册虹膜是否来自同一只眼睛。
根据一种实施例,当距离大于阈值时,确认待识别虹膜与注册虹膜不是来自同一只眼睛;当距离不大于阈值时,确认待识别虹膜与注册虹膜来自同一只眼睛。在根据本发明的一些实施例中,阈值的取值区间设为[0.32,0.36]。
根据本发明的识别异质虹膜的方案,首先根据已注册的清晰虹膜图像训练生成预设字典,结合稀疏表示原理,通过预设字典对待识别虹膜的虹膜图像去干扰,这样就降低了异质虹膜之间的差异性。然后训练OM滤波器参数,并用训练的OM滤波器对注册虹膜和待识别虹膜的虹膜图像进行滤波、编码处理,计算各自编码的距离,并根据距离确定待识别虹膜和注册虹膜是否来自同一只眼睛,从而实现异质虹膜识别。本方案的鲁棒性更好,识别结果更准确。
这里描述的各种技术可结合硬件或软件,或者它们的组合一起实现。从而,本发明的方法和设备,或者本发明的方法和设备的某些方面或部分可采取嵌入有形媒介,例如可移动硬盘、U盘、软盘、CD-ROM或者其它任意机器可读的存储介质中的程序代码(即指令)的形式,其中当程序被载入诸如计算机之类的机器,并被所述机器执行时,所述机器变成实践本发明的设备。
在程序代码在可编程计算机上执行的情况下,计算设备一般包括处理器、处理器可读的存储介质(包括易失性和非易失性存储器和/或存储元件),至少一个输入装置,和至少一个输出装置。其中,存储器被配置用于存储程序代码;处理器被配置用于根据该存储器中存储的所述程序代码中的指令,执行本发明的方法。
以示例而非限制的方式,可读介质包括可读存储介质和通信介质。可读存储介质存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息。通信介质一般以诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,并且包括任何信息传递介质。以上的任一种的组合也包括在可读介质的范围之内。
在此处所提供的说明书中,算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与本发明的示例一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员应当理解在本文所公开的示例中的设备的模块或单元或组件可以布置在如该实施例中所描述的设备中,或者可替换地可以定位在与该示例中的设备不同的一个或多个设备中。前述示例中的模块可以组合为一个模块或者此外可以分成多个子模块。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
本发明一并公开了:
A9、如A8所述的方法,其中,所述通过预设滤波器分别对处理后的虹膜图像和注册虹膜的虹膜图像进行编码处理、得到对应的第一编码和第二编码的步骤包括:通过至少一个预设滤波器分别对处理后的虹膜图像进行滤波、编码处理,得到处理后的虹膜图像的至少一个编码;对处理后的虹膜图像的至少一个编码进行拼接,作为第一编码;通过至少一个预设滤波器分别对注册虹膜的虹膜图像进行滤波、编码处理,得到注册虹膜的虹膜图像的至少一个编码;以及对注册虹膜的虹膜图像的至少一个编码进行拼接,作为第二编码。
A10、如A1-9中任一项所述的方法,其中,所述计算第一编码和第二编码的距离的步骤包括:计算第一编码和第二编码的汉明距离。
A11、如A1-10中任一项所述的方法,其中,所述编码处理为过零编码处理。
A12、如A7所述的方法,其中,所述预定尺寸的大小为8×8。
A13、如A2所述的方法,其中,所述阈值的取值区间为[0.32,0.36]。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
此外,所述实施例中的一些在此被描述成可以由计算机系统的处理器或者由执行所述功能的其它装置实施的方法或方法元素的组合。因此,具有用于实施所述方法或方法元素的必要指令的处理器形成用于实施该方法或方法元素的装置。此外,装置实施例的在此所述的元素是如下装置的例子:该装置用于实施由为了实施该发明的目的的元素所执行的功能。
如在此所使用的那样,除非另行规定,使用序数词“第一”、“第二”、“第三”等等来描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必须具有时间上、空间上、排序方面或者以任意其它方式的给定顺序。
尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的而非限制性的,本发明的范围由所附权利要求书限定。