首页 / 快速三维人耳识别方法

快速三维人耳识别方法失效专利 发明

技术内容

技术领域 本发明属于图像处理技术领域,具体涉及一种可以自动地从三维深度数据中提取出人耳并进行识别或认证的方法。 背景技术 生物识别技术是利用人的生理特征或行为特征进行身份识别的技术,这种鉴别技术具有比传统的密码和身份识别码等更可靠、更安全的特点。人耳识别是一种较新的生物识别方法,近几年来受到了国内外很多研究者的关注,这是因为人耳具有唯一性和稳定性,可以作为个体生物识别的依据,而且人耳表面具有大量的沟和脊,形状特征很丰富,还不受胡子、化妆品和表情的影响。另外,人耳数据采集比较方便,不需要识别对象较多的配合,适用于监视场合。因此,人耳识别是一种很有发展潜力的生物特征识别技术。 研究人员已经发展了一些基于2D灰度图像的人耳识别技术,但是这些技术的性能严重受到阴影、姿态变化和成像条件等的影响。然而,一个实用的生物识别系统需要具有识别率高、识别速度快和鲁棒性好等特点。基于三维表面形状的人耳识别算法就能够很好地解决光照、姿态等问题,鲁棒性较好。附图1就是一个深度传感器采集的三维人耳例子,图中坐标单位是mm,采用深度传感器可以获取人耳的表面形状。 Yan和Bowyer比较了几种3D人耳识别方法:深度数据Z通道的主元分析(principle component analysis,PCA)方法、基于深度图像边缘的hausdorff距离方法、还有利用迭代最近点(iterative closest points,ICP)配准后的配准误差来识别的方法。所用的人耳数据是从侧脸图像中手动分割出来的。在一个包含302人的数据库上,PCA方法的识别率仅为55.3%,Hausdorff距离方法为67.5%,而使用ICP方法识别率达到98.8%。他们后来提出了一种耳洞检测算法用于检测耳朵位置,在灰度图像和深度图像结合后的图像上,使用snake算法自动提取人耳区域,依然使用ICP算法识别人耳。在一个包含415人的数据库里,他们报道的识别率为97.6%,人耳提取过程耗时约10~20秒。由于ICP算法运算复杂度很高,所以人耳识别非常慢,匹配一对耳朵就需要5~8秒。Chen和Bhanu也使用了ICP方法进行人耳识别,但他们得到的识别结果不如Yan等人。Passalis等人使用通用人耳标注模型(annotated ear model,AEM)对齐和拟合三维人耳,然后提取出用二维表示的耳朵元数据,通过比较两个元数据之间的L1范数距离来衡量两只耳朵的相似程度。对齐操作通过最小化对应点深度通道和各彩色通道的误差加权和来实现,优化过程采用的是模拟退火算法。然后使AEM向人耳变形,变形的结果作为耳朵元数据。整个提取过程耗时约30秒。由于识别不涉及复杂的运算,所以速度比较快,匹配一对耳朵所需时间少于1毫秒。但是识别率不高,在包含415人的库上仅达到93.9%。 现有的三维人耳识别系统在人耳抽取过程耗时都比较大。基于ICP的三维人耳识别算法存在运算复杂度高、识别速度低等问题,在识别率上也还有一定的提升空间。基于AEM的算法改进了识别速度,但识别率降低较多。 下面介绍一个本发明相关的概念:ICPIF是ICP算法的改进,所以先介绍一下ICP算法。ICP算法是一种用于三维表面精密配准的算法。其目的是找到一个刚体变换,使得点云P与点云X尽可能地重合。它通过最小化P和X之间对应点的距离平方和实现配准。每一次迭代过程中,对于P中每一个点p,在X中查找空间距离最近的点x作为对应点对,然后计算刚体变换使得所有对应点对的平方距离之和最小。ICP算法需要一个初始估计,并假设P里每一个点都能在X中找到对应点。查找最近点过程的时间复杂度为O(NPlog(NX)),这里NP是采样点个数,NX是X中点的个数。记P的对应点集为Q,CP为求取对应点的操作,则Q=CP(P,X)。ICP算法描述如下: 1.初始迭代时,令点集初始位置P0=P,T0为初始刚体转换。 2.迭代执行以下步骤。 a,计算对应点集Qk=CP(Pk,X)及对应点集的距离{di=d(pi,qi)}k,其中pi和qi是对应点的三维空间坐标,d(pi,qi)是pi和qi的L2范数距离。 b,计算平均距离作为配准误差,如果前后两次迭代的配准误差之差小于阈值τ或达到迭代次数上限,终止迭代。 c,计算刚体变换参数Tk。 d,应用刚体变换,计算采样点集的新位置Pk+1。 ICP算法保证可以单调收敛到局部极小,该极小值与初始变换有关,因此,ICP算法获得的解不一定是全局最优解,这就要求初始的相对位置不能与真实的位置相差太大。同时,对于一幅深度图像上的某一个点,在待配准的深度图像上可能同时存在多个与该点距离最近的点,甚至即使与该点距离最近的点也可能并不是真正与其对应的点,所以单纯依靠距离最近点来选取配准点并不十分可靠,有时候会引入错误的配准点对。 ICPIF是Sharp和Lee提出的一种对传统ICP算法的改进,它在迭代过程中使用欧式不变特征(比如曲率)对点进行了扩展,把特征坐标排在空间坐标后面,构成高维点,其中p′是高维点,px、py和pz是空间坐标,到是点p的k个特征描述,α是特征权重,可以通过经验来选取。两个经过扩展的点p′,q′的L2范数距离公式为d(p′,q′)=||p′-q′||2。ICPIF的配准过程同ICP算法完全一样,只是把对应点集的距离度量方式和最终匹配误差度量方式由原来的d(p,q)改为d(p′,q′)。 曲率是最常用的欧式不变特征之一,设曲面上点的主曲率为k1,k2(k1≥k2),曲面的方程为f(x,y),则曲面的一阶微商和二阶微商可表示为: fx=fx,fy=fy,fxx=2fx2,fyy=2fy2,fxy=fyx=2fxy---(1) 曲面的高斯曲率K和平均曲率H可由曲面函数的微商表示为: K=fxxfyy,-fxy2(1+fx2+fy2)2, H=12(1+fy2)fxx+(1+fx2)fyy-2fxfyfxy(1+fx2+fy2)3/2---(2) 最大主曲率k1和最小主曲率k2可由K和H计算得到: k1=H+H2-K, k2=H-H2-K---(3) 发明内容 本发明中,提出了一套新的三维人耳识别方法,相对现有技术,从速度和性能上都进行了较大的改进。本发明所述的技术方案如下所述。 一种快速三维人耳识别方法,该方法包含以下步骤: a、三维人耳提取阶段,利用ICPIF算法使人耳与平均耳对齐,完成人耳位置和姿态归一化,然后用固定掩膜提取感兴趣的人耳区域; b、人耳识别与认证。 其中,人耳提取的流程如下: 1.耳洞检测,采用耳洞检测方法,在侧脸深度图像中找到人耳位置; 2.三角化,把耳洞周围102×142范围内的点取出来,构造三角网格,使用下述网格生成方法:在X-Y坐标平面上相邻的任意四个点中添加一条斜边构造2个三角形,而任意相邻的两条斜边不平行,网格上有些顶点数据缺失,称之为无效点,把顶点为无效点的三角形去除,然后计算三角形在三维空间中的实际边长,把最大边长大于5mm的三角形标记为不可信任三角; 3.坐标中心化,通过计算耳洞周围小范围内点坐标的均值,得到耳洞的三维坐标。然后进行坐标平移,使耳洞坐标与坐标原点重合,完成耳朵的预处理; 4.均匀重采样,对网格进行均匀重采样,采样点在X方向和Y方向都是均匀分布的,采样间隔定为0.63mm,X坐标范围是(-25,25)mm,Y坐标范围(-35,35)mm。采样点落在不可信任三角内的点标记为无效点; 5.表面拟合,采用从mathworks网站下载的gridfit代码,该代码通过权衡拟合结果对原始数据点的逼近程度和相邻点梯度的一致性来实现表面拟合,使用平滑参数调节两者的重要性程度,优选的,平滑参数取为10。 6.曲率计算由公式(1)、(2)、(3)计算每个点的主曲率k1、k2(k1≥k2); 7.如果迭代次数没有达到上限,继续第8步;否则,把落在人耳第二掩膜内的数据点取出来,提取完成; 8.把落在第一掩膜内的数据点提取出来; 9.使用主曲率k1、k2作为每个点的不变特征,这样每个点可以用一个5维向量(x,y,z,k1,k2)表示,然后与平均耳做ICPIF对齐,计算出最佳转动矩阵和平移向量; 10.应用最佳转动矩阵和平移向量,使三维网格转动到新位置。回到第4步。 其中,所述用固定掩膜提取感兴趣的人耳区域是指对齐过程使用的是第一掩膜,第一掩膜包含了少量耳朵轮廓外部的数据点,提取最终人耳区域使用的是第二掩膜,提取的是耳阔内部和部分脸颊方向的数据点。 其中,所述平均耳的获得流程如下:首先执行人耳提取过程中的步骤1~6,分别计算Z坐标和两个主曲率的平均值,得到初步平均耳,接着使原型耳与初步平均耳对齐,完成姿态归一化,再计算它们的平均Z坐标和平均主曲率作为新的平均耳。 其中,所述的人耳识别与认证可采用PCA方法,即通过深度图像和最小主曲率图像的组合得到耳朵向量,再把它投影到由原型耳图像建立的PCA基上,得到维数大大压缩后的特征向量,最后同原型耳的特征向量逐一比较余弦距离得到识别结果;或者ICPIF方法,即提取每个点的两个主曲率作为不变特征,加权后参与最近点查找过程和配准误差计算,迭代地修正刚体变换参数,使待测耳朵与原型耳的均方距离最小,使用这个平均距离作为配准误差,与待测耳朵配准误差最小的原型耳被认为是同一只耳朵。 本发明提出的快速三维人耳识别方法工作稳定,效果良好,速度很快。所提议的结合深度信息和曲率信息的PCA算法,识别率达98.6%,识别时间仅为0.007秒,人耳认证的等错误率仅为0.5%,所提议的基于ICPIF的3D人耳识别算法,识别率高达99.8%,运算速度也较ICP算法有所提升。 附图说明 图1是曲率图像的直方图均衡效果图,其中(a)直方图均衡前,(b)直方图均衡后,(c)深度图像,(d)均衡后最大主曲率图像,(e)均衡后最小主曲率图像 图2是唯一识别错误的一对耳朵的图,其中(a)原型耳,(b)测试耳朵 图3是人耳识别的性能曲线图,其中(a)CMC曲线(b)ROC曲线 具体实施方式 现依据附图,对本发明做进一步的描述。 实施例1 所使用的数据是来自University of Notre Dame的3D人耳数据库(theUniversity of Notre Dame public data set,UND),这是到目前为止公开可用的最大三维人耳库。它共有830个数据集,来自415个人。所有数据集都是使用Minolta 910激光扫描仪扫描左侧脸获取的,包含X、Y、Z三个坐标的深度图像以及对应的RGB彩色图像,分辨率为640×480。系统运行的硬件环境是Intel(R)Xeon(R)四核处理器,2.33GHz,内存4G。软件环境是Matlab R2008a。基于PCA的人耳识别原理: PCA是应用最广泛的一种特征提取方法之一,它是一种统计学方法,在信号处理、模式识别、数字图像处理等领域已得到了广泛应用。PCA的基本思想是提取出空间原始数据分布的主要特征(主元),减少数据冗余,使得数据在一个低维的特征空间被处理,同时保持原始数据的绝大部分信息,从而解决数据空间维数过高问题。 曲率是三维表面的局部描述,不同人耳的曲率分布存在较大差异,因此曲率图也可用于人耳识别。由于传感器采集的三维点坐标数据含有噪声,而曲率对噪声尤为敏感,导致曲率图像的灰度级分布范围很大,某些点的曲率显著高于周围点,表现为尖峰,参见图1中(a)所示。这些尖峰的存在会严重影响PCA识别的效果,所以使用了直方图均衡化方法,使主曲率的灰度级在(0~1)之间均匀分布,其效果如图1中(b)所示。我们也尝试过使用中值滤波消除噪声,但发现效果没有直方图均衡方法好。最终用于识别的三种人耳图像如图1中(c)、(d)和(e)所示。 单独使用一幅图像识别效果不理想时,还可以把多幅图像组合作为一只耳朵的表征。实际计算中,把曲率灰度乘以权重16,然后与Z坐标组合。使用PCA进行降维,提取掩膜内的点形成一个长向量,向量长度就是样本维数,一幅图像的有效点数为4054个,使用N幅图像组合的样本维数就是4054N,样本个数为415个。由于样本稀疏,所以降维后数据维数一定小于415,得到了大幅压缩,加快了识别比较速度。 在人耳识别之前,先利用原型耳计算投影基和各原型耳的特征向量。识别时,将测试耳投影到这个基上,得到特征向量,然后使用最近邻分类得到识别结果。认证时,通过特征相似度阈值来判定接受还是拒绝。 人耳识别时利用特征向量的相似性测度进行分类,尝试了三种测度:欧式距离测度、余弦测度和Tanimoto测度。对于特征向量u、v,它们之间的相似性度量记为S(u,v),值越大越相似。 欧式距离测度,两个向量终点间的欧式距离,其值越小,相似度越大,所以加个负号, 余弦测度,两个向量之间夹角的余弦值,其值越大,相似度越大, S(u,v)=uTv||u||2||v||2. Tanimoto测度,是余弦测度的变形,也是值越大,相似度越大, S(u,v)=uTvuTu+vTv+uTv. 基于ICPIF的人耳识别原理: ICPIF算法中所用的点不仅有整体的位置信息,还有曲面的局部特性,因而对刚体表面的描述性更强。由于ICPIF的配准误差也是一种整体和局部相结合的误差表征,因此用它来衡量两个耳朵表面的相似程度应该比ICP方法更精确,从而能获得更高的识别率。在实验中使用了曲面的主曲率作为不变特征,设其幅度分别为k1和k2(k1≥k2)。把它们与三维点坐标相结合,这样每个点都用一个五维向量来表征:p=(px,py,pz,αk1,αk2)∈□5,其中α是特征部分的加权系数,实验中取为3.0。使用ICPIF算法使测试耳与原型库里的每一个样本进行配准,与测试耳配准误差最小的那只被认为是同一个人的耳朵。人耳认证时,通过配准误差阈值来判定接受还是拒绝。 当测试耳数据点数很多时,ICPIF方法运算很慢,因此在匹配过程中采取了一些措施来加快运算,例如,查找最近点时,使用了Approximate NearestNeighbors(ANN)的代码,限制迭代为次数上限为15次,当前后两次配准误差的差小于0.001时,认为配准完成。由于用于配准的两只耳朵可能只存在部分交集,曲率也存在尖峰点,所以计算刚体变换参数时,把大于平均距离+2倍网格精度的点对去除了,计算最终的匹配误差时也只使用了距离较小的90%的点对。 实施例2 人耳提取的流程如下: 1.耳洞检测,采用耳洞检测方法,在侧脸深度图像中找到人耳位置; 2.三角化,把耳洞周围102×142范围内的点取出来,构造三角网格,使用下述网格生成方法:在X-Y坐标平面上相邻的任意四个点中添加一条斜边构造2个三角形,而任意相邻的两条斜边不平行,网格上有些顶点数据缺失,称之为无效点,把顶点为无效点的三角形去除,然后计算三角形在三维空间中的实际边长,把最大边长大于5mm的三角形标记为不可信任三角; 3.坐标中心化,通过计算耳洞周围小范围内点坐标的均值,得到耳洞的三维坐标。然后进行坐标平移,使耳洞坐标与坐标原点重合,完成耳朵的预处理; 4.均匀重采样,对网格进行均匀重采样,采样点在X方向和Y方向都是均匀分布的,采样间隔定为0.63mm,X坐标范围是(-25,25)mm,Y坐标范围(-35,35)mm。采样点落在不可信任三角内的点标记为无效点; 5.表面拟合,采用从mathworks网站下载的gridfit代码,该代码通过权衡拟合结果对原始数据点的逼近程度和相邻点梯度的一致性来实现表面拟合,使用平滑参数调节两者的重要性程度,优选的,平滑参数取为10。 6.曲率计算由公式(1)、(2)、(3)计算每个点的主曲率k1、k2(k1≥k2); 7.如果迭代次数没有达到上限,继续第8步;否则,把落在人耳第二掩膜内的数据点取出来,提取完成; 8.把落在第一掩膜内的数据点提取出来; 9.使用主曲率k1、k2作为每个点的不变特征,这样每个点可以用一个5维向量(x,y,z,k1,k2)表示,然后与平均耳做ICPIF对齐,计算出最佳转动矩阵和平移向量; 10.应用最佳转动矩阵和平移向量,使三维网格转动到新位置。回到第4步。 采用上述方法能够成功提取所有耳朵,得到有效点数为4054个。由于人耳检测不是本发明的重点,所以只比较提取过程所消耗的时间。所提议人耳提取算法中最耗时的步骤是曲面拟合。每提取一只耳朵需要进行3次曲面拟合,每进行1次曲面拟合需要0.3秒,所以人耳提取过程耗时约1秒,而且基本恒定。G.Passalis对齐使用的是模拟退火算法,整个提取过程需要30秒,Ping Yan的系统使用snake算法,提取过程需要10-20秒,如表1所示。显然本发明的方法要快得多,而且没有使用2D纹理信息,因而适用范围会更广泛。 表1人耳提取时间和所用数据的比较 实施例3 利用自动提取的人耳,分别使用深度图像RZ、最大主曲率图像k1、最小主曲率图像k2以及它们的组合在415个原型耳上训练PCA投影基,保留80%的能量,然后分别使用欧式距离测度、余弦测度和Tanimoto测度进行最近邻分类,实验结果如表2所示。 表2PCA方法的识别率与所用图像和相似度测度的关系 可以看出余弦测度或Tanimoto测度之间没有显著差别,但均高于欧式距离测度。单独使用一种图像时,最小主曲率优于最大主曲率,后者又优于深度图像。在组合图像中采用深度图像和最小主曲率组合的方式能达到较好的识别效果,在余弦测度或Tanimoto测度下达到最高识别率98.6%。本发明后面提到PCA算法指标都是使用深度图像和最小主曲率的组合在余弦测度下得到的结果。 实施例4 查找最近点是ICPIF算法的瓶颈所在,我们使用的ANN代码,它查找一个点的最近点的平均运算复杂度为O(ND×log2(NX)),其中NX是原型耳的数据点数,ND是数据点的维数。这样配准一对耳朵的运算复杂度为O(Iter×NP×ND×log2(NX)),其中Iter是迭代次数,NP是测试样本的点数。 从运算复杂度公式可以看出,要降低运算时间的方法需要降低迭代次数,降低测试样本的点数,以及降低原型耳的点数NX。一方面由于NX在对数里,对复杂度贡献不大,另一方面如果降低原型耳点数,会使找到的对应点位置精度严重受损,影响配准精度,所以保留所有原型耳数据点。如果能估计一个比较精确的初始配准位置,那么能有效降低迭代次数。本发明提出的与平均耳对齐的方法,不仅有效解决了耳朵姿态位置归一化问题,方便人耳提取,而且给出了一个比较精确的初始配准位置,降低了迭代次数。降低运算时间最有效的方法是减小NP。对测试样本进行了子抽样能显著减小NP。子抽样符号Sn表示从样本里每n行n列里取一个点,比如S4表示从4行4列里取一个点,则实际点数下降为原来的我们使用了不同的子抽样方式进行实验,所得结果如表3所示。 表3子抽样方式、迭代次数、识别时间和识别率 从表3可以看出,随着数据点数增加,迭代次数和运行时间都显著增加,但识别率在使用S3、S2、S1子抽样后的均达到了最高值99.8%,只有一只耳朵识别失败。但这是因为库里这只耳朵的测试样本和原型样本存在显著不同,怀疑是数据采集错误所致,如图2所示。 本发明后面提到ICPIF算法指标都是使用S3子抽样得到的结果。 实施例5 在三维人耳识别阶段,累积匹配特性曲线(Cumulative matchcharacteristic curve,CMC)如图3中(a)所示,其中正方形标志对应PCA方法,三角形标志对应ICPIF方法。可以看出基于PCA方法的识别率为98.6%,基于ICPIF算法的识别率达99.8%,这比Ping Yan等人得到的97.6%要高。在三维人耳认证阶段,接收器操作特性曲线(Receiver operating characteristic,ROC)如附图3中(b)所示,横坐标为错误拒绝率FRR,纵坐标为错误接受率FAR,虚线对应PCA方法的ROC曲线,粗实线对应ICPIF方法。细实线是表示FFR和FAR相等的点。粗实线大部分在虚线下方,这说明就人耳认证来说,PCA方法性能优于ICPIF方法。在数值上,基于ICPIF算法的等错误率(Equal Error Rate,EER)为1.4%,基于PCA方法的等错误率仅为0.5%,优于Ping Yan等人得到的1.2%。 下面比较一下在UND人耳库上所做三维人耳识别方法的识别时间、识别率以及认证的等错误率,如表4所示。 可以看出,所提议的基于PCA的方法不论识别率、识别时间还是认证的等错误率都显著优于现有的文献。基于PCA的方法识别速度最快,认证等错误率最低,基于ICPIF的方法识别率最高。 表4三维人耳识别方法比较