一种基于改进cGAN网络生成适用多设备识别指静脉图像的
方法
技术领域
本发明属于信息安全的身份识别验证技术领域,尤其涉及一种基于改进cGAN网络生成适用多设备识别指静脉图像的方法。
背景技术
手指静脉识别是一种前沿的生物特征识别技术,它是利用手指内静脉的红外图像来进行身份识别,具有生物活体识别、体内特征识别和非接触式识别三个特点。指静脉识别确保了被识别者的手指静脉难以伪造,因此手指静脉识别系统安全等级高,特别适用于高安全级别的场所,各种指静脉的识别有关技术也在不断提升识别的性能,识别的精度与速度的也在逐步提升。
目前,指静脉识别技术的过程如专利号为CN101840511B的中国发明公开的手指静脉特征提取与匹配识别方法,包括通过红外图像采集装置获取手指静脉图像,并对图像进行预处理,特征提取,识别分析步骤;所述预处理包括彩色图像进行灰度化、手指区域提取、采用方向滤波和增强、按照手指轮廓标记提取手指静脉纹路并二值化、采用面积消除法去噪、将图像的大小标准化为统一的图像;特征提取的方法为:对手指静脉纹路图进行子块划分,对于每个子块图像采用双向特征值加权分块的双向二维主成分分析的方法进行特征提取;识别分析是将各个子块的特征作为整体采用最近邻分类器进行识别。
在手指静脉识别中指静脉图像质量的高低直接影响到识别结果的好坏。主要原因是不同厂商的指静脉设备设计各不相同,例如设备打光方式有上打光、双侧打光以及单侧打光,没有统一标准的前提下导致所采集的指静脉图像存在不同程度差异;即使是同一种型号设备也会因个体的元件差异导致指静脉图像质量发生变化。因此,导致同手指静脉在不同设备所呈现图像存在不同程度差异,这也仍然是会影响指静脉识别性能的重要因素之一,尤其对于不同设备使用的注册验证。
近些年来,有关许多的手指静脉图像质量评估或增强方法被提出。在2010年哈尔滨工程大学王科俊等,提出一种手指静脉图像质量判别方法,即是通过获取手指静脉图像的对比质量分数、位置偏移质量分数有效区域质量分数、方向模糊度质量分数,将上述质量分数加权累加起来进行综合评价;在2011年中国人民解放军国防科技大学谢剑斌等,提出用于特征提取的静脉图像质量检测方法,其方法主要是对手指静脉图像划分区段后提取手指静脉区域平均梯度特征,以及手指静脉纹理细节点,由上述条件分级判断手指静脉图像的质量;在2017年重庆工商大学亲华锋等提出基于卷积神经网络的手指静脉图像质量评估方法及评估系统,该方法为首先对手指静脉灰度图像的质量进行标注,其次建立训练样本集合,然后利用训练样本集合对卷积神经网络模型进行训练,最后通过支持向量机来计算出所预测手指静脉图像的质量。
据调查了解,上述列举的方法大多是对指静脉图像质量的评估,从而判断出图像质量的好坏,并不能有效提高已经获得的指静脉图像质量与降低指静脉图像因设备差异在识别任务中的影响;在一个设备采集图像注册后另一个设备采集的图像进行验证的情况下未能根据因设备变化导致指静脉图像的变化进行注册模板更新,或者在使用人不方便直接对不同设备注册模板进行更新,由此导致指静脉识别率不同程度降低。对于由一个设备注册另一个设备验证导致的指静脉图像质量变化的指静脉识别性能降低情况,也未发现有研究人员提出相关的解决办法。
发明内容
本发明的目的是为了解决现有指静脉识别技术中一个设备状态下注册另一个设备状态下验证导致的指静脉图像质量变化识别率低的问题,提供一种基于改进cGAN网络生成适用多设备识别指静脉图像的方法。
为了达到目的,本发明提供的技术方案为:
一种基于改进cGAN网络生成适用多设备识别指静脉图像的方法,包括以下步骤:
1)采集或选取一个设备的多个图像样本X0;
2)对图像样本X0进行分割,提取出静脉部分,获取静脉的背景二值图像Xbin;
3)根据二值图像Xbin的大小及格式设计出与之相匹配的改进cGAN网络结构;
4)训练改进cGAN网络,并根据所采集的数据量训练更新相适应的网络参数值;
5)将分割细化后的指静脉细线二值图Xbin输入训练好的改进cGAN网络中,生成指静脉图像,用于指静脉注册识别。
优选地,所述的改进cGAN网络的结构主要包括生成器G和判别器D,每次训练改进cGAN网络时,首先对判别器D进行训练,再对生成器G进行训练,最后根据训练结果,更新判别器D和生成器G的参数;其中,在判别器D中的一部分参数只需要一次训练完成即可。
优选地,所述的生成器G输入的图像为二值图像Xbin,输出的图像为接近于另一台目标设备图像的指静脉灰度图像Xg,并根据目标设备的指静脉灰度图像Xt训练生成器。
优选地,所述的判别器D输入的是目标设备的图像Xt和生成器所生成的指静脉灰度图像Xg,判别器训练的是对目标图像Xt与生成器所生成的图像Xg中灰度的学习,判断目标图像Xt的灰度与成器所生成的指静脉灰度图像Xg的灰度之间的不同,获取判别图像生成图像Xg与目标图像Xt之间差异程度的能力,若生成器所生成的指静脉灰度图像Xg更接近于目标图像Xt,则用指静脉灰度图像Xg替换目标图像Xt。
优选地,所述的生成器G由多个ENCODE编码块串联后与多个DECODE编码块串联构成,每个ENCODE编码块均由非对称卷积层、归一化层和激活层组成,每个DECODE编码块均由非对称反卷积层、归一化层和激活层组成,每两个ENCODE或者两个DECODE之间连接了非对称卷积自适应模块,起到编码模块之间特征图尺寸前后适应的作用。
优选地,所述的判别器D由第一部分和第二部分组成,其中第一部分由多个ENCODE编码块串联而成,每个ENCODE编码块均由非对称卷积层、归一化层和激活层组成,每两个ENCODE之间连接了非对称卷积自适应模块,起到编码模块之间特征图尺寸前后适应的作用,该第一部分起到鉴别真假的作用;第二部分是由只需一次性训练完成的非对称卷积网络构成,起到提取卷积特征向量并度量距离大小的作用。
上述生成器G和判别器D的非对称卷积层编码解码结构的设计,目的在于能够提取出图像的更高级别的特征,非对称卷积层的具体参数是根据输入图像的参数设定。
优选地,所述的步骤4)中,通过训练改进cGAN网络过程与原理得到目标函数,目标函数的计算方法如下:
式中,x为目标图,y为生成图,z为二值图,G(x,z)表示有生成器的生成图y,D(x,y)表示判别器的判别结果,
表示求G使得目标函数最小化和求D使得目标函数最大化,
表示两者通过识别网络后提取到的特征之间的欧式距离,G
*表示最终的目标函数,即所求最值函数,λ为超参常数。
优选地,所述步骤4)中,在寻找最优的生成器中会给定一个判别器D,将G*作为训练生成器的损失函数L(G),然后采用Adam算法更新生成器的参数,梯度下降的参数优化过程的公式如下:
式中,θG表示改进cGAN网络中的生成器的参数;
当给定一个生成器的初始值G
0需要寻找令
最大的D
0,G
*作为训练判别器的损失函数L(D),判别器的更新过程损失函数为-L(D)的训练过程,参数优化过程的公式如下:
式中,θD表示改进cGAN判别器中的第一部分网络的参数;
在训练的内部循环中,优化判别器D第一部分的步骤和优化生成器G的步骤间交替进行,更新判别器D第一部分和生成器G,并使判别器D第一部分和生成器G一直趋于最优解的附近。
采用本发明提供的技术方案,与现有技术相比,具有如下有益效果:
本发明涉及的基于改进cGAN网络生成适用多设备识别指静脉图像的方法通过设计改进cGAN网络结构,并通过生成器G根据输入的二值图描绘出指静脉灰度图像训练生成器和判别器D,在一台设备采集图像注册后另一台设备采集的图像进行验证的情况下未能根据因设备变化导致指静脉图像的变化进行注册模板更新,或者在使用人不方便直接对不同设备注册模板进行更新的情况下,实现注册模板的更新,有效地解决了手指静脉在不同设备状态下引起的图像质量变化的指静脉识别性能降低的问题。
附图说明
图1是本发明基于改进cGAN网络生成适用多设备识别指静脉图像的方法的流程图;
图2是生成器的功能示意图;
图3是判别器的功能示意图;
图4是ENCODE编码块结构示意图;
图5是生成器结构原理图;
图6是DECODE编码块结构示意图;
图7是判别器结构与原理示意图;
图8是判别器第一部分优化原理示意图;
图9是生成器优化原理示意图。
具体实施方式
为进一步了解本发明的内容,结合实施例对本发明作详细描述,以下实施例用于说明本发明,但不用于限制本发明的范围。
图1是本发明基于改进cGAN网络生成适用多设备识别指静脉图像的方法的流程图,结合附图1所示,基于改进cGAN网络生成适用多设备识别指静脉图像的方法包括以下步骤:
1)使用指静脉图像采集设备采集手指近红外图像作为图像样本X0,图像样本X0为尺寸为240×480像素的灰度图像。
2)采用自适应阈值方法对图像样本X0进行分割,提取出静脉部分,获取静脉的背景二值图像Xbin。
3)根据二值图像Xbin的大小及格式设计出与之相匹配的改进cGAN网络结构,所述的改进cGAN网络的结构主要包括生成器G和判别器D;结合附图2、图4和图5所示,生成器G由多个ENCODE编码块串联后与多个DECODE编码块串联构成,每两个ENCODE或者两个DECODE之间连接了非对称卷积自适应模块;结合附图3、图6和图7所示,判别器D由第一部分和第二部分组成,其中第一部分由多个ENCODE编码块串联而成,每两个ENCODE之间连接了非对称卷积自适应模块,第二部分是由只需一次性训练完成的卷积网络构成;
在生成器的非对称卷积编码部分设计中,对输入的240×480的图像进行8次非对称卷积的ENCODE编码计算,计算得到1×2×512的张量;设计生成器的非对称反卷积解码部分时,首先对输入的1×2×512的张量进行非对称反卷积DECODE解码计算,的到1×2×512的张量,将连个1×2×512的张量连接成2×4×512的张量作为输出,依次进行其余的非对称反卷积解码计算,最后得到的输出为240×480矩阵;同时在非对称卷积编码部分,相同尺寸矩阵计算的卷积特征与非对称反卷积解码部分中同尺寸的反卷积特征连接作为非对称反卷积解码部分下一层的输入特征。至此生成对抗网络的生成器部分,网络中参数设置如表1所示;
表1生成器参数表
在判别器的部分设计中,第一部分的输入为两个240×480矩阵连接成的240×280×2的张量,然后经过一系列非对称卷积ENCODE编码计算最后得到8×16×1的张量,由此张量鉴别所输入图像时真实图像还是生成器生成的图像;至此生成对抗网络的判别器部分,网络中参数设置如表2所示。
表2判别器第一部分参数表
在判别器的第二部分设计中,第二部分的输入为一个240×480矩阵,然后经过一系列非对称卷积ENCODE编码计算最后得到1×128的向量,计算目标图与生成图卷积后的向量距离,该距离值用于参数更新;对抗网络的判别器第二部分网络中参数设置如表3所示。
表3判别器第二部分参数表
number |
layers |
shape |
strides |
future_size |
1 |
input |
* |
* |
240×480×1 |
2 |
layer_1 |
(2,3,1,64) |
[2,2} |
120×240×64 |
3 |
layer_2 |
(2,3,64,128) |
[2,2} |
60×120×128 |
4 |
layer_3 |
(2,3,128,256) |
[2,2] |
30×60×256 |
5 |
layer_4 |
(2,3,256,512) |
[2,2] |
16×30×512 |
6 |
layer_5 |
(2,3,512,256) |
[2,2] |
8×16×256 |
7 |
layer_6 |
(2,3,256,256) |
[2,2] |
4×8×256 |
8 |
layer_7 |
(2,3,256,256) |
[2,2] |
2×4×256 |
9 |
layer_8 |
(2,3,256,128) |
[2,4] |
1×1×128 |
10 |
output |
* |
* |
1×128 |
4)训练改进cGAN网络,并根据所采集的数据量更新相适应的网络训练参数值,训练过程中,生成器G输入的图像为二值图像Xbin,输出的图像为接近于目标设备原始图像的指静脉灰度图像Xg,并根据指静脉灰度图像Xg训练生成器;判别器D输入的目标设备图像Xt和生成器所生成的指静脉灰度图像Xg,判别器训练的是对目标设备图像Xt与生成器所生成的图像Xg中灰度的学习,判断目标设备图像Xt的灰度与成器所生成的指静脉灰度图像Xg的灰度之间的不同,获取判别图像生成图像Xg与目标设备图像Xt之间差异程度的能力,若生成器所生成的指静脉灰度图像Xg更接近于目标设备图像Xt,则用指静脉灰度图像Xg替换目标设备图像Xt;
每次训练改进cGAN网络时,首先对判别器D中的第二部分进行一次训练,之后该部分的参数不再改变;其次对判别器D中第一部分进行训练,再对生成器G进行训练,最后根据训练结果,更新判别器D第一部分和生成器G的参数;
判别器第一部分训练过程如图8所示,用Xin表示输入图像Input,用Xout表示生成器的输出图像Output,用Xt表示目标设备采集的图像Target,第一步由用Xin输入生成器得到生成图像用Xout;第二步先由Xout与Xin同时输入判别器通过对比计算判别出真假,再由Xt与Xin同时输入判别器通过对比计算判别出真假,分别统计判断错误率加权求和;第三步根据判别器判断错误率的总和采用梯度下降的方法调整判别器参数,即优化判别器,上述三步在样本不断输入的情况下,不断训练判别器;
判别器第二部分的训练,将该部分按照一般分类卷积网络特征提取部分进行训练,再用Xout与Xt分别输入该部分经卷积得到对应的卷积特征向量,使得该部分具备提取图像特征用于度量两张图像是否为同类的能力,一经训练完成后其参数不再改变;
生成器的训练过程如图9所示,用Xin表示输入图像Input,用Xout表示生成器的输出图像Output,用Xt表示目标设备图像Target。第一步由Xin输入生成器生成图像Xout;第二步先由Xout与Xin同时输入判别器第一部分通过对比计算判别出真假,再由Xt与Xin同时输入判别器第一部分通过对比计算判别出真假,后将Xout与Xt输入判别器的第二部分计算出两者之间的距离,分别统计判断错误率与距离值进行加权求和;第三步根据判别器判断错误率的总和采用梯度下降的方法调整生成器参数,即训练生成器;
通过对判别器和生成器的训练过程与原理得到目标函数,目标函数的计算方法如下:
式中,x为目标图,y为生成图,z为二值图,G(x,z)表示有生成器的生成图y,D(x,y)表示判别器的判别结果,
表示求G使得目标函数最小化和求D使得目标函数最大化,
表示两者通过识别网络后提取到的特征之间的欧式距离,G
*表示最终的目标函数,即所求最值函数,λ为超参常数;
在寻找最优的生成器中会给定一个判别器D,将G*作为训练生成器的损失函数L(G),然后采用Adam算法更新生成器的参数,梯度下降的参数优化过程的公式如下:
式中,θG表示改进cGAN网络中的生成器的参数;
当给定一个生成器的初始值G
0需要寻找令
最大的D
0,G
*作为训练判别器的损失函数L(D),判别器的更新过程损失函数为-L(D)的训练过程,参数优化过程的公式如下:
式中,θD表示改进cGAN判别器中的第一部分网络的参数;
在训练的内部循环中,优化判别器D第一部分的步骤和优化生成器G的步骤间交替进行,更新判别器D第一部分和生成器G,并使判别器D第一部分和生成器G一直趋于最优解的附近。
5)将分割细化后的指静脉细线二值图Xbin输入训练好的改进cGAN网络中,生成指静脉图像,用于指静脉注册识别。
本发明采用三台不同设备每台采集图像,采集了300根手指共3批图像。其中第一台设备的红外光源在手指上方,采集了第一批图像;第二台设备的红外光源在手指两侧,采集了第二批图像;第三台设备的红外光源在手指的左侧,采集了第三批图像。第一批每手指采集13张,第二与第三批每个手指每批采集10图像;随机抽取第一批图像中的3张用于注册,第一批(其余10张)、第二批、第三批原图图像用于验证,同时将上述验证图像均通过本发明的方法生成同样数量图像用于验证,对比上述验证通过率。根据表3所示,在采用原始图验证情况下,注册后采用第一批图像原始图(其余10张)进行验证的平均通过率为99.87%,注册后采用第二批图像的原始图验证的平均通过率下降2.26个百分点至97.61%,采用第三批图像的原始图验证的平均通过率降低6.07个百分点至93.80%;在采用本发明涉及的基于改进cGAN网络生成适用多设备识别指静脉图像的方法生成指静脉图像验证情况下,注册后采用第一批图像的生成图进行验证的平均通过率为99.66%,注册后采用第二批图像的生成图验证的平均通过率下降0.42个百分点至99.24%,采用第三批图像的生成图验证的平均通过率降低0.63个百分点至99.03%;最后对比发现,采用第一台设备的图像在注册后采用其他设备的原始图像进行验证的情况向验证通过率下降明显,但是其他设备状态下采用本发明方法的生成图像验证时验证通过率下降不明显,而且就下降幅度而言仍能满足使用要求。
表3通过率统计表
以上结合实施例对本发明进行了详细说明,但所述内容仅为本发明的较佳实施例,不能被认为用于限定本发明的实施范围。凡依本发明申请范围所作的均等变化与改进等,均应仍属于本发明的专利涵盖范围之内。