APP下载

融合全局与局部特征网络的指静脉识别算法

2022-04-06徐文贵王智霖

关键词:特征向量分支全局

徐文贵,沈 雷,王智霖,李 琦

(杭州电子科技大学通信工程学院,浙江 杭州 310018)

0 引 言

目前,生物识别技术因其较高的安全性和便利性受到青睐。与指纹识别、人脸识别、掌纹识别等生物识别技术相比,手指静脉识别具有独特优势,比如更高的稳定性、极难被盗取和伪造以及识别精度高、速度快等优点,广泛应用于银行、门禁等对安全性能要求较高的场合[1]。指静脉识别算法主要分为传统指静脉识别算法和深度学习指静脉算法。传统指静脉识别算法主要通过提取指静脉的纹路、纹理以及端点和分叉点等细节点作为指静脉特征进行识别。如文献[2]提出一种融合手指静脉图像的静脉曲率灰度特征、背景灰度曲率特征以及静脉曲率细线特征的阈值识别算法;文献[3]先提取手指静脉纹路,再提取指静脉纹路的端点和分叉点作为指静脉纹路的拓扑结构进行指静脉识别;文献[4]在韦伯局部描述子(Webber Local Descriptor,WLD)的基础上,采用局部方向码(Local Directional Code,LDC)对局部梯度方向信息进行编码,取得了不错的识别效果。虽然传统指静脉识别算法能较好地提取指静脉纹路、纹理等特征,但鲁棒性不够强,当手指发生平移、轴旋转等姿态变化时,容易出现识别率较低甚至无法识别等情况。近年来,随着深度学习的迅速发展,卷积神经网络因其强大的自动学习能力广泛应用于图像分割[5]、图像识别[6]以及目标检测[7]等领域。许多研究人员运用卷积神经网络来自动学习并提取具有较高判别力的指静脉特征,提高了指静脉特征对特殊姿态手指的鲁棒性,改善了传统人工设计特征的局限性。如文献[8]提出一种基于改进卷积神经网络的指静脉识别算法,在较少训练样本下也能取得不错的识别效果;文献[9]提出一种基于改进残差网络的指静脉识别算法,采用中心损失和交叉熵损失共同约束网络,提高了特征的区分力。但是,这些算法均通过提取指静脉全局特征进行识别,仅靠网络的学习能力来适应手指放置姿态的变化,没有考虑正常姿态手指及其特殊姿态手指之间的全局静脉结构差异较大,而局部显著静脉相似度较高的特点,特殊姿态手指的识别率仍然较低。本文提出一种融合全局与局部特征网络的指静脉识别算法。充分利用指静脉的全局信息与局部信息,融合全局与局部特征网络,在损失项中加入CurricularFace损失[10],在扩大指静脉特征向量类间差,缩小内类差距离的同时,在线挖掘特殊姿态手指样本进行重点训练,并采用Mish激活函数[11]作为网络激活层,提高了网络提取指静脉结构信息的能力。

1 融合全局与局部特征网络

本文提出的融合全局与局部特征网络结构如图1所示,主要包括基于改进残差网络的主干网络和全局特征与局部特征提取模块。主干网络采用ResNet50结构,包含5层卷积结构,Conv_1包含1个卷积核大小为3×3的卷积层、BN层以及Mish激活层,Conv_2至Conv_5分别由3个、4个、14个、3个改进残差块组成。为了更好地学习不同粒度下的局部特征和全局特征,主干网络在Conv_5分为3个独立分支,分别为Branch-1,Branch-2,Branch-3,每个分支均包含3个改进残差块,其中,为了获得更高分辨率的特征图,进行特征分块,Branch-2和Branch-3均取消了下采样操作。全局特征与局部特征提取模块中,分别采用全局平均池化(Global Average Pooling,GAP)和全局最大池化(Global Max Pooling,GMP)来提取全局特征向量和局部特征向量,经过一层1×1卷积进行降维,并通过特征拼接得到融合特征向量。5个256维的局部特征向量L分别经过一层全连接层(Full Connected Layers,FC)后计算交叉熵损失值,3个256维的全局特征向量G以及2 048维的融合特征向量F分别通过CurricularFace损失计算CurricularFace损失值,将所有损失值相加后,进行反向传播来更新网络参数。在测试阶段,将2 048维融合特征向量作为指静脉特征,通过计算指静脉特征之间的欧式距离进行指静脉识别。

图1 融合全局与局部特征网络结构图

1.1 全局特征与局部特征提取模块

基于深度学习的指静脉识别算法通常通过GAP提取全局特征进行识别。GAP提取指静脉的全局静脉结构信息,保证全局静脉信息的完整性。而特殊姿态手指与其正常姿态手指之间的全局静脉结构差异较大,仅使用全局特征进行识别效果不佳。因此,本文通过全局特征与局部特征提取模块提取局部特征辅助全局特征进行识别,获得鲁棒性更强的指静脉融合特征。

图1中,全局特征与局部特征提取模块有3个分支,分别与主干网络3个分支相对应。本文将来自主干网络的特征图水平均匀分割成若干个大小相等的特征块,进行局部特征的提取。分块越多,学习到的静脉特征越精细,但也会因手指平移过大出现分块不对齐等问题。因此,本文将特征图分为原始特征图、二等分特征图、三等分特征图。第1个分支为原始分支,仅提取全局特征;第2和第3个分支分别对各自分支特征图进行水平分块,提取不同尺度的局部特征,获取各自分支全局特征,避免割裂全局特征与局部特征的学习。将3个分支的特征通过1×1卷积进行降维后拼接到一起,得到辨别力更强的融合特征。

在本文提出的全局特征与局部特征提取模块中,通过GAP提取全局特征,通过GMP提取局部特征,GMP能够保留特征图中响应最强烈的静脉结构信息,去除易受手指平移、轴旋转等姿态变化影响的不明显静脉信息干扰,提高局部显著静脉特征的平移不变性,强化全局特征中与之对应的静脉信息,这样,不仅提高了全局特征的判别力,而且保证了静脉结构信息的完整性。

1.2 激活函数

在网络中,激活函数发挥重要作用,影响网络的非线性表达能力。传统的残差网络通常采用线性修正单元(Rectified linear unit,ReLU)[12]作为激活层。ReLU激活函数具有降低计算量、防止梯度消失、缓解过拟合等优点。但是,当神经元输入x≤0时,梯度被置为0,则该神经元已经死亡,不再对任何输入有响应,此时网络无法有效学习指静脉结构信息,模型无法提取具有强辨别力的指静脉特征。学习率设置较大时,也会导致大量神经元的死亡。所以,本文采用Mish激活函数作为网络的激活函数:

(1)

图2 改进残差块

式中,x为前一层网络的输出。Mish激活函数和ReLU激活函数均无上界,避免了梯度消失的问题。但Mish在神经元输入x≤0时,允许较小的负梯度流入,有效缓解了神经元死亡问题,使得网络能够学习到更多的静脉结构信息。此外,Mish是一个平滑的激活函数,平滑过渡使得激活后的静脉结构信息更加清晰连贯。采用Mish激活函数的改进残差块如图2所示。

1.3 损失函数

网络训练过程中,为了提高网络的学习表征能力,本文采用交叉熵损失和CurricularFace损失联合监督网络,计算公式如下:

L=LCrossEntropy+LCurricularFace

(2)

式中,LCrossEntropy为交叉熵损失,LCurricularFace为CurricularFace损失。

(3)

式中,N为训练集中一个批次图像的数量,n为训练集中静脉图像的类别数,fi为第i个样本对应的特征向量,yi表示fi对应的类别,Wj表示权重矩阵W的第j列,bj为偏置项。

在采集指静脉图像的过程中,特殊姿态手指与其对应的正常姿态手指的静脉图像之间存在类内距离远的问题,交叉熵仅约束类间距离,未对类内距离进行约束。同时,训练过程中,由于特殊姿态手指的类内距离远导致网络无法很好收敛,影响网络的学习能力和泛化能力。本文引入CurricularFace损失,旨在扩大指静脉特征向量的类间差,缩小类内差,同时在线自适应挖掘特殊姿态手指样本,使得网络能够更好地适应平移、轴旋转等姿态变化,计算公式如下:

(4)

(5)

t(k)=αr(k)+(1-α)t(k-1)

(6)

式中,t为自适应估计参数,t(0)=0,α为动量,r(k)为第k个mini-batch的正余弦相似度的平均值。当样本分类正确时,样本为正常手指,此时N(t,cosθj)=cosθj;当样本分类错误时,样本为特殊姿态手指,N(t,cosθj)=(t+cosθj)cosθj。在训练前期,t趋近于0,(t+cosθj)<1时,正常手指权重大于特殊姿态手指权重,网络更加关注正常手指,这有利于加速模型收敛;随着不断训练,样本的正余弦相似度不断增大,即r(k)不断增大,t(k)不断增大,最终(t+cosθj)>1,即特殊姿态手指的权重大于正常手指权重,网络更加关注特殊姿态手指的训练,使得网络更好地适应手指平移、轴旋转等姿态的变化。

本文融合全局与局部特征网络中3个全局特征向量G以及融合特征向量F均保留全局信息,采用CurricularFace进行约束,考虑到分块局部特征可能存在的不对齐问题,5个局部特征向量L仅采用交叉熵进行约束。

2 仿真实验及分析

实验所用服务器GPU为NVIDIA TITAN RTX,CUDA版本为10.1,操作系统为64位Ubuntu16.04,使用的深度学习框架是PyTorch1.7.1,编程语言为Python3.7.9。训练阶段的批次大小为16,初始学习率为0.000 1,每5轮衰减为原来的1/10,共训练16轮。通过自适应矩估计(Adaptive Momentum Estimation,ADAM)优化器对网络参数进行优化,指静脉特征向量维度为2 048维。

2.1 数据集

实验数据集包括3部分,分别是马来西亚理工大学指静脉集FV-USM、课题组通过实验采集的正常图像库FV-Normal和特殊图像库FV-Special。

FV-USM数据集来自123名志愿者,每人采集4根手指的信息,分别为左食指、左中指、右食指、右中指,采集过程分为2个阶段,每根手指在每个阶段采集6次,共有5 904张图像。将2个阶段数据集进行合并,得到492类,每类12张图像。按照4∶1划分训练集与测试集,选取前392根手指图像作为原始训练集,经过旋转、平移、缩放等方式进行扩充,得到扩充训练集。后100根手指图像作为测试集。

FV-Normal数据集由课题组自主研发的850 nm波长红外摄像头的小型指静脉模块进行采集,共有4 600根正常放置姿态下的手指静脉信息,每根手指有6张图像,总共24 000张图像。其中,前4 000根手指来自500人,每人采集8根手指信息,后600根手指来自100人,每人采集6根手指信息。训练集与测试集按照人数进行5∶1划分,选取前4 000根手指的静脉图像作为原始训练集,经过旋转、平移、缩放等方式扩充,得到扩充训练集,选取后600根手指的静脉图像作为测试集。

FV-Special数据集通过课题组自主研发的850 nm波长红外摄像头的小型指静脉模块进行采集,采集16人的4根手指静脉信息,每根手指包含正常、重压、弯曲、上移、下移、平面左旋转、平面右旋转、轴左旋转和右轴旋转共9种放置姿态,每种放置姿态采集10张图像,总共5 760张图像,均作为测试集,用于测试指静脉识别算法在不同手指放置姿态下的识别性能。

2.2 消融实验

在FV-USM数据集上进行消融实验。FV-USM测试集包含100指×12=1 200张图像,统计识别率时,同类匹配次数为6 600次,不同类匹配次数为712 800次。

为了解决ReLU带来的问题,本文融合全局与局部特征网络采用Mish作为激活层。为了验证其效果,采用本文融合全局与局部特征网络(Branch-1)作为基线模型,模型激活函数分别使用ReLU和Mish,采用CurricularFace损失进行训练。结果如表1所示。

表1 不同激活函数模型的性能对比 单位:%

从表1可以看出,相比于ReLU,采用Mish作为激活层后,零误识识别率提高了3.46%,Top1排序性能提升了0.63%,说明Mish激活函数能有效缓解ReLU激活函数带来的神经元死亡问题。

Branch-1网络下,不同激活函数的激活特征图可视化结果如图3所示。由于深层网络为高级语义信息,不利于观察,因此本文只展示Conv_2最后一层激活特征图,限于篇幅,均取前4个通道特征图。从图3(b)和(c)可以看出,相比于ReLU激活函数,Mish激活函数提取的静脉结构信息更加丰富准确、连贯清晰,说明Mish激活函数更适合指静脉特征的提取。

图3 不同激活函数的基线模型的激活特征图

表2 不同分支组合的零误识识别率与Top1排序 单位:%

本文融合全局与局部特征网络采用多分支结构独立学习不同尺度下的局部特征与全局特征,为了验证各个分支的效果,设置不同分支组合进行实验,结果如表2所示。从表2可以看出,3个单分支中,Branch-2分支的零误识识别率和Top1排序性能最高。较Branch-2分支,Branch-3分支的识别性能出现下降,可能是因为Branch-3分支分块较多,手指平移较大带来的分块不对齐问题对其影响较大,但与Branch-1分支相比依旧有提升,说明本文网络的局部特征的分块策略较为合理。从3组二分支组合来看,相比单独分支均有提升,三分支组合的零误识识别率和Top1排序性能最好,说明本文网络的3个分支能够独立学习不同尺度下的指静脉局部和全局静脉结构信息,相互补充,共同提高模型的表征能力。

2.3 对比试验

分别使用VGG-16[13]、指静脉改进残差网络[9]、本文Branch-1网络、本文融合全局与局部特征网络进行提取特征,得到ROC曲线如图4所示,Top1排序如表3所示。ROC曲线中,横坐标为误识率(False Acceptance Rate,FAR),纵坐标为识别率(True Acceptance Rate,TAR)。

图4 不同网络在不同数据集上ROC曲线

从图4可以看出,当FAR为0时,本文融合全局与局部特征网络TAR最高,在FV-USM测试集和FV-Normal测试集上,较VGG-16、指静脉改进残差网络、本文Branch-1网络分别提高了13.18%,18.59%,11.33%和8.11%,4.17%,4.32%。

表3 不同网络在不同数据集上的Top1排序 单位:%

从表3可以看出,本文融合全局与局部特征网络Top1排序性能最高,在FV-USM测试集和FV-Normal测试集上较VGG-16、指静脉改进残差网络、本文Branch-1网络分别提升4.31%,8.26%,4.00%和4.96%,1.55%,0.50%。

为了验证本文融合全局与局部特征网络在不同手指放置姿态下的有效性,采用FV-Special测试集进行测试,得到4种网络的零误识识别率和Top1排序如表4所示。

表4 不同网络在FV-Special测试集上的零误识识别率与Top1排序 单位:%

从表4可以看出,在不同手指放置姿态下,本文融合全局与局部特征网络零误识识别率以及Top1排序性能均明显高于其他网络,说明本文融合全局与局部特征网络有效提高了特殊姿态手指的识别性能。

为了验证本文融合全局与局部特征网络的实时性能,选取FV-Normal测试集作为测试样本,共计3 600张指静脉图像,分别统计VGG-16、指静脉改进残差网络、本文Branch-1网络、本文融合全局与局部特征网络进行提取特征的平均识别时间,结果如表5所示。

表5 不同网络的平均识别时间 单位:s

从表5可以看出,VGG-16网络结构较简单,平均识别时间最短,而本文Branch-1网络和融合全局与局部特征网络结构较复杂,平均识别时间要长一些。

3 结束语

本文提出一种融合全局与局部特征网络的指静脉识别算法。通过多分支网络学习不同粒度下的指静脉全局特征与局部特征,并运用特征拼接技术进行特征融合,显著提高了特殊姿态手指的识别率与Top1排序性能。下一步将重点进行融合全局与局部特征网络的轻量化研究,在降低模型复杂度的同时保证网络的识别性能。

猜你喜欢

特征向量分支全局
基于改进空间通道信息的全局烟雾注意网络
领导者的全局观
克罗内克积的特征向量
一类离散时间反馈控制系统Hopf分支研究
软件多分支开发代码漏合问题及解决途径①
高中数学特征值和特征向量解题策略
三个高阶微分方程的解法研究
落子山东,意在全局
含有二阶幂零鞍点的双同宿环附近的极限环分支
统筹全局的艺术