娄梦莹,王天景,刘娅琴,杨 丰,黄 靖
(南方医科大学生物医学工程学院,广州510515)
(∗通信作者电子邮箱liuyq@smu.edu.cn)
随着社会的发展,科学技术得到了极大提升,信息安全越来越受重视,人们对个人身份识别技术的要求也越来越高。密码、磁卡等传统的身份识别认证方式由于存在丢失、复制和被盗用的风险,已经不能满足当前人们的需要,由此,基于生物特征的身份识别技术应运而生[1]。生物特征(包括显性生物特征和隐性生物特征)识别技术是根据人们的生理或行为特征进行识别的技术。显性生物特征由于易被复制和伪造,其安全性和唯一性比隐性生物特征低。生物特征识别主要包括步态、人脸、掌纹、指纹等显性特征识别,以及声音、虹膜等隐性特征识别。步态识别简单易行,但易被模仿,安全性较差。声音识别简单便捷,但有被录音窃取的风险,安全隐患较大。人脸识别具有较好的特征多样性和唯一性,识别效果好,但难以分辨面容相同或相似的双胞胎及多胞胎,并会受到因年龄出现的老化现象的影响,稳定性较差。掌纹、指纹识别具有较高的唯一性、便捷性和可接受性,但由于掌纹属于表皮特征,易磨损、易被复制,安全性较低。虹膜识别具有较高的安全性、稳定性和唯一性,但识别装置成本昂贵,不适用于普通的大众场所,应用的广泛性和普遍性受到极大的限制。手掌静脉识别,是根据手掌静脉特征进行识别的技术,是生物特征识别领域的一种新型识别技术。手掌静脉(以下简称“掌脉”)属于隐性特征,位于表皮之下,结构复杂,难以被复制,具有较高的唯一性、安全性和稳定性,比人脸识别更稳定,比掌纹、指纹识别更安全,比虹膜识别更具应用的普遍性[2]。
目前,掌脉识别的研究受到广大研究学者的关注,传统的掌脉识别大致分为三类:1)基于结构特征的方法,提取静脉的结构特征,一般是线特征或点特征。主要方法有方向梯度直方图[3]、尺度不变特征变换[4]、二维密度函数[5]等。2)基于纹理特征的方法,提取静脉的纹理特征,一般是方向、幅度、相位特征。主要方法有Gaussian-Radon 变换[6]、局部二值模式[7]、Gabor 滤波器[8]、Radon 变换[9]、小波变换[10]等。3)基于子空间的方法,是将静脉转换到不同的子空间中,将图像看成高维向量或矩阵,再利用投影变换等方法,将其转换成低维向量或矩阵,并在这个子空间中提取特征。主要方法有主成分分析[11]、线性判别分析[12]、局部保持投影[13]等。
虽然传统的识别方法已经取得了较好的识别效果,但其识别过程较为复杂,往往需要人工干涉。人工设计提取的图像特征通常是图像的浅层特征,表达能力有限,有效特征信息不够充分,且人工设计的方法稳健性较差,受外界条件的影响较大。随着深度学习的发展以及硬件环境的改善和提高,利用深度学习的方法进行掌脉图像识别已经成为研究重点[14]。深度学习卷积神经网络具有较强的特征表达能力,不需要人工设计特征,在图像分类、图像分割和目标检测等领域已经取得了较好的成绩。但是由于网络模型的学习能力较强,输入输出之间的非线性关系复杂,易出现过拟合现象,且网络的训练需要大量的数据,而掌脉数据库的数据量相对较少,图像质量也相对较差。
针对上述问题,本文提出了一种基于侧链连接卷积神经网络的手掌静脉识别方法。首先,采用泛化性能较好的网络模型ResNet 提取深层次掌脉特征,其残差模块可缓解网络退化。其次,引入指数线性单元(Exponential Linear Unit,ELU)激活函数、批归一化(Batch Normalization,BN)和Dropout技术改进模型,能缓解梯度消失,防止过拟合,加快收敛,增强模型泛化能力。最后,融入稠密网络思想,加入稠密连接,将原始图像输入多层卷积层,增强特征的丰富性和有效性。用本文提出的方法分别在香港理工大学PolyU 数据库、中国科学院自动化研究所CASIA 数据库和自建库上进行实验,并与其他现有的识别方法进行比较,实验结果验证了本文方法在实际应用中的优越性能。
ResNet 网络是He 等[15]在2016 年提出的一种深层卷积神经网络模型。在网络研究中,随着网络的加深,会出现梯度消失和梯度爆炸的问题,使具有一定深度的卷积神经网络难以训练,模型性能不升反降。为削弱这种影响,可以通过构建残差模块(Residual block)对不同网络层进行跳跃连接(Skip connection),从而增强网络性能。因此,残差网络以其优越的性能被广泛应用于图像分类识别领域。残差模块的结构如图1所示。
对于一个由若干层堆积的网络结构而言,当输入数据为X时,学习的特征记为H(X),规定在获得H(X)的同时,通过线性变换和激活函数得到残差:
这样,实际学习到的特征为:
如此,极端情况下,即使网络层是冗余层,即F(X)=0,则该卷积层实现的是恒等映射,网络性能与网络特征参数没有改变。通常情况下,F(X) > 0,网络总能学到新的特征,从而保证反向传播时的梯度传递,消除网络退化和梯度消失问题。
图1 残差模块Fig.1 Residual block
卷积神经网络利用不同大小的卷积核提取掌脉特征,用全连接层对特征进行融合,来提取更深层次的特征信息。卷积层主要包括两部分:一部分是线性变换阶段的卷积操作;另一部分是非线性阶段的激活函数操作。其中,卷积核是卷积层重要的一部分,用于提取图像的边缘、角度、形状等特征。而激活函数主要是引入非线性,强化网络的学习能力。随着网络层数的深入,卷积核及训练参数也随之增加,特征提取过程中易发生过拟合状况。卷积神经网络中的池化层,可针对不同的区域提取具有代表性的特征,能缩减参数,提高网络计算速度,可当作对输出特征的再次提取过程。相较于卷积,池化操作拥有平移不变特性,对微小的变化具有较好的鲁棒性。
研究发现,卷积核的尺寸越大,获得的感受野越大,需要的参数量也随之增多[16]。掌脉图像通常将纹理特征用于特征识别,有些不同个体的掌脉图像纹理特征相似度较高,主要依靠微小的细节特征进行区分。为了提取细微的特征,并尽可能地减少模型参数,显著提高掌脉识别系统的性能,使模型更适用于掌脉识别的实时应用,本文采用小卷积核残差网络(Small convolution Kernel Residual Network,SK-ResNet)对手掌静脉图像进行有效识别,选择3×3的卷积核进行实验。
本文在ResNet 网络的基础上加以改进,将第一层的卷积核设置为3×3,剩余卷积层的卷积核大小也设置为3×3,并叠加足够的卷积层弥补小卷积核对感受野带来的影响。网络的分类函数采用softmax 函数,学习率统一设置为0.000 1。改进的网络结构如图2 所示,基于ResNet-18,将其简化成8层,大大减少了模型参数,节省了存储空间和运行时间,更适用于掌脉图像数据库。
激活函数主要解决神经网络中的线性不可分问题,将非线性激活函数叠加在每层的线性变换之后,能够使学习能力更强,拟合效果更好。传统的ResNet 网络采用修正线性单元(Rectified Linear unit,ReLu)激活函数,ReLu 计算简单,具有线性、非饱和性的特点,能有效缓解梯度下降,提供稀疏表达性。ReLu激活函数计算式如下:
由式(3)可见,当x取值为1 时,会在梯度过小时,导致梯度消失;当x取值小于等于0时,随着训练的进行,会出现神经元凋亡现象,导致权重无法更新。
图2 小卷积核残差网络结构Fig.2 Architecture of SK-ResNet
ELU 激活函数[17],融合了sigmod 和ReLu,具有左侧软饱和性,右侧无饱和性,右侧线性部分使得ELU 对输入变化或噪声的鲁棒性更好。ELU 的输出均值接近于0,收敛速度更快,可解决神经元死亡问题。ELU激活函数公式如下:
将激活函数用ELU 代替ReLu,弥补了ReLu 的不足,同时尽量保持了ReLu的单侧抑制优势,使残差模块的结构得到了较好的改进,残差结构的改进如图3所示。
图3 改进后的残差模块Fig.3 Improved residual block
批归一化(BN)[18],利用小批量上的均值和标准差,不断调整神经网络中间输出,从而使整个神经网络在各层的中间输出的数值更稳定,能够在一定程度上缓解过拟合问题;其次,批归一化也能使模型的收敛速度得到一定程度的提升。
Dropout技术是Hinton等[19]在2012年提出的,通过使部分隐层节点设置为0,忽略部分特征检测器,来提高模型的性能,降低过拟合现象。即在神经网络的前向传导过程中,随机选择部分神经元,使其激活值按照特定的概率暂时停止工作,从而增加模型的泛化能力,以防止过拟合现象的发生。
稠密连接网络(Densely Connected Network,DenseNet)是Huang等[20]在2017年针对光学图像处理提出的一种神经网络模型,具有强大的特征提取功能。在传统的深度网络中,每一层提取的特征都相当于对输入数据的一个非线性变换。因此,随着网络的加深,会增加变换的复杂度。DenseNet摒弃了传统的网络连接方式,采用了一种较为密集的网络连接形式,直接从最优特征的角度出发,设置特征复用和旁路连接。
DenseNet将网络的任一层与后续所有层之间直接建立连接,这种稠密连接的方式使得每层学习的特征图都可以被后续的网络层接收,即网络中每一层都接受它前面所有层的特征作为输入,相当于每一层都直接连接输入层和损失层,从而使梯度消失现象得以缓解,网络结构更加紧密,提取到的特征更加丰富。其输出公式如下:
其中,[X0,X1,…,Xl-1]表示第0,1,…,l-1 层的特征图拼接矩阵。
图4 为DenseNet 的网络连接图,由图4 可看出,网络中任意一层的输入都是前面所有层输出的叠加,大量的特征被复用,从而加强了特征的传播,使提取到的特征更加丰富,并在一定程度上缓和了梯度消失。在建立稠密连接时,当特征图的大小发生改变时,层与层之间不能直接连接,可借助下采样来改变特征图的大小,从而顺利地建立网络连接。
图4 DenseNet网络连接Fig.4 Network connection of DenseNet
虽然ResNet 和DenseNet 都采用了网络连接的方式,但残差连接和稠密连接是不同的。区别在于ResNet 中的残差连接是采用模块之间相加的方式,而DenseNet 中的连接是图像通道维度上的连接。DenseNet 中增长率k表示输出特征映射的维度,这里k=12。网络的跨层连接如图5所示。
图5 网络跨层连接Fig.5 Network cross-layer connection
针对掌脉数据库样本量少、图像质量参差不齐,进而导致识别率低的现象,根据侧链连接的结构,在ResNet 模型的基础上重新设计新的结构,并用此模型对掌脉图像进行分类识别。
图6为本文方法的网络结构。如图6所示,网络的传播过程可描述为:图像经输入层传入下一层侧链连接的模块(Residual dense block)提取特征,按图中连接依次传输,最后对特征进行全局平均池化,整合空间信息,经Dropout 层输入到全连接层输出分类结果。其中,侧链连接部分是将残差连接和稠密连接的两组特征叠加,传递给下一层。
本文提出的基于侧链连接卷积神经网络改进和优化了传统的ResNet 模型,并将稠密连接以侧链连接的方式融入到ResNet 模型中。与传统的网络模型相比,该方法具有一定的优势。首先,利用泛化能力较强的ResNet 网络模型提取深层掌脉特征,其残差模块能有效缓解网络退化问题。其次,采用ELU 代替ReLu 激活函数能有效缓解梯度消失,批归一化和Dropout技术能防止过拟合,减少网络误差,加快收敛。最后,稠密连接将原始图像输入多级卷积层,能加强所提特征的丰富性和有效性。
图6 本文方法的网络结构Fig.6 Network structure of proposed method
为定量评价本文识别方法,分别对两个公开数据库和一个自建数据库进行实验。两个公开数据库分别是PolyU 和CASIA 数据库。PolyU 库采用完全接触式采集,受平移、旋转等的影响小,图像质量高。采集250 人的左右手各6 幅,分两次采集,间隔时间9 天,共6 000 幅图像,本文只采用第一次采集的3 000 幅图像。CASIA 库采用完全非接触式采集,受平移、旋转的影响较大,图像质量差。采集100 人的左右手各6幅,共1 200幅图像。自建数据库为本实验室独自采集建立的数据库,简称“自建库”,采用半接触式采集,受平移、旋转的影响较小,但会受光照等采集环境的影响,图像质量低。采集300 个学生的左右手各6 幅,共3 600 幅图像,采集装置[21]如图7所示。
图7 自建库手掌静脉图像采集装置Fig.7 Palm vein image acquisition device for self-built database
为更好地训练模型的性能,对现有数据库进行图像增强和扩充。采用Lou 等[22]提出的方法进行掌脉图像增强,并对图像进行旋转变化,旋转角度分别为:-5°、-10°、5°、10°,即每幅图像由1幅扩充为5幅。为更好地测试模型的识别效果,将数据库按照类别划分为训练集和测试集,每类的前4 幅及其扩充图像为训练集,剩余图像为测试集,从而保证训练集与测试集互不相交。
实验的运行环境如下:Tensorflow2.20rc,Matlab R2019b DeepLearning toolbox。硬件平台为:Ubuntu 18.04LTS 系统,CPU AMD EPYC 7742,基础频率2.25 GHz,最高Boost 频率3.4 GHz,内存16 GB,GPU Nvidia Telsa K80 24 GB显存。
在掌脉图像识别模型的评价中,主要采用正确识别率(Correct Recognition Rate,CRR)来衡量系统性能。CRR 是正确识别比率,是正确识别的次数与识别的总次数的比值。识别系统的算法性能越好,CRR值越大,计算式为:
其中:VC表示正确识别的次数;VS表示识别的总次数。
2.3.1 ELU激活函数实验
为了选择对掌脉数据库最有效的ELU 激活函数取值,在原始的8 层小卷积核ResNet 网络基础上,仅采用ELU 代替ReLu 激活函数,即SK-ResNet+ELU,并以此网络模型进行掌脉识别。分别在各掌脉数据库上进行实验,计算识别率,借此判断ELU激活函数缓解梯度消失的效果。ELU激活函数的取值范围设为(0,1],间隔设置为0.1。表1 给出不同的ELU 取值对识别率的影响,由表1 可知,当ELU 的取值为1 时,模型在三个数据库上的识别效果达到最优。由此可见,ELU 激活函数对梯度消失现象有一定的缓解作用,使模型的识别效果进一步提高。
2.3.2 Dropout实验
为了找到对掌脉数据库效果最好的Dropout值,在原始的8 层小卷积核ResNet 网络基础上,仅将Dropout 层添加到平均池化层之后,即SK-ResNet+Dropout,并以此网络模型进行掌脉识别。分别对各掌脉数据库进行实验,计算识别率,以此判断Dropout 技术缓解过拟合的效果。Dropout 中p表示每个节点有p概率被抛弃,其取值范围为(0,1),间隔设置为0.1。表2展示了不同Dropout取值对识别率的影响。由表2可以看出,当Dropout 的取值为0.1 时,在三个数据库上的效果达到最好,一定程度上降低了过拟合风险,提高了模型的识别率。
为了定量评价本文识别方法的识别效果,将本文方法与目前识别效果较好的几种传统识别方法以及几种典型的网络模型进行比较。其中:Qiu 等[23]采用多方向的Gabor 滤波器,提取静脉的尺度及方向信息,进行静脉识别,计算识别率;娄梦莹等[21]采用Gauss-Radon 变换进行掌脉识别,构建6 个方向的邻域模板,提取掌脉方向特征从而进行识别。针对目前的几种典型的网络模型,利用AlexNet 网络[24]、GoogleNet 网络[25]分别对掌脉图像进行识别,并对ResNet 模型不断改进,将逐步改进实验用于掌脉识别,依次记录SK-ResNet、SKResNet+BN、SK-ResNet+BN+ELU、SK-ResNet+BN+ELU+Dropout 以及加入稠密连接后的本文方法模型的实验结果。不同识别方法的识别效果如表3所示。由表3可知,针对图像质量不一的小样本掌脉数据库,与其他识别方法相比,本文基于侧链连接卷积神经网络的掌脉识别方法对掌脉数据库的识别效果较好,尤其是对图像质量较差的CASIA和自建库,其识别率更高。
表3 不同识别方法对CRR的影响 单位:%Tab.3 Effects of different recognition methods on CRR unit:%
针对图像数量少且质量参差不齐的掌脉数据库,本文提出了一种基于侧链连接卷积神经网络的手掌静脉图像识别方法。该方法根据ResNet 网络模型框架,用卷积层和池化层提取网络特征;用ELU 激活函数、批归一化及Dropout 技术优化和改进模型,可缓解梯度消失,防止过拟合,加快收敛,使模型泛化能力更强;加入稠密连接,使提取到的掌脉特征更加丰富有效。分别在PolyU、CASIA、自建库上进行实验,实验结果表明,本文方法能有效提高掌脉识别系统的性能,且更适用于掌脉识别的实际应用。还可将本文识别方法用于其他生物特征识别领域,例如掌纹识别、指纹识别、人脸识别等。下一步的工作将着重于新型网络模型的研究和改进,以期获得更好的识别效果。