一种基于深度学习的指纹分类识别系统及方法与流程

文档序号:14266388阅读:525来源:国知局
一种基于深度学习的指纹分类识别系统及方法与流程

本发明涉及指纹分类识别技术领域,尤其涉及一种基于深度学习的指纹分类识别系统及方法。



背景技术:

在生物特征识别领域上,指纹识别技术是最为成熟和应用最广泛的生物特征识别技术之一,由于其具有终身不变性、唯一性和方便性,且技术成熟、采集简便和成本比较低廉等特点,目前在生物特征识别的市场占比最大,并广泛应用于身份鉴定、信息安全、访问控制、快捷支付等方面。在日常生活中,门禁、考勤、智能手机的解锁等均可见指纹识别技术的应用。

自动指纹识别系统(automaticfingerprintidentificationsystem,afis)利用指纹的唯一性、普遍性、便捷性和终身不变性等特点对个人身份进行识别,各类afis在进行指纹识别时,待认证的指纹通常需要与数据库中的模板指纹进行比对(通常是1:n的比对)。为减少比对次数较多带来的巨大耗时,afis往往会根据指纹纹型进行指纹分类再快速筛选,即待认证的指纹只需与同一纹型的模板指纹进行比对即可。

随着数据库的增大,同类纹型的差异逐渐变大、而不同纹型之间的界限变得模糊,特别是对于残缺指纹和存在大量噪声的指纹,对它们的纹型进行判断更为困难。传统指纹纹型分类算法的准确率直接受到相应特征提取算法的影响。在海量指纹库中,同类纹型指纹形态变化明显增大,不同类纹型界限变得模糊,仅通过人工定义的特征进行分类很难适应全部指纹数据。在公开号为cn105975909a的中国发明专利说明书中公开了一种基于六类指纹纹型特征、指纹奇异点间脊线数和分形维数的指纹三级分类方法,但计算图像分形维数的算法普遍存在对高维数图像计算误差较大,计算量大等缺点。

为解决纹型分类识别与人工定义的特征提取问题的耦合,本发明提出一种直接在指纹原图上进行纹型识别的算法,利用卷积神经网络(convolutionalneuralnetworks,cnn)自动特征提取的能力从大量指纹数据中学习得到纹型特征,并通过对训练数据的设计使网络能够适应指纹的多样性,提升算法的鲁棒性。此外,多尺度网络模型平均方法能使分类准确性得到进一步提升。



技术实现要素:

本发明的目的是为了解决现有技术中存在的缺点,而提出的一种基于深度学习的指纹分类识别系统及方法。

为了实现上述目的,本发明采用了如下技术方案:

一种基于深度学习的指纹分类识别系统,所述系统包括:图像采集模块,图像预处理模块,cnn深度学习模块,特征提取模块,模板存储模块和特征匹配模块。

优选的,所述图像采集模块与一般的按压触摸式传感指纹成像不同,图像采集模块由光源、高清摄像头和图像传感器构成,采取非接触式的高清拍摄来获取手指指纹图像,同时可以避免因按压手指获取的指纹容易发生形变的问题。

优选的,所述图像预处理模块与图像采集模块相连,图像预处理模块对图像采集模块采集到的指纹图像进行预处理,预处理包括对指纹采集模块采集到的指纹图像进行定位、图像分割、图像增强、图像二值化以及细化处理,最终获得处理完毕的指纹图像。

优选的,所述cnn深度学习模块是使用有纹型标定信息的注册指纹图像作为参照图像并生成训练数据,根据训练数据设计并训练卷积神经网络,再输入指纹图像,依参照指纹图像的生成方法生成输入指纹数据,并将该指纹数据输入到训练完成的cnn中,根据cnn输出进行判断并最终得到弓、左箕、右箕和斗4类指纹图像结果。

优选的,所述特征提取模块与cnn深度学习模块相连,特征提取模块在经cnn分类完成的指纹图像中提取指纹细节点,然后再在指纹图像中提取中脊线上的采样点,最后提取指纹图像采样点的凸包,生成含有指纹细节点、所有脊线上采样点和采样点的凸包的指纹特征图像。

优选的,所述模板存储模块与特征提取模块相连,用户输入并通过分类、特征提取后得到的注册指纹特征图像作为指纹特征图像模板存储到数据库中,用于对系统输入的指纹图像进行比对。

优选的,所述的特征匹配模块分别与特征提取模块和模板存储模块相连,当有指纹输入并通过cnn分类、特征提取单元提取指纹特征后,特征匹配单元提取同指纹类型的模板存储单元的指纹模板特征图像与输入的指纹特征图像进行对比,判断输入指纹特征与模板指纹特征是否匹配。

本发明还提供了一种基于深度学习的指纹分类识别的方法,所述的方法包括如下的实施步骤:

步骤s1、利用图像采集模块采集指纹图像,包括注册指纹和输入指纹;

步骤s2、将指纹图像进行预处理,获得便于cnn分类识别的细化指纹图像;

步骤s3、使用有纹型标定信息的注册指纹图像作为参照图像并生成训练数据,根据训练数据设计cnn卷积神经网络,训练构建的cnn;

步骤s4、输入指纹图像生成指纹数据,并将指纹数据输入到训练完成的cnn中,根据cnn输出进行判断并最终得到分类的指纹图像结果;

步骤s5、在分类完成的指纹图像中进行特征点提取,生成含有指纹细节点、所有脊线上采样点和采样点的凸包的指纹特征图像;

步骤s6、用户输入并通过分类、特征提取后得到的注册指纹特征图像作为指纹特征图像模板存储到数据库中,用于对系统输入的指纹特征图像进行比对;

步骤s7、当有待识别指纹输入,特征匹配单元根据类型提取模板存储单元中同类型的指纹特征图像与输入的指纹特征图像进行比对,判断输入指纹特征与模板指纹特征是否匹配。

与现有技术相比,本发明的有益效果是:本发明基于cnn卷积神经网络对指纹图像进行分类自识别,在快速纹型分类的基础上再进行同类型指纹特征图像比对,误差率较传统方法更低,识别更加精准,而且在大规模数据量的比对情况下,基于深度学习的指纹分类识别方法具有更好的表现力,更快更精准。

附图说明

图1是本发明指纹类型分类示意图;

图2是本发明指纹分类识别系统结构图;

图3是本发明指纹图像池化处理示意图;

图4是本发明cnn深度学习指纹纹型分类流程图;

图5是本发明cnn深度学习网络结构图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合具体实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

实施例1

如图1-5所示,其中图1所示的指纹类型分类示意图,根据henry指纹分类体系将指纹图像按照其拓扑结构分成5种类型,即弓(arch)、帐弓(tented-arch)、左箕(leftloop)、右箕(rightloop)和斗(whorl),据统计,这5种指纹类型的自然分布比例分别为3.7%,2.9%,33.8%,31.7%和27.9%。由于弓和帐弓2类指纹所占比例非常低,在实际的afis中,通常将二者合为一类,即将指纹纹型分为弓、左箕、右箕和斗4类。

通过指纹分类,待识别的指纹特征图像只需与同类型的指纹比对,即在指纹数据库中的一个子集中进行匹配,避免了在指纹数据库中进行大量的逐一比对。

如图2所示,本发明的指纹分类识别系统结构的核心是采用了cnn深度学习网络进行指纹图像的分类自识别,下面将本发明的指纹分类识别方法并结合系统进行阐述。

一种基于深度学习的指纹分类识别的方法,其实施步骤如下:

步骤s1、利用图像采集模块采集指纹图像,包括注册指纹和输入指纹;

具体地,本发明对指纹的图像采集区别于一般的按压触摸式传感指纹成像,采用非接触式高速高清拍摄成像来获取手指的指纹图像,可避免指纹图像因按压形变;

其中,注册指纹是为已知指纹类型的指纹,采集注册指纹图像作为指纹纹型参照图像,输入指纹为待识别验证是否匹配的指纹。

步骤s2、将指纹图像进行预处理,获得便于cnn分类识别的细化指纹图像;

具体地,采集到的指纹图像进行预处理,包括对指纹图像进行区域定位、图像分割、图像增强、图像二值化以及细化处理,获得适于cnn分类识别的细化指纹图像;

其中,在指纹图像预处理上,在确保指纹图像中心的前提下统一将图像剪裁成512*512像素大小作为原始训练数据,由于指纹不会随分辨率的改变而变化,为使卷积神经网络适合不同分辨率,提高算法鲁棒性,对原始数据进行不同倍数的池化,如图3所示,本发明分别采用2倍和3倍的池化,得到256*256像素和171*171像素的图像;

另外,为了克服训练数据不足,同时防止过拟合现象产生,对数据量进行进一步扩充,对池化后的数据进行切割,分别选左上、左下、右上、右下和中间区域作为训练数据,切割后的尺寸分别是224*224像素和148*148像素。

步骤s3、使用有纹型标定信息的注册指纹图像作为参照图像并生成训练数据,根据训练数据设计cnn卷积神经网络,训练构建的cnn;

具体地,对已知指纹类型的注册指纹图像进行纹型信息的标定,注册指纹图像即作为参照图像进行数据训练,即作为纹型识别的模板数据;

如图4所示,根据注册指纹图像数据确定卷积窗,并构建cnn卷积神经网络,构建完成后对注册指纹图像数据进行训练,训练完成后得到以注册指纹图像为纹型模板的cnn分类器。

步骤s4、输入指纹图像生成指纹数据,并将指纹数据输入到训练完成的cnn中,根据cnn输出进行判断并最终得到分类的指纹图像结果;

进一步地,为了对指纹纹型进行分类识别,本发明设计了一个利用224*224像素与148*148像素两种维度图像进行训练的多尺度cnn深度学习模型,该模型包含卷积层、池化层、全连接层以及svm分类器层,如图5所示;

其中,卷积层(convolutions)以c表示,c(1,2,3)为三个卷积层,数字为卷积核大小,s为卷积步长;池化层(subsampling)以p表示,p(1,2,3)为三个池化层,数字为池化核大小,s为池化步长;fullconnection(1,2)为两个全连接层,svm为分类器层;

在本发明的网络结构图中,以输入148*148像素指纹图像为例,指纹图像经过卷积层c1余池化层p1之后得到64张35*35的特征图像,再经过第二次卷积与池化之后得到128张15*15的特征图像,最后经过第三次卷积池化操作得到512张5*5的特征图像;

特征图像在全连接层将特征点进行全连接并在第二个连接层得到32个连接点,通过全连接层的图像经过svm分类器进行分类之后输出4类指纹纹型数据;

具体地,在整个卷积神经网络中,首先输入的指纹图像文件经过卷积层c1进行卷积处理,卷积运算可以在一定程度上降低噪声,增强输入指纹图像的特征,卷积公式定义为:

cx=f(∑i*kx+bx)

其中,i为输入,k为可训练卷积窗,b为可训练加性偏置,cx为获得的卷积特征图,f为激活函数,k与b初始时为一个随机值,在网络的不断训练中进行调整;

得到卷积层之后,需要进行一次池化操作,目的是在保留指纹图像信息的同时减少计算量,与上一层相比,池化层的操作降低了图像分辨率,但获得了更多的平面空间,有利于特征的检测,池化操作的公式定义为:

sx+1=σ(ωx+1*cx+bx+1)

其中,ω为乘性偏置,b为可训练加性偏置,cx为该池化层对应的上一卷积层,sx+1为获得的池化特征图,σ(x)为sig-moid函数,使其对中间值的细微变化敏感而提高识别度;

对于每一个输入x,存在一个预测值y′及实际值y,损失函数τ(y′,y)用以描述两者之间的实际损失,目标是使在整个训练集中这个损失函数是最小的;

q(z,ω)=τ(fω(x),y)

其中,q(z,ω)为平均损失函数,fω(x)为权值为ω时样本x的预测值,en(f)为经验风险函数,τ(f(xi),yi)为某个样本的损失函数,经验风险函数用以衡量网络的训练效果;

在第二个全连接层与输出层之间包含一个svm分类器,该分类器经由卷积神经网络所提取的特征进行训练,其核函数为线性,类型为c-svm,既避免了手动提取特征的繁琐与片面,又结合了svm的最大边际分类特点,相对于原始的cnn网络具有更强的分类能力,svm分类器按照预先设置的4类指纹纹型对完成训练的图像进行分类并输出。

步骤s5、在分类完成的指纹图像中进行特征点提取,生成含有指纹细节点、所有脊线上采样点和采样点的凸包的指纹特征图像;

具体地,特征提取模块在分类完成的指纹图像中提取指纹细节点,然后再在指纹图像中提取中脊线上的采样点,最后提取指纹图像采样点的凸包。

步骤s6、用户输入并通过分类、特征提取后得到的注册指纹特征图像作为指纹特征图像模板存储到数据库中,用于对系统输入的指纹特征图像进行比对;

用户注册的指纹特征图像将作为比对识别的模板数据存储到所属类别的数据库子集中,用作与系统输入的指纹特征图像进行比对验证。

步骤s7、当有待识别指纹输入,特征匹配单元根据类型提取模板存储单元中同类型的指纹特征图像与输入的指纹特征图像进行比对,判断输入指纹特征与模板指纹特征是否匹配。

具体地,当系统有待识别的指纹输入,获取该指纹图像后进行预处理、分类、特征提取,得到待识别的系统输入指纹特征图像,特征匹配单元根据类型提取模板单元中同类型的模板指纹特征图像进行比对,判断输入指纹特征与模板指纹特征是否匹配响。

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

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