活体检测方法、电子设备及存储介质与流程

文档序号:33001733发布日期:2023-01-18 01:26阅读:21来源:国知局
活体检测方法、电子设备及存储介质与流程

1.本技术实施例涉及视频处理技术领域,特别是涉及一种活体检测方法、电子设备及存储介质。


背景技术:

2.随着人脸识别及其相关技术日新月异的发展,为人们的生产生活提供了诸多便利,但同时也对信息安全提出了新的挑战。有些用户常常通过合成人脸数据来伪造身份信息,以此通过人脸识别系统的身份核验。因此,活体检测技术应运而生,当前已有诸多活体检测方法,其中一种有效手段是以视频数据作为输入,要求使用者做特定动作来进行活体检测。
3.但是,一些攻击者会利用一些软件工具,合成一段包含规定动作的视频,只需一张照片就能得到一段具备指定面部姿态的动作视频。现有技术中,在针对这些动作视频进行识别时,一般是使用网络模型进行识别,但是,视频活体检测算法使用的网络模型,均面临速度和精度无法兼顾的矛盾,视频算法的最大优势在于使用三维卷积对多帧运动信息进行提取和利用,但势必会造成计算量的增加,影响运行速度。


技术实现要素:

4.鉴于上述问题,提出了本技术实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种活体检测方法、电子设备及存储介质。
5.依据本技术实施例的第一方面,提供了一种活体检测方法,包括:
6.获取目标对象的待检测视频;
7.将所述待检测视频输入第一活体检测模型,通过所述第一活体检测模型基于不同维度的目标参数对所述待检测视频进行二维卷积处理,得到所述待检测视频的脸部动作特征;其中,所述目标参数为与所述待检测视频中的视频帧相关的参数;
8.通过所述第一活体检测模型对所述脸部动作特征进行识别,得到所述待检测视频是否为伪造动作视频的第一活体检测结果。
9.依据本技术实施例的第二方面,提供了一种活体检测装置,包括:
10.视频获取模块,用于获取目标对象的待检测视频;
11.特征提取模块,用于将所述待检测视频输入第一活体检测模型,通过所述第一活体检测模型基于不同维度的目标参数对所述待检测视频进行二维卷积处理,得到所述待检测视频的脸部动作特征;其中,所述目标参数为与所述待检测视频中的视频帧相关的参数;
12.活体识别模块,用于通过所述第一活体检测模型对所述脸部动作特征进行识别,得到所述待检测视频是否为伪造动作视频的第一活体检测结果。
13.依据本技术实施例的第三方面,提供了一种电子设备,包括:处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如第一方面中所述的活体检测方法。
14.依据本技术实施例的第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的活体检测方法。
15.依据本技术实施例的第五方面,提供了一种计算机程序产品,其特征在于,包括计算机程序或计算机指令,所述计算机程序或计算机指令被处理器执行时实现第一方面所述的活体检测方法。
16.本技术实施例提供的活体检测方法、电子设备及存储介质,通过将待检测视频输入第一活体检测模型,通过第一活体检测模型基于不同维度的目标参数对待检测视频进行二维卷积处理,得到待检测视频的脸部动作特征,对提取到的脸部动作特征进行识别得到待检测视频是否为伪造动作视频的第一活体检测结果,由于使用二维卷积来对待检测视频进行特征提取,替代了使用三维卷积处理的过程,而且使用不同维度的二维卷积达到了三维卷积的效果,便于硬件加速,提高了处理速度,提高了检测效率。
17.上述说明仅是本技术技术方案的概述,为了能够更清楚了解本技术的技术手段,而可依照说明书的内容予以实施,并且为了让本技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本技术的具体实施方式。
附图说明
18.通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本技术的限制。
19.图1是本技术实施例提供的一种活体检测方法的步骤流程图;
20.图2是本技术实施例中使用三次二维卷积实现三维卷积的维度变化示意图;
21.图3是本技术实施例中第一活体检测模型的训练过程的流程图;
22.图4是本技术实施例提供的一种活体检测装置的结构框图;
23.图5是本技术实施例提供的一种电子设备的结构框图。
具体实施方式
24.下面将参照附图更详细地描述本技术的示例性实施例。虽然附图中显示了本技术的示例性实施例,然而应当理解,可以以各种形式实现本技术而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本技术,并且能够将本技术的范围完整的传达给本领域的技术人员。
25.近年来,基于人工智能的计算机视觉、深度学习、机器学习、图像处理、图像识别等技术研究取得了重要进展。人工智能(artificial intelligence,ai)是研究、开发用于模拟、延伸人的智能的理论、方法、技术及应用系统的新兴科学技术。人工智能学科是一门综合性学科,涉及芯片、大数据、云计算、物联网、分布式存储、深度学习、机器学习、神经网络等诸多技术种类。计算机视觉作为人工智能的一个重要分支,具体是让机器识别世界,计算机视觉技术通常包括人脸识别、活体检测、指纹识别与防伪验证、生物特征识别、人脸检测、行人检测、目标检测、行人识别、图像处理、图像识别、图像语义理解、图像检索、文字识别、视频处理、视频内容识别、三维重建、虚拟现实、增强现实、同步定位与地图构建(slam)、计
算摄影、机器人导航与定位等技术。随着人工智能技术的研究和进步,该项技术在众多领域展开了应用,例如安全防控、城市管理、交通管理、楼宇管理、园区管理、人脸通行、人脸考勤、物流管理、仓储管理、机器人、智能营销、计算摄影、手机影像、云服务、智能家居、穿戴设备、无人驾驶、自动驾驶、智能医疗、人脸支付、人脸解锁、指纹解锁、人证核验、智慧屏、智能电视、摄像机、移动互联网、网络直播、美颜、美妆、医疗美容、智能测温等领域。本技术实施例也是涉及计算机视觉技术,具体是一种活体检测方法,具体方案如下:
26.图1是本技术实施例提供的一种活体检测方法的步骤流程图,如图1所示,该方法可以包括:
27.步骤101,获取目标对象的待检测视频。
28.本技术实施例在进行活体检测时,主要检测待检测视频是否为伪造动作视频。在进行活体检测时,需要针对一段包含有脸部动作的待检测视频进行检测,可以通过摄像头获取目标对象的待检测视频。所述目标对象可以是脸部,待检测视频中包括脸部以及脸部动作信息。
29.步骤102,将所述待检测视频输入第一活体检测模型,通过所述第一活体检测模型基于不同维度的目标参数对所述待检测视频进行二维卷积处理,得到所述待检测视频的脸部动作特征;其中,所述目标参数为与所述待检测视频中的视频帧相关的参数。
30.其中,所述第一活体检测模型可以是对基于神经网络的活体检测模型进行更改得到,将活体检测模型中的三维(3d)卷积结构更改为不同维度的二维(2d)卷积结构,即使用不同维度的二维卷积结构来代替三维卷积结构,得到与三维卷积处理同样的结果。
31.将待检测视频输入第一活体检测模型,在第一活体检测模型中,通过基于不同维度的二维卷积来实现三维卷积,这时可以基于不同维度的目标参数对待检测视频分别进行二维卷积处理,以提取出待检测视频的脸部动作特征。在基于不同维度的目标参数对待检测视频进行二维卷积处理的过程中,首先需要对待检测视频进行维度重构,之后对维度重构后的数据进行二维卷积,之后再进行维度重构以将卷积结果转换为视频数据的表示形式。在卷积过程中,对于二维卷积处理,可以配合使用二维卷积的大量演化处理,例如残差、注意力、特征金字塔结构等,为多帧时空联合网络模型的整体性能提高了发展上限,可以提高特征提取的准确性。
32.在本技术的一个实施例中,所述通过所述第一活体检测模型基于不同维度的目标参数对所述待检测视频进行二维卷积处理,包括以下卷积处理中的至少一项:
33.通过所述第一活体检测模型基于宽度信息和高度信息对所述待检测视频进行二维卷积处理;
34.通过所述第一活体检测模型基于所述高度信息和视频帧信息对所述待检测视频进行二维卷积处理;
35.通过所述第一活体检测模型基于所述宽度信息和所述视频帧信息对所述待检测视频进行二维卷积处理;
36.其中,所述宽度信息为所述待检测视频中视频帧的宽度,所述高度信息为所述待检测视频中视频帧的高度,所述视频帧信息为所述待检测视频的视频帧数。
37.在通过第一活体检测模型对待检测视频进行不同维度的二维卷积处理时,每进行一次二维卷积处理可以基于待检测视频中不同的两个维度进行,例如可以基于宽度信息和
高度信息对待检测视频的宽高方向进行二维卷积处理,还可以基于高度信息和视频帧信息对待检测视频的高度和视频帧方向进行二维卷积处理,还可以基于宽度信息和视频帧信息对待检测视频的宽度和视频帧方向进行二维卷积处理。
38.通过使用不同维度的二维卷积代替三维卷积来提取待检测视频中的脸部动作特征,可以降低计算量,提高处理速度。
39.步骤103,通过所述第一活体检测模型对所述脸部动作特征进行识别,得到所述待检测视频是否为伪造动作视频的第一活体检测结果。
40.通过第一活体检测模型中的全连接层对脸部动作特征进行真实视频和合成攻击视频的分类处理,得到待检测视频是否为伪造动作视频的第一活体检测结果。伪造动作视频即合成攻击视频,一般是使用一张脸部图像和具有动作的视频合成得到。
41.本实施例提供的活体检测方法,通过将待检测视频输入第一活体检测模型,通过第一活体检测模型基于不同维度的目标参数对待检测视频进行二维卷积处理,得到待检测视频的脸部动作特征,对提取到的脸部动作特征进行识别得到待检测视频是否为伪造动作视频的第一活体检测结果,由于使用二维卷积来对待检测视频进行特征提取,替代了使用三维卷积处理的过程,而且使用不同维度的二维卷积达到了三维卷积的效果,便于硬件加速,提高了处理速度,提高了检测效率。
42.在上述技术方案的基础上,所述通过所述第一活体检测模型基于不同维度的目标参数对所述待检测视频进行二维卷积处理包括:
43.针对每个维度的目标参数,通过所述第一活体检测模型将所述待检测视频所对应的第一五维数据矩阵重构为四维数据矩阵,并基于所述维度的目标参数对所述四维数据矩阵进行二维卷积处理,得到第一处理结果,将所述第一处理结果重构为第二五维数据矩阵,所述第一五维数据矩阵和第二五维数据矩阵的维度参数分别为所述待检测视频的视频数量、所述待检测视频的视频帧数、所述待检测视频中视频帧的图像通道数、以及所述视频帧的宽度信息和高度信息;
44.其中,在进行非首次的二维卷积处理时,所述第一五维数据矩阵中的图像通道数与前一次二维卷积处理输出的第二五维数据矩阵的图像通道数相同。
45.待检测视频可以用五维数据矩阵表示,在针对每个维度的目标参数进行一次二维卷积处理时,首先进行数据维度的重构,即将待检测视频所对应的第一五维数据矩阵重构为四维数据矩阵,这样可以基于所述维度的目标参数对该四维数据矩阵进行二维卷积处理,得到四维数据矩阵形式的第一处理结果,之后再次将第一处理结果重构为第二五维数据矩阵。其中,将第一五维数据矩阵重构为四维数据矩阵的方式是合并第一五维数据矩阵中的两个维度的参数,将第一处理结果重构为第二五维数据矩阵的方式是将第一处理结果中的合并维度的参数拆分为原来的两个维度的参数。
46.第一五维数据矩阵可以表示为(n,t,c,w,h)的,其中,n表示一次输入第一活体检测模型中的待检测视频的视频数量,t表示待检测视频的视频帧数,c表示每一视频帧的图像通道数(普通彩色图像为3),w和h分别是每一视频帧的宽度信息和高度信息。对于一个五维数据矩阵(n,t,c,w,h),可以用三维卷积直接计算,但是对于二维卷积来说,输入对像的维度通常是(n,c,w,h)的四维数据矩阵,因此在使用二维卷积对待检测视频进行处理时,需要对数据的维度进行重构。
47.示例性的,可以使用三次二维卷积来实现一次三维卷积。对待检测视频进行第一次二维卷积处理时,对第一五维数据矩阵的维度进行重构,以将第一五维数据矩阵重构为四维数据矩阵,在四维数据矩阵中保证宽度信息和高度信息为单独的维度参数,这样可以基于宽度信息维度的参数和高度信息维度的参数对四维数据矩阵进行宽度和高度方向的二维卷积处理,得到以四维数据矩阵表示的第一处理结果,第一处理结果的维度与四维数据矩阵的维度相同,再将第一处理结构重构为五维数据矩阵的形式,得到第二五维数据矩阵,这样实现了一次二维卷积处理。在这个过程中,可以对图像通道数进行调整,即可以在这个过程中将输入通道数调整为输出通道数,即若第一五维数据矩阵表示为(n,t,c1,w,h),则第二五维数据矩阵表示为(n,t,c2,w,h),其中,c1为输入通道数,c2为输出通道数。如果需要进行下采样的话,也是在这个卷积过程中进行的,即对得到的第一处理结果进行下采样,将图像的宽度信息和高度信息调整为原来的1/2。
48.对待检测视频进行第二次二维卷积处理时,是对上一次卷积处理的输出结果进行二维卷积处理,这时上一次卷积处理的输出结果对应为第一五维数据矩阵,这时将上一次卷积处理的输出结果所对应的第一五维数据矩阵的维度进行重构,以将第一五维数据矩阵重构为四维数据矩阵,在该四维数据矩阵中保证高度信息和视频帧数为单独的维度参数,这样可以基于高度信息维度的参数和视频帧数信息维度的参数对四维数据矩阵进行高度和视频帧数方向的二维卷积处理,得到以四维数据矩阵表示的第一处理结果,第一处理结果的维度与四维数据矩阵的维度相同,再将第一处理结果重构为五维数据矩阵的形式,得到第二五维数据矩阵。第二五维数据矩阵的维度和第一五维数据矩阵的维度相同。
49.对待检测视频进行第三次二维卷积处理时,是对上一次卷积处理的输出结果进行二维卷积处理,这时上一次卷积处理的输出结果对应为第一五维数据矩阵,这时将上一次卷积处理的输出结果所对应的第一五维数据矩阵的维度进行重构,以将第一五维数据矩阵重构为四维数据矩阵,在该四维数据矩阵中保证宽度信息和视频帧数为单独的维度参数,这样可以基于宽度信息维度的参数和视频帧数信息维度的参数对该四维数据矩阵进行宽度和视频帧数方向的二维卷积处理,得到以四维数据矩阵表示的第一处理结果,第一处理结果的维度与四维数据矩阵的维度相同,再将第一处理结果重构为五维数据矩阵的形式,得到第二五维数据矩阵,第二五维数据矩阵也就是该三次二维卷积处理的输出数据,该输出数据可以是最后得到的脸部动作特征,也可以是通过三次二维卷积对待检测视频处理后的中间数据。第二五维数据矩阵的维度和第一五维数据矩阵的维度相同。
50.在上述的二维卷积处理过程中,在进行非首次的二维卷积处理时,是对前一次二维卷积处理的输出结果进行处理,即当前次的第一五维数据矩阵中的图像通道数与前一次二维卷积处理输出的第二五维数据矩阵的图像通道数相同,同时其他维度的目标参数也是相同的。
51.针对每个维度的目标参数,通过维度重构后进行二维卷积,实现了使用二维卷积代替三维卷积的过程,降低了卷积的计算量,可以提高处理速度,提高活体检测效率,可以满足识别系统的实时性要求。
52.在本技术的一个实施例中,所述通过所述第一活体检测模型将所述待检测视频所对应的第一五维数据矩阵重构为四维数据矩阵,包括:通过所述第一活体检测模型将所述第一五维数据矩阵中所述视频数量维度的目标参数和目标维度的目标参数合并为第一联
合维度的参数,得到所述四维数据矩阵,所述目标维度的目标参数包括所述视频帧数、所述宽度信息或所述高度信息;
53.所述将所述第一处理结果重构为第二五维数据矩阵,包括:将所述第一处理结果中的所述第一联合维度的参数拆分为所述视频数量维度的目标参数和所述目标维度的目标参数,得到所述第二五维数据矩阵。
54.在将第一五维数据矩阵重构(reshape)为四维数据矩阵时,通过将第一五维数据矩阵中的视频数量维度的目标参数和目标维度的目标参数这两个维度目标参数合并为一个维度的目标参数,将合并得到的维度作为第一联合维度,合并维度后得到四维数据矩阵。所述目标维度的目标参数可以包括所述视频帧数、所述宽度信息或所述高度信息。对四维数据矩阵进行二维卷积处理后得到的第一处理结果也是四维的数据矩阵,第一处理结果的维度与四维数据矩阵的维度相同,包括第一联合维度,对第一处理结果进行维度重构,以将第一处理结果中的第一联合维度的参数拆分为视频数量维度的目标参数和视频帧数维度的目标参数,得到第二五维数据矩阵。
55.在目标维度为视频帧数维度时,第一五维数据矩阵表示为(n,t,c1,w,h),那么进行维度重构后,四维数据矩阵的维度表示为(n
×
t,c1,w,h),即四维数据矩阵的维度参数包括第一联合维度的参数、图像通道数、宽度信息和高度信息。对四维数据矩阵进行二维卷积处理后得到的第一处理结果也是四维的数据矩阵,维度的参数包括第一联合维度的参数、图像通道数、宽度信息和高度信息,图像通道数如果需要改变的话,可以在这个二维卷积处理的过程中进行改变,那么第一处理结果的维度表示为(n
×
t,c2,w,h),对第一处理结果进行维度重构,以将第一处理结果中的第一联合维度的参数拆分为视频数量维度的目标参数和视频帧数维度的目标参数,得到第二五维数据矩阵,第二五维数据矩阵表示为(n,t,c2,w,h)。c1表示输入通道数,c2表示输出通道数。
56.在目标维度为宽度信息维度时,在进行非首次的二维卷积处理时,可以将上一次卷积处理得到的第二五维数据矩阵中的维度变换位置(dimshuffle),将第四维度的宽度信息和第二维度的视频帧数变换位置,变换位置后得到当前次待处理的第一五维数据矩阵,该第一五维数据矩阵表示为(n,w,c2,t,h),在将第一五维数据矩阵重构为四维数据矩阵时,通过将变换位置后的第一五维数据矩阵中的视频数量维度的目标参数和宽度信息维度的目标参数这两个维度的目标参数合并为一个维度的参数,将合并得到的维度作为第一联合维度,合并维度后得到四维数据矩阵,该四维数据矩阵的维度表示为(n
×
w,c2,t,h),即四维数据矩阵的维度参数包括第一联合维度的参数、图像通道数、视频帧数和高度信息。对该四维数据矩阵进行二维卷积处理后得到的第一处理结果也是四维的数据矩阵,维度的参数包括第一联合维度的参数、图像通道数、视频帧数和高度信息,第一处理结果的维度表示为(n
×
w,c2,t,h),对第一处理结果进行维度重构,以将第一处理结果中的第一联合维度的参数拆分为视频数量维度的目标参数和宽度信息维度的目标参数,得到第二五维数据矩阵,该第二五维数据矩阵表示为(n,w,c2,t,h)。
57.在目标维度为高度信息维度时,在进行非首次的二维卷积处理时,可以将上一次卷积处理得到的第二五维数据矩阵中的维度变换位置,将第二维度的宽度信息和第五维度的高度信息变换位置,变换位置后得到当前次待处理第一五维数据矩阵,该第一五维数据矩阵表示为(n,h,c2,t,w),在将第一五维数据矩阵重构为四维数据矩阵时,通过将该第一
五维数据矩阵中的视频数量维度的目标参数和高度信息维度的目标参数这两个维度的参数合并为一个维度的参数,将合并得到的维度作为第一联合维度,合并维度后得到四维数据矩阵,该四维数据矩阵的维度表示为(n
×
h,c2,t,w),即该四维数据矩阵的维度的参数包括第一联合维度的参数、图像通道数、视频帧数和宽度信息。对该四维数据矩阵进行二维卷积处理后得到的第一处理结果也是四维的数据矩阵,维度的参数包括第一联合维度的参数、图像通道数、视频帧数和宽度信息,第一处理结果的维度表示为(n
×
h,c2,t,w),对第一处理结果进行维度重构,以将第一处理结果中的第一联合维度的参数拆分为视频数量维度的目标参数和高度信息维度的目标参数,得到第二五维数据矩阵,该第二五维数据矩阵表示为(n,h,c2,t,w),对第二五数据矩阵变换数据维度,将视频帧数这一维度从第四维度变换至第二维度,将宽度信息这一维度从第五维度变换至第四维度,将高度信息这一维度从第二维度变换至第五维度,变换数据维度后的第二数据矩阵即为使用三次二维卷积实现一次三维卷积的输出结果,输出结果的维度表示为(n,t,c2,w,h)。
58.通过将第一五维数据矩阵中视频数量的目标参数和目标维度的目标参数合并为第一联合维度的参数,并在进行二维卷积处理后,将第一处理结果中的第一联合维度拆分为视频数量的目标参数和目标维度的目标参数,将第一处理结果转换为五维的数据矩阵,得到第二五维数据矩阵,这样基于数据维度的重构,实现了一次二维卷积处理。
59.图2是本技术实施例中使用三次二维卷积实现三维卷积的维度变化示意图,如图2所示,对于使用三次二维卷积实现一次三维卷积的输入数据为第一五维数据矩阵,第一五维数据矩阵的维度可以表示为(n,t,c1,w,h),对第一五维数据矩阵进行维度重构后,得到的四维数据矩阵的维度可以表示为(n
×
t,c1,w,h),对该四维数据矩阵进行宽度和高度方向的二维(2d)卷积处理,得到的第一处理结果的维度表示为(n
×
t,c2,w,h),对第一处理结果进行维度重构后得到的第二五维数据矩阵的维度表示为(n,w,c2,t,h),实现一次三维卷积的过程中如果需要下采样,则对第一处理结果进行下采样,之后再进行维度重构;对第二五维数据矩阵的维度进行位置变换,维度位置变换后得到第二次二维卷积处理的输入数据,即第二次二维卷积处理的第一五维数据矩阵,该第一五维数据矩阵的维度表示为(n,w,c2,t,h),对该第一五维数据矩阵进行维度重构后,得到的四维数据矩阵的维度可以表示为(n
×
w,c2,t,h),对该四维数据矩阵进行高度和视频帧数方向的二维卷积处理,得到的第一处理结果的维度表示为(n
×
w,c2,t,h),对第一处理结果进行维度重构后得到的第二五维数据矩阵的维度表示为(n,w,c2,t,h);对第二五维数据矩阵的维度进行位置变换,维度位置变换后得到第三次二维卷积处理的输入数据,即第三次二维卷积处理的第一五维数据矩阵,该第一五维数据矩阵的维度表示为(n,h,c2,t,w),对该第一五维数据矩阵进行维度重构后,得到的四维数据矩阵的维度可以表示为(n
×
h,c2,t,w),对该四维数据矩阵进行宽度和视频帧数方向的二维卷积,得到的第一处理结果的维度表示为(n
×
h,c2,t,w),对第一处理结果进行维度重构后得到的第二五维数据矩阵的维度表示为(n,h,c2,t,w),对第二五维数据矩阵的维度位置进行变换,将第二五维数据矩阵的维度位置变换为与第一次二维卷积处理时的第一五维数据矩阵的维度位置顺序一致,则维度位置变换后的第二五维数据矩阵表示为(n,t,c2,w,h),该维度位置变换后的第二五维数据矩阵便是使用三次二维卷积实现一次三维卷积的输出结果。
60.第一活体检测模型中的二维卷积可以参考任意的二维卷积神经网络模型,将使用
三次二维卷积实现一次三维卷积的结构替换二维卷积神经网络模型中的二维卷积,这样便可以实现对(n,t,c,w,h)这种五维数据矩阵的特征提取任务,并且在二维卷积的过程中还可以使用二维卷积的演化处理,如残差、注意力、特征金字塔结构等来提升模型的整体性能。
61.在使用三次二维卷积实现三维卷积时,通过不同维度的反复组合,只用二维卷积操作,就模拟出了三维卷积的效果,经过实践证明,这种设计方案在多个任务上可以达到与三维卷积媲美的效果,并且便于硬件加速,呈现出远超三维卷积的速度优势;如果需要下采样,只在宽度(w)和高度(h)的空间维度上进行下采样,并没有在视频帧(t)的时间维度上做下采样,这种做法可以最大程度地保持动作信息的完整性。
62.在上述技术方案的基础上,所述方法还包括:获取与所述第一活体检测模型并行部署的其他活体检测模型所输出的第二活体检测结果;其中,所述第二活体检测结果为所述待检测视频的检测结果或者所述目标对象的检测结果;根据所述第一活体检测结果和所述第二活体检测结果,确定所述目标对象的活体检测结果。
63.在部署第一活体检测模型时,还可以并行部署具有其他功能的活体检测模型,如检测视频是否为翻拍的第二活体检测模型等,这时还可以获取并行部署的其他活体检测模型所输出的第二活体检测结果,结合第一活体检测结果和第二活体检测结果,确定目标对象的活体检测结果,在第一活体检测结果和第二活体检测结果中存在非活体的检测结果时,则可以确定目标对象的活体检测结果为非活体,在第一活体检测结果和第二活体检测结果均为活体的检测结果时,可以确定目标对象的活体检测结果为活体。例如,针对目标对象,第一活体检测模型所输出的第一检测结果为待检测视频为针对目标对象的伪造动作视频,也就是待检测视频中不包括目标对象活体,这时不论第二活体检测结果是否为活体,都可以确定目标对象的检测结果为非活体。
64.第一活体检测模型可以和已有的其他功能的活体检测模型在部署时并行集成,来实现对不同类型攻击的活体检测,提高检测的准确性。
65.图3是本技术实施例中第一活体检测模型的训练过程的流程图,如图3所示,第一活体检测模型的训练过程包括:
66.步骤301,获取样本集合,所述样本集合包括多个真实视频和多个合成攻击视频,每个所述真实视频和每个所述合成攻击视频分别作为一个样本视频,所述合成攻击视频是由源域图像和目标域动作视频合成得到。
67.其中,源域图像和目标域动作视频中可以包括不同的目标对象的脸部,合成视频是将目标域动作视频中的脸部动作分别迁移至源域图像中的脸部区域中得到的视频,也就是让源域的脸部区域按照目标域视频中的脸部运动方式进行运动(包括但不限于摆头、眨眼、张嘴等动作),从而得到一段源域脸部的合成攻击视频,该合成攻击视频作为伪造动作视频进行攻击。合成攻击视频可以采用多种方式来进行合成,例如可以使用3dfacewarp、firstorder、muglife这三种原理分别进行合成,在具体使用时,可以根据现实中的伪造动作视频的合成方式来确定各种原理的比例,并按照比例来选择合成方式进行合成,与真实视频共同作为样本集合,当然也可以选用其中一种合成方式进行合成。真实视频是真实的目标对象的脸部动作视频。
68.步骤302,基于所述样本集合对待训练的第一活体检测模型进行训练,得到训练完
成的第一活体检测模型。
69.从所述样本集合中选取目标批次数量的样本视频,并将所述目标批次数量的样本视频输入所述多帧时空联合网络模型,通过所述多帧时空联合网络模型分别对所述目标批次数量的样本视频进行特征提取,得到每个所述样本视频的视频特征。
70.从样本集合中选取目标批次数量(batchsize)的样本视频,将选取的目标批次数量的样本视频输入第一活体检测模型,通过第一活体检测模型基于不同维度的目标参数对样本视频进行二维卷积处理,得到每个样本视频的脸部动作特征。其中,目标批次数量是一个训练批次需要输入多帧时空联合网络模型的样本视频的数量。
71.通过第一活体检测模型中的全连接层对每个样本视频的脸部动作特征进行分类处理,得到每个样本视频的检测结果,检测结果可以包括真实视频所对应的置信度以及合成攻击视频所对应的置信度。
72.根据每个样本视频的识别结果以及每个样本视频为真实视频或合成视频的标注结果,对第一活体检测模型的网络参数进行调整。在进行一个训练批次后,判断是否满足训练结束条件,如果不满足训练结束条件,则迭代执行上述步骤,即迭代执行从样本集合中选取样本视频、通过第一活体检测模型对样本视频进行二维卷积处理以及调整第一活体检测模型的网络参数的操作,直至满足训练结束条件,结束训练,得到训练完成的第一活体检测模型。
73.按照上述方式使用合成攻击视频和真实视频训练的第一活体检测模型对于真实的伪造动作攻击能够起到有效的防御效果,并且可以和已有的其他类型的活体检测模型在部署时并行集成,来实现对不同类型攻击的活体检测。
74.在上述技术方案的基础上,所述合成攻击视频通过如下步骤合成得到:
75.获取所述源域图像中的脸部区域的脸部关键点,作为源域脸部关键点;以及,获取所述目标域动作视频中每一帧目标域图像中脸部区域的脸部关键点,作为目标域脸部关键点;
76.根据所述源域脸部关键点和所述目标域脸部关键点,将每一帧所述目标域图像中脸部区域中的脸部姿态信息分别以对应脸部关键点迁移到所述源域图像中的脸部区域中,得到源域脸部动作序列;
77.将所述源域脸部动作序列分别合成到所述源域图像中,并生成合成视频。
78.可以使用脸部检测模型对源域图像进行脸部检测,得到所述源域图像中的脸部关键点(包括但不限于5点、68点、81点)。使用脸部检测模型分别对目标域动作视频中每一帧目标域图像进行脸部检测,得到每一帧目标域图像的脸部关键点。使用脸部关键点对源域图像和每一帧目标域图像进行脸部对齐,基于源域图像中的脸部关键点,获取源域图像中的脸部区域,作为源域脸部区域s,并基于每一帧目标域图像的脸部关键点,获取每一帧目标域图像的脸部区域,将每一帧目标域图像的脸部区域作为目标域脸部区域(t1,t2,

,tn)。将源域脸部区域s和每一帧目标域脸部区域(t1,t2,

,tn)作为合成攻击视频的输入。
79.基于每一帧目标域图像中的目标域脸部关键点,对源域脸部区域s的源域脸部关键点进行变换,以将每一帧目标域脸部区域中的脸部姿态信息分别迁移至源域图像中的脸部区域中,得到源域脸部动作序列(s1,s2,

,sn)。按照源域脸部关键点,将源域脸部动作序列(s1,s2,

,sn)分别粘贴至源域图像中,得到多幅图像作为视频帧,按照目标域动作视频
的fps(frames per second,每秒传输帧数)参数,将这包括多幅图像的视频帧合成一个视频,得到合成攻击视频,该合成攻击视频即伪造动作视频。
80.通过基于源域图像中的脸部关键点以及目标域动作视频中每一帧目标域图像中的脸部关键点,可以准确地将目标域动作视频中每一帧的脸部姿态信息迁移至源域图像中,提高合成攻击视频的效果。
81.在本技术的一个实施例中,根据所述源域脸部关键点和每一帧所述目标域脸部关键点,将每一帧所述目标域图像中脸部区域中的脸部姿态信息分别以对应关键点迁移到所述源域图像中的脸部区域中,得到源域脸部动作序列,包括:
82.针对每一帧所述目标域图像,根据所述源域脸部关键点,确定所述目标域脸部关键点在所述源域图像中脸部区域中的位置;
83.根据所述位置和所述源域脸部关键点,通过三角剖分将所述源域图像中脸部区域中的脸部姿态信息调整为所述目标域图像中的脸部姿态信息,得到源域合成图像;
84.按照每一帧所述目标域图像的顺序,对根据每一帧所述目标域图像得到的源域合成图像进行排序,得到所述源域脸部动作序列。
85.使用3dfacewarp的原理来生成合成视频时,输入源域脸部区域s和对应的源域脸部关键点lmks、目标域动作视频第一帧的目标域脸部区域t1和对应的目标域脸部关键点lmk
t
,根据源域脸部关键点lmks计算第一帧目标域图像中的目标域脸部关键点lmk
t
在源域脸部区域s上的位置lmk
ts
,利用3d三角剖分的技术将源域脸部区域s调整到第一帧目标域脸部区域t1的姿态,即使用三角剖分的方式,根据第一帧目标域脸部区域中的目标域脸部关键点lmk
t
在源域脸部区域s上的位置lmk
ts
对目标域脸部关键点lmk
t
进行位置调整并进行颜色渲染等,从而得到源域脸部区域s对应第一帧的源域合成图像s1,对(t1,t2,

,tn)每一帧都重复上述的合成操作,得到源域脸部动作序列(s1,s2,

,sn)。
86.在通过三角剖分迁移脸部姿态信息时,为了将每一帧目标域脸部区域(t1,t2,

,tn)中的脸部姿态信息迁移至源域脸部区域s中,需要将源域脸部区域s中的源域脸部关键点对齐每一帧目标域脸部区域(t1,t2,

,tn)中的目标域脸部关键点。为了将源域脸部区域中的源域脸部关键点对齐每一帧目标域脸部区域中的目标域脸部关键点,可以在原有的脸部关键点的基础上增加4个针对于原图边界角点的关键点,使用三角剖分算法,进行不同关键点之间的三角形构建。将源域脸部区域s中的源域脸部关键点生成的三角形分别映射到每一帧目标域脸部区域中目标域脸部关键点lmk
t
在源域脸部区域s上的位置lmk
ts
所生成的三角形中,从而完成关键点的校正,得到源域脸部动作序列(s1,s2,

,sn),实现脸部姿态的变化。
87.通过上述方式得到的源域脸部动作序列在生成合成攻击视频后,对于大姿态的动作不能很到位的生成,但是可以保持合成域视频中的脸部细节。
88.在本技术的另一个实施例中,所述根据所述源域脸部关键点和所述目标域脸部关键点,将每一帧所述目标域图像中脸部区域中的脸部姿态信息分别以对应脸部关键点迁移到所述源域图像中的脸部区域中,得到源域脸部动作序列,包括:将所述源域图像中的脸部区域和所述目标域动作视频中每一帧所述目标域图像中脸部区域输入视频合成模型,通过所述视频合成模型将所述每一帧目标域图像中脸部区域中的脸部姿态信息以对应脸部关键点迁移到所述源域图像中的脸部区域中,得到所述源域脸部动作序列。
89.其中,所述视频合成模型可以是利用仿射变换描述运动的firstorder预训练模型。
90.将源域图像中的脸部区域s和目标域动作视频中每一帧目标域图像中脸部区域(t1,t2,

,tn)输入到视频合成模型中,通过视频合成模型将每一帧目标域图像中脸部区域中的脸部姿态信息以对应脸部关键点迁移至源域图像中的脸部区域中,即针对同一标识的脸部关键点进行脸部姿态信息的迁移,端到端直接生成源域脸部动作序列(s1,s2,

,sn)。
91.基于firstorder原理的方式是一种基于深度学习的方法,所采用的基于firstorder的视频合成模型经过大量脸部数据训练,因此生成的合成视频即使动作不完全准确,也能保持脸部整体的合理协调。
92.在本技术的另一个实施例中,所述根据所述源域脸部关键点和所述目标域脸部关键点,将每一帧所述目标域图像中脸部区域中的脸部姿态信息分别以对应脸部关键点迁移到所述源域图像中的脸部区域中,得到源域脸部动作序列,包括:确定所述目标域动作视频中每相邻两帧之间脸部区域的关键点坐标变换矩阵;根据每相邻两帧之间脸部区域的关键点坐标变换矩阵,分别对所述源域图像中脸部区域进行变换处理,得到多个合成源域脸部区域组成的初始源域脸部动作序列;对所述初始源域脸部动作序列中每个合成源域脸部区域进行细节修复处理,得到所述源域脸部动作序列。
93.使用muglife的原理来生成合成攻击视频时,利用光流跟踪法,计算目标域动作视频(t1,t2,

,tn)中每相邻两帧之间脸部区域的关键点坐标变换矩阵,构建三角网络变形,根据每相邻两帧之间脸部区域的关键点坐标变换矩阵,分别对源域脸部区域进行变换处理,并利用光流跟踪法记录背景变化,得到多个合成源域脸部区域组成的初始源域脸部动作序列,即初步得到源域图像中脸部区域s的n个运动状态;对初始源域脸部动作序列中每个合成源域脸部区域进行细节修复处理,即利用泊松融合对嘴部进行填充,利用频域变换法进行脸部皱纹阴影迁移,将源域图像中脸部区域s的n个运动状态做这两种微调得到源域脸部动作序列(s1,s2,

,sn)。
94.基于muglife原理的方式是一种基于运动学光流分析的方法,没有经过脸部数据训练,所以得到的合成攻击视频会有局部的光照不协调,但是优势在于对任何运动姿态都有模拟效果。
95.本技术实施例在生成合成攻击视频构成样本集合时,可以按照比例随机选择上述三种方式,这样可以在样本集合的数据分布中,让三种方式的优势互补,使得生成的合成攻击视频具有多样性,用这样的数据训练出来的第一活体检测模型对真实攻击会更鲁棒,第一活体检测模型的防御性能易于在较长时间段内保持稳定,并且由于训练数据(合成攻击视频)具有很好的多样性,这种防御能力能够在长时间段内保持在较高水平,不会由于攻击方式的细微变化而迅速下滑,从而实现了不依赖海量真实攻击数据,对伪造动作视频脸部攻击的主动防御任务。
96.需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本技术实施例并不受所描述的动作顺序的限制,因为依据本技术实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本技术实施例所必须的。
97.图4是本技术实施例提供的一种活体检测装置的结构框图,如图4所示,该活体检测装置可以包括:
98.视频获取模块401,用于获取目标对象的待检测视频;
99.特征提取模块402,用于将所述待检测视频输入第一活体检测模型,通过所述第一活体检测模型基于不同维度的目标参数对所述待检测视频进行二维卷积处理,得到所述待检测视频的脸部动作特征;其中,所述目标参数为与所述待检测视频中的视频帧相关的参数;
100.活体识别模块403,用于通过所述第一活体检测模型对所述脸部动作特征进行识别,得到所述待检测视频是否为伪造动作视频的第一活体检测结果。
101.可选的,所述特征提取模块用于执行以下卷积处理中的至少一项:
102.通过所述第一活体检测模型基于宽度信息和高度信息对所述待检测视频进行二维卷积处理;
103.通过所述第一活体检测模型基于所述高度信息和视频帧信息对所述待检测视频进行二维卷积处理;
104.通过所述第一活体检测模型基于所述宽度信息和所述视频帧信息对所述待检测视频进行二维卷积处理;
105.其中,所述宽度信息为所述待检测视频中视频帧的宽度,所述高度信息为所述待检测视频中视频帧的高度,所述视频帧信息为所述待检测视频的视频帧数。
106.可选的,所述特征提取模块具体用于:
107.针对每个维度的目标参数,通过所述第一活体检测模型将所述待检测视频所对应的第一五维数据矩阵重构为四维数据矩阵,并基于所述维度的目标参数对所述四维数据矩阵进行二维卷积处理,得到第一处理结果,将所述第一处理结果重构为第二五维数据矩阵,所述第一五维数据矩阵和第二五维数据矩阵的维度参数分别为所述待检测视频的视频数量、所述待检测视频的视频帧数、所述待检测视频中视频帧的图像通道数、以及所述视频帧的宽度信息和高度信息;
108.其中,在进行非首次的二维卷积处理时,所述第一五维数据矩阵中的图像通道数与前一次二维卷积处理输出的第二五维数据矩阵的图像通道数相同。
109.可选的,所述特征提取模块包括:
110.第一维度重构单元,用于通过所述第一活体检测模型将所述第一五维数据矩阵中所述视频数量维度的目标参数和目标维度的目标参数合并为第一联合维度的参数,得到所述四维数据矩阵,所述目标维度的目标参数包括所述视频帧数、所述宽度信息或所述高度信息;
111.第二维度重构单元,用于将所述第一处理结果中的所述第一联合维度的参数拆分为所述视频数量维度的目标参数和所述目标维度的目标参数,得到所述第二五维数据矩阵。
112.可选的,所述装置还包括:
113.第二结果获取模块,用于获取与所述第一活体检测模型并行部署的其他活体检测模型所述输出的第二活体检测结果;其中,所述第二活体检测结果为所述待检测视频的检测结果或者所述目标对象的检测结果;
114.检测结果确定模块,用于根据所述第一活体检测结果和所述第二活体检测结果,确定所述目标对象的活体检测结果。
115.可选的,所述装置还包括模型训练模块,所述模型训练模块包括:
116.样本集合获取单元,用于获取样本集合,所述样本集合包括多个真实视频和多个合成攻击视频,每个所述真实视频和每个所述合成攻击视频分别作为一个样本视频,所述合成攻击视频是由源域图像和目标域动作视频合成得到;
117.模型训练单元,用于基于所述样本集合对待训练的第一活体检测模型进行训练,得到训练完成的第一活体检测模型。
118.可选的,所述模型训练模块还包括视频合成单元,所述视频合成单元包括:
119.关键点获取子单元,用于获取所述源域图像中脸部区域的脸部关键点,作为源域脸部关键点;以及,获取所述目标域动作视频中每一帧目标域图像中脸部区域的脸部关键点,作为目标域脸部关键点;
120.姿态信息迁移子单元,用于根据所述源域脸部关键点和所述目标域脸部关键点,将每一帧所述目标域图像中脸部区域中的脸部姿态信息分别以对应脸部关键点迁移到所述源域图像中的脸部区域中,得到源域脸部动作序列;
121.视频合成子单元,用于将所述源域脸部动作序列分别合成到所述源域图像中,并生成合成攻击视频。
122.可选的,所述姿态信息迁移子单元具体用于:
123.针对每一帧所述目标域图像,根据所述源域脸部关键点,确定所述目标域脸部关键点在所述源域图像中脸部区域中的位置;
124.根据所述位置和所述源域脸部关键点,通过三角剖分将所述源域图像中的脸部姿态信息调整为所述目标域图像中的脸部姿态信息,得到源域合成图像;
125.按照每一帧所述目标域图像的顺序,对根据每一帧所述目标域图像得到的源域合成图像进行排序,得到所述源域脸部动作序列。
126.可选的,所述姿态信息迁移子单元具体用于:
127.将所述源域图像中的脸部区域和所述目标域动作视频中每一帧所述目标域图像中脸部区域输入视频合成模型,通过所述视频合成模型将所述每一帧目标域图像中脸部区域中的脸部姿态信息以对应脸部关键点迁移到所述源域图像中的脸部区域中,得到所述源域脸部动作序列。
128.可选的,所述姿态信息迁移子单元具体用于:
129.确定所述目标域动作视频中每相邻两帧之间脸部区域的关键点坐标变换矩阵;
130.根据每相邻两帧之间脸部区域的关键点坐标变换矩阵,分别对所述源域图像中脸部区域进行变换处理,得到多个合成源域脸部区域组成的初始源域脸部动作序列;
131.对所述初始源域脸部动作序列中每个合成源域脸部区域进行细节修复处理,得到所述源域脸部动作序列。
132.本技术实施例提供的装置中各个模块、单元所对应功能的具体实现过程可参考图1-图3所示方法实施例,此处不再赘述装置部分各个模块、单元所对应功能的具体实现过程。
133.本实施例提供的活体检测装置,通过将待检测视频输入第一活体检测模型,通过
第一活体检测模型基于不同维度的目标参数对待检测视频进行二维卷积处理,得到待检测视频的脸部动作特征,对提取到的脸部动作特征进行识别得到待检测视频是否为伪造动作视频的第一活体检测结果,由于对待检测视频进行特征提取,替代了使用三维卷积处理的过程,而且使用不同维度的二维卷积达到了三维卷积的效果,便于硬件加速,提高了处理速度,提高了识别效率。
134.对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
135.图5是本技术实施例提供的一种电子设备的结构框图,如图5所示,该电子设备500可以包括一个或多个处理器510以及与处理器510连接的一个或多个存储器520。电子设备500还可以包括输入接口530和输出接口540,用于与另一装置或系统进行通信。被处理器510执行的程序代码可存储在存储器520中。
136.电子设备500中的处理器510调用存储在存储器520的程序代码,以执行上述实施例中的活体检测方法。
137.根据本技术的一个实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质包括但不限于磁盘存储器、cd-rom、光学存储器等,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现前述实施例的活体检测方法。
138.根据本技术的一个实施例,还提供了一种计算机程序产品,包括计算机程序或计算机指令,所述计算机程序或计算机指令被处理器执行时实现上述实施例所述的活体检测方法。
139.本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
140.本领域内的技术人员应明白,本技术实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本技术实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
141.本技术实施例是参照根据本技术实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
142.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
143.这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在
计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
144.尽管已描述了本技术实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本技术实施例范围的所有变更和修改。
145.最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
146.以上对本技术所提供的一种活体检测方法、电子设备及存储介质,进行了详细介绍,本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想;同时,对于本领域的一般技术人员,依据本技术的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本技术的限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1