一种基于Capsule的掌静脉特征提取方法与流程

文档序号:16036637发布日期:2018-11-24 10:07阅读:259来源:国知局

本发明涉及手掌静脉特征识别技术领域,尤其涉及一种基于capsule的掌静脉特征提取方法。

背景技术

掌静脉识别是指利用人体手掌血液中血红素对近红外光具有较强的吸收特性,获得手掌静脉的分布纹路进行的身份识别,目前已经逐渐应用于安防系统、银行系统、楼宇门禁等。

近些年,虽然深度学习取得了众多突破,尤其在人脸、语音等识别技术上,但是基于深度学习的掌静脉识别技术发展较慢,主要原因包括:(1)掌静脉具有复杂的内部结构,这种网状结构具有较弱的局部相关性,难以直接使用一般的卷积网络取得较好的识别效果;(2)掌静脉roi区域的选取存在随机性,一般通过手指间根部间隙点定位掌静脉roi区域,但是间隙点的定位会因手掌的张合动作存在较大的波动性,难以保证每次截取都一致;(3)一般掌静脉识别技术在采集掌静脉图像时都需要对手掌位置进行固定或采用接触式,但如果采用非接触式采集会导致掌静脉图像存在较大的位移和缩放,对roi区域的提取会发生较大的变化。

卷积神经网络取得成功的一个重要原因是在提取特征时具有不变性(invariance)。这种特性主要通过pooling等下采样操作获得。通过图像预处理和数据增强,把图片旋转一些角度或者随机滑动裁剪窗口,作为新的样本,输入神经网络识别,这样卷积神经网络就能够做到对一定的旋转和位移不变性。虽然卷积神经网络可以适应一定的旋转和位移,但是掌静脉的旋转和位移远远超过卷积神经网络的学习能力,尤其是掌静脉还具有较强的形变和较弱的局部相关性,导致卷积神经网络对掌静脉的识别率较低。

capsule的思想最早由hinton提出,用一组神经元来代表一个实体,其模长代表该实体出现的概率,其方向代表实体的一般姿态,包括位置、方向、尺寸、速度和颜色等。capsule抛弃了卷积神经网络的pooling,可以做到同变性(equivariance),不会丢失信息,只是对内容的一种变换,可以得到更好的实体表示。

掌静脉识别不同于一般物体识别,掌静脉纹理信息存在于整个输入图像中,不存在无用信息,符合capsule不丢弃有用信息的设计思想。capsule的同变性(equivariance)可以更好的解决掌静脉存在的易变形、随机位移、旋转、缩放等问题。针对掌静脉较弱的局部相关性问题,capsule可以通过路由协议机制(routing-by-agreementmechanism)解决。不同于pooling等下采样方法,capsule网络中高一级的capsule通过路由协议机制选择低一级的capsule,这种routing不是静态的,而是动态的(dynamicrouting),可以自主决定选择哪些相关性更强的capsule作为自己的输入。因此,capsule更符合掌静脉特征提取,具有更高的识别精度。



技术实现要素:

仅依靠卷积神经网络进行掌静脉特征提取和识别,存在识别率较低的问题,尤其是对以非接触式,即不固定手掌放置位置采集掌静脉图像,在特征提取和识别上的问题更为明显。为解决上述问题,本发明提供了一种基于capsule的掌静脉特征提取方法,通过构建基于capsule的特征提取网络,对掌静脉图像进行特征提取,得到掌静脉特征向量。本发明的技术方案,对掌静脉图像的位移、缩放、旋转等问题具有很好的适应性,不需要大量的训练样本就可以达到非常好的效果,而且不需要特别的图像预处理和数据增强。

一种基于capsule的掌静脉特征提取方法,其核心是通过构建的基于基于capsule的特征提取网络来获取掌静脉特征向量,所述的基于capsule的特征提取网络由3个模块构成,分别为卷积网络层、capsule网络层和分类层。

所述的卷积网络层由1个基础卷积层和3个layer层构成,卷积网络层主要功能是初步提取掌静脉的局部区域特征,为后面建立capsule做准备。

具体的,基础卷积层由1个卷积层、1个批量化层和1个激活函数层构成。

具体的,layer层由多个block层构成,共有两种block层,即blocka和blockb。blocka层处于每个layer层的第一级,blockb层位于blocka之后,可以根据识别精度和速度灵活配置blockb层的个数。layer层的主要功能是封装多个block层,在降低卷积特征平面的维度的同时,提取更丰富的高级特征。

blocka层主要由1个基础卷积层、2个卷积层、2个批量化层、1个求和层和1个激活函数层构成,blocka层的主要功能是降低卷积特征平面的维度;blockb层主要由1个基础卷积层、1个卷积层、1个批量化层、1个求和层和1个激活函数层构成,blockb层的主要功能是融合低级的卷积特征,提取更丰富的高级特征。

所述的capsule网络层由权重矩阵层、转换矩阵层和l2归一化层构成。权重矩阵层对每个capsule做特征变换;在转换矩阵层,高一级的capsule根据路由协议机制选取低一级的capsule;l2归一化层对最后输出的capsule作归一化,获得最终期望的掌静脉特征向量。

所述的分类层主要由1个全连接层和1个softmax层构成,主要功能是将低维的特征向量映射到各自的类中心,利用softmax分类功能完成整个网络的训练。

附图说明

图1是本发明基于capsule的特征提取网络结构图;

图2是本发明卷积网络层的结构图;

图3是本发明基础卷积层的结构图;

图4是本发明layer层的结构图;

图5是本发明blocka的结构图;

图6是本发明blockb的结构图;

图7是本发明capsule网络层的结构图;

图8是本发明分类层的结构图;

图9是本发明基于capsule的网络结构实施参数信息表图。

具体实施方式

为了使本发明的目的,技术方案更加清楚明白,以下结合附图对本发明作进一步描述。

本发明公开了一种基于capsule的掌静脉特征提取方法,在整个网络的设计中,避免使用pooling等下采样操作。本发明技术方案利用了卷积网络有效提取特征的优点,因此在网络的前部分使用卷积网络提取掌静脉的局部区域特征,但考虑到掌静脉存在易变形、缩放、旋转、位移等问题,在网络的中间部分设计了capsule层,网络的最后一层引入分类层,通过分类网络完成特征向量的训练。本发明技术方案的另一优点是可以根据识别精度和速度,针对每级的layer层灵活配置不同个数的block层。

如图l所示,一种基于capsule的掌静脉特征提取方法,通过构建的基于基于capsule的特征提取网络来获取掌静脉特征向量,具体如下:

(1)输入掌静脉图像

基于capsule的掌静脉特征提取网络的输入层数据为经简单预处理后的掌静脉图像,通过近红外光拍摄采集的掌静脉图像,再截取掌静脉图像roi区域,经简单的二值化及图像增强等预处理,即可作为的capsule的特征提取网络的输入层。

(2)基于capsule的特征提取网络

本发明公开的一种基于capsule的特征提取网络结构如图1所示,该网络结构由3个模块构成,分别为卷积网络层、capsule网络层和分类层。

(2.1)卷积网络层的设置

如图2所示为卷积网络层的结构图,图9所示为本发明基于capsule的网络结构实施参数信息表,在本发明提供的实施例中卷积网络层由1个卷积核为5x5的基础卷积层和3个layer层构成。其中,第一级layer层设置3个block,包含1个blocka和2个blockb;第二级layer层设置4个block,包含1个blocka和3个blockb;第三级layer层设置3个block,包含1个blocka和2个blockb。这三级layer级联完成对掌静脉局部特征的提取。

基础卷积层的stride设置为2,因为掌静脉为稀疏的网状结构,不需要密集的特征提取,在降低计算量的同时,降低卷积特征平面的维度。

优选的,所述的基础卷积层,如图3所示,由1个卷积核大小为m×n的卷积层(convolution)、一个批量化层(batchnorm)和一个激活函数层(relu)构成。首先输入经过卷积核为m×n,stride为s的卷积层,然后经过批量化层,最后经过一个激活函数层。批量化层的主要作用是解决网络梯度消散和爆炸问题,可以更加稳定训练网络,这里激活函数层选择relu,主要因为relu是最简单的激活函数,而且效果比较好。

优选的,所述的layer层,如图4所示,由两种block构成,分别为blocka和blockb。

如图5所示,blocka由1个3x3的基础卷积层、1个3x3的卷积层、1个1x1的卷积层、2个批量化层、1个求和层和1个激活函数层relu构成,包括两条通路,第一条通路依次经过1个3x3的基础卷积层、1个3x3的卷积层和1个批量化层,第二条通路依次经过1个1x1的卷积层和1个批量化层,再将这两条通路对应通道求和,最后经过激活函数,输出给下一级网络,卷积核为3x3的基础卷积层和卷积核为1x1的卷积层,stride均被设置为2,达到对卷积特征平面降维的功能,blocka通过第二条通路引入残差网络,降低深层网络的退化问题,可以使深层网络获得更高的表达能力。

如图6所示,blockb由1个3x3的基础卷积层、1个3x3的卷积层、1个批量化层、1个求和层和1个激活函数层构成,blockb也包括两条通路,第一条通路依次经过1个3x3的基础卷积层、1个3x3的卷积层和1个批量化层,第二条通路引入残差,最后将两条通路对应通道求和,最后经过一个激活函数层,作为下一级网络的输入。

blocka处于layer层的第一级,且只有一个,blockb位于blocka之后,可以有多个,在每个layer层的设计中可以根据识别精度和速度设置不同个数的blockb。layer层主要功能是封装多个block,构成更复杂的网络结构,提取更丰富的高级特征。

(2.2)capsule网络层的设置

如图7所示为capsule网络层的结构图,由1个权重矩阵层、1个转换矩阵层和1个l2量化层构成,capsule层的输入来自卷积网络层,输入大小为14x14,深度为512,将每个位置的512维向量作为一个capsule,可构成196个capsules,再经过经过权重矩阵层和转换矩阵层完成capsule的转换。

优选的,所述的权重矩阵具体实现公式如下:

uj|i=wijui

其中,ui表示第i个capsule,wij表示capsuleui的权重矩阵,uj|i表示变换后的capsule;

转换矩阵层将低一级的capsuleuj|i转换为高一级的capsulesj,具体实现公式2如下:

sj=∑icijuj|i

式中,cij表示低一级capsuleuj|i与高一级的capsulesj之间的耦合系数,耦合系数cij通过路由协议机制产生。

耦合系数cij通过路由协议机制(routing-by-agreementmechanism)产生。路由协议机制的原理是在低一级的capsule传递给高一级的capsule的过程中,当多个低一级的capsule预测一致时,高一级的capsule将会得到激活,使得高一级的capsule的活动向量得到更大的标量积,这些标量积将影响耦合系数cij的大小,从而影响影响上一级的capsule。

优选的,l2量化层是对转换矩阵最后输出的capsule进行l2量化,作为掌静脉的特征向量,该特征向量的维度设置为512。

(2.3)分类层的设置

如图8所示为分类层的网络结构,分类层由一个大小为8000全连接层和一个softmax层构成,分类层的主要功能是将低维的特征向量映射到各自的类中心,通过softmax层进行分类训练。如果训练数据集的类别不是8000可以根据实际类别重新设置。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1