一种融合纹理特征和尺度不变特征的掌静脉识别方法与流程

文档序号:11231147阅读:501来源:国知局
一种融合纹理特征和尺度不变特征的掌静脉识别方法与流程
本发明属于模式识别
技术领域
,更为具体地讲,涉及一种融合纹理特征和尺度不变特征的掌静脉识别方法。
背景技术
:掌静脉识别技术是近年来新兴的一种生物识别技术,其一般过程包括掌静脉的采集、图像的预处理、静脉特征提取和特征匹配识别。根据特征提取方法的不同,现有的掌静脉识别方法可归结为以下四类:基于结构特征的方法、基于子空间的方法、基于纹理特征(nbp特征)的方法和基于尺度不变特征(sift)的方法,其中,(1)、基于结构特征的方法提取掌静脉的线特征或者点特征等结构特征来表示掌静脉。此类方法原理简单,比较直观,但由于容易因掌静脉信息模糊而丢失分点、线特征,从而辨识能力有限;(2)、基于子空间的方法将静脉图像看作是高维向量或矩阵,通过投影或者变换转化为低维向量或矩阵,并在低维空间下对掌静脉进行表示和匹配。此方法对光照变化等噪音影响敏感,这限制了其应用范围;(3)基于纹理特征的方法主要提取图像全局或局部统计信息等作为描述,方法通用性比较强,效率高,而且对于小范围的位移具有很好的鲁棒性,但对于较大位置的位移,其鲁棒性能还有很大的提升空间;(4)基于尺度不变特征的方法,此类方法思路主要源于计算机视觉领域广泛使用的不变特征算子,具有一定的鲁棒性,但是比较依赖图像增强等预处理手段,同时计算效率有待进一步提升。四类方法各有优缺点和优势。基于纹理特征的方法即nbp算法是一种基于纹理的采用近邻二值模式的掌静脉识别方法。该方法将掌静脉图像分成若干区域块,计算区块灰度平均值以消除采集时可能出现的图像旋转影响,进一步利用nbp特征实现匹配识别。具体可以参见文献[1]:林森,吴微,苑玮琦.采用纹理近邻模式的掌静脉生物特征识别研究[j]。仪器仪表学报,2015,36(10):2330-2338。尽管此方法在识别速度上有一定的优势,并且在小范围的位移和图像旋转上具有很好的鲁棒性,但是在位移量较大时,识别效果较差,并且此时对于不同人之间的区分度不是很明显,容易造成误识现象,误识率高,不利于实际应用。基于尺度不变特征的方法即sift算法是一种电脑视觉的算法用来侦测与描述影像中的局部性特征,它在空间尺度中寻找极值点,并提取出其位置、尺度、旋转不变量,此算法由davidlowe在1999年所发表,2004年完善总结。基于sift不变特征的掌静脉识别方法是使用高斯差分函数检测出尺度空间的极值点,并且在这些点肿选取稳定的特征点,为每个特征带拟分配方向,然后对所生成的特征进行匹配。该方法用时相对较多,在准确率上并没有特别的优势,但在区别不同人手掌静脉方面效果突出,可以有效降低误识率。因此,sift算法是对nbp算法的有效补充,如何高效的结合以上两种算法,同时兼顾识别准确率和识别时间,并且进一步降低误识率以满足实际应用成为掌静脉识别研究中着重关注的研究内容。技术实现要素:本发明的目的在于克服现有技术的不足,提出一种融合纹理特征和尺度不变特征的掌静脉识别方法,兼顾识别速度(时间)的同时,提高掌静脉识别的准确率(降低误识率)。为实现上述发明目的,本发明融合纹理特征和尺度不变特征的掌静脉识别方法,其特征在于,包括以下步骤:(1)、对掌静脉库的掌静脉roi(regionofinterest)图像进行预处理(图像增强处理),然后提取图像的nbp(纹理特征)特征并进行编码,构建构建nbp特征编码库,同时,提取图像的sift(尺度不变特征)特征,构建sift特征库;(2)、对待识别的掌静脉roi图像提取nbp特征,并进行编码;(3)、待识别的掌静脉roi图像的nbp特征编码与nbp特征编码库的所有nbp特征编码进行比对,求取汉明距离,若最小汉明距离小于设定的阈值t1,表明能够明显匹配识别,则选取该最小汉明距离nbp特征编码对应的掌静脉roi图像作为识别结果,结束识别;否则,表明不能明显匹配识别,则在nbp特征编码库中,选取汉明距离最小的h个掌静脉roi图像进入候选区;(4)、提取待识别的掌静脉roi图像的sift特征,并分别候选区的h个掌静脉roi图像在sift特征库中的sift特征进行匹配,得到匹配结果即sift特征点匹配对数量;(5)、sift特征与nbp特征联合选取匹配结果:当sift特征点匹配对数量大于等于阈值t2,且sift特征点匹配对数量最大值为一个,认定为h个掌静脉roi图像中,与待识别的掌静脉roi图像匹配,sift特征点匹配对数量最大的掌静脉roi图像作为识别结果,当sift特征点匹配对数量大于等于阈值t2,且sift特征点匹配对数量最大值不止一个,则在h个掌静脉roi图像中,选取与待识别的掌静脉roi图像nbp特征编码之间汉明距离最小的作为识别结果;取阈值t2,若sift特征匹配对数量少于t2个,则认定没有识别对象。本发明的目的是这样实现的。本发明融合纹理特征和不变特征特征的掌静脉识别方法,通过nbp算法进行初筛,如果初筛结果区分明显即存在最小汉明距离小于设定的阈值t1,则选取对应的掌静脉roi图像作为待识别掌静脉roi图像的识别结果;如果初筛结果区分不明显,则使用sift特征进行二次筛选,如果二次筛选结果区分明显即sift特征点匹配对数量大于等于阈值t2,则得到识别结果(如果存在数量相同,在选取它们中汉明距离最小的作为匹配结果);当两次筛选均不能明显区分结果时,则认为没有识别对象。本发明既可以提升单独使用nbp算法和sift算法进行掌静脉识别的准确率即降低了误识率,又可以在效率上满足实时采集识别的要求即兼顾了识别速度,这样克服了nbp算法误识率较高以及sift算法耗时的缺点。附图说明图1是本发明融合纹理特征和尺度不变特征的掌静脉识别方法一种具体实施方式流程图;图2是掌静脉roi图像增强前后的对照图,其中,(a)为增强前即原图,(b)为增强后;图3是区块划分示意图;图4是nbp编码一具体实例示意图;图5是sift特征匹配图;图6是现有基于ransc算法,对错误sift特征点匹配进行剔除的方法流程图;图7是本发明中对错误sift特征点匹配进行剔除的方法的流程图;图8是两种提出方法的对比图。具体实施方式下面结合附图对本发明的具体实施方式进行描述,以便本领域的技术人员更好地理解本发明。需要特别提醒注意的是,在以下的描述中,当已知功能和设计的详细描述也许会淡化本发明的主要内容时,这些描述在这里将被忽略。图1是本发明融合纹理特征和尺度不变特征的掌静脉识别方法一种具体实施方式流程图。在本实施例中,如图1所示,本发明融合纹理特征和尺度不变特征的掌静脉识别方法包括以下步骤:步骤s1:建立nbp特征编码库和sift特征库对经过预处理(图像增强处理)的掌静脉roi(regionofinterest)图像建立nbp(纹理特征)特征编码库和sift(尺度不变特征)特征库。在匹配过程中,为了提高识别速度和效率,我们先对掌静脉库的roi图像进行预处理,即对图像进行增强处理,如图2所示,其中,图2(a)是掌静脉roi图像原图,图2(b)是图像增强后的掌静脉roi图像。对比图2(a)、图2(b)我们可以看出,图像掌静脉更为清晰可辨。预处理后,提取图像的nbp(纹理特征)以及sift(尺度不变特征)特征,构建nbp特征编码库和sift特征库。步骤s2:对待识别的掌静脉roi图像提取nbp特征,并进行编码。在步骤s1、步骤s2中,对提取nbp特征进行编码为:1.1)、对掌静脉roi图像进行区块划分首先,将一个m×m大小的掌静脉roi图像作为矩阵转化为图像区块方阵v,即:其中,每个区块vij(i,j=1,2,...,k)是一个m×m大小的方阵,m=k×m;然后,用公式(2)计算各区块的灰度值:其中,fij(x,y)为区块vij内作为(x,y)处像素点的灰度值,所有区块的灰度值可以形成k×k大小的掌静脉图像多块均值矩阵i:在本实施例中,如图3所示,将一个128×128大小的掌静脉roi图像作为矩阵转化为16×16的图像区块方阵v(此时k=16,m=8),并分别计算区块内的像素均值,将均值作为像素值构建新的16×16的矩阵即掌静脉图像多块均值矩阵i。从图3可以看出,将图像做多块均值计算,每小块图像均能对图像整体和局部信息做同时把握,减少图像采集时因为小幅度旋转造成的影响,并且明显降低原始数据量,提高了运算效率,而不影响特征的区分度。1.2)、对掌静脉图像多块均值矩阵i进行nbp编码运算,形成nbp二进制编码比特串;nbp特征专注近邻像素之间的灰度大小关系。所述的nbp编码运算为,对于掌静脉图像多块均值矩阵i,将每个元素作为一个中心元素,取一个3×3的窗口,环绕中心元素,以左上角元素为起点,采用顺时针遍历的方法,提取中心元素周围的8个点(如果是第一行、第一列、最后一行、最后一列,则窗口不在掌静脉图像多块均值矩阵i上的,则取值为0),并列排成一行,元素值依次为p7,p6,…,p0;然后,从最左侧的元素值开始,将当前元素值与其右侧的下一近邻元素值进行比较,公式为:特别地,将每个中心元素的nbp编码连接起来,即为掌静脉roi图像的nbp特征编码。在本实施例中,如图4所示,对中心元素处进行nbp编码,利用公式(4)(5)得到nbp编码为:00011010。依次计算16×16共计256个元素处的nbp编码,依次排列得到2048位nbp编码。将掌静脉库中的所有掌静脉roi图像的nbp特征编码连接起来,即可组成nbp特征编码库。步骤s3:待识别的掌静脉roi图像的nbp特征编码与nbp特征编码库的所有nbp特征编码进行比对,求取汉明距离。对于两个比对的nbp特征编码,记为snbp1,snbp2,其比特串形式为:snbp1=a1a2…an(6)snbp2=b1b2…bn(7)其中,a1~an,b1~bn为0或1;它们之间的汉明距离定义为:其中,符号表示异或运算,n为nbp特征编码的长度。若最小汉明距离小于设定的阈值t1,表明能够明显识别匹配,则选取该最小汉明距离nbp特征编码对应的掌静脉roi图像作为匹配结果,结束识别;否则,表明不能明显识别匹配,则在nbp特征编码库中,选取汉明距离最小的h个掌静脉roi图像进入候选区。在本实施例中,求取汉明距离,若最小汉明距离小于等于阈值t1=0.21,则选取掌静脉库中对应图像为识别结果,并结束识别,若最小汉明距离大于t1=0.21,则选取掌静脉库中与待识别的掌静脉roi图像汉明距离最小的h=20个掌静脉roi图像进入候选区。在本实施例中,如图5所示,其中,(a)是待识别的掌静脉roi图像,(b)、(c)是在进行初筛时选出的20幅掌静脉roi图像中的具有代表性的两幅。步骤s4:提取待识别的掌静脉roi图像的sift特征,并分别候选区的h个掌静脉roi图像在sift特征库中的sift特征进行匹配,得到匹配结果即sift特征点匹配对数量。在本实施例中,步骤s1、步骤s4中,所述提取掌静脉roi图像的sift特征为:2.1)、构建高斯差分金字塔,寻找极值点为了寻找与尺度无关的特征点,首先要构造图像金字塔。图像金字塔通过对原始图像连续做二分之一采样构造而成。再计算相邻尺度的金字塔图像的高斯差分得到高斯差分图像,这样得到一系列高斯差分图像后就可在该图像空间中寻找极值点。其中,高斯差分金字塔构造公式为:d(x,y,σ)=(g(x,y,kσ)-g(x,y,σ))*i(x,y)=l(x,y,kσ)-l(x,y,σ)(9)其中,d(x,y,σ)是尺度可变高斯函数,g(x,y,σ)为高斯卷积核,l(x,y,σ)为图像的尺度空间,(x,y)是空间坐标,σ大小决定图像的平滑程度,大尺度对应图像的概貌特征,小尺度对应图像的细节特征。寻找极值点的方法为:把检测点和它同尺度的8个相邻点和上下相邻尺度对应的18个点共26个点相比较,当它比其它相邻域点都大或都小时就确定其为极值点。2.2)、特征点定位与去除边缘响应2.2.1)、特征点的精确定位由于dog值对噪声敏感,因此在dog尺度空间中检测到局部极值点还要经过进一步检验才能确定为特征点。dog函数在尺度空间的taylor展开式为:对上式求导,并令其为0,得到精确的位置,得到:将公式(11)代入公式(10),得到公式:当小于q1时,舍去该特征点。q1此处建议取0.03。2.2.2)、去除边缘响应构建hessian矩阵,当时,将特征点保留,反之则将其剔除。此处r建议取值为10。2.3)、方向分配sift通过每个特征点的梯度来为特征点赋予方向。梯度幅值的定义为:梯度方向的定义为:确定特征点的方向采用梯度直方图统计法,即统计以特征点为原点一定区域内的图像像素点对特征点方向生成所作的贡献。梯度直方图以每s度方向为一个柱,共360/s个柱,柱所代表的方向为像素点梯度方向,柱的长短代表了梯度幅值。梯度幅值最大的方向即为该特征点的方向。2.4)、生成特征点描述子生成特征点描述子时,先将坐标轴旋转到特征点的方向,以保证旋转不变性。然后对任意特征点,在其尺度空间取以特征点为中心的16×16大小的区域,在每个4×4的小块上计算8个方向的梯度向量直方图,绘制每个梯度方向的累加值,形成一个种子点区域。一个特征点使用4×4共16个点来描述,形成一个128维的特征向量。再将特征向量的长度归一化,进一步去除光照变化的影响,生成最终的sift特征描述子。图5(d)、(e)、(f)分别为待识别的掌静脉roi图像、选出的20幅掌静脉roi图像中的具有代表性的两幅的sift特征点描述图即(a)、(b)、(c)的sift特征点描述图,特征点数目分别为520,491,576。对每幅图像求取sift特征点,首先构建高斯差分金字塔,再对高斯图像求取极值点,特征点精确定位及去除边缘响应后,继续为特征点赋予方向,生成特征描述子。每幅图像的特征点如图5(d)、(e)、(f)所示,均有500左右特征点,数据量较大,sift特征的每次匹配都需特征点间的两两匹配,故进行初筛可以大大减少工作量。在进行特征匹配时,采用最邻近距离搜索方法进行匹配,即查找到每个特征点的2个最近邻特征点,如果最近距离与次近距离的比值小于某个比例阈值t3,则接受这一对匹配点。这样,得到匹配结果即sift特征点匹配对数量。在对图像进行sift匹配后,难免会获有一些不可靠sift特征点匹配对。当不可靠的特征点匹配对数量上升时,将导致图像匹配正确率降低或者失败。所以,在sift特征匹配后,需要对sift特征点匹配对进行筛选,剔除错误的sift特征点匹配对,提升图像匹配正确率。传统的错误sift特征点匹配对的剔除方法采用的是ransc算法。ransac算法基于两个假设,一是数据集包含内点(inliers)和外点(outliers);二是外点不符合由内点估计的模型。其首先随机选取点计算数学模型,然后找到该模型的内点,重新计算模型,通过不断地迭代计算来找到一个符合最多点的模型。设图像i1和i2的sift特征点匹配对集(简称匹配对集)为φ。最小样本集s为能计算模型所有参数最小的匹配对集,由于图像的变换模型有8个自由度,所以需要至少4个特征点匹配对来计算变换矩阵,因此s中包含4个特征点匹配对。与矩阵h的残差小于一定阈值的点组成的集合称为矩阵h的一致集(consensusset),设为cs。ransac算法流程图如图6,其具体步骤为:(1)从初始匹配对集φ中随机选取一个最小样本集s;(2)根据s计算单应矩阵h;(3)根据误差度量函数计算中φ中各点是否符合模型m,符合的点集组成h的一致集cs,并返回cs中匹配对数n;(4)根据cs重新单应矩阵h,然后返回步骤(3)计算,直到达到给定的重复次数k;(5)取k次计算中,n最大的一致集作为最终的内点数据集csm;(6)用csm计算单应矩阵h,作为集合φ最终的数据模型。这种方法可以有效的排除误匹配对,但是会抛弃一些正确的匹配对,并且在错误匹配点较多或者匹配对数较少时都会给最终的匹配结果造成有一些麻烦。在本实施例中,借鉴ransac算法的方式,提出一种针对掌静脉图像的sift特征点匹配对的筛选方式。由于掌静脉识别之前,其roi图像是经过归一化处理的,不会发生大的位移和旋转,利用sift特征点匹配对的两个特征点连线与水平方向的夹角以及两个特征点之间的距离来筛选出错误的sift特征点匹配对。我们定义两条直线l1、l2的相似度距离为:g(l1,l2)=γ1l(l1,l2)+γ2θ(l1,l2)其中,l(l1,l2)是两条直线l1、l2长度的差值,θ(l1,l2)是两条直线l1、l2之间的夹角,γ1为距离权值,γ2为角度权值,距离权值γ1与差值的乘积以及角度权值γ2与夹角的乘积均为无量纲数。也就是说,两条直线l1、l2的相似度距离就是两者的加权和。在本实施例中,对错误sift特征点匹配对进行剔除的方法的流程图如图7所示,具体实施步骤为:3.1)、对所有sift特征点匹配对构成匹配对集φ进行排序,以sift特征点匹配对的两点连线与水平方向的夹角为第一优先级,以两点间距离为第二优先级进行排序,选取前n组sift特征点匹配对作为一个样本集s;3.2)、计算样本集s中sift特征点匹配对的两点平均距离和平均夹角,以平均值作为直线l1;3.3)、计算匹配对集φ中sift特征点匹配对的两点连线l2与直线l1的相似度距离:g(l1,l2)=γ1l(l1,l2)+γ2θ(l1,l2)其中,l(l1,l2)是两条直线l1、l2长度的差值,θ(l1,l2)是两条直线l1、l2之间的夹角,γ1为距离权值,γ2为角度权值,距离权值γ1与差值的乘积以及角度权值γ2与夹角的乘积均为无量纲;设定阈值z,计算相似度距离小于阈值z的sift特征点匹配对比例k;3.4)、若k大于等于设定的阈值k1,则将符合条件即相似度距离小于阈值z的所有sift特征点匹配对作为剔除后的结果,结束剔除;否则进入步骤3.5);3.5)、若k大于等于设定的阈值k2,则选取将符合条件即相似度距离小于阈值z的所有sift特征点匹配对样本集s作为基准,返回步骤3.2),否则进入步骤3.6);其中,阈值阈值k1大于阈值k2;3.6)、移除样本集s中与其他sift特征点匹配对相似度距离最大的sift特征点匹配对,加入匹配对集φ中排序后的下一个sift特征点匹配对,返回步骤3.2),如果已执行到匹配对集φ中排序后的最后一个sift特征点匹配对,没有下一个sift特征点匹配对,则选取迭代过程中,比例k最高的样本集s作为剔除后的结果,结束剔除。在本实施例中,如图8所示,对两种方法的剔除结果进行比较。本实施例中,选用组数n为4,阈值k1为90%,阈值k2为30%进行剔除。图8(a)表示原始的未经剔除的匹配结果,图8(b)为ransac方法剔除后的结果,图8(c)为本实施例中方法剔除后的结果。可以看到,第一行,在有较多sift特征点匹配对时,ransac会抛弃一些正确的sift特征点匹配对,而本实施例采用的剔除方法,可以在剔除错误sift特征点匹配对的同时保留相对较多的正确sift特征点匹配对;第二行,在错误匹配时,ransac方法会找到部分错误的h矩阵,保留少量错误匹配本实施例采用的剔除方法可以剔除全部错误匹配;第三行,在sift特征点匹配对数量相对较少时,ransac方法的结果保留较少,在阈值较高时不能达到识别标准,而本实施例采用的剔除方法可以保留较多匹配,可以正确识别掌静脉。(5)、sift特征与nbp特征联合选取匹配结果:当sift特征点匹配对数量大于等于阈值t2,且sift特征点匹配对数量最大值为一个,认定为h个掌静脉roi图像中,与待识别的掌静脉roi图像匹配,sift特征点匹配对数量最大的掌静脉roi图像作为匹配结果,当sift特征点匹配对数量大于等于阈值t2,且sift特征点匹配对数量最大值不止一个,则在h个掌静脉roi图像中,选取与待识别的掌静脉roi图像nbp特征编码之间汉明距离最小的作为匹配结果;取阈值t2,若sift特征匹配对数量少于t2个,则认定没有匹配对象。在掌静脉识别过程中,如图5所示。图5(a)和(b)为同一人的掌静脉roi图像,两者之间有较大位移,在nbp初筛的过程中,图5(a)与图5(b)的汉明距离为0.2505,图5(a)和图5(c)的汉明距离为0.2485,仅仅使用nbp算法,将会把图5(a)误认为图5(c)得到错误结论。而使用本发明的识别方法,虽然前两者汉明距离比后两者汉明距离大,但在初筛时依旧将(b)(c)挑选出来进入候选区,在对两者进行sift特征匹配时,如图5(g)和图5(h)所示,前两者的sift匹配特征点对为83对,而后两者的匹配特征点对为3对,所以选取正确匹配图像为图5(a)和图5(b),即识别为图5(b)。本发明在掌静脉识别中,对原sift算法在识别时间上具有很明显的优势,不仅仅经过初筛将nbp算法明显区分的图像剔除,更将不能明显区分的图像sift特征匹配量由原来的500次减少到20次,从而大大减少匹配时间。对于nbp算法而言,本算法可以对原算法区分布不明显的图像进行二次筛选,降低了nbp算法的错误率,错误匹配方面更是改善明显。在实际应用中,本发明方法具有很明显的优势。方法平均时间误识率(1:n)拒识率(1:1)sift算法31.7s0.02%5.0%nbp算法6.6ms1.8%1.6%本发明0.1s0%0.6%表1表1是本发明与融合前方法在香港中文大学掌静脉库上的数据对比表格。从表1中可以看出,本发明相比nbp算法在识别过程中,能够有效地提高识别性能,尤其是在错误识别方面,本发明利用sift算法可以很好剔除错误匹配的特性,有效的减少错误匹配;本方法相比sift算法,在匹配时间上占有巨大的优势,本方法匹配时间较少,能够满足现实应用中匹配时间的要求。因此,相较sift算法和nbp算法,本发明能够有效融合两种算法的优势,在匹配速度和实验效率上都有一定的改善。表2自采掌静脉库方法平均时间误识率(1:n)拒识率(1:1)sift算法29.2s0.05%4.5%nbp算法6.6ms2.25%3.0%本发明0.09s0%1.5%表2表2是本发明与融合前方法在自采掌静脉库上的数据对比表格,从表2中可以看到,在自采库中,采用本发明同样可以取得较好的改善。尽管上面对本发明说明性的具体实施方式进行了描述,以便于本
技术领域
的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本
技术领域
的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1