APP下载

基于微调VGG-16的现场鞋印检索算法

2020-10-27史文韬唐云祁

关键词:鞋印犯罪现场微调

史文韬, 唐云祁

(中国人民公安大学侦查学院, 北京 100038)

0 引言

鞋印检索是法庭科学领域的一个重要研究方向。鞋印检索是指从鞋印数据库中,检索到与嫌疑鞋印花纹相同的鞋印。需要强调,这里的相同,仅仅指种类的相同,而非个体的同一。嫌疑鞋印,可以来源于犯罪现场的遗留鞋印,也可以从嫌疑人穿的鞋上直接提取。鞋印数据库,一般包括公安机关犯罪现场勘查系统中存档的涉案鞋印和公安机关直接对接鞋生产厂家收集的所有流通市场的鞋的鞋印,按照国内刑事技术及司法鉴定领域的惯例,称这类鞋印为样本鞋印。

鞋印检索在公安工作中有两种应用模式:一是串并案模式。将犯罪现场提取到的待检索鞋印与各级公安机关部署的犯罪现场鞋印数据库比对,寻找同种花纹鞋印,实现多案串并。在这种模式下,待比对鞋印数据库由犯罪现场勘查获得的鞋印组成,鞋印质量层次不齐,花纹通常残缺、不完整(如图1所示),鞋印检索的难度一般很大。二是以印找鞋模式。将犯罪现场鞋印输入各级公安机关部署的鞋样本库进行检索,寻找遗留该鞋印的鞋型信息,一方面通过“监控+鞋印”技战法追踪嫌疑人,另一方面获得有关嫌疑人所穿鞋的品牌、种类、外观、价格等信息,为嫌疑人刻画提供线索。在这种模式中,样本鞋印为公安机关直接对接鞋生产厂家收集的所有流通市场的鞋的鞋印,鞋印清晰完整(如图2所示)。

图1 犯罪现场鞋印及其二值图

图2 鞋样本库中的鞋印及其二值图

公安机关在“破小案,暖民心”的要求下,加大对以入室盗窃为代表的低成本、作案连续、案发率高的小型侵财案件的打击力度,而鞋印作为此类现场遗留率最高的物证,具有很大的使用潜力。通过现场与视频侦查结合,以中心现场为中心向各个关联方向发散进行辐射状空间勘查[2]是现场勘查工作的发展趋势。随着视频侦查技术和图像识别技术的互相推进发展,鞋印检索在合成作战中的作用愈加重要,具备较强的研究价值。

1 相关工作

鞋印检索算法的核心问题是提取稳定的鞋印花纹特征,以SIFT、变换域等方法为基础提取的传统特征在鞋印检索算法中已经获得成功应用,其中比较经典的工作包括:改进的纯相位相关函数(Modified Phase-Only-Correlation Function,MPOC)[3]、多尺度的Harris特征检测子和SIFT特征描述符[4]、基于小波- 傅利叶变换的全局不变特征[5]、主动基模型(Active Basis Model, ABM)[6]。近年来,随着卷积神经网络在人脸识别、行人重识别领域的应用,研究人员也开始研究卷积神经网络提取的深度特征进行鞋印检索。

2016年,张弛等[8]扩充鞋印数据集至183类共200 255幅鞋印图片,使用LeNet- 5网络进行分类,前5名的分类准确率为99.49%。需要注意的是,在预实验中我们也发现鞋印图片分类的难度较小,使用LeNet- 5这样简单的网络就能得到很好的分类结果,但是与Alexnet、GoogLeNet、VGG- net、Resnet这些更深层的卷积神经网络相比,深层网络提取的特征检索精度更高,这也是本文选择VGG- 16作为特征提取网络的原因之一。

2017年,Junjian Cui等[7]使用预训练的VGG- 16网络的pool5、fc6、relu6、fc7、relu7层的输出作为特征,称之为“Neural Code”,比较了不同层的特征,发现卷积层的输出用于检索精度更高;使用PCA算法对pool5的特征降低到不同维度,发现降低到原特征的95%时精度最高,在1 000幅嫌疑鞋印和37 886幅样本鞋印的数据库中,top1和top10的识别率分别是64.4%和87.9%。

2018年,Kong等[9]使用预训练的Resnet50网络提取鞋印图片的特征,提出了一种多通道归一化互相关(Multi-Channel Normalized Cross-Correlation ,MCNCC)的相似性度量方法,该方法显著提高了检索效果,在FID- 300数据集上top1%和top10%的识别率分别为79.67%和89%。

2018年,Junjian Cui等[10]使用深度置信网络(Deep Belief Networks, DBN)来提取鞋印的局部特征,并使用空间金字塔匹配(Spatial Pyramid Matching, SPM)来获得局部到全局的匹配分数,测试时使用536幅来自犯罪现场的嫌疑鞋印和一个包含34 768幅样本鞋印的数据库,top10和top100的识别率分别是65.67%和81.16%。

2019年,Ma Zhanyu等[11]提出多部分加权卷积神经网络(Multi-Part Weighted Convolutional Neural Network,MP- CNN)用于鞋印检索,该网络是一个以VGG- 19模型为基础的孪生神经网络,并在VGG- 19最后添加一层128维的全连接层输出特征向量;训练时输入一幅嫌疑鞋印、一幅正样本鞋印和一幅负同类样本鞋印,每幅鞋印裁剪为上下两部分分别输入网络,上下两部分的特征向量根据每部分的有效信息量的比值加权融合;测试时把FID- 300数据集按8∶2的比例分为训练集和测试集,top1%和top10%的识别率分别为61.02%和89.83%。

目前基于深度学习的鞋印检索算法的基本模式是使用预训练的卷积神经网络作为特征提取器,通过比较嫌疑鞋印和样本鞋印的特征距离获得检索结果,但是现有算法都没有使用鞋印数据训练适用鞋印检索问题的卷积神经网络。一方面,由于鞋印数据一般为公安机关所有,获取难度大;另一方面,即使能够获得公安机关的鞋印数据,相同花纹的鞋印图片数量也不多,达不到从零开始训练卷积神经网络的要求。基于这一问题,本文建立了一个432类共2 827幅图片的鞋印数据集并进行数据增强,使用扩充后的数据微调预训练的VGG- 16并提取鞋印特征,与直接使用预训练模型相比,检索精度有了明显的提升。

2 鞋印数据集构建

2.1 训练数据集

本文从某市公安机关提供的8个月内所有犯罪现场鞋印和嫌疑人标准采集的鞋印中筛选出432类共2 827幅鞋印建立训练数据子集,所有鞋印图片均为二值图,与公安机关鞋印数据库录入标准一致。其中210类鞋印均为嫌疑人标准采集鞋印,每类4幅;其余222类鞋印包含嫌疑人标准采集鞋印和与之对应的犯罪现场鞋印,每类5~50幅。数据示例如图3所示。

图3 训练数据示例

由于鞋印数据集中大多数为嫌疑人标准采集鞋印,图片清晰度高,鞋印花纹完整。为了使训练数据更好地模拟真实犯罪现场鞋印,本文对原始数据进行数据增强,增强流程分为两个阶段:第一步为低质量处理。对图片进行中值滤波处理,Sobel算子提取边缘图和添加高斯噪声,模拟犯罪现场鞋印可辨识性差的状态。第二步为裁剪。根据实战中的犯罪现场鞋印形态,本文进行8种不同的裁剪来模拟犯罪现场鞋印的不完整性,如图4所示。经过数据增强,每幅图片扩增81幅,最后用于微调的数据集包含436类,每类324~4 050幅,一共228 987幅鞋印图像。

图4 8种裁剪模式。(a)原图;(b)足弓足跟缺失;(c)足趾足弓缺失;(d)足趾缺失;(e)足跟缺失;(f)足弓缺失;(g)左侧缺失;(h)右侧缺失;(i)周边缺失

2.2 测试数据集

我们还建立了一个用于测试鞋印检索算法的测试数据集,包含200对鞋印,其中鞋印的种类均未在训练数据集中出现,所有图片均为二值图;每类两幅,均为犯罪现场鞋印,一幅嫌疑鞋印和一幅样本鞋印;嫌疑鞋印质量较低,不完整,样本鞋印质量较高,基本完整。我们另外收集了4 800幅犯罪现场鞋印作为混淆样本与200幅样本鞋印构成鞋印数据库,所有混淆样本也均为二值图。由于我们的测试数据全部使用了犯罪现场鞋印,而这类鞋印花纹不完整、花纹可辨识性差,本文实际上是在串并案模式下进行实验。

3 基于微调VGG- 16的鞋印检索算法

3.1 VGG- 16简介

VGG- 16是Simonyan等[18]提出的卷积神经网络,该网络主要探索了加深网络层数对网络性能的影响。它包括5组共13个卷积层和3个全连接层(如图5所示),图片输入尺寸为224×224×3,每一组卷积后有一层2×2的池化层将特征图长宽缩小1/2,通道数每组卷积增大1/2,在pool5输出7×7×512的特征图,然后与两层4 096维的全连接层相连,最后一层全连接层维数与数据类别数相同。卷积层和全连接层的输出均经过Relu函数激活,全连接层采用了0.5的dropout减小过拟合。VGG- 16最大特点是通过加深网络深度和使用小尺寸卷积核来提高精度,卷积核大小全部为3×3,步幅全部为1,通过2个卷积核堆叠代替5×5卷积核,3个卷积核堆叠代替7×7卷积核,在保证相同大小的感受域的条件下提升网络深度。通过以上策略,该网络获得ILSVRC2014比赛分类项目的第二名和定位项目的第一名。由于3×3卷积核是能够捕获上、下、左、右、中心概念的最小尺寸卷积核[18],使得VGG- 16能够提取图片更细节的特征,所以本文采用该网络进行实验。

图5 VGG- 16结构图

卷积神经网络具有良好的跨域应用能力[19-20],通过另一类型的数据对已经使用大量数据训练完成的网络参数进行微调,是解决训练数据不足问题的通用做法。虽然通过数据增强我们的数据量已经达到20万+,但是通过规范的犯罪现场鞋印提取技术和鞋印图片二值化处理后的鞋印,去除了背景、光照、拍摄角度等环境因素影响,数据形式规范并且类内样本视觉相似性很高。一开始使用这一数据集从零训练的VGG- 16用于鞋印检索效果极差,所以我们考虑微调预训练网络。

3.2 基于VGG- 16的鞋印特征提取

卷积神经网络各层的输出具有良好的特征表示能力[16-17],在图像检索领域已经取得很好的成果[12,21]。Babenk等[22]发现微调能够提高卷积神经网络在具体问题上的检索精度,特别是在原数据和微调数据相似的情况下。在微调完成后,我们分别提取预训练模型和微调模型conv5- 1、conv5- 2、conv5- 3、fc6和fc7层的输出作为鞋印特征。其中卷积层输出为14×14×512维的特征图,为了降低维度和筛选最大响应,我们按照pool5层在conv5- 1、conv5- 2、conv5- 3后分别加一层大小2×2、步长为2的最大池化层,输出7×7×512维的特征图,展开得到25 088维的特征向量,全连接层的输出为4 096维的特征向量。

3.3 鞋印相似度计算

计算特征距离时我们使用Cosine距离。将嫌疑鞋印、样本鞋印的原图、样本鞋印的水平翻转图输入网络得到特征向量X、Y1、Y2,计算X与Y1和Y2之间的距离D(X,Y1)和D(X,Y2),取最小值作为嫌疑鞋印特征和样本鞋印特征的距离D。

(1)

(2)

D=Min[D(X,Y1),D(X,Y2)],

(3)

4 实验及结果分析

4.1 实验环境及配置

微调是在英伟达Digits深度学习平台完成的,操作系统Ubuntu18.04LTS,显卡型号RTX2080ti。检索实验使用matlab2013a及深度学习框架caffe的matcaffe接口完成,操作系统是Windows10,显卡型号GTX1060。

4.2 微调VGG- 16

预训练模型为ILSVRC数据集预训练的VGG- 16,微调阶段的验证集和测试集图片数量均为训练数据集的10%,所有图片均调整尺寸为224×224。微调策略是修改fc8层的类别数并重新初始化该层参数,其余层保留预训练模型的参数。初始学习率调整为0.001,学习率下降参数设置为“step”,Gamma值为0.1,权重衰减为1.000 000 1×10-5。为了减小过拟合,shuffle的参数设置为“true”,打乱数据顺序。经过第13 222次迭代,测试集top1准确率98.84%,top5准确率99.96%。微调完成后,分别使用预训练模型和微调模型提取鞋印特征进行检索实验。

4.3 实验结果分析

检索实验分别在两个测试集上进行:第一个是本文建立的测试数据集,包含200幅嫌疑鞋印和5 000幅样本鞋印;第二个是公开鞋印数据集FID- 300[15],该数据集包含300幅嫌疑鞋印和1 175幅样本鞋印。由于该数据集中的嫌疑鞋印均为原始犯罪现场图片,我们使用Photoshop软件以人工的方式进行二值化处理。

在测试数据集上,我们发现微调之后的检索精度较预训练模型有了大幅度提高。以conv5- 1的特征检索结果为例,top1的识别率从27.5%提高到52%,top10的识别率从51%提高到75.5%。同时,我们发现卷积层的特征检索精度较全连接层的特征检索精度要高,这与之前图像检索方面的相关研究结论也是一致的;最后,conv5层不同子层的特征之间的检索精度也有差异,按照我们的方法提取conv5- 1与conv5- 2层的特征明显好于comv5- 3层的特征,如表1所示。

表1 预训练与微调模型结果比较

由于Junjian Cui等[7]与我们使用了相似的方法,将其中的方法在我们的数据集上进行测试,均提取卷积层经过池化后的20588维特征,发现使用微调后的模型精度有了明显的提升,如图6所示。同时我们列出论文[5]、[6]、[7]、[9]、[10]、[11]、[13]、[14]使用的数据集和实验结果,从表中可以看出我们的实验结果也具有可比性,如表2所示。

表2 本文方法与相关论文在各自数据集上的结果比较

图6 本文方法与论文[7]方法在本文数据集结果比较

表3所示为本文算法在公开鞋印数据集FID- 300上与文献[6]、[9]、[13]和[14]比较结果。从表中可见,在该数据集上我们的算法检索精度远低于其他方法。出现这种情况的原因主要是:一方面,因为人工二值化处理的鞋印图片不能完全将背景与鞋印花纹分离,鞋印图片噪声明显,在处理的过程中鞋印花纹细节损失严重,导致嫌疑鞋印质量过低;另一方面,FID- 300数据集中现场鞋印经过二值化后的质量远低于本文使用的公安机关犯罪现场鞋印数据库中的鞋印图片(如图7所示),与本文训练模型使用的数据差异很大,导致模型不能很好地接受FID- 300中的数据,两个原因综合造成检索效果的不理想。

图7 两个鞋印数据集的数据比较

表3 本文方法与相关论文在FID-300的结果比较

5 结语

本文建立了一个432类共2 827幅鞋印的训练数据集,通过两步数据增强一方面扩充了数据,另一方面使数据更加接近犯罪现场鞋印。使用该数据集微调的VGG- 16能够提取稳定的鞋印特征,在鞋印检索问题上取得了较好的识别结果,实验证明数据增强和微调模型是两个有效的策略。但是我们也意识到,一方面训练数据集包含了大量的嫌疑人标准采集鞋印,质量高,类内样本相似;另一方面本文算法直接以卷积神经网络某一层的输出作为鞋印特征,该特征能够进行有效检索但是也具有维度过高、对于残缺鞋印检索效果不好的问题。在FID- 300数据集中我们的算法识别结果较差,这主要是人工二值化处理的鞋印图片与训练数据之间的差异造成的。而目前公安机关使用的足迹系统在录入、检索前都会对鞋印进行二值化处理并进行方向、位置归一化,所以本文数据使用的是与之标准一致的二值化鞋印,算法直接面向公安机关足迹系统中的数据进行研究,在FID- 300数据集上的测试结果不会影响算法在公安应用中的通用性。如果我们能使用公安机关足迹系统对FID- 300进行标准的二值化处理,结果应该会有很大的提高。今后我们会不断更新训练数据集,加入更多的犯罪现场鞋印,并对鞋印特征进行改进,提高算法对于残缺和低质量鞋印的识别能力。

猜你喜欢

鞋印犯罪现场微调
乐海乐器“微调轴”研发成功
奇怪的鞋印
刍议犯罪现场重建的价值
浅谈疑似命案现场勘查的体会
可疑的鞋印
我国的民族优惠政策应往何处去?
谁留下的鞋印
论伪装犯罪现场的勘查