基于特征分块的赤足足迹人身识别算法

2024-02-28 13:50金益锋赵晓蕊崔均健陈伟卿王国栋蒋雪梅
科学技术与工程 2024年3期
关键词:人身分块足迹

金益锋, 赵晓蕊, 崔均健, 陈伟卿, 王国栋, 蒋雪梅*

(1.公安部鉴定中心, 北京 100038; 2.中国人民公安大学侦查学院, 北京 100038;3.大连恒锐科技股份有限公司, 大连 116085)

在案件的侦查过程中,现场遗留足迹为案件的侦查方向提供了有效的线索。赤足足迹承载着人体丰富的生理特征和行为特征,自身具有较强的特定性和稳定性[1],且又因其非刻意、无感知、普遍性等遗留特点,在刑侦领域有着巨大的应用潜力。足迹来源于对象整体的行为,可以反映对象的身份特点以及行为习惯。但足迹易受对象心理状态、身体状况、环境等因素的影响,同一人的足迹会发生一定的变形,从而导致足迹识别的难度加大。足迹分析已经在刑事侦查领域与病理学领域得到了广泛的关注,通过对现场足迹的梳理,可更好重建犯罪现场,加快案件侦破速度。国内外学者对足迹分析开展了多方面的技术研究。

传统的赤足足迹人身识别大多数是基于足迹结构、动力形态等特征。Khokher等[2]根据足迹轮廓提取足长等特征,分析了赤足特征与人身的强相关性。Kennedy等[3]等利用脚趾到脚跟的长度、脚跟的中心等38个特征量来对足迹进行表示。Wang等[4]将几何形状光谱特征(geometrical shape spectrum representation,GSSR)与图像压力径向梯度特征(pressure radial gradient map, PRGM)进行融合,并采用区域置信度的方法来计算足迹之间的相似度。高毅等[5]采用三维形貌重构系统采集足迹,提取足迹的区域关系特征和形状长度特征,利用支持向量机进行特征的比对,实现立体足迹身份识别。

深度学习是机器学习领域一个新的研究方向,随着深度学习技术的不断成熟,在数据挖掘、自然语言处理、图像识别等领域都取得了突破性的成果。在数据量充足的情况下,与经典的特征提取方法相比,利用深度学习提取特征不仅简单易行,且获得的特征更稳定、区分度更高。随着深度学习技术的不断发展,卷积神经网络能够提取图像深层次的特征。VGG[6]、AlexNet[7]、ResNet[8]等网络的提出,让深度学习在生物识别的各个领域得到了广泛的应用。朱雅乔等[9]针对高分辨率图像下目标所占面积小,检测效果较低、实时性较差的问题,提出了一种基于LDCF-ResNet50的深度学习模型检测方法,有效提升了行人检测的准确率。金益锋等[10]将深度学习用于跨清晰度的鞋面检索当中,通过加入网络分支、特定损失函数、随机变换等手段,实现了从足迹图像到视频中锁定犯罪嫌疑人的应用。在赤足足迹识别领域,深度学习也获得了越来越多关注。鲍文霞等[11]对力触觉足迹采用VGG19卷积神经网络进行特征提取,并采用空间聚合加权注意力机制进行足迹识别。王乔等[12]将传统的足型与足迹形态特征与卷积神经网络获取的图像卷积特征进行结合,并通过支持向量机来达到人身识别的目的。金益锋等[13]以ResNet50作为基础网络并结合水平金字塔匹配(horizontal pyramid matching, HPM)技术提取赤足足迹的多尺度特征进行赤足足迹的人身识别。高毅等[14]以立体赤足足迹作为研究对象,获取三维足迹触觉步态特征信息,运用反向传播(back propagation,BP)神经网络,实现步态特征人身识别。朱明等[15]提出了一种基于深度度量学习的赤足迹图像检索算法,该算法采用了动态难样本三元组,可有效提升检索性能。

现将深度学习技术应用于赤足足迹识别,采用ResNet50作为基础网络,对特征层进行分块处理,期望获得高稳定性、高区分度的特征用于赤足人身识别,从而实现提高赤足足迹人身识别算法准确率的目的。

1 足迹数据获取及预处理

1.1 数据采集

本次实验数据来源于大连恒锐成趟采集仪,采集到的足迹图像如图1所示。从图1可以看出,成趟足迹采集仪可以获取到自然行走过程中的多枚赤足足迹,足迹清晰、分布均匀。

图1 赤足成趟足迹图像Fig.1 The barefoot footprint image from a trip device

1.2 数据预处理

对赤足成趟足迹进行预处理,获得处理后的图像如图2所示。

图2 预处理后的赤足足迹图像Fig.2 The barefoot footprint image after preprocessing

(1)找到赤足足迹的位置并将图像裁剪出来。

(2)将处于拼接缝处的足迹进行剔除。

(3)方向归一化,对赤足脚尖朝下的图片做上下翻转处理,使其脚尖朝上。

(4)尺寸归一化,以足迹中心为基准,裁剪出399×886像素大小的图像。

(5)图像反色。

2 算法解析

深度残差网络(deep residual network,ResNet)的提出在卷积神经网络图像史上有着深远的意义。在深度学习中,网络的深度对模型的性能至关重要,随着网络层数的增加,网络可以获取到更复杂的特征。但问题也随之而来,深层的网络容易出现退化问题,即随着网络的加深,网络的准确率甚至会出现下降的情况。ResNet通过残差学习来解决退化问题,它将残差学习加入到传统的卷积神经网络中,从而可以实现深层网络的训练。ResNet优秀的性能使其在图像检测、图像分割等领域获得了广泛的应用,ResNet50相对简洁的结构使其经常被作为基础网络使用。在赤足足迹人身识别中,同样采用ResNet50作为基础网络,考虑到足迹的长宽比问题,将输入图像大小设置为576×224×3,对应的网络层级结构及特征图大小如表1所示。

表1 ResNet50网络结构

对ResNet50提取的特征利用CAM进行可视化(图3),发现不同的赤足足迹图特征的关注点存在一定的差异,但一般都会集中在脚趾、前脚掌、脚跟等区域。基于此,尝试分别获取足迹不同部位的特征,从而使得特征包含的信息量更加丰富且更具可识别性,再将局部特征拼接起来组成足迹的整体特征用来进行人身识别。

图3 特征可视化图Fig.3 A visualization of the feature

2.1 基于图像分块的赤足足迹人身识别算法

基于图像分块的赤足人身识别算法(简称“图像分块”)是指对足迹图像本身进行分块,对分块图像进行训练。具体操作如下,将赤足足迹缩放到576×224,然后将其切分为有重合区域的上、中、下三块,每块图像尺寸为224×224,将此3小块图像同时输入到ResNet50网络中(网络参数共享)进行训练。网络的整体框架如图4所示。

H为图像高度;W为图像宽度图4 图像分块网络整体框架Fig.4 The structure of image block network

图像分块网络采用的网络层结构与表1结构基本一致,区别在于输入图像大小不同,Conv5_x层输入的特征T大小变为了7×7×2 048维,经过平均池化获得的列特征G大小为2 048维,再经过3个全连接层(fully-connected,FC),最终获得类别的概率分布。

2.2 基于特征分块的赤足足迹人身识别算法

基于特征分块的赤足人身识别算法(简称特征分块)是指对基础网络获得的特征进行分块处理,对分块特征通过具有相同结构(参数不共享)的分类器分别获得对应的类别概率分布。网络的整体框架如图5所示。

图5 特征分块网络整体框架Fig.5 The structure of feature partitioning network

特征分块网络采用的网络层结构与表1结构相似,基础网络部分完全一致,对Conv5_x层获得的大小为18×7×2 048维的特征T采用自适应平均池化层获得3×1×2 048维的特征,为了实现特征分块,将特征按行取出获得3个大小为2 048维的列向量G,将3个列向量分别送入三个分类器中获得类别的概率分布。分类器包含两个FC层,首先将2 048维的列向量G通过第一个FC层降为256维,再通过第二个FC层获得分类概率分布。为了加速网络的收敛速度在第一个FC层之后增加了批归一化(batch normalization,BN)处理,为了提高网络的泛化能力,抑制过拟合现象,增加了dropout操作。

2.3 数据增强

数据增强是指通过增加训练数据的样本数和多样性,提高模型的鲁棒性,从而达到提高模型性能的目的。本文中采用的数据增强方式有:

(1)左右随机翻转。

(2)0°~5°随机角度旋转。

(3)0.125倍的随机平移。

(4)0.9~1.1倍的随机缩放。

(5)图像灰度归一化。

2.4 损失函数

交叉熵(cross entropy, CE)可以衡量同一个随机变量中两个不同概率分布的差异程度,在深度学习中经常通过交叉熵来表示真实概率分布与预测概率分布之间的差异。交叉熵的值越小,模型预测效果越好。CE loss的计算公式为

(1)

式(1)中:M为指类别数量;N为指样本数量;yic为符号函数,如果样本i的真实类别为c则取1,否则取0;pic为指观测样本i属于类别c的预测概率。

三元组损失函数(triplet loss)[16]是为了使得同类别标签的特征在空间位置上尽量靠近,不同类别标签的特征在特征空间上尽量远离,为了避免特征的样本聚合到特别小的空间,要求不同类别之间的距离比相同类别之间的距离大于一个设定的阈值。Triplet loss的公式为

Ltriplet=max[d(a,p)-d(a,n)+margin,0]

(2)

式(2)中:d(a,p)为具有相同类别标签的样本a与样本p之间距离;d(a,n)为具有不同类别标签的样本a与样本n之间的距离;margin为设定的距离阈值。

本文中分别采用CE loss和triplet loss作为损失函数对特征进行度量学习。

3 实验

3.1 实验环境

实验网络模型均在pytorch中搭建,模型训练所用计算机带有2块GTX 2080Ti显卡,使用SGD优化器进行训练,初始学习率设置为0.01,损失函数为CE loss和triplet loss。在第90次迭代和第150次迭代时分别将学习率降为之前的1/10,最终学习率固定在0.000 1,每次迭代的批处理大小为32。

3.2 评价指标

实验结果采用识别准确率作为足迹识别的评价指标,识别准确率是指正确分类足迹样本所占总样本的比例。

3.3 数据集

从成趟数据库中,随机选取了2 000人作为训练库,3 000人作为测试库,训练库与测试库无类别重合。将同一人的左右脚作为两个不同的类别进行处理,即训练库2 000人,共4 000类,测试库3 000人,共6 000类。训练库每类足迹图像5~9幅不等,共32 157幅。从3 000人的测试库中,随机抽取500人,每人左右脚各1幅,共1 000幅构成待查询图像集query,从剩余的测试库图像中,每人随机抽取左右脚各2幅,共6 000幅构成参考图像集gallery。

3.4 实验结果及分析

为了验证图像分块和特征分块对于赤足足迹人身识别算法的影响,进行了多组实验,实验结果如表2所示。 ResNet算法、图像分块算法、特征分块算法采用CE loss,取平均池化层之后的特征,图像分块算法和特征分块算法的整体特征是由三个特征列向量归一化后进行拼接获得的,特征比对采用余弦相似度。

表2 不同基础网络下的对比实验结果Table 2 Comparative experiment results of different basic networks

从表2可以看出,在3个不同的ResNet基础网络上,图像分块算法与ResNet算法相比,性能稍有提高,特征分块算法性能明显优于ResNet算法和图像分块算法,特征分块对赤足足迹人身识别是有效的。随着基础网络层数的加深,对应算法的性能也会有所提升,但提升幅度会逐渐降低。在ResNet50基础网络上,特征分块的赤足足迹人身识别准确率达到了98.20%。

为了验证不同损失函数下,特征分块依旧是有效的,本文增加了一组对比实验,即加入triplet loss,实验结果如表3所示。从结果可以看出,ResNet算法和特征分块算法,采用triplet loss均带来了性能的小幅提升。

表3 不同损失函数下的对比实验结果Table 3 Comparative experiment results of different loss functions

目前赤足人身识别算法主要分为两个方向,基于传统特征的方法和基于深度学习的方法。为了验证本文算法的有效性,分别选取了基于赤足足迹形状特征(GSSR)与图像压力径向梯度特征(PRGM)进行融合的算法与基于ResNet50网络的多尺度特征下的赤足足迹图像人身识别算法与本文提出的特征分块算法识别结果进行对比,结果如表4所示。从对比结果可见,本文提出的算法在赤足人身识别性能上优于其它两种算法,进一步证明了特征分块在赤足人身识别上的有效性。

表4 不同算法下的对比实验结果Table 4 Comparative experiment results of different algorithms

4 总结和展望

将深度学习应用于赤足人身识别中,以多种ResNet模型作为基础网络,在特征层面进行了分块处理,将分块特征归一化拼接后用来进行人身识别。实验表明,在多种ResNet模型、不同损失函数下,特征分块均能带来性能的提升。随着ResNet网络深度的增加,算法性能也会随之提升,但模型大小也会相应增加。

足迹是案发现场常见的证据之一,利用赤足人身识别技术可以对现场赤足足迹进行梳理,从而更好重建犯罪现场,为案件侦查提供线索和方向,加快案件侦破速度。赤足人身识别技术可用于案件串并,将采集到的现场赤足足迹与嫌疑人库中的赤足足迹进行对比,查找与该足迹对应的嫌疑人,提高案件侦破效率。基于赤足足迹的人身识别方法,可以丰富人身生物识别信息,满足多模态人身识别的技术需要,可应用于安防、安检等场景。赤足人身识别还可为完善基于穿鞋足迹人身识别技术的研究提供支撑,进一步完善其理论的科学性和解释性,更大地发挥足迹在侦查和诉讼中的价值。

未来可在更多的方面对算法性能进行提升,如采用更优化的网络结构、增加不同的损失函数、加入注意力机制等。赤足足迹的残缺以及形变依旧是将赤足足迹识别技术推广到应用层面所面临的难题。

猜你喜欢
人身分块足迹
雄黄酒
分块矩阵在线性代数中的应用
成长足迹
足迹
论铁路旅客人身损害赔偿的完善
反三角分块矩阵Drazin逆新的表示
余数
足迹
基于自适应中值滤波的分块压缩感知人脸识别
基于多分辨率半边的分块LOD模型无缝表达