基于改进型ELM的指静脉识别算法研究

2018-10-23 01:50刘胜前张烈平
自动化与仪表 2018年9期
关键词:隐层范数降维

刘胜前 ,张烈平 ,赵 阳 ,孙 旋

(1.桂林理工大学 机械与控制工程学院 广西矿冶与环境科学实验中心,桂林 541004;2.桂林理工大学环境科学与工程学院,桂林 541004;3.69225部队84分队,和静 841300)

与一般的生物特征图像相比,基于人体指静脉的身份识别系统具有一些独特的优势:①非接触性,静脉位于体表下面,不会因皮肤污染而影响静脉图像的采集;②活体性,只有手指或手掌处于活体时才存在成像特征,不会发生类似指纹生物特征的盗用现象,而且身体内部的血管特征很难伪造或是手术改变;③易接收性,图像采集比较友好,相比DNA和虹膜,让人心理上更容易接受;④易与其它生物识别技术如人脸、指纹等组成多模生物识别系统[1-4]。

目前对指静脉身份识别方法的研究主要集中在指静脉图像采集、指静脉图像特征提取和匹配2个方面。受到手掌皮肤的遮挡、手掌位姿、背景光照、对比度等影响,指静脉图像分辨率和清晰度较低,在进行识别时具有一定难度。目前指静脉图像特征提取和匹配主要分2类:一类是利用指静脉图像的结构特征 (如静脉纹路图像的端点和交叉点)来识别指静脉,这类方法对手掌姿态变换比较敏感,且耗时长[5-7];另一类主要提取全局静脉图像的统计特征来进行识别,这类方法容易丢失图像局部信息,识别率不高[8-10]。

PCA作为一个非监督学习的降维方法,能够提取数据中的核心成分,用数据里最主要的方面来代替原始数据。在利用PCA对指静脉数据进行处理时,仅仅需要以方差衡量信息量,不受特征集以外的因素影响,主要运算是特征值分解,易于实现,可提高检测时间。由于各主成分之间正交,消除了收集静脉数据时手指位置可能会移动产生影响,提高检测准确性。

在进行识别时,神经网络模型凭借其较好的鲁棒性和容错能力成为图像分析中的一个热点研究方向[11-12]。BP神经网络算法是传统的手势识别方法之一,主要通过误差反向传播方式来建立手势识别模型。然而BP方法需要多次迭代才可获取最优解,无法满足手势识别的实时性要求。此外,当梯度下降步长较小时,BP方法容易陷入局部极小值,降低了识别的准确性。

极限学习机是近年来兴起的一个新型生物学习网络[13-14],具有良好的泛化能力,在利用ELM进行指静脉分析时,对研究对象数学模型的精确度和性能特性要求均不高,只需要对一定数量的样本展开训练和学习就可以完成对指静脉的识别,具有计算简单、学习速度快的特点。传统ELM算法随机设定输入和隐层参数,仅采用伪逆算法估计输出权重,存在容易过学习、算法泛化能力低的问题。本文提出一种PCA特征提取和超限学习机分类相结合的高效指静脉识别方法,将经过PCA降维提取的最优指静脉图像特征信息作为特征向量输入ELM进行训练。其次在传统ELM基础上,在估计输出权重时引入L1范数约束来控制整个模型的复杂度,引入L2范数约束来提高模型泛化能力。不仅大大降低了要处理的样本数量,又保持了ELM学习速度快、精度高的优点。

1 基于PCA-ELM的静脉识别方法

1.1 图像预处理

1.1.1 静脉图像的增强

由于平滑处理后的图像中静脉血管可能会比较模糊,不利于后续处理,因此需要对图像进行增强。针对静脉图像整体过暗的特点,采用提升灰度值的思想,使用对数灰度变换法[15]。对数灰度变换法的公式如下所示:

式中:e表示灰度相关变量;t(e)是原始图像灰度函数;g(e)是转换后的图像灰度函数;b和c是用来调整曲线的位置和形状,b用于控制曲线形状,c用于控制变换速率;a相当于平移量,在灰度没有达到a时皆将输入定位为0。

1.1.2 静脉图像的分割

针对每一个像素点f(x,y),都有一个对应的灰度阈值T(x,y)。利用一种基于图像统计的阈值选取方法来对原始指静脉图像进行分割[16]。阈值计算公式为

其中:

图像预处理结果如图1所示。

图1 预处理结果Fig.1 Pretreatment results

1.2 基于PCA的静脉图像降维

首先建立样本的协方差矩阵R:

式中:Λ=diag(λ1,λ2,…,λL),λ1≥λ2≥…≥λL为样本相关矩阵;U=[u1,u2,…,uL]为与样本相关矩阵中特征值对应的特征向量矩阵。定义主元方差贡献率:

计算前k个主元的方差贡献率,选取使贡献率ηk≥85%的主元为最终主成分,并利用所选的主成分特征值对应的特征向量构建变换矩阵K=[u1,u2,…,uk],k<L。 新的样本空间 A=(a1,a2,…,aN)T可以通过A=XK来进行重构。重构后的样本不仅消除了静脉图像中相关性较强的一些特征,而且达到了降维的目的。

2 基于ELM的指静脉识别模型

对于N个降维后的静脉图像训练样本(ai,ti),i=1,2,…,N,其中 ai=[ai1,ai2,…,aiK]∈Rk,ti=[ti1,ti2,…,tim]∈Rm,则一个有T个隐层节点的ELM数学模型可以表示为

式中:wj=[wj1,wj2,…,wjk]为输入节点同第 j个隐层节点之间的连接权重;βj为j个隐层节点输出权重;bj为第j个隐层节点的偏置;g(·)为激活函数。借鉴类脑思维中随机性思想,ELM算法对于wj和bj均随机给定,并在整个过程中保持不变,大大节省了训练时间,提高了算法运算速率。输出权重βj是ELM中唯一需要解析确定的参数。用矩阵形式重新表示式(3),可以得到:

在传统ELM算法中,输出权重β通过求解最小二乘问题得到:

其中Φ†为伪逆,由于最小二乘算法实现简单,使得ELM算法在计算效率方面明显优于传统BP算法。然而在实际数据分析中,发现当Φ存在不适定现象时,输出权重β幅值会急剧增大,导致过拟合现象,极大影响ELM算法的模型准确性,降低ELM网络的泛化能力。

为了解决上述问题,在式(7)中加入L1-L2范数约束,一方面凭借L1范数的稀疏能力可以使模型变得简单,另一方面L2范数约束可以提高算法的泛化能力,得到如下公式:

为了方便求解公式(8),定义如下矩阵:

由于λ2为一预先设定的常数,式(9)进一步展开可以得到:

式(10)对β*求偏导,并令导数为零,可以得到:

综上所述,基于L1/L2-ELM算法的步骤可以概括为以下三步:

(1)随机产生隐层节点参数wj和bj;

(2)计算隐层输出矩阵Φ;

3 实验结果分析

为了验证所提出算法的有效性,选取了自采集数据和来自MMCBNU-6000的公共数据集。公共数据集有来自不同国家、血型、性别和年龄的人群,共100个人。每个人18张指静脉图片,其中无名指、中指和食指各6张,共100*18=1800张指静脉图片。实验环境为处理器Inter1.60 GHz,内存1 GB,Matlab12平台仿真。

图2展示了PCA前后对指静脉图像的预处理效果,可以看出经过PCA操作在降维的同时有效保留了图像中的静脉分布。即使在图像有小角度旋转的情况下,PCA也可以抓住图像中的有效特征,一定程度上提升了算法的鲁棒性。

图2 PCA处理前后的效果对比Fig.2 Comparison of the effect of PCA rendering

如图3所示,经过三重交叉验证之后,可以得到对三个不同用户的身份识别准确率。所提出算法在识别准确率方面占据了明显的优势,主要原因在于指静脉图像采集过程中极易受到手指姿态、背景光线的影响,会造成图像细微的旋转,经过PCA的特征提取,可以减弱甚至消除图像的负面变化,有利于分类准确率的提高。此外,由于训练样本较少,在利用ELM框架进行训练时极容易发生过拟合,因此采用L1和L2范数约束可以有效避免过拟合,提升算法的范化能力。

图3 准确率对比图Fig.3 Contrast figure of accuracy

ELM网络在进行分类时,隐层神经元的数目需要人为设定。实验发现隐层神经元数目对识别结果具有一定影响,为了设置合适的隐层神经元数目,文章分析了当隐层神经元数目从20增加至160时的指静脉图像分类准确率,并选取最高准确率对应的隐层神经元数目作为最终隐层神经元数目设定值。此外,表1对网络规模进行了对比分析,可以发现经过传统BP网络训练时间最长,且准确率较差。与传统ELM算法相比,经过PCA进行特征提取之后,可以极大缩短ELM网络的训练时间。

表1 网络模型规模比较Tab.1 Comparison of network model scale

4 结语

本文在极限学习机的基础之上,结合主成分分析法,提出了一种PCA-L1/L2ELM的神经网络算法,本文提出的算法比ELM的训练时间更短,准确率更高,稳定性更强。一方面通过PCA提取指静脉图像的特征信息,使得训练数据更为简单,消除了图像特征之间的关联度,强调图像特征个体特性。另一方面结合ELM的快速训练测试神经网络,通过在ELM算法中引入L1范数约束来简化模型,引入L2范数约束来提高模型的泛化能力。实验结果证明该方法具有准确率高、响应快的优点。

猜你喜欢
隐层范数降维
混动成为降维打击的实力 东风风神皓极
基于RTD可编程逻辑门的n变量函数实现算法
一种自适应确定隐层节点数的增量半监督超限学习机算法
基于同伦l0范数最小化重建的三维动态磁共振成像
向量范数与矩阵范数的相容性研究
Helicobacter pylori-induced inflammation masks the underlying presence of low-grade dysplasia on gastric lesions
降维打击
基于RDPSO结构优化的三隐层BP神经网络水质预测模型及应用
代价敏感正则化有限记忆多隐层在线序列极限学习机及图像识别应用
基于加权核范数与范数的鲁棒主成分分析