一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种活体检测模型训练方法及活体检测方法与流程

2022-02-22 02:23:00 来源:中国专利 TAG:


1.本技术涉及生物识别技术领域,尤其涉及一种活体检测模型训练方法及活体检测方法。


背景技术:

2.随着人脸识别技术日趋成熟,其商业化应用愈加广泛,例如广泛应用于金融交易、门禁系统、移动终端等领域。然而人脸极易用照片、视频、模型或面具等方式进行复制,因此对合法用户人脸的假冒是人脸识别与认证系统安全的重要威胁。为防止恶意者伪造和窃取他人的生物特征用于身份认证,生物识别系统需具有活体检测功能。
3.目前,人脸识别技术通行的活体检测技术开始采用神经网络模型。然后其通常无法捕捉人脸数据的细粒度信息,从而对高精度的树脂面具及3d头模等效果不尽人意,通常会将其误判成真人;或是能有效防假体攻击,但一些真人也无法通过活检,从而造成不好的用户体验;或者,即使是防攻击效果可以,且真人通过率较高的模型,也通常因为模型较大,推理速度慢从而无法部署在终端,无法部署在一些算力较低的芯片上。


技术实现要素:

4.有鉴于此,本技术实施例提供了一种活体检测模型训练方法及活体检测方法,可以解决相关技术中的至少一个技术问题。
5.第一方面,本技术一实施例提供了一种活体检测模型训练方法,包括:
6.构建活体检测初始模型,所述活体检测初始模型包括至少三个卷积模块、特征融合模块和池化模块;
7.获取人脸图像,并分别得到人脸图像依次经过每个卷积模块时的至少三个特征图像;
8.利用所述特征融合模块融合所述至少三个特征图像获得第四特征图像;
9.利用所述池化模块池化所述第四特征图像,并利用所述第四特征图像和池化后的第四特征图像对所述活体检测初始模型进行监督训练并迭代更新所述活体检测初始模型,得到经训练的活体检测模型。
10.作为第一方面一实现方式,所述获取人脸图像,并分别得到人脸图像依次经过每个卷积模块时的至少三个特征图像,包括:
11.获取人脸图像,并对所述人脸图像进行上采样或下采样,得到目标图像;
12.利用所述活体检测初始模型的所述至少三个卷积模块对所述目标图像进行特征学习,获得至少三个特征图像。
13.作为第一方面一实现方式,所述利用所述池化模块池化所述第四特征图像,并利用所述第四特征图像和池化后的第四特征图像对所述活体检测初始模型进行监督训练并迭代更新所述活体检测初始模型,得到经训练的活体检测模型,包括:
14.利用所述池化模块对所述第四特征图像进行平均池化,获取到第五特征图像和第
六特征图像;
15.根据损失函数计算所述第四特征图像、所述第五特征图像和所述第六特征图像与其各自对应的预设监督图像之间的损失,根据损失对所述活体检测初始模型的权重参数进行迭代更新,得到经训练的活体检测模型。
16.作为第一方面一实现方式,所述损失函数为均方误差损失函数;所述第四特征图像、所述第五特征图像和所述第六特征图像具有不同尺寸。
17.第二方面,本技术一实施例提供一种活体检测方法,包括:
18.获取目标对象人脸的待检测图像;
19.将所述待检测图像输入采用如第一方面或第一方面任一实现方式所述的活体检测模型训练方法得到的经训练的活体检测模型,输出特征图像;
20.对所述特征图像进行二值化,并求解二值化后的特征图像的均值,根据所述均值判断目标对象是否为活体。
21.作为第二方面的一实现方式,所述将所述待检测图像输入采用如第一方面或第一方面任一实现方式所述的活体检测模型训练方法得到的经训练的活体检测模型,输出特征图像,包括:
22.若确定所述待检测图像满足预设质量条件,则将所述待检测图像输入采用如如第一方面或第一方面任一实现方式所述的活体检测模型训练方法得到的经训练的活体检测模型,输出特征图像。
23.作为第二方面的一实现方式,待检测图像包括目标对象人脸的红外图像、彩色图像和深度图像中的至少一个;
24.所述将所述待检测图像输入采用如第一方面或第一方面任一实现方式所述的活体检测模型训练方法得到的经训练的活体检测模型,输出特征图像,包括:
25.将所述待检测图像输入与该待检测图像对应的,且采用如第一方面或第一方面任一实现方式所述的活体检测模型训练方法得到的经训练的活体检测模型,输出特征图像。
26.第三方面,本技术一实施例提供一种活体检测模型训练装置,包括:
27.构建模块,用于构建活体检测初始模型,所述活体检测初始模型包括至少三个卷积模块、特征融合模块和池化模块;
28.获取模块,用于获取人脸图像;
29.卷积执行模块,用于分别得到所述人脸图像依次经过每个卷积模块时的至少三个特征图像;
30.特征融合执行模块,用于利用所述特征融合模块融合所述至少三个特征图像获得第四特征图像;
31.池化执行模块,用于利用所述池化模块池化所述第四特征图像,并利用所述第四特征图像和池化后的第四特征图像对所述活体检测初始模型进行监督训练并迭代更新所述活体检测初始模型,得到经训练的活体检测模型。
32.第四方面,本技术一实施例提供一种基于活体检测的门锁系统,包括:
33.相机模块,用于采集目标对象的待检测图像;
34.待检测图像获取模块,用于获取目标对象人脸的所述待检测图像;
35.特征图像获取模块,用于将所述待检测图像输入采用如第一方面或第一方面任一
实现方式所述的活体检测模型训练方法得到的经训练的活体检测模型,输出特征图像;
36.判断模块,用于对所述特征图像进行二值化,并求解二值化后的特征图像的均值,根据所述均值判断目标对象是否为活体,以进行身份认证。
37.第五方面,本技术一实施例提供一种电子设备,包括:存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面或第一方面任一实现方式所述的活体检测模型训练方法;或实现如第二方面或第二方面任一实现方式所述的活体检测方法。
38.第六方面,本技术一实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面或第一方面任一实现方式所述的活体检测模型训练方法;或实现如第二方面或第二方面任一实现方式所述的活体检测方法。
39.第七方面,本技术一实施例提供了一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行如第一方面或第一方面任一实现方式所述的活体检测模型训练方法,或执行如第二方面或第二方面任一实现方式所述的活体检测方法。
40.本技术实施例采用完整的人脸图像,而非采用图像块,推理时速度更快;采用轻量化的模型,能成功部署在小算力的芯片上;采用自定义的主干网络结构和多监督图像,能够更有效提取人脸数据的特征,能够捕捉到高精度的假体与真人之间的差异,以获得精度更高的活体检测模型。
附图说明
41.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
42.图1是本技术一实施例提供的一种活体检测模型训练方法的实现流程示意图;
43.图2是本技术一实施例提供的一种活体检测初始模型的结构示意图;
44.图3是本技术一实施例提供的一种活体检测模型训练方法中步骤s120的具体实现流程示意图;
45.图4是本技术一实施例提供的一种活体检测模型训练方法中所使用的进行监督训练的样本图像的示意图;
46.图5是本技术一实施例提供的一种活体检测模型训练方法中所使用的样本及对应标签的示意图;
47.图6是本技术一实施例提供的一种活体检测方法的实现流程示意图;
48.图7是本技术另一实施例提供的一种活体检测方法的实现流程示意图;
49.图8是本技术另一实施例提供的一种活体检测方法的实现流程示意图;
50.图9是本技术另一实施例提供的一种活体检测方法的实现流程示意图;
51.图10是本技术一实施例提供的一种活体检测模型训练装置的结构示意图;
52.图11是本技术一实施例提供的一种基于活体检测的门锁系统的结构示意图;
53.图12是本技术一实施例提供的一种电子设备的结构示意图。
具体实施方式
54.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本技术实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本技术。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本技术的描述。
55.在本技术说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
56.在本技术说明书中描述的“一个实施例”或“一些实施例”等意味着在本技术的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
57.此外,在本技术的描述中,“多个”的含义是两个或两个以上。术语“第一”和“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
58.为了说明本技术所述的技术方案,下面通过具体实施例来进行说明。
59.图1是本技术一实施例提供的一种活体检测模型训练方法的实现流程示意图,本实施例中的活体检测模型训练方法可由电子设备执行。电子设备包括但不限于计算机、平板电脑、服务器、手机、相机或可穿戴设备等。服务器包括但不限于独立服务器或云服务器等。如图1所示,活体检测模型训练方法可以包括步骤s110至步骤s140。
60.s110,构建活体检测初始模型,所述活体检测初始模型包括至少三个卷积模块、特征融合模块和池化模块。
61.在步骤s110中,构建活体检测初始模型,作为待训练的模型。活体检测初始模型包含一组待学习的权重参数。活体检测初始模型包括至少三个卷积模块、一个特征融合模块和一个池化模块。
62.在一些实施例中,活体检测初始模型如图2所示,活体检测初始模型包括三个卷积模块、一个特征融合模块和一个池化模块,其中,三个卷积模块分别为第一卷积模块、第二卷积模块及第三卷积模块。
63.在一些实施例中,活体检测初始初始模型中的卷积模块、特征融合模块及池化模块的卷积核均为3
×
3。
64.s120,获取人脸图像,并分别得到人脸图像依次经过每个卷积模块时的至少三个特征图像。
65.其中,人脸图像为人脸图像样本,包括正样本和负样本。人脸图像包括但不限于人脸红外图像、人脸彩色图像和人脸深度图像中的一种或多种。
66.在一些实施例中,如图3所示,步骤s120包括如下步骤s121至s122。
67.s121,获取人脸图像,并对人脸图像进行上采样或下采样,得到目标图像。
68.上采样(upsampling)或称为图像插值(interpolating)或放大图像,主要目的是放大人脸图像,使放大后的人脸图像,即目标图像符合活体检测初始模型的输入图像尺寸。下采样(subsampled)或称为降采样(downsampled),主要目的是缩小人脸图像图像,使缩小
后的人脸图像,即目标图像符合活体检测模型的输入图像尺寸。
69.在一些实施例中,优选地,活体检测初始模型的输入图像尺寸为112
×
112。
70.s122,利用活体检测初始模型的至少三个卷积模块对目标图像进行特征学习,获得至少三个特征图像。
71.在一些实施例中,每个卷积模块至少包括三个卷积核为3
×
3的卷积层,以对目标图像进行特征学习,输出特征图像。各卷积模块输出的特征图像的尺寸可以相同。
72.作为一非限制性示例,活体检测初始模型包括三个卷积模块。其中,第一卷积模块输出的特征图像为15
×
15,第二卷积模块输出的特征图像为15
×
15,第三卷积模块输出的特征图像为15
×
15。这三个卷积模块的结构可视为1个卷积核为3
×
3的卷积层、2个卷积核为3
×
3卷积层和3个卷积核为3
×
3的卷积层进行并联,三个卷积模块用于获取所输入的目标图像的不同特征层。
73.s130,利用特征融合模块融合至少三个特征图像获得第四特征图像。
74.特征融合模块包括融合(concat)函数,将每一卷积模块获取的特征图像中的有效特征融合进行连接,获得仅有1通道的第四特征图像。
75.作为一非限制性示例,第一卷积模块输出的特征图像为15
×
15,第二卷积模块输出的特征图像为15
×
15,第三卷积模块输出的特征图像为15
×
15,利用特征融合模块融合这三个特征图像,获得第四特征图像亦为15
×
15。
76.s140,利用池化模块平均池化第四特征图像,并利用第四特征图像和平均池化后的第四特征图像对活体检测初始模型进行监督训练并迭代更新活体检测初始模型,得到经训练的活体检测模型。
77.利用池化模块对第四特征图像进行平均池化,获取到第五特征图像和第六特征图像,第五特征图像和第六特征图像即为平均池化后的第四特征图像。
78.在一些实施例中,池化模块中包括两个卷积核为3
×
3的卷积层。第四特征图像经池化模块后,输出两个不同尺寸的第五特征图像和第六特征图像。其中,利用池化模块用于对特征图像进行降维,可在减少参数的同时,为卷积结构的各个层增加感受野,保存了特征图像的显著特征。
79.作为一非限制性示例,第四特征图像为15
×
15,利用池化模块对15
×
15的第四特征图像进行两次卷积运算,并进行上采样分别获取8
×
8和5
×
5的特征图像,即第五特征图像和第六特征图像。
80.在一些实施例中,利用第四特征图像和平均池化后的第四特征图像对活体检测初始模型进行监督训练并迭代更新活体检测初始模型,得到经训练的活体检测模型,包括:根据损失函数计算第四特征图像、第五特征图像和第六特征图像与其各自对应的预设监督图像之间的损失,根据损失对活体检测初始模型的权重参数进行迭代更新,得到经训练的活体检测模型。
81.作为一实现方式,将第四特征图像、第五特征图像和第六特征图像进行二值化处理,并将三者各自二值化处理后的图像与其对应的预设监督二值图像的每个像素之间进行均方误差(mse)损失计算,以根据损失计算结果对活体检测初始模型的权重参数进行更新,以获取识别精度高的模型。
82.作为一非限制性示例,首先,计算15
×
15的第四特征图像、8
×
8的第五特征图像和5×
5的第六特征图像,各自与预设的相同尺寸的监督图像之间的均方误差。如图4所示,以基于红外人脸图像训练活体检测模型为例进行说明,活体检测初始模型输出15
×
15的第四特征图像,第四特征图像对应15
×
15的预设监督图像;将15
×
15的第四特征图像进行平均池化后得到8
×
8的第五特征图像和5
×
5的第六特征图像,8
×
8的第五特征图像对应8
×
8的预设监督图像,5
×
5的第六特征图像对应5
×
5的预设监督图像,8
×
8的预设监督图像和5
×
5的预设监督图像起到辅助监督的功能。本实施例通过使用三种尺寸,例如15
×
15,8
×
8,5
×
5的特征图做监督,从而模型精度更高。
83.如图5所示,以基于红外人脸图像训练活体检测初始模型为例进行说明,传统训练活体检测初始模型时的标签采用例如活体(正样本)为1,假体(负样本)为0这种二分类标签,而在本技术中标签改为采用15
×
15大小的张量,例如,15
×
15大小的二值图,伪深度图或人脸mask后的二值图等。经过大量实验证明,使用图5中人脸mask后的二值图进行监督训练,获得的活体检测模型精度最高,因而本技术中,预设监督图像优选采用人脸mask后的二值图。
84.具体地,将15
×
15的第四特征图像进行二值化,计算二值化后的第四特征图像与预设的15
×
15的监督二值图之间的第一均方误差;将8
×
8的第五特征图像进行二值化,计算二值化后的第五特征图像与预设的8
×
8的监督二值图之间的第二均方误差;将5
×
5的第六特征图像进行二值化,计算二值化后的第六特征图像与预设的5
×
5的监督二值图之间的第三均方误差。
85.例如,第一均方误差、第二均方误差和第三均方误差可分别采用以下公式进行计算:
[0086][0087]
其中,yi表示经过二值化处理后的第四特征图像、第五特征图像或第六特征图像中第i个像素的像素值,表示采用例如resnet152等复杂模型获取的与第四特征图像、第五特征图像或第六特征图像对应的尺寸相同的预设监督二值图像中第i个像素的像素值,n表示像素个数。
[0088]
然后,根据第一均方误差、第二均方误差和第三均方误差计算损失,根据损失对活体检测初始模型的权重参数进行更新。具体地,三个计算的均方误差可按权重比例相加计算损失,或者,可直接相加计算损失。
[0089]
本技术实施例采用完整的人脸图像,而非采用图像块,推理时速度更快;采用轻量化的模型,模型在量化完后仅有143kb大小,能成功部署在小算力的芯片上,例如,wq5007物联网3d人脸识别soc芯片,此芯片最大支持32mb双倍速率同步动态随机存储器(double data rate dynamic random access memory,ddr dram);采用自定义的主干(backbone)网络结构和多监督图像,能够更有效提取人脸数据的特征,能够捕捉到高精度的假体与真人之间的差异,以获得精度更高的活体检测模型。
[0090]
采用前述的活体检测模型训练方法可以得到经训练的活体检测模型,具体地,经训练的活体检测模型包括至少三个卷积模块和特征融合模块,不再包括活体检测初始模型的池化模块。
[0091]
在一些实施例中,在训练活体检测模型时的人脸图像采用人脸红外图像、人脸彩
色图像和人脸深度图像,此时,采用本技术实施例的活体检测模型训练方法,可得到用于判断人脸图像是否为活体的活体检测模型,该活体检测模型由于采用多模态的图像进行训练,可适用较多的场景,鲁棒性高。需要说明的是,采用本实施例经训练的活体检测模型进行活体检测方法可以参见后续的图6和图7所示的实施例。
[0092]
在其他一些实施例中,在训练活体检测模型时的人脸图像采用人脸红外图像,此时,采用本技术实施例的活体检测模型训练方法,可得到用于判断人脸红外图像是否为活体的活体检测模型,可称为红外活体检测模型。
[0093]
在其他一些实施例中,在训练活体检测模型时的人脸图像采用人脸彩色图像,此时,采用本技术实施例的活体检测模型训练方法,可得到用于判断人脸彩色图像是否为活体的活体检测模型,可称为彩色活体检测模型。
[0094]
在其他一些实施例中,在训练活体检测模型时的人脸图像采用人脸深度图像,此时,采用本技术实施例的活体检测模型训练方法,可得到用于判断人脸深度图像是否为活体的活体检测模型,可称为深度活体检测模型。
[0095]
需要说明的是,红外活体检测模型、彩色活体检测模型和深度活体检测模型的架构是相同的,即初始模型,但架构中具体的权重参数是经训练获取的,权重参数的数值可以不相同。
[0096]
当采用单一模态的图像,即人脸红外图像、人脸彩色图像或人脸深度图像,训练活体检测模型,可以得到该模态下精度更高的活体检测结果。结合不同模态对应的活体检测模型,可以得到更为准确的活体检测结果。需要说明的是,采用经训练的红外活体检测模型、彩色活体检测模型和深度活体检测模型的活体检测方法可以参见后续的图8和图9所示的实施例。
[0097]
本技术一实施例还提供一种活体检测方法,活体检测方法可由电子设备执行。电子设备提前部署有经训练的活体检测模型。电子设备包括但不限于计算机、平板电脑、服务器、手机、相机或可穿戴设备等。服务器包括但不限于独立服务器或云服务器等。使用前述活体检测模型训练方法得到的经训练的活体检测模型对目标对象的人脸图像进行活体检测。
[0098]
图6是本技术一实施例提供的一种活体检测方法的实现流程示意图,如图6所示,活体检测模型训练方法可以包括步骤s610至步骤s630。
[0099]
s610,获取目标对象人脸的待检测图像。
[0100]
其中,待检测图像可以是红外图像、彩色图像或深度图像。
[0101]
s620,将待检测图像输入经训练的活体检测模型输出特征图像。
[0102]
其中,该特征图像可以类比前述的第四特征图像,此处不再赘述。
[0103]
作为一非限制性示例,活体检测模型输出的特征图像可以为15
×
15。
[0104]
s630,对输出的特征图像进行二值化,并求解二值化后的特征图像的均值,根据均值判断目标对象是否为活体。
[0105]
对输出的特征图像进行二值化处理,将特征图像中每个像素的像素值归一化为0或1。
[0106]
在一些实施例中,根据均值判断目标对象是否为活体,包括:将均值与预设阈值进行比较,根据比较结果判断目标对象是否为活体。
[0107]
作为一非限制性示例,预设阈值可以为数值区间[0.5,0.8]中的任一数值,例如0.5、0.6或0.8等,优选为0.5。例如,若二值化后的特征图像的均值大于或等于0.5,则判定目标对象为活体;若二值化后的特征图像的均值小于0.5,则判定目标对象不为活体,即为假体。或者,若二值化后的特征图像的均值大于0.5,则判定目标对象为活体;若二值化后的特征图像的均值小于或等于0.5,则判定目标对象为假体。
[0108]
图7是本技术另一实施例提供的一种活体检测方法的实现流程示意图,对图6所示的实施例进行进一步优化。如图7所示,活体检测方法可以包括步骤s710至步骤s730。应理解,图7所示实施例与图6所示实施例相同之处此处不再赘述,请参见前述。
[0109]
s710,获取目标对象人脸的待检测图像,若确定待检测图像满足预设质量条件,则进入步骤s720,否则重新获取目标对象人脸的待检测图像,直至待检测图像满足预设质量条件。
[0110]
本实施例中,判断获取的待检测图像是否满足预设质量条件,包括但不限于:判断头部姿态是否合理;判断人脸是否遮挡(可通过深度图像或红外图像的人脸轮廓边缘检测进行判断);判断光照是否正常(光照可通过红外图像的像素值进行判断)。任一个或多个不行,就直接不进入后续步骤,即不会进入“将待检测图像输入经训练的活体检测模型输出特征图像”这一步骤以及后续步骤,需要重新采集图像,直至新采集的图像满足预设质量条件,则进入“将待检测图像输入经训练的活体检测模型输出特征图像”这一步骤以及后续步骤。
[0111]
s720,将待检测图像输入经训练的活体检测模型输出特征图像。
[0112]
其中,该特征图像可以类比前述的第四特征图像,此处不再赘述。
[0113]
作为一非限制性示例,活体检测模型输出的特征图像可以为15
×
15。
[0114]
s730,对输出的特征图像进行二值化,并求解二值化后的特征图像的均值,根据均值判断目标对象是否为活体。
[0115]
在本实施例中,对待检测图像的质量进行筛选,满足预设质量条件的图像才进行后续步骤,可以进一步提高检测结果的准确度。
[0116]
图8是本技术另一实施例提供的一种活体检测方法的实现流程示意图,如图8所示,活体检测方法可以包括步骤s810至步骤s830。应理解,图8所示实施例与图6所示实施例相同之处此处不再赘述,请参见前述。
[0117]
s810,获取目标对象人脸的红外图像、彩色图像和深度图像中的至少一个图像作为待检测图像。
[0118]
s820,将待检测图像输入与该待检测图像对应的活体检测模型输出特征图像。
[0119]
s830,对输出的特征图像进行二值化,并求解二值化后的特征图像的均值,根据均值判断目标对象是否为活体。
[0120]
在本实施例中,待检测图像可以为红外图像、彩色图像和深度图像中的至少一个,根据获取的待检测图像的不同,采用对应的活体检测模型进行活体检测,以进一步提高活体检测的精度。
[0121]
作为一实现方式,具体地,待检测图像为红外图像、彩色图像或深度图像,对应的活体检测模型为红外活体检测模型、彩色活体检测模型或深度活体检测模型。此时,采用与待检测图像对应的活体检测模型对该待检测图像进行活体检测。
[0122]
作为另一实现方式中,具体地,待检测图像包括红外图像和深度图像。对应待检测图像,采用红外活体检测模型和深度活体检测模型进行活体检测。
[0123]
此时,图8所示的活体检测方法具体包括:获取目标对象人脸的红外图像和深度图像;将红外图像输入红外活体检测模型输出红外特征图像,将深度图像输入深度活体检测模型输出深度特征图像;对输出的红外特征图像和深度特征图像分别进行二值化,并求解二值化后的红外特征图像的第一均值,求解二值化后的深度特征图像的第二均值,根据第一均值和第二均值判断目标对象是否为活体。
[0124]
作为一非限制性示例,根据第一均值和第二均值判断目标对象是否为活体,包括:若第一均值和第二均值均大于或等于预设阈值,则判定目标对象为活体。
[0125]
作为另一实现方式中,具体地,待检测图像包括彩色图像和深度图像。对应待检测图像,采用彩色活体检测模型和深度活体检测模型进行活体检测。
[0126]
此时,图8所示的活体检测方法具体包括:获取目标对象人脸的深度图像和彩色图像;将彩色图像输入彩色活体检测模型输出彩色特征图像,将深度图像输入深度活体检测模型输出深度特征图像;对输出的彩色特征图像和深度特征图像分别进行二值化,并求解二值化后的彩色特征图像的第三均值,求解二值化后的深度特征图像的第四均值,根据第三均值和第四均值判断目标对象是否为活体。
[0127]
作为一非限制性示例,根据第三均值和第四均值判断目标对象是否为活体,包括:若第三均值和第四均值均大于或等于预设阈值,则判定目标对象为活体。
[0128]
作为另一实现方式中,具体地,待检测图像包括彩色图像、红外图像和深度图像。对应待检测图像,采用彩色活体检测模型、红外活体检测模型和深度活体检测模型进行活体检测。
[0129]
此时,图8所示的活体检测方法具体包括:获取目标对象人脸的彩色图像、红外图像和深度图像;将彩色图像输入彩色活体检测模型输出彩色特征图像,将红外图像输入红外活体检测模型输出红外特征图像,将深度图像输入深度活体检测模型输出深度特征图像;对输出的彩色特征图像、红外特征图像和深度特征图像分别进行二值化,并求解二值化后的彩色特征图像的第五均值,求解二值化后的红外特征图像的第六均值,求解二值化后的深度特征图像的第七均值,根据第五均值、第六均值和第七均值判断目标对象是否为活体。
[0130]
作为一非限制性示例,根据第五均值、第六均值和第七均值判断目标对象是否为活体,包括:若第五均值、第六均值和第七均值均大于或等于预设阈值,则判定目标对象为活体。
[0131]
图9是本技术另一实施例提供的一种活体检测方法的实现流程示意图,对图8所示的实施例进行进一步优化。如图9所示,活体检测方法可以包括步骤s910至步骤s930。应理解,图9所示实施例与图7和图8所示实施例相同之处此处不再赘述,请参见前述。
[0132]
s910,获取目标对象人脸的红外图像、彩色图像和深度图像中的至少一个图像作为待检测图像;若待检测图像均满足预设质量条件,则进入步骤s920,否则重新获取目标对象人脸的待检测图像,直至待检测图像满足预设质量条件。
[0133]
s920,将待检测图像输入与该待检测图像对应的活体检测模型输出特征图像。
[0134]
s930,对输出的特征图像进行二值化,并求解二值化后的特征图像的均值,根据均
值判断目标对象是否为活体。
[0135]
图8和图9所示实施例,基于整脸的活体检测模型训练方法训练的基于红外、彩色和深度数据这三种单模态数据的三种活体检测模型,即红外活体检测模型、彩色活体检测模型和深度活体检测模型,进行活体检测。其中,深度活体检测模型用来排除视频、打印纸张照片、抠洞弯折照片等攻击;红外或彩色活体检测模型用来防3d头模、面具、面膜等攻击,只有完全通过其中两个模型或三个模型的活体检测,才认为是真人活体,大大提高了活体检测算法的准确度。
[0136]
经试验,本技术实施例提供的深度活体检测模型,真人通过率99.9%以上,可以有效防住纸张攻击或纸张抠洞攻击的99.5%以上。本技术实施例提供的红外和彩色活体检测模型,真人通过率99.9%以上,能防住高精度3d头模或树脂面具攻击95%以上。
[0137]
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本技术实施例的实施过程构成任何限定。
[0138]
本技术一实施例还提供一种活体检测模型训练装置。该活体检测模型训练装置中未详细描述之处请详见前述活体检测模型训练方法实施例中的描述。
[0139]
参见图10,图10是本技术一实施例提供的一种活体检测模型训练装置的示意框图。所述活体检测模型训练装置包括:构建模块101、获取模块102、卷积执行模块103、特征融合执行模块104和池化执行模块105。
[0140]
其中,构建模块101,用于构建活体检测初始模型,所述活体检测初始模型包括至少三个卷积模块、特征融合模块和池化模块;
[0141]
获取模块102,用于获取人脸图像;
[0142]
卷积执行模块103,用于分别得到所述人脸图像依次经过每个卷积模块时的至少三个特征图像;
[0143]
特征融合执行模块104,用于利用所述特征融合模块融合所述至少三个特征图像获得第四特征图像;
[0144]
池化执行模块105,用于利用所述池化模块池化所述第四特征图像,并利用所述第四特征图像和池化后的第四特征图像对所述活体检测初始模型进行监督训练并迭代更新所述活体检测初始模型,得到经训练的活体检测模型。
[0145]
在一些实施例中,所述获取模块102,具体用于:
[0146]
获取人脸图像,并对所述人脸图像进行上采样或下采样,得到目标图像。
[0147]
所述卷积执行模块103,具体用于:
[0148]
利用所述活体检测初始模型的所述至少三个卷积模块对所述目标图像进行特征学习,获得至少三个特征图像。
[0149]
在一些实施例中,所述池化执行模块105,具体用于:
[0150]
利用所述池化模块对所述第四特征图像进行平均池化,获取到第五特征图像和第六特征图像;
[0151]
根据损失函数计算所述第四特征图像、所述第五特征图像和所述第六特征图像与其各自对应的预设监督图像之间的损失,根据损失对所述活体检测初始模型的权重参数进行迭代更新,得到经训练的活体检测模型。
[0152]
在一些实施例中,所述损失函数为均方误差损失函数。
[0153]
在一些实施例中,所述第四特征图像、所述第五特征图像和所述第六特征图像具有不同尺寸。
[0154]
本技术一实施例还提供一种活体检测装置。该活体检测装置中未详细描述之处请详见前述活体检测方法实施例中的描述。
[0155]
参见图11,图11是本技术一实施例提供的一种基于活体检测的门锁系统的示意框图。所述活体检测装置包括:相机模块110、待检测图像获取模块111、特征图像获取模块112和判断模块113,其中:
[0156]
相机模块,用于采集目标对象的待检测图像;
[0157]
待检测图像获取模块111,用于获取目标对象人脸的待检测图像;
[0158]
特征图像获取模块112,用于将所述待检测图像输入采用前述活体检测模型训练方法得到的经训练的活体检测模型,输出特征图像;
[0159]
判断模块113,用于对所述特征图像进行二值化,并求解二值化后的特征图像的均值,根据所述均值判断目标对象是否为活体,以进行身份认证。
[0160]
进一步地,若目标对象判断为活体,则识别目标对象上的人脸信息并与预设于云端上的已注册人脸信息进行比对,若目标对象上的人脸信息与云端上的人脸信息一致,可打开门锁;反之,则不打开门锁。
[0161]
需要说明的是,相机模块110可为深度相机、红外相机及彩色相机等中至少一种或多种,此处不作限制。
[0162]
在一些实施例中,所述特征图像获取模块112,具体用于:
[0163]
若确定所述待检测图像满足预设质量条件,则将所述待检测图像输入采用如前述实施例的活体检测模型训练方法得到的经训练的活体检测模型,输出特征图像。
[0164]
在一些实施例中,待检测图像包括目标对象人脸的红外图像、彩色图像和深度图像中的至少一个。
[0165]
在这些实施例中,所述特征图像获取模块112,具体用于:
[0166]
将所述待检测图像输入与该待检测图像对应的,且采用如前述实施例的活体检测模型训练方法得到的经训练的活体检测模型,输出特征图像;或者,
[0167]
若确定所述待检测图像满足预设质量条件,则将所述待检测图像输入与该待检测图像对应的,且采用如前述实施例的活体检测模型训练方法得到的经训练的活体检测模型,输出特征图像。
[0168]
作为一实现方式,具体地,待检测图像为目标对象人脸的红外图像、彩色图像或深度图像,对应的活体检测模型为红外活体检测模型、彩色活体检测模型或深度活体检测模型。此时,采用与待检测图像对应的活体检测模型对该待检测图像进行活体检测。
[0169]
作为一实现方式,具体地,待检测图像为目标对象人脸的红外图像和深度图像。对应待检测图像,采用红外活体检测模型和深度活体检测模型进行活体检测。
[0170]
在这一实现方式中,所述特征图像获取模块112,具体用于:
[0171]
获取目标对象人脸的红外图像和深度图像;将红外图像输入红外活体检测模型输出红外特征图像,将深度图像输入深度活体检测模型输出深度特征图像。
[0172]
所述判断模块113,具体用于:
[0173]
对输出的红外特征图像和深度特征图像分别进行二值化,并求解二值化后的红外特征图像的第一均值,求解二值化后的深度特征图像的第二均值,根据第一均值和第二均值判断目标对象是否为活体。
[0174]
作为另一实现方式中,具体地,待检测图像包括彩色图像和深度图像。对应待检测图像,采用彩色活体检测模型和深度活体检测模型进行活体检测。
[0175]
在这一实现方式中,所述特征图像获取模块112,具体用于:
[0176]
将彩色图像输入彩色活体检测模型输出彩色特征图像,将深度图像输入深度活体检测模型输出深度特征图像。
[0177]
所述判断模块113,具体用于:
[0178]
对输出的彩色特征图像和深度特征图像分别进行二值化,并求解二值化后的彩色特征图像的第三均值,求解二值化后的深度特征图像的第四均值,根据第三均值和第四均值判断目标对象是否为活体。
[0179]
作为另一实现方式中,具体地,待检测图像包括彩色图像、红外图像和深度图像。对应待检测图像,采用彩色活体检测模型、红外活体检测模型和深度活体检测模型进行活体检测。
[0180]
在这一实现方式中,所述特征图像获取模块112,具体用于:
[0181]
将彩色图像输入彩色活体检测模型输出彩色特征图像,将红外图像输入红外活体检测模型输出红外特征图像,将深度图像输入深度活体检测模型输出深度特征图像。
[0182]
所述判断模块113,具体用于:
[0183]
对输出的彩色特征图像、红外特征图像和深度特征图像分别进行二值化,并求解二值化后的彩色特征图像的第五均值,求解二值化后的红外特征图像的第六均值,求解二值化后的深度特征图像的第七均值,根据第五均值、第六均值和第七均值判断目标对象是否为活体。
[0184]
本技术一实施例还提供了一种电子设备,如图12所示,电子设备可以包括一个或多个处理器120(图12中仅示出一个),存储器121以及存储在存储器121中并可在一个或多个处理器120上运行的计算机程序122,例如,活体检测模型训练的程序和/或活体检测的程序。一个或多个处理器120执行计算机程序122时可以实现活体检测模型训练方法和/或活体检测方法实施例中的各个步骤。或者,一个或多个处理器120执行计算机程序122时可以实现活体检测模型训练装置和/或活体检测装置实施例中各模块/单元的功能,此处不作限制。
[0185]
本领域技术人员可以理解,图12仅仅是电子设备的示例,并不构成对电子设备的限定。电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如电子设备还可以包括输入输出设备、网络接入设备、总线等。
[0186]
在一个实施例中,所称处理器120可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0187]
在一个实施例中,存储器121可以是电子设备的内部存储单元,例如电子设备的硬盘或内存。存储器121也可以是电子设备的外部存储设备,例如电子设备上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。进一步地,存储器121还可以既包括电子设备的内部存储单元也包括外部存储设备。存储器121用于存储计算机程序以及电子设备所需的其他程序和数据。存储器121还可以用于暂时地存储已经输出或者将要输出的数据。
[0188]
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本技术的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0189]
本技术一实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现活体检测模型训练方法和/或活体检测方法实施例中的步骤。
[0190]
本技术一实施例提供了一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备可实现活体检测模型训练方法和/或活体检测方法实施例中的步骤。
[0191]
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
[0192]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
[0193]
在本技术所提供的实施例中,应该理解到,所揭露的装置/电子设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/电子设备实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
[0194]
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0195]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0196]
集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用
时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、电载波信号、电信信号以及软件分发介质等。需要说明的是,计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
[0197]
以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围,均应包含在本技术的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献