论文部分内容阅读
生物特征识别是指利用人体固有的生理特征(指纹、静脉、虹膜)或者行为特征进行身份识别的技术,广泛应用于智能家居、智能安防等领域。赤足是人体的重要组成部分之一,具有唯一性、稳定性和易采集性,是一种有效安全的生物特征。赤足识别可被广泛应用到考勤系统、门禁系统和报警系统中,是一种应用前景广泛的生物特征识别。然而目前为止,关于赤足识别的系统性研究较少。因此,本文对基于赤足足底纹理的身份识别算法进行了研究。下面是本文内容的简要概述。1.赤足数据库构建本文构建了一个包含100个人的赤足数据集。每个人拍摄10幅图像,总共拍摄了1000幅的赤足图。使用数码相机进行拍摄,拍摄所有的赤足图像时需要添加特殊的照明。赤足图像使用JPEG格式进行保存,尺寸为4128x2322像素,分辨率为72 dpi。赤足图像的主要来源是20到35岁的中国学生或者外国学生。其中,外国学生占60%,中国学生占40%。除此之外,数据集还记录了每个人的年龄、身高和体重等信息,以便更好地进行实验测试,获得更准确的结果。赤足图像获取的注意事项如下所示:1)要求每个人脱掉鞋袜,以便对赤足拍摄图像;2)如果一个人的脚底有污垢,他或者她需要清除污垢,以便影响赤足识别的结果;3)在2-3分钟内以随机的时间间隔拍摄赤足图像10次;4)确保每个人都是自愿提供赤足图像,即不存在强迫情况;5)在距离赤足的15-20cm时拍摄图像。将所有采集的赤足图像构建成一个名为NALIN_SET的数据集。2.赤足图像预处理在本论文中,在进行足底匹配之前,需要完成几个预处理步骤。所涉及的第一个预处理步骤是将捕获的足底图像的背景变为黑色,并进行裁剪。然后,将这些图像重新调整大小并转化为灰度图。之后还需要进行图像增强,本文采用自适应直方图均衡的方法以增加足底图像对比度。最后为获得足底的骨架图像,使用Canny算子进行边缘检测,并为数据集中的每个足底图像选择特定阈值。2.1更改图像背景并进行裁剪因为每幅赤足图像是在不同的地点和位置进行获取的,所以拍摄到的赤足图像具有不同而且复杂的图像背景。因此,需要对赤足图像进行预处理,将所有赤足图像的背景均变成黑色,使得所有赤足图像具有统一的标准。赤足图像中的脊和谷的清晰度较低,背景所占比例较大。因此,我们将赤足图像进行裁剪,去除大部分背景的干扰,增加图像的对比度。2.2调整图像大小和灰度图像因为相机拍摄到的赤足在图像中的大小不一,因此需要将图像大小重新调整,使得所有赤足图像具有相同的大小。数据集中的赤足图像的大小为4128x2322,分辨率太大导致计算量倍增,因此本文将图像大小重新调整到441x441。拍摄的图像是RGB图像,由于提取的特征与颜色无关,我们将其转换成灰度图像。2.3使用低通滤波器去除噪声当使用相机拍摄赤足图像时,赤足图像中会包含一些噪声。因此,本文选择对灰度化的赤足图像使用低通滤波器去除噪声。其中,低通滤波器能够自适应地调整参数,以满足不同赤足图像的需求,保留赤足图像的细节信息。在使用低通滤波器时,建议使用较小的方差,以便获得更好地图像平滑效果。因为低通滤波器默认的参数[3,3]的平滑效果较差,所以本文选择使用[2,2]作为低通滤波器的参数。低通滤波器通过利用每个像素点周围NxM领域的像素值来确定赤足图像局部均值μ和均方差σ,从而自适应地对赤足图像进行处理。具体的处理过程如(2.1)和(2.2)所示:其中,η表示赤足图像中每个像素点的NxM局部邻域。2.4赤足图像增强因为相机拍摄的赤足图像的质量较差,所以要增加赤足图像中脚底花纹中脊和谷之间的对比,消除掉光线不足带来的脊断裂的影响。使用自适应直方图均衡化的方式加强赤足图像中脊的结构模式。与全局直方图均衡化相比,自适应直方图均衡化的处理效果更好。因为图像中足底花纹的重要细节部分的对比度通常较小,所以有必要对赤足图像进行自适应直方图均衡化处理,改善赤足图像的对比度,使得脊的结构更加明显。2.5边缘检测为了获得赤足图像中完整的足底花纹图像和实现脊和分叉的提取,使用Canny算子进行边缘检测。使用Canny算子进行边缘检测时,需要为每幅赤足图像设定双阈值。通过边缘检测去除多余数据并保留赤足图像的脚底花纹,以便于提取脊和分叉。在这个过程中,必须缩小赤足图像的尺寸进行边缘检测,去除多余数据,减少计算量。3.特征提取在进行足底图像识别时,特征的提取是非常关键的一步。它主要涉及执行一系列程序,提取所需输入足底图像的相关数据。提取的这些特征在其分类方面需要是具有代表性的,能够体现足底图像的本质的特征和独特的特征。在本论文中,提取了几种不同的特征,由于提取的特征不同,足底图像必须通过不同的预处理方法来提高其质量。在本论文中,由于局部描述子的众多优点,本文使用了局部描述子。本文从足底图像的感兴趣区域提取了部纹理图案特征,主要包括基于细节的纹理信息,HOG特征向量,LBP向量特征和SURF特征。本文解释了细节点表示算法,以及如何使用交叉数算法检测和提取它们,并且还描述了如何从脊周围的块区域提取LBP,HOG和SURF特征。特征提取过程为:首先,提取脊和分叉的细节点;然后在脊周围裁剪块区域;之后,在裁剪区域中提取HOG,LBP和SURF三个特征。3.1细节表示就足底而言,细节是指人的足底中的主要兴趣点。细节也可以被称为一只脚的任何小的实质细节。每个人的足底被认为是具有独特性的,独一无二的并且在一定时期内不会轻易变化。通常脊形状图案存在于每个人的足底部。值得关注的细节可能包括:1)脊的结束部分,也就是脊突然停止的地方。2)脊的分叉部分,也就是当脊分裂或偏离成两个分支脊时的点。3)其他细节是上述两种的典型组合。这些可能包括:(1)短脊是一种起始的脊,这类脊起止距离较短且没有分支;(2)围脊是由两段分开的脊和它们重新连接而成的单脊组成的唯一的脊;(3)Spur的特征在于将分叉发散的短脊汇聚,变成细长的长脊;(4)跨越脊是指在两个平行的脊之间延伸的短脊。然而,两个最突出的细节脊特征是脊结束和脊分叉。并且在实施匹配步骤时,关注的重点就在于脊结束和脊分叉。细节位置由足底图像的坐标位置表示,该坐标位置是x和y坐标。3.2脊特征提取尽管在检测和标记脊的过程中,脊的形状有细微的变动,但是使用交叉数算法进行脊提取的效果仍然很好。在脊标记的过程中,在x方向和y方向上分别忽略边界的10个像素。在标记过程中,因为脊结构是八邻域结构,所以使用Canny算子检测对赤足图像进行检测。然后使用3x3窗口来检查赤足图像中每个像素点P的邻域,计算点P的交叉数(CN)来提取细节特征。其中,交叉数(CN)是指点P的八邻域中相邻像素对之间差的总和的一半。通过计算交叉数(CN)的数量,脊像素可以被分类成三种点:脊结束点、分叉点和非细节点,如CN为1表示该店为脊结束点,CN为3为分叉点。如果检测到的脊的个数很多,那么精度可能会很高。计算CN的公式如(3.1)所示:其中,pi是点P邻域的像素值。使用3x3窗口进行脊检测与标记的效果最好。具体的检测与标记过程如下所示:如果中心值为1且周围有3个邻居有值,则认为这个像素点为分叉点;如果中心值为1且周围只有1个邻居,则认为这个点是脊结束点。说明如何使用3x3窗口检测分叉和脊结束的示例如图3.1所示。3.3裁剪脊周围的块区域因为脊的匹配具有更好的精确度,所以在脊点周围进行裁剪区域时仅对脊进行了考虑。除此之外,匹配过程中若对脊和分叉都进行了考虑,那么算法会无休止地运行下去,导致空间不足,产生Matlab程序的破坏。因此,对脊周围的区域进行裁剪,仅通过脊的特征进行匹配。3.4块区域中HOG,LBP和SURF特征的提取在围绕脊周围的块区域被裁剪之后,从这些块区域中提取不同类型的特征。首先,提取HOG特征,但HOG特征的精度较低。由于LBP特征具有旋转不变性,所以考虑提取LBP特征,但是仅使用LBP特征进行识别的话,精度还是很低。然后,将HOG特征和LBP特征组合起来,适用欧几里得距离进行匹配,性能有所提高,提高到49.5%。然而,对于基于赤足的身份识别算法来说,准确率仍然不够高。因此,本文引入了具有尺度、旋转和平移不变性的SURF特征以获得更好地结果,从而提高算法的性能。虽然在使用SURF特征进行提取特征时选择了较低的阈值0,以便能从每幅赤足图像的每个块区域检测到更多特征。因为默认的SURF特征的阈值1000检测到的特征较少,所以需要将其减少到0,此时算法性能为31%。将HOG特征和SURF特征融合进行识别,此时算法性能达到48%。然后将HOG特征和SURF特征的距离匹配结果与HOG特征和LBP特征的距离匹配结果进行融合以提高算法性能,即将HOG特征、LBP特征和SURF特征的距离相结合进行匹配,此时算法性能提高到62%。表3.2展示了不同算法的性能。4.足底匹配与识别就足底识别而言,匹配是一个关键过程,并且为了获得更高的精度,需要进行合理的脚底匹配。尽管已经有了很多脚底匹配相关的各种研究,但是仍然存在许多阻碍有效匹配过程的问题,这些问题可能包括以下内容。1)拍摄的图像质量较差。在拍摄足底图像时,发现其中一些有瘀伤,污垢,汗湿和脚底干燥。这类东西可能影响脊结构,因此导致产生错误的细节并且难以获得真正的匹配分数。此外,从劣质足底图像获得真正的图像也变得具有挑战性,这会在特征提取和匹配过程中导致更多错误。2)相机质量。用于拍摄脚底图像的大多数数码相机的分辨率较低,并且即使使用了闪光灯也可能无法获得所有细节纹理特征,这导致一些信息的遗漏。进而在特征提取期间导致不准确的结果。3)表示限制。大多数研究者认为足底图像中存在着重要的信息并且应该被用于匹配阶段。由于现如今,在匹配层面极少有研究该信息的方法。更多的基于细节的算法通常忽略了足底图像中存在的图形和纹理信息,而一些基于纹理的方法没能完全利用细节的位置和方向。4)传感器的尺寸。用于捕获足底图像的大多数传感器照明有限,因此大多数细节信息未被完全获得。并且传感器区域与匹配的准确度有关,处于更敏感传感器区域的足部区域将捕获更多的纹理和细节特征,因此在匹配过程中导致更好的准确性。5)除了存在虚假细节或实际细节的丢失之外,标记的细节位置和方向的错误计算可能对导致细节一致性中大量错误,因此降低识别阶段的准确性。4.1赤足识别算法过程本节阐述了为实现基于赤足的身份识别所采取的步骤,基于足底纹的身份识别算法流程见图4.1。相机拍摄的赤足图像的背景是复杂且不均匀的,因此需要将所有的赤足图像都变成均匀的黑色背景并进行裁剪,使得赤足图像的对比度更大,脊图案更加清晰。本文自建了一个NALIN_SET数据集,由来自100个人的接近1000幅赤足图像组成。然后进入到预过程,将赤足图像变为灰度图像并进行尺寸调整,以获得赤足图像的感兴趣区域。通常情况下由数码相机拍摄的赤足图像会受到噪声的影响,因此需要采取某些措施来消除赤足图像中的噪声。为了在脊特征提取期间去除掉光照的影响,赤足图像需要先进行自适应直方图均衡化,再使用Canny算子进行边缘检测,并为每幅赤足图像设定双阈值。然后使用交叉数算法进行脊特征提取。再对脊周围的区域进行裁剪,对这些裁剪区域均提取HOG特征、LBP特征和SURF特征。本文采用欧几里得距离实现匹配,计算赤足图像间三个特征向量间的距离并求和作为加权距离,计算最小的加权距离。然后获得数据集中每幅赤足图像的平均距离,即加权分数。最后使用附加标签的升序算法和KNN算法对加权分数进行分类,从而实现基于赤足的身份识别。4.2基于欧氏距离的匹配本文提出了一种基于欧几里得距离的赤足匹配的方法。该匹配算法使用局部特征描述子HOG特征、LBP特征和SURF特征的加权分数来识别赤足图像。下面介绍算法实现用于识别的加权分数所采取的步骤。足底的匹配见图4.2。1)计算围绕脊的41x41大小的块区域的HOG特征、LBP特征和SURF特征的距离。HOG,LBP以及SURF之间的距离由数据集中所有赤足底图像的区域i和区域j计算得到。如公式(4.1),(4.2),(4.3)所示,其中A and B表示足底图像。H(i,j)=‖HAi-HBj‖2(4.1)其中,HAi和HBj分别表示块区域中的HOG特征。L(i,j)=‖LAi-LBj‖2(4.2)其中,LAi和LBj分别表示块区域中的LBP特征。S(i,j)=‖SAi-SBj‖2(4.3)其中,SAi和SBj分别表示块区域中的SURF特征。2)获得从区域i到块区域j=1…k的HOG,LBP和SURF距离,并将它们相加在一起以得到加权距离d(i,j)如(4.4)所示:d(i,j)=H(i,j)+L(i,j)+S(i,j)(4.4)其中,H(i,j)是HOG特征的距离,L(i,j)是HOG特征的距离,S(i,j)是SURF特征的距离。3)公式(4.5)用于计算来自脊周围的每个块区域Ri的加权距离的最小值。D(Ri,B)=min{d(i,j)|j=1...k|}(4.5)其中,d(i,j)是HOG,LBP和SURF距离的加权距离。4)使用(4.6)中所示的等式计算每个赤足图像的平均距离。(?)其中,D(Ri,B)是块区域的HOG,LBP和SURF最小距离。5)按升序排序及基于带标签的加权分数的分类。6)使用KNN进行分类。5.实验结果为了测试所设计算法的性能,将算法在名为NALIN_SET的数据集上进行实验评估。NALIN_SET数据集是由100个人的接近1000幅赤足图像组成。基于赤足的身份识别算法具有不同的实验性能,因为在进行特征提取的匹配阶段中,使用的脊的数量会发生变化,然后使用不同K值的KNN分类进行评估以确定算法性能。5.1脊数的变化在从赤足图像中提取脊特征之后,在脊的周围进行切割提取块区域,然后在大小为41x41的块区域内提取HOG特征、LBP特征和SURF特征。在匹配之前,消除了没有脊特征的块区域。那么在匹配阶段,脊特征数量就随之产生了变化。5.2.KNN 分类使用KNN分类器来验证算法性能。在NALIN_SET数据集中使用不同的K值的KNN进行分类评价。其中NALIN SET数据集由100个人的1000幅的赤足图像组成,其中每个人有10幅赤足图像。使用HOG特征、LBP特征和SURF特征的加权分数的匹配分数在不同的K值(1,3,5和7)下的算法性能如下表5.1所示。对于所设计的基于足底的个人识别算法,实验结果表明,K=5时效果最好,识别准确率为62%。将不同的算法和本文所提出的算法进行性能比较,如表5.2所示。经测试,本文算法的识别准确率为62%。本文提出了一种赤足匹配的算法,该算法使用局部特征描述子HOG特征、LBP特征和SURF特征的加权分数来识别赤足图像。由表5.2可以看出,本文提出的算法识别准确率还有待提升,算法的局限性主要体现在足底数据及特征点提取方法上。