基于轻量型网络的唇纹识别算法研究

2022-03-06 11:56:02周洪成
关键词:识别率卷积神经网络

周洪成 ,韦 静,2,牛 犇

1.金陵科技学院 电子信息工程学院,江苏 南京 211169;2.盐城工学院 机械工程学院,江苏 盐城 224002

唇纹除了作为身份识别工具和法庭证据外,还可以用于刑事侦查,作为生物特征识别信息的来源[1]。唇纹特征信息丰富,包括直线型、曲线型、分叉型、网状型和不规则型等纹理特征,而且唇纹隐蔽性好,不易被复制和仿造,具有唯一性、永久性和稳定性的特点,是人类身份识别的重要生物特征。唇纹识别作为新兴的生物特征识别技术,与其他的生物识别技术相比具有识别率高、识别时间短、用户接受度高、非接触式采集等优势[2]。

在科学技术不断创新和发展的背景下,唇纹识别技术得到了快速发展,国内外学者相继提出了唇纹识别算法。Bhattacharjee 等[3]提出了一种统计分析方法,将测试样本数据集和参考样本数据集与阈值进行比较和匹配,获得了96%的识别率。Wrobel等[4]通过提取嘴唇截面进行比较的方法来进行唇纹识别,对45张唇纹图像进行实验得到85.1%的识别率。2015 年Wrobel 等[5]又提出基于唇纹分叉分析的识别方法,在120 张唇纹数据集上获得了77%的识别率。许颖[2]提出基于改进Gabor特征提取的唇纹识别方法。2018年Wro⁃bel 等[6]引入唇纹皱纹分析,建立基于唇纹皱纹模式的分类识别,在350 张唇纹图像上得到了92.73%的识别率。Sandhya 等[7]构建了基于机器学习算法的唇纹识别系统,采用支持向量机、K 近邻、集成分类器和神经网络等分类算法进行实验,最终集成分类器在120 张图像数据集上取得了97%的识别率。上述识别算法虽已获得了较好的识别效果,但算法中存在图像预处理过程复杂、特征提取算法效率较低等问题,导致识别周期较长,识别率较低。

随着信息技术的发展,深度学习逐渐受到广大研究者的关注,卷积神经网络得到了快速发展,并成功地应用于计算机视觉和自然语言处理等领域。近年来,基于卷积神经网络模型的图像识别方法在各类生物特征识别领域都取得了较大的成功和快速的发展,如人脸识别[8]、掌纹识别[9]、指纹识别[10]、步态识别[11]等,所以将卷积神经网络模型应用于唇纹识别技术领域是未来研究的重点。

1 卷积神经网络

卷 积 神 经 网 络(convolutional neural net⁃works, CNN)是一种包含卷积运算且具有深度结构的前馈神经网络,网络结构包括卷积层、池化层和全连接层。作为深度学习代表算法之一,卷积神经网络具有表征学习能力,能够按照其阶层结构对输入图像进行平移不变分类,并可应用于图像分类任务的图像特征提取,不需要再设计复杂的算法提取特征。通过卷积运算操作进行图像特征提取,池化层进行下采样操作,降低数据维度,减少网络训练参数,全连接层则用于解决分类问题。

1.1 卷积层

普通神经网络的结构包括输入层、隐藏层和输出层。隐藏层的神经元之间以全连接的形式连接,这样会造成网络训练时参数量过多,网络训练效果不佳。卷积神经网络与普通神经网络的区别在于,其卷积层中一个神经元与部分的邻层神经元连接。卷积层具有局部连接和共享权值的特性,大幅降低了网络训练参数。网络训练过程中卷积核与输入图像的不同区域作卷积运算,通过学习得到合理的权值并不断更新,最后提取到不同的特征信息。卷积层的核心是使用不同尺寸的卷积核对图像进行卷积运算,提取图像中的特征信息,常用的卷积核大小包括3×3、5×5和7×7。

1.2 池化层

当卷积层提取了图像的特征信息,下一步是利用这些特征信息进行分类识别。理论上能够直接使用所提取的特征来训练分类器,但会面临大量参数计算的挑战,并且网络模型容易产生过拟合现象。为解决这个问题,在卷积层的下一层使用池化层处理卷积层的输出结果,即计算图像一个区域上某个特定特征的最大值或平均值,也称下采样操作。常见的池化操作包括平均值池化、最大值池化、重叠池化和空金字塔池化。由于最大值池化操作的表现较好,所以在深度卷积神经网络中使用较多,图像区域的大小由下采样窗口的大小决定,常用的有2×2和3×3。

1.3 全连接层

通过使用若干个卷积层和池化层交替连接,完成特征提取的工作,使得卷积神经网络的训练参数大幅度降低,不仅减少了参数计算量,还能够缩短训练时间、提高特征的鲁棒性。全连接层的作用是连接提取的所有特征,全连接层将卷积层和池化层提取特征后输出的特征图中的特征信息进行整合,映射为固定长度的一维特征向量,该特征向量包含了输入图像的所有特征组合信息,再将特征向量输出至分类器用于图像分类。

2 基于LNet-6的唇纹识别算法

2.1 Softmax分类器

实验涉及多分类问题,因此所选取的分类器为Softmax,将其放在卷积神经网络的全连接层作为网络结构的一部分。Softmax 层的工作原理是针对全连接层输出的一维向量x,计算该向量属于第j类的概率值,再将其归一化处理,保证概率值和为1,输出结果即表示x属于某一类的最大概率值。Softmax 函数如式(1)所示,将输入图像所属类别的最大概率值输出。

式中,xj表示分类器上一层输出单元的输出;j表示类别数;k为总的类别数;而fj(x)表示当前元素的指数与所有元素指数和的比值。经过公式计算将多分类输出数值转化为相对概率,计算出一维向量x属于第j类的概率值,并在指数域归一化映射为[0,1]之间的概率值,最大的概率值输出就是所属的类别。

2.2 基于LNet-6的识别算法

2012 年Krizhevsky 等[12]提出的AlexNet 网络在ImageNet 大赛上获得了冠军,使得深度学习受到了广泛关注。为提升网络模型的实用性,本文借鉴了该网络结构,搭建一个轻量型卷积神经网络LNet-6(lightweight network-6),它包含6 个卷积层(C1~C6)、5 个池化层(M1~M6)、2 个全连接层(FC1、FC2)和一个Softmax 层。在卷积层与池化层之间添加了批量归一化层,使训练和测试数据同分布,提高模型的泛化能力和稳定性。使用ReLU激活函数解决梯度消失和梯度爆炸的问题,加快网络的训练收敛速度,使用该网络模型对唇纹数据集进行特征提取和分类识别。与经典的深度卷积神经网络模型相比,该模型具有参数计算量少、模型文件小和可移植性强等特点,其网络结构如图1所示。卷积层和池化层交替连接构成特征提取器,采用5×5大小的卷积核,池化层的下采样窗口大小设置为2×2,通道数就是卷积核的数量,也是输出结果特征图的个数。该网络结构的各层详细参数如表1所示。

表1 网络各层结构信息Table 1 Information on the structure of each layer of the network

图1 LNet-6网络结构Fig. 1 LNet-6 network structure

基于LNet-6的唇纹识别算法详细描述如下:

由于采集的图像均是RGB 三通道的彩色图像,卷积运算过程是多通道卷积,固定输入图像大小为244×244。

C1层使用8个5×5大小的卷积核,以步长为1滑动卷积核窗口计算,提取图像的特征信息,得到8 张240×240 的特征图;M1 层使用最大值池化操作对图像特征信息进行数据处理,降低网络训练参数,保证特征的尺度不变性,提高算法的性能和鲁棒性,下采样的窗口大小为2×2,以步长为2 从左往右、从上往下的顺序滑动采样窗口,该过程既不参与权值更新也不改变通道数,输出结果为8 个120×120 的特征图;卷积层与池化层输出特征图的计算过程分别如下式所示:

式中,O1、O2分别表示卷积层和池化层的输出大小;I表示输入大小;K为卷积核大小;P为填充值;S为步长;Ps则是下采样窗口的大小。可以根据公式计算每一层的输出结果。

C2层则使用32个5×5大小的卷积核,设置边缘填充方式为Same,经过卷积运算后输出32 张120×120 的特征图;M2 层的下采样操作与M1 层处理过程相同,将卷积层的输出结果映射为32个60×60 的特征图;C3 层增加了卷积核数量,使用64 个5×5 大小的卷积核,以步长为1、边缘填充方式为Same进行卷积运算,输出64个60×60的特征图;M3层将卷积层提取的特征映射为64张30×30的特征图。不断增加卷积核数量,使网络能够提取更多的唇纹特征信息;C4 层和C5 层各项参数相同,都采用128 个5×5 大小的卷积核,输出结果都是128 个30×30 的特征映射;M4 层则是以2×2的采样窗口将卷积层的输出结果转换为64张15×15的特征图;而C6层使用了64个卷积核,边缘填充方式为Same,也得到了64 张15×15 的特征图;通过M5层的下采样操作,以步长为2滑动采样窗口,将上一层输出的特征图映射为一个7×7×64的二维特征矩阵。

全连接层FC1将上一层输出的二维特征矩阵平铺成一个7×7×64 的一维特征向量,采用Drop⁃out方法[13]随机丢弃了部分神经元,使其中的一部分神经元失活,将其中的2 048 个神经元进行一个全连接,即输出特征图单元数为2 048。FC2 层输入的神经元个数为2 048,输出2 048 个特征图单元。使用Softmax 分类器作为输出层,将2 048个节点映射为40个分类标签对应的概率值。

3 唇纹分类识别实验

3.1 实验环境与数据集

实验基于TensorFlow 框架,在Pycharm 2020平台上运行,所用硬件设备的系统版本为Win⁃dows 10,处理器则是Intel® Core(TM) i7-7500U,显卡为NVIDIA GeForce 930MX,运行内存8 GB。由于接触式采集方法的用户接受度较低,且获取的图像质量取决于按压力的大小和方向,易受人为因素影响,对识别结果会产生一定程度的影响。因此,实验使用的唇纹数据集是由作者拍摄的,采用了非接触式采集方式获取图像,每张图像都是在自然光照条件下拍摄的。该数据集来自40 位志愿者,每名志愿者采集了30 张唇纹图像,分别保存至带有分类识别标签的文件夹下。通过简单的数据增强方法如旋转、加噪声、镜像、模糊和改变图像亮度等,扩充该数据集。实验采用了旋转、镜像、加入高斯噪声和增加图像亮度的方法,将1 200 张唇纹图像扩充为8 000 张的数据集,每个志愿者都有200 张图像。训练集将用于训练唇纹识别模型,而测试集则用于检测模型的识别率。图2 所示为该数据集的部分唇纹图像。

图2 部分唇纹图像Fig. 2 Part of the lip-print images

3.2 网络模型训练实验

实验将8 000 张唇纹图像按照一定的比例随机地分为训练集和测试集,并在数据集输入网络训练前,统一将唇纹图像等比例缩小为244×244大小。分类识别标签使用one-hot编码格式,随机打乱标签数据。然后将已建立的唇纹数据集输入LNet-6网络,使用Adam 优化算法训练,设置网络中的各项参数进行网络模型训练和测试。数据集的划分和学习率的选取都将会影响模型的识别效果,多次调整网络的参数训练模型,并使用可视化函数绘制出测试集识别率的分布图,观察分析实验结果以达到预期的识别率。因此,研究各因素对模型识别性能的影响,进行了如下实验。

3.2.1 学习率对模型识别性能的影响

在使用梯度下降算法优化网络训练时,学习率是一项重要的参数,实验将固定其他各项参数,设置不同的学习率进行训练,分析学习率对识别性能的影响,最终得到最佳的识别模型。考虑硬件设备的内存资源,避免输入数据太大降低训练速度,将数据集以8∶2 的比例随机分为训练集和测试集。网络训练迭代次数epoch 设置为50,批量大小batch 设置为80,即每一步将输入80张图片进行训练,保持其他各项参数。选择不同的学习率进行训练,得到如表2所示的结果,训练时间为完成一次训练所用的时间,识别时间则是模型每一步预测的时间,识别率是使用模型预测的最后10次迭代的识别准确率计算的平均值。

表2 不同学习率的识别结果Table 2 Recognition results with different learning rates

3.2.2 数据集的划分对模型识别性能的影响

为研究数据集的划分对模型的识别性能的影响,按照不同的比例划分数据集,分别使用常用的9∶1、8∶2 和7∶3 的比例划分为训练集和测试集。学习率设置为0.000 1,训练次数为50,batch大小为80且保持其他参数不变,将不同大小的数据集输入网络进行训练。识别率选取最后10 次预测准确率的平均值,得到的实验结果如表3所示。

表3 不同比例划分数据集的识别结果Table 3 Recognition results for different scaled data sets

3.2.3 比较不同卷积神经网络的识别效果

比较不同网络结构对唇纹数据集的识别性能,实验选取了AlexNet、VGG[14]、GoogLeNet[15]和ResNet[16]等经典的深度卷积神经网络,使用9∶1划分的数据集训练识别模型,将学习率的大小设置为0.000 1,训练次数为50,batch 大小为80,其余各项参数保持不变。输入数据集进行网络模型训练,加载模型并输入测试集识别,识别率选取最后10次预测准确率的平均值,不同网络的识别结果如表4所示。

表4 不同网络的预测识别结果Table 4 Prediction recognition results of different networks

3.3 实验结果分析

由表2 和表3 的实验结果可以看出,不同的学习率对模型识别效果影响较大,当使用较大学习率时,测试集的准确率都有所下降,模型泛化能力较低且不稳定;不同的比例划分数据集对模型的识别效果影响甚微,当数据集以9∶1 比例划分和学习率为0.000 1 时识别效果达到了最佳,在测试集数据中获得了97.97%的平均识别率。

从表4 中可以看出,与其他深度卷积神经网络模型识别结果相比,基于LNet-6 网络的训练和识别时间较短,模型文件较小,模型的平均识别率较高。通过比较不同网络模型的识别效果发现,深度卷积神经网络对唇纹数据集的识别率相对较低,且耗费了大量的计算资源,难以将模型应用到实际的终端设备。

通过分析上述实验结果发现,基于LNet-6 的识别模型对唇纹图像的识别效果较好,不仅简化了唇纹图像前期预处理过程,还避免了设计复杂的特征提取算法,结合特征提取和分类过程,实现了自动地提取唇纹特征和分类。

4 结论

本文提出的基于卷积神经网络的唇纹识别算法,为唇纹识别技术提供了一种新的思路,与传统的识别算法相比,其优势在于可以直接输入采集的原始唇纹图像,简化了图像预处理过程;实现了自动提取唇纹特征信息,克服了人工设计算法进行特征提取困难的问题;通过网络训练获得轻量型唇纹识别模型,解决存储空间的限制,满足速度的要求,提升网络的实用性,精简复杂的深度学习模型使其能够高效地在移动端运行;实验设置了不同的学习率进行网络训练,分析和对比学习率对识别性能的影响,最终在测试集上获得了97.97%的识别率。进一步的研究将会从以下几个方面进行:(1)采集唇纹图像,建立包含更多人的数据集;(2)结合迁移学习的优势,使用预训练模型对数据集分类识别,提升识别效率;(3)进一步改进算法和优化网络结构,提高模型的泛化能力和识别率,并使用高性能GPU 训练识别模型,缩短模型预测识别的时间。

猜你喜欢
识别率卷积神经网络
基于3D-Winograd的快速卷积算法设计及FPGA实现
基于类图像处理与向量化的大数据脚本攻击智能检测
计算机工程(2020年3期)2020-03-19 12:24:50
神经网络抑制无线通信干扰探究
电子制作(2019年19期)2019-11-23 08:42:00
从滤波器理解卷积
电子制作(2019年11期)2019-07-04 00:34:38
基于真耳分析的助听器配戴者言语可懂度指数与言语识别率的关系
提升高速公路MTC二次抓拍车牌识别率方案研究
基于傅里叶域卷积表示的目标跟踪算法
高速公路机电日常维护中车牌识别率分析系统的应用
基于神经网络的拉矫机控制模型建立
重型机械(2016年1期)2016-03-01 03:42:04
复数神经网络在基于WiFi的室内LBS应用