法律状态公告日
法律状态信息
法律状态
2019-06-14
专利权人的姓名或者名称、地址的变更 IPC(主分类):G06K9/00 变更前: 变更后: 申请日:20090330
专利权人的姓名或者名称、地址的变更
2016-08-31
专利权人的姓名或者名称、地址的变更 IPC(主分类):G06K9/00 变更前: 变更后: 申请日:20090330
专利权人的姓名或者名称、地址的变更
2015-11-18
著录事项变更 IPC(主分类):G06K9/00 变更前: 变更后: 申请日:20090330
著录事项变更
2015-11-18
专利权的转移 IPC(主分类):G06K9/00 登记生效日:20151030 变更前: 变更后: 申请日:20090330
专利申请权、专利权的转移
2015-11-11
专利权人的姓名或者名称、地址的变更 IPC(主分类):G06K9/00 变更前: 变更后: 申请日:20090330
专利权人的姓名或者名称、地址的变更
2012-04-18
授权
授权
2010-01-27
实质审查的生效
实质审查的生效
2009-12-02
公开
公开
查看全部
技术领域
本发明属于人体生物认证技术领域,涉及生物特征的提取,具体涉及手指静脉图像静脉特征的提取方法。
背景技术
在现代社会中,随着计算机及网络技术的高速发展,信息安全显示出前所未有的重要性。身份鉴定是保证系统安全的必要前提,在金融、国家安全、司法、电子商务、电子政务等应用领域,都需要准确的身份鉴定。如某人是否有权进入安全区域(安全系统),是否有权进行特定交易,是否是本国居民,为了安全在公司计算机网络和因特网上单独设置口令或密钥进行保护等。当前,用于个人身份鉴别主要依靠ID卡(如身份证、工作证、智能卡、计算机标志卡和储蓄卡等)和密码等手段,然而这些手段存在携带不便、容易遗失,或者由于使用过多或不当而损坏、不可读和密码易被破解等诸多问题。因此,目前广泛使用的依靠证件、个人识别号码(Personal identification number,PIN)、口令等传统方法来确认个人身份的技术面临着严峻的挑战,并显得越来越不适应现代科技发展和社会进步的需要。
人们希望有一种更加方便可靠的办法来进行身份鉴定。生物特征识别技术给这一切带来可能。人们可能会遗忘或丢失他们的卡片或忘记密码,但是人们却不可能遗忘或者丢失自己的生物特征如人脸、指纹、虹膜、掌纹、静脉等。在众多识别方案中,指纹识别是目前最方便、可靠、非侵害和技术上相对成熟的生物识别技术。然而指纹识别还有其自身的不足:某些人或群体指纹特征很少,达不到建档要求;部分使用者由于指纹磨损而无法使用指纹认证;每次使用指纹时会在指纹采集器上留下用户的指纹印痕,这些指纹痕迹存在被复制利用的可能。基于手指静脉的身份认证有其独特的优势,有效地解决了传统的生物特征识别技术所面临的诸多难题,主要表现在:速度高、精度高、安全等级高、活体识别、内部特征、非接触式。
可见,众多的生物特征中手指静脉是较为理想的一种用于身份认证的生物特征。同时,基于手指静脉识别技术的个人身份识别系统是具有高精度、高速度的世界上最尖端的认证技术。在各种生物认证技术中,因其是利用外部看不到的生物内部特征进行认证的技术,所以作为具有高防伪性的第二代生物认证技术备受关注。
手指静脉识别的基础和关键是手指静脉图像特征提取,静脉特征能否准确提取直接关系到整个系统的识别精度。然而,目前现有的手指静脉特征提取方法较少,且对一些低质量的静脉图像特征提取不够准确。
发明内容
本发明的目的在于针对现有技术存在的不足,提出一种手指静脉认证系统的静脉图像中静脉的特征提取方法,属于手指静脉认证系统的核心模块,旨在能够准确地提取图像中感兴趣的静脉特征,减少提取错误特征和漏掉真实特征,同时可以提高整个系统的识别精度和提高图像处理速度。
首先对本申请中出线的技术术语说明、解释如下:
区域生长含义:先在图像中随机选择一个像素点作为生长种子点,并把该点作为当前点。然后在当前点8邻域中寻找下一点,寻找到的依据是该点是否位于谷行区域内,如是,则把它与当前点连接起来,并把该点作为当前点,重复该过程,完成对区域进行生长。否则,停止生长。
生长点:在进行区域生长过程中,被连接起来的点。
生长方向:在当前生长点的8邻域中寻找下一点时,从该点到下一点的移动方向。
像素点:图像矩阵中每一个元素。
某像素点位于谷行的深度:该像素点灰度值到谷面上素点灰度值之差的绝对值。
本发明具体采取以下技术方案:
一种手指静脉认证系统的静脉特征提取方法,其特征在于,该方法包括以下步骤:
(1)确定静脉像素点的当前生长点及其方向
在手指静脉图像中随机选择一个像素点作种子点并当作当前生长点,为了确定当前像素点的移动方向,在以该种子点为中心的3×3窗口内,把静脉的走向分为4个方向,然后对种子点按照所述四个方向分别进行区域生长;
(2)确定手指静脉图像不同的生长方向
设该种子点的生长方向为所述四个方向中的某一方向,然后确定该方向上的其它相邻的像素点是否是位于静脉上的点,如果是,则记录下位置,否则,退出在该方向生长,再执行对其他三个方向的生长;
(3)确定各个方向生长点
确定候选点:当在上述第(2)步中确定某一方向后,就可以确定下一生长点,即将和当前点在某一方向上相邻的两个点作为下一步生长的候选点;
确定候选点中是静脉的像素点:如果确定所述候选点为静脉上的像素点,则把该候选点作为当前生长点,继续沿该方向生长下去,否则,在种子点的其他方向进行生长;
(4)记录生长次数
如果上述候选点位于静脉上,则经过一次生长,用一个轨迹矩阵记录每个生长点的生长次数,否则退出该方向的生长,然后在种子点的另外三个方向进行生长,并记录生长次数;
(5)重复生长
当在第(1)步到第(3)步中完成了对一个种子点不同方向的生长并记录经过生长的点的次数后,完成了一次生长,然后在图像中随机的选择其它不同位置的作为种子点开始生长,使生长操作均匀的在整幅图像中执行;
(6)确定手指静脉图像中的静脉模式
经过设定次数的重复生长,每个像素点生长次数都被记录在大小与图像的大小相同轨迹矩阵的相应的位置中,在生长过程中,像素点经过生长的次数越多对应轨迹矩阵中相应位置上的值也就越大,该像素点就越有可能是静脉中的点;设定一个阈值,轨迹矩阵中大于该设定阈值的元素为静脉模式,最终得到静脉特征。其中所述设定次数为2500,所述设定的阈值L=3。
对于一幅二维的手指静脉图像,静脉特征就是在图像中处于谷形的区域,将确定候选点是否位于静脉上的问题转化为确定该点是否处于所述手指静脉图像谷形中,根据当前像素点当前方向确定静脉的横截面,并利用检测算子与该截面内的像素点做卷积,记录下卷积结果作为该点的位于谷形的权重,设定一个第一阈值,当该点的权重大于该第一阈值,则认为该点处于谷形区域、即位于静脉上,当该点的权重小于等于该第一阈值,则认为该点处于非谷形区域,即不位于静脉上;
其中所述检测算子为:
Gau(x)=[-0.7849-1.6333-2.4765-3.1070-3.3416-3.1070-2.4765-1.6333-0.7849]然后把直流分量规格化为0得:
即Fgray′=[1.36460.5161-0.3270-0.9575-1.1922-0.9575-0.32700.51611.3646]
利用上述检测算子Fgray′与所述截面中的像素点Q(x,y)的卷积如下:
Gray(mi,ni)=Q(x,y)*Fgray′
所述第一阈值T1设定为:T1为大于零的一个数。为了减少噪声,将所述第一阈值T1进一步优选为T1=5。
对于在静脉图像单边缘上的点,通过上述卷积计算会得到较大的值,如果使用上述第一阈值来判断,有可能被认为是谷形区域中的点,影响静脉提取,为了消除这种干扰,利用以下方法来进行区分。
首先,将所述检测算子Fgray′拆成两个算子Fgray′1(i)(i=-4,-3,-2,-1)与Fgray′2(i)(i=1,2,3,4),然后分别将所述两个算子与截面中像素点(mi,ni)两边的像素点做卷积得到两个卷积结果Gray1(mi,ni)和Gray2(mi,ni),它们之差为
Gray′(mi,ni)=|Gray1(mi,ni)-Gray2(mi,ni)|
设定第二阈值T2,其中T2=40,如果Gray′(mi,ni)<=T1且Gray(mi,ni)>T2,则像素点(mi,ni)处于谷形区域,否则处于非谷形区域。
本发明可以准确的提取手指静脉的特征,特别对于一些低质量手指静脉图像的特征提取非常有效。同时可以提高整个系统的识别精度和提高图像处理速度。
附图说明
图1为每个点的生长方向示意图,其中(a)表示每个像素点与其周围8个相邻像素点,(b)把中心点与其相邻8个像素点走向分4个方向,(c)4个方向示意图;
图2为与静脉图像对应的矩阵表示;
图3为轨迹矩阵T初始化为0的示意图;
图4为每个像素点与其周围相邻像素点的关系示意图,一个像素点f(x,y)的8邻域,以单个像素为一个单位,它又表示一个3×3窗口;
图5为指静脉横截面的灰度分布示意图,其中(a)为截面部分的灰度坐标图,(b)为横截面在指静脉图像中的位置示意图;
图6为当前生长点方向及对应的指静脉横截面示意图;
图7为静脉图像的单边缘过渡带的灰度分布图;
图8为本发明提取方法的流程示意图。
具体实施方式
下面根据说明书附图,详细地介绍本发明的手指静脉身份识别系统的静脉特征提取方法的实现过程。
图1(a)表示每个像素点与其周围8个相邻像素点,(b)是从中心点对其相邻8个像素点进行生长的方向示意图,当中心点位当前生长时,当前像素点可以生长点就是在与它相邻的周围8个像素点之中,然后把生长的方向分成了4个方向,(c)4个方向具体示意图。
在图2中F(m,n)表示图像中(m,n)位置像素点的灰度值,设(mc,nc)表示生长过程中当前生长点的位置,F表示手指静脉图像,设图像左下角上位置上的像素点为坐标原点(0,0),x轴的正方向向右,Y轴的正方向向上。
图3中,T表示轨迹矩阵,其每个元素的初值为0,大小与静脉图像F的大小相同为M×N,它是用来记录在静脉图像中对应位置点被重复生长的次数。
在图4中表示一个像素点f(x,y)的8领域,它又表示一个3×3窗口(以单个像素为一个单位)。
在图5中,图(b)表示一幅手指静脉图像,在图中箭头所指的是一个与静脉垂直横截面与静脉相截得到虚线部分,它是从像素点t到t+h,长度为h(像素点个数)的像素点组成的集合。在横坐标为像素点,纵坐标为像素点灰度值的坐标中,把它画成一条曲线,便得到它中间部分像素点的灰度值较低,两边灰度值较大,如图(a)所示谷行区域,其每个像素的深度d是该像素点的灰度值与谷形上端的灰度值的距离(本文用检测算子做卷积近似的计算得到)。
在图6中,由当前生长点沿着生长方向对下一点p进行生长,生长方向与水平方向的夹角θi,在本文中方向只化分为四个方向(0°,45°,90°,135°),且当前点到下一点的移动步长为一个像素。在对下一点进行过程中,该点所位于的横截面与生长方向垂直,其横截面轮廓如右图所示,从s到t的像素点个数就是窗口的大小(本文窗口的大小取W=9),下一点p位于其横截面的谷行中。
图7表示图像中单边缘形状,它是非对称的。其主要位于图像的边缘地带。
图8是手指静脉图像特征提取的流程图,首先对静脉图像进行预处理(包括对静脉图像进行归一化和滤波),然后在经脉图像中随机的选取一个种子点,在某一方向上对种子点进行生长,当在这个方向上没有满足生长条件(是否位于谷行区域中)的点时,停止该方向的生长,继续对该种子点执行其他几个方向的生长。当该种子点4个方向都进行生长完之后,停止对该种子点的生长,继续执行随机选取的下一个种子点进行生长。在生长过程中每个点被生长次数被记录在轨迹矩阵T中。当对所有种子完成生长之后,最后从轨迹矩阵中分割出静脉特征,进行图像的后处理。
本发明的手指静脉身份识别系统的静脉特征提取方法的具体步骤如下:
(1)对手指静脉图像预处理;
(2)确定生长的种子点;
(3)确定生长的种子点的移动方向;
(4)探测谷形区域的点并移动生长点;
(5)重复执行Step2到Step3;
(6)重复执行Step1-Step3(N次);
(7)得到指静脉的特征;
(8)图像后处理。
每个步骤的细节具体介绍如下:
确定生长的种子点:
我们用(m0,n0)来标记进行生长的起始点位置,它是在静脉图像F中的随机选取的一个点。那么,当前生长点(mc,nc)的初始值为(m0,n0)。
确定生长的种子点的移动方向:
在确定区域生长的起始点的位置之后,把起始点作为当前生长点,并进一步确定其生长的方向。其具体方法如下:
a、水平方向上像素的移动
b、45°方向上像素的移动
c、竖直方向上像素的移动
d、135°方向上像素的移动
对四个方向按a,b,c,d顺序进行选择(1表移动单位是一个像素点,加1减1表示再同方向的)。
在选定方向上(如a水平方向)探测谷行区域的点并移动生长点:
①对大小为M×N的轨迹矩阵T进行初始化,对轨迹矩阵T进行初始化,即让其每个元素为0;
②探测当前生长方向(如a水平方向)上可进行生长的点的集合S:
各方向上当前像素点能够进行生长点的集合(如图1(a)):
③确定截面的方向及下一步可进行生长的点是否位于截面的谷形区域:
当前生长点(mc,nc)的移动方向确定后,如水平方向。我们需要确定截面的方向来计算谷形区域的深度。由于截面的方向与生长方向垂直,那么截面方向为竖直方向。设窗口大小为W,那么在截面中以S(i,j)为窗口中心像素点的集合:
根据静脉图像中静脉的宽度设窗口大小W=2×w+1=9。
然后进一步计算谷行深度:由于静脉的截面形状为谷形如图5(a)所示,所以我们利用高斯函数来生成检测算子。具体步骤如下:
1)首先选择高斯函数
其中试验中取均值x0=0,方差σ=3
2)对高斯函数进行反转得到
取窗口的宽度W=9,取x=-4,-3,-2,L,2,3,4,得到向量Gau′(x)(x=-4,-3,-2,L,2,3,4)。然后把该算子的直流分量规格化为0。即
利用该算子与Q(x,y)做卷积得到Gray(mi,ni)。然后选择一个阈值T1,其中大于该阈值的点处于谷形区域,小于等于零的值处于非谷形区域。
3)在第2)步卷积运算的过程中,一些在单边缘上的点(如图7所示得到较大的值,如用阈值来判断,有可能被认为是谷行区域中的点,影响静脉提取。为了消除这种干扰,我们利用他们之间的特征来进行区分。首先,我们把在第2)步得到的算子Fgray′和Q(x,y)分别各拆成两个算子Fgray′1(i)(i=-4,-3,-2,-1)与Fgray′2(i)(i=1,2,3,4)和Q1(x,y)与Q2(x,y),然后分别将他们与截面中像素点(mi,ni)两边的像素点做卷积得到两个卷积结果Gray1(mi,ni)和Gray2(mi,ni)。它们之差为:
Gray′(mi,ni)=|Gray1(mi,ni)-Gray2(mi,ni)|(10)
因为谷形是基本对称的,那么如果该点是位于谷行中,则Gray′(mi,ni)较小。如果是位于单边缘上的点,则Gray′(mi,ni)较大。然后选择一个阈值T2,如果Gray′(mi,ni)<T1且Gray(mi,ni)>T2,则点(mi,ni)处于谷形区域,否则处于非谷形区域。
④更新轨迹矩阵表T并移动当前生长点:
如果点(mi,ni)处于谷形区域,则将点(mi,ni)设置当前生长点,并将点(mi,ni)添加到轨迹矩阵表T中,并更新轨迹矩阵中相应位置上的点被生长的次数。然后重复上面的过程,即执行⑤,否则,退出(4)执行(5),即跳转到另一个方向上执行。
⑤重复执行②到④。
如果点(mi,ni)处于谷形区域中,则跳转执行②到④。
重复执行(3)到(4)。
跳转到(3)执行,当重复执行(3)到(4)四次后,即沿该各种子点的四个方向进行生长过程中再也没有位于谷形区域的点,这时退出(5)执行(6),即对该种子点四个方向生长完成,然后从先对其他种子点进行生长;
重复执行(2)-(4)(N次)。
当退出(5)后,跳转执行(2)后,重复(2)到(4)执行N次,即图像中有N个像素点被作为种子点。如果N值过小的话,指静脉的特征将提取的不充分。相反,如果过大的话计算量又会很大。通过实验我们取N=2500时能得到较好的提取效果。
得到指静脉的特征
经过执行上面的各个步骤之后,每个像素点被跟踪到的总次数被记录在矩阵的相应位置中,如果,在生长过程中,像素点经过生长的次数越多对应轨迹矩阵中相应位置上的值也就越大。即轨迹矩阵中元素的值越大,其在图像中所对应位置的像素点就越有可能是静脉中的点。这样我们通过选取一个阈值(生长次数L=3)来分割出手指静脉特征。
图像后处理
对上面算法得到的手指静脉特征进行滤波,其目的滤出一些由噪声产生的伪静脉特征,主要是利用噪声形成区域的面积小于静脉特征形成区域的面积,利用计算面积的方法去除。然后对去噪后的图像进行细化等处理,可以提高后面的识别精度。
机译: 三维手指静脉特征提取方法及其匹配方法
机译: 基于深度学习的手指静脉特征和手指形状生物测量装置及方法
机译: 基于手指关节和手指静脉的收敛式生物特征认证方法及装置