本发明实施例涉及指纹识别领域,具体而言,涉及一种指纹防伪神经网络的训练方法、指纹防伪方法及装置。
背景技术:
1、在日常生活中,常使用指纹识别技术对用户的进行身份验证,例如:智能设备解锁、应用程序登录、线上支付等。在近几年的发展中,电容、光学和超声波等多种类型的传感器可以用来采集指纹数据。
2、在指纹防伪领域,采用神经网络模型可以提高真指纹和假指纹的识别率。而目前训练神经网络模型通常使用的是一种类型的传感器采集的指纹数据。由于目标市面上采集指纹的传感器有多种类型,针对不同类型的传感器需要训练不同的神经网络模型,神经网络模型训练复杂,且存在浪费资源的问题。并且训练完成的神经网络模型只能对一种类型的传感器采集的指纹进行识别,无法识别其他类型传感器采集的指纹数据,应用范围受限。
3、另外,在采集指纹数据时通常会受到环境影响(例如温度波动、贴膜干扰、手指状态变化等因素),直接使用传感器采集的指纹数据对神经网络模型进行训练,会影响神经网络模型的训练效果,使得训练完成的神经网络模型的识别准确率较低。
4、针对上述问题,目前尚未存在有效的解决方案。
技术实现思路
1、本发明实施例提供了一种指纹防伪神经网络的训练方法、指纹防伪方法及装置,以至少解决相关技术中真伪指纹的识别准确率较低的问题。
2、根据本发明的一个实施例,提供了一种指纹防伪神经网络的训练方法,包括:获取多组训练数据,每组训练数据中均包括:第一原生域数据、第二原生域数据以及第三原生域数据,其中,第一原生域数据为在将真手指录入指纹模板时所采集到的真手指的原始数据,第二原生域数据为在使用真手指进行指纹验证时所采集到的真手指的原始数据,第三原生域数据为在使用假手指代替真手指进行指纹验证时所采集到的原始数据;使用多组训练数据对初始分类网络进行训练,得到目标分类网络,其中,初始分类网络包括融合子网络和分类子网络,针对每组训练数据,融合子网络用于基于第一原生域数据和第二原生域数据的特征描述矩阵生成第一指纹匹配对、基于第一原生域数据和第三原生域数据的特征描述矩阵生成第二指纹匹配对,分类子网络用于基于第一指纹匹配对、第二指纹匹配对进行指纹分类识别。
3、在一个示例性实施例中,使用多组训练数据对初始分类网络进行训练,得到目标分类网络,包括:使用多组训练数据对初始分类网络进行迭代训练,直到对初始分类网络进行训练的次数达到目标次数时,或者,初始分类网络的目标损失函数输出的损失值满足预设的训练结束条件时,结束训练得到目标分类网络;其中,初始分类网络还包括预处理子网络,预处理子网络用于将指纹传感器采集的原生域数据转换为相应的特征描述矩阵;目标损失函数输出的损失值是根据预处理子网络的第一损失函数输出的损失值以及分类子网络的第二损失函数输出的损失值确定得到的损失值;第一损失函数用于表示预处理子网络输出的特征描述矩阵与预处理子网络输入的原生域数据的已知特征描述矩阵之间的损失,第二损失函数用于表示分类子网络输出的预测标签值与分类子网络输入的特征描述矩阵对应的真实标签之间的损失。
4、在一个示例性实施例中,使用多组训练数据对初始分类网络进行迭代训练,包括:通过以下步骤对初始分类网络进行第k次训练,其中,k是正整数:在多组训练数据中获取对初始分类网络进行第k次训练使用的第k组训练数据;将第k组训练数据中的第一原生域数据、第二原生域数据和第三原生域数据输入第k-1次训练的分类网络中的预处理子网络,分别得到第一特征描述矩阵、第二特征描述矩阵和第三特征描述矩阵,其中,第0次训练的初始分类网络是未经训练的初始分类网络,预处理子网络用于将不同种类的传感器获取的原生域数据转换为相应的特征描述矩阵;将第一特征描述矩阵、第二特征描述矩阵和第三特征描述矩阵输入第k-1次训练的分类网络中的特征提取子网络进行降维处理,分别得到第四特征描述矩阵、第五特征描述矩阵和第六特征描述矩阵;将第四特征描述矩阵与第五特征描述矩阵输入第k-1次训练的分类网络中的融合子网络,得到第k次训练的第一指纹匹配对;
5、将第四特征描述矩阵与第六特征描述矩阵输入第k-1次训练的分类网络中的融合子网络,得到第k次训练的第二指纹匹配对;
6、将第k次训练的第一指纹匹配对和第k次训练的第二指纹匹配对输入第k-1次训练的分类网络中的分类子网络,得到第k次训练的预测标签,其中,第k次训练的预测标签用于表示第k-1次训练的分类网络对第k组训练数据中的第二原生域数据所对应的真手指指纹的真伪识别结果,以及第k-1次训练的分类网络对第k组训练数据中的第三原生域数据所对应的假手指指纹的真伪识别结果;
7、根据第一特征描述矩阵、第二特征描述矩阵和第三特征描述矩阵和与第k组训练数据中的第一原生域数据、第二原生域数据和第三原生域数据对应的已知特征描述矩阵,确定第k次训练的第一损失函数输出的损失值,根据第k次训练的预测标签和已知的第k次训练的真实标签,确定第k次训练的第二损失函数输出的损失值;根据第k次训练的第一损失函数输出的损失值和第k次训练的第二损失函数输出的损失值,确定第k次训练的目标损失函数输出的损失值;在k小于目标次数时,或者,第k次训练的目标损失函数输出的损失值不满足训练结束条件的情况下,调整第k-1次训练的初始分类网络中的参数的取值,得到第k次训练的初始分类网络。
8、在一个示例性实施例中,目标损失函数为:
9、loss=α×lossmse+β×lossbce
10、其中,α、β是预设值,lossmse是预处理子网络的第一损失函数,lossbce是分类子网络的第二损失函数;
11、分类网络还包括特征提取子网络,预处理子网络用于将指纹传感器获取的原生域数据转换成相应的特征描述矩阵并输入至特征提取子网络,特征提取子网络用于对输入的特征描述矩阵进行降维处理,并将进行降维处理后得到的矩阵输入至融合子网络。
12、在一个示例性实施例中,预处理子网络的第一损失函数输出的损失值通过以下公式确定:
13、
14、lossmse=lossmse_1+lossmse_2+lossmse_3
15、其中,t∈(1,3),i∈(1,h),j∈(1,w),f(i,j)是预处理子网络输出的特征描述矩阵,y(i,j)是与预处理子网络的输入的原生域数据的已知特征描述矩阵,h是特征描述矩阵的纵向特征尺寸,w是特征描述矩阵的横向特征尺寸,lossmse_1是预处理子网络的输入数据是第一原生域数据的损失值,lossmse_2是预处理子网络的输入数据是第二原生域数据的损失值,lossmse_3是预处理子网络的输入数据是第三原生域数据的损失值。
16、在一个示例性实施例中,分类子网络的第二损失函数输出的损失值通过以下公式确定:
17、lossbce=-y×log(x)-(1-y)×log(1-x)
18、其中,y是第一指纹匹配对或第二指纹匹配对的真实标签值,x是分类子网络输出的第一指纹匹配对或第二指纹匹配对的预测标签值。
19、根据本发明的另一个实施例,提供了一种指纹防伪方法,包括:获取待检测指纹的原生域数据;通过目标分类网络中的预处理子网络对待检测指纹的原生域数据进行预处理,得到第七特征描述矩阵;通过目标分类网络中的特征提取子网络对第七特征描述矩阵进行特征提取,得到第八特征描述矩阵;在指纹模板特征库中确定出与第八特征描述矩阵相匹配的第九特征描述矩阵,其中,指纹模板特征库中存储了真手指在录入指纹模板时的多个特征描述矩阵;对第八特征描述矩阵和第九特征描述矩阵进行融合,得到融合特征矩阵;将融合特征矩阵输入目标分类网络中的分类子网络,得到待检测指纹的真伪识别结果,其中,真伪识别结果用于表示待检测指纹是真手指的指纹或者是假手指的指纹。
20、在一个示例性实施例中,在指纹模板特征库中确定出与第八特征描述矩阵相匹配的第九特征描述矩阵之前,上述方法还包括:获取真手指在录入指纹模板时的原生域数据;使用目标分类网络中的预处理子网络对原生域数据进行预处理,得到原生域数据的特征描述矩阵;使用目标分类网络中的特征提取子网络对特征描述矩阵进行降维处理,得到降维后的特征描述矩阵;将降维后的特征描述矩阵存储于指纹模板特征库。
21、根据本发明的另一个实施例,提供了一种指纹防伪神经网络的训练,包括:第一获取模块,用于获取多组训练数据,每组训练数据中均包括:第一原生域数据、第二原生域数据以及第三原生域数据,其中,第一原生域数据为在将真手指录入指纹模板时所采集到的真手指的原始数据,第二原生域数据为在使用真手指进行指纹验证时所采集到的真手指的原始数据,第三原生域数据为在使用假手指代替真手指进行指纹验证时所采集到的原始数据;训练模块,用于使用多组训练数据对初始分类网络进行训练,得到目标分类网络,其中,初始分类网络包括融合子网络和分类子网络,针对每组训练数据,融合子网络用于基于第一原生域数据和第二原生域数据的特征描述矩阵生成第一指纹匹配对、基于第一原生域数据和第三原生域数据的特征描述矩阵生成第二指纹匹配对,分类子网络用于基于第一指纹匹配对、第二指纹匹配对进行指纹分类识别。
22、根据本发明的另一个实施例,提供了一种指纹防伪装置,包括:第二获取模块,用于获取待检测指纹的原生域数据;预处理模块,用于通过目标分类网络中的预处理子网络对待检测指纹的原生域数据进行预处理,得到第七特征描述矩阵;特征提取模块,用于通过所述目标分类网络中的特征提取子网络对所述第七特征描述矩阵进行特征提取,得到第八特征描述矩阵;确定模块,用于在指纹模板特征库中确定出与所述第八特征描述矩阵相匹配的第九特征描述矩阵,其中,所述指纹模板特征库中存储了真手指在录入指纹模板时的多个特征描述矩阵;融合模块,用于对所述第八特征描述矩阵和所述第九特征描述矩阵进行融合,得到融合特征矩阵;识别模块,用于将所述融合特征矩阵输入所述目标分类网络中的分类子网络,得到所述待检测指纹的真伪识别结果,其中,所述真伪识别结果用于表示所述待检测指纹是所述真手指的指纹或者是所述假手指的指纹。
23、根据本发明的又一个实施例,还提供了一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,其中,计算机程序被处理器执行时实现上述任一项中的方法的步骤。
24、根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,存储器中存储有计算机程序,处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
25、通过本发明,使用在将真手指录入指纹模板时所采集到的真手指的第一原生域数据、使用真手指进行指纹验证时所采集到的真手指的第二原生域数据,以及在使用假手指代替真手指进行指纹验证时所采集到的第三原生域数据作为训练数据对初始分类网络进行训练;
26、本技术采用样本特征融合的的方式,通过融合子网络将上述第一原生域数据和第二原生域数据的特征进行融合生成第一指纹匹配对、以及将上述第一原生域数据和第三原生域数据的特征进行融合生成第二指纹匹配对;
27、本技术使用融合后的第一指纹匹配对和第二指纹匹配对分类子网进行训练。可以减小采集指纹数据时的环境因素对训练神经网络模型的影响,达到了防止环境因素影响神经网络模型的训练效果的目的,进而解决了相关技术中由于在采集指纹数据时受到环境影响,导致训练完成的神经网络模型的识别准确率较低的问题,进而达到提高真伪指纹的识别准确率的效果。
28、此外,由于申请中的预处理子网络可以将指纹传感器采集的原生域数据转换为特征描述矩阵。进而训练得到的目标分类网络可以对多种类型传感器采集的指纹进行识别,解决了现有技术中对于不同类型的传感器需要训练不同的神经网络模型,导致的神经网络模型训练复杂、浪费资源,以及训练完成的神经网络模型无法识别其他类型传感器采集的指纹数据,应用范围受限的问题。进而达到了使用本技术的目标分类网络可以对多种不同类型的传感器采集的指纹进行识别,应用范围更广,更节省资源的技术效果。
1.一种指纹防伪神经网络的训练方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述使用所述多组训练数据对初始分类网络进行训练,得到目标分类网络,包括:
3.根据权利要求2所述的方法,其特征在于,所述使用所述多组训练数据对所述初始分类网络进行迭代训练,包括:
4.根据权利要求2所述的方法,其特征在于,所述目标损失函数为:
5.根据权利要求4所述的方法,其特征在于,所述预处理子网络的第一损失函数输出的损失值通过以下公式确定:
6.根据权利要求4所述的方法,其特征在于,所述分类子网络的第二损失函数输出的损失值通过以下公式确定:
7.一种指纹防伪方法,其特征在于,包括:
8.根据权利要求7所述的方法,其特征在于,在指纹模板特征库中确定出与所述第八特征描述矩阵相匹配的第九特征描述矩阵之前,所述方法还包括:
9.一种指纹防伪神经网络的训练装置,其特征在于,包括:
10.一种指纹防伪装置,其特征在于,包括:
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被处理器执行时实现所述权利要求1至6或7至8任一项中所述的方法的步骤。
12.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述权利要求1至6或7至8任一项中所述的方法。
13.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6或7至8任一项中所述的方法。