一种三维人脸识别方法、装置、电子设备及存储介质
技术领域
本发明涉及机器视觉技术领域,尤其涉及一种三维人脸识别方法、装置、电子设备及存储介质。
背景技术
在计算机视觉和深度学习领域,人脸识别技术一直是重要的研究方向,相比于二维人脸图像,深度传感器获取的三维人脸图像包含了人脸的形状信息,对于人脸姿态和光照的变化造成的影响,三维人脸识别技术的鲁棒性更强。
随着消费级深度传感器的不断出现,可以通过采集的深度人脸图像和相机参数获取三维人脸点云。但是,由于深度相机基线距离和深度图恢复算法的影响,获取的点云数据质量在人脸距离较远时通常较差;此外,不同相机获取的点云数据风格和质量也存在较大差异。
现有的人脸识别模型是通过将质量好的点云和质量差的点云融合在一起进行训练得到的,利用上述人脸识别模型的三维人脸识别方法对远距离质量差的点云数据的识别效果提升不明显,同时也影响了近距离质量好的点云数据的识别效果,现有的三维人脸识别方法对不同质量和不同风格的点云数据的泛化能力较差。
发明内容
本发明实施例提供一种三维人脸识别方法、装置、电子设备及存储介质,用以解决现有的三维人脸识别方法对不同质量和不同风格的点云数据的泛化能力较差的问题。
第一方面,本发明实施例提供一种三维人脸识别方法,包括:
确定深度图对应的点云图;
将所述点云图输入至人脸识别模型,得到所述人脸识别模型输出的所述点云图的人脸特征,并基于所述人脸特征进行人脸识别;
所述人脸识别模型是基于源域点云图及其对应的源域类别和目标域点云图及其对应的目标域类别,以及域分辨器分支进行对抗学习训练得到的。
可选地,所述人脸识别模型包括识别主分支,所述识别主分支是通过与所述域分辨器分支进行对抗学习训练得到的;
所述域分辨器分支包括多个域分辨器,所述域分辨器和所述目标域类别一一对应,每一域分辨器包括一个梯度翻转层。
可选地,任一域分辨器中的梯度翻转层的前向传播公式是基于所述识别主分支输出的源域点云图对应的中间特征,以及所述源域点云图对应的源域类别的类别中心特征与所述任一域分辨器对应的目标域类别的类别中心特征之间的相似度确定的。
可选地,所述识别主分支和所述域分辨器分支联合对抗学习的损失函数是基于所述识别主分支的损失函数和所述域分辨器分支的损失函数之差确定的。
可选地,所述识别主分支的损失函数是基于所述源域点云图对应的特征及其距离权重确定的;
其中,任一距离权重是基于任一源域点云图对应的采集距离确定的。
可选地,所述确定深度图对应的点云图,具体包括:
获取所述深度图和所述深度图的二维人脸关键点;
基于所述深度图和所述二维人脸关键点,确定三维点云数据和三维人脸关键点;
基于所述三维点云数据和所述三维人脸关键点,以及标准人脸关键点,确定标准人脸三维点云数据;
基于所述标准人脸三维点云数据,确定所述点云图。
可选地,所述源域点云图和所述目标域点云图是基于源域深度图和目标域深度图确定的,所述源域深度图和所述目标域深度图是通过对原始源域深度图和原始目标域深度图进行畸变增强得到的;
所述畸变增强为基于深度相机参数,对所述原始源域深度图和所述原始目标域深度图添加径向畸变和切向畸变。
第二方面,本发明实施例提供一种三维人脸识别装置,包括:
数据确定模块,用于确定深度图对应的点云图;
人脸识别模块,用于将所述点云图输入至人脸识别模型,得到所述人脸识别模型输出的所述点云图的人脸特征,并基于所述人脸特征进行人脸识别;
所述人脸识别模型是基于源域点云图及其对应的源域类别和目标域点云图及其对应的目标域类别,以及域分辨器分支进行对抗学习训练得到的。
第三方面,本发明实施例提供一种电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所述的三维人脸识别方法。
第四方面,本发明实施例提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面所述的三维人脸识别方法。
本发明实施例提供的一种三维人脸识别方法、装置、电子设备及存储介质,通过基于源域点云图及其对应的源域类别和目标域点云图及其对应的目标域类别,以及域分辨器分支进行对抗学习训练得到人脸识别模型,能够实现人脸识别模型从源域到目标域的风格迁移,进而提升了三维人脸识别方法对不同质量、不同风格点云数据的泛化能力。同时利用二维的点云图存储三维的点云数据,进而可以使用二维的人脸识别模型对点云数据进行处理,降低了模型的复杂度,提升了模型的运算效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的三维人脸识别方法的流程示意图;
图2为本发明实施例提供的三维人脸识别装置的结构示意图;
图3为本发明实施例提供的电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例提供的三维人脸识别方法的流程示意图,如图1所示,本发明实施例提供的三维人脸识别方法包括:
步骤110,确定深度图对应的点云图。
具体地,深度图是通过深度相机采集得到的,深度相机可以是结构光深度相机,也可以是TOF(Time of Flight)相机,还可以是双目相机,本发明实施例对深度相机的类型不作具体限定。利用深度相机参数,对采集得到的深度图进行坐标转换,可以得到深度图对应的三维点云数据。随后将三维点云数据投影到预设尺寸的二维空间,其中,预设尺寸为二维图像的图像大小,例如预设尺寸可以为112×96。通过二维图像的图像三通道RGB分别存储三维点云数据的XYZ坐标值,即可以按照二维图像结构存储三维点云数据,用于存储三维点云数据的二维图像即为深度图对应的点云图。
步骤120,将点云图输入至人脸识别模型,得到人脸识别模型输出的点云图的人脸特征,并基于所述人脸特征进行人脸识别;
人脸识别模型是基于源域点云图及其对应的源域类别和目标域点云图及其对应的目标域类别,以及域分辨器分支进行对抗学习训练得到的。
具体地,人脸识别模型用于基于点云图中的人脸三维形状信息对点云图进行人脸识别,输出点云图的人脸特征,其中,人脸特征为表征人脸信息的向量。计算输出的人脸特征与特征库中各特征向量的距离,将与人脸特征距离最近的特征向量对应的人脸识别结果作为点云图对应的人脸识别结果,人脸识别结果为待识别人脸对应的身份信息。人脸识别结果可以为事先为待识别人脸标记的编号,也可以为包含待识别人脸的姓名、身份证号码、性别、籍贯和出生日期等信息的身份卡片,本发明实施例对此不作具体限定。
在执行步骤120之前,还可以预先训练得到人脸识别模型,具体可通过如下方式训练得到人脸识别模型:首先,收集源域点云图和目标域点云图,其中,源域点云图和目标域点云图分别来源于不同类型的深度相机,通过源域到目标域的迁移学习,可以获取目标域点云图的人脸识别结果,以提升人脸识别模型对跨相机数据的泛化能力。
通过对所有源域点云图进行人工标注的方式,确定源域点云图对应的源域类别;通过对所有目标域点云图进行人工标注的方式,确定目标域点云图对应的目标域类别。其中,源域类别和目标域类别分别为所有源域点云图和所有目标域点云图对应的人脸识别结果,且所有目标域类别包含于所有源域类别,同时每一源域类别和每一目标域类别可以包括正脸、抬头、低头、左转头、右转头五幅点云图(其中抬头、低头、左右转头的角度均<15°)。
随即,将源域点云图及其对应的源域类别和目标域点云图及其对应的目标域类别输入至初始模型,与域分辨器分支进行对抗学习训练,从而得到人脸识别模型。此处域分辨器分支用于分辨源域点云图和目标域点云图。人脸识别模型与域分辨器分支在训练过程中进行不断博弈,使得训练完成后,人脸识别模型的人脸分类误差最小化,同时域分辨器分支无法分辨出源域点云图和目标域点云图。
本发明实施例提供的三维人脸识别方法,通过基于源域点云图及其对应的源域类别和目标域点云图及其对应的目标域类别,以及域分辨器分支进行对抗学习训练得到人脸识别模型,能够实现人脸识别模型从源域到目标域的风格迁移,进而提升了三维人脸识别方法对不同质量、不同风格点云数据的泛化能力。同时利用二维的点云图存储三维的点云数据,进而可以使用二维的人脸识别模型对点云数据进行处理,降低了模型的复杂度,提升了模型的运算效率。
基于上述实施例,该三维人脸识别方法中,人脸识别模型包括识别主分支,识别主分支是通过与域分辨器分支进行对抗学习训练得到的;域分辨器分支包括多个域分辨器,域分辨器和目标域类别一一对应,每一域分辨器包括一个梯度翻转层。
具体地,人脸识别模型包括识别主分支,识别主分支用于基于深度图对应的点云图进行人脸识别,识别主分支是通过与域分辨器分支进行对抗学习训练得到的,识别主分支可以为卷积神经网络模型,例如mobilenet_v2模型。
域分辨器分支包括多个域分辨器,域分辨器与目标域类别一一对应。每一域分辨器可以包括一个梯度翻转层(Gradient Reversal Layer,GRL)和依次连接的两个全连接层,每一域分辨器通过梯度翻转层与识别主分支的池化层连接。梯度翻转层用于混淆源域和目标域,以达到无法区分源域点云图和目标域点云图的目的。
识别主分支和域分辨器分支联合对抗学习模型的初始学习率可以设置为0.01,学习率将采用滑动平均的方式衰减,衰减因子可以为0.98,衰减步骤可以为1个训练周期。联合对抗学习模型的测试阶段,可以利用M个类别的入库数据,进行1:M的闭集测试,且源域测试集和目标域测试集均包含M个类别的入库数据,通过提取测试集主分支最后一层全连接层的特征,并计算测试集数据特征和入库数据特征的欧式距离,可以统计1:M的闭集测试的识别准确率等指标。
本发明实施例提供的三维人脸识别方法,通过与域分辨器分支进行对抗学习训练得到识别主分支,并对每一目标域类别构建一个域分辨器,且每一域分辨器包括一个用于混淆目标域和源域的梯度翻转层,能够实现人脸识别模型从源域到目标域的风格迁移,进而提升了三维人脸识别方法对不同质量、不同风格点云数据的泛化能力。
基于上述任一实施例,该三维人脸识别方法中,任一域分辨器中的梯度翻转层的前向传播公式是基于识别主分支输出的源域点云图对应的中间特征,以及源域点云图对应的源域类别的类别中心特征与任一域分辨器对应的目标域类别的类别中心特征之间的相似度确定的。
具体地,由于源域点云图的标记空间通常远大于目标域点云图,如果直接迁移非目标域类别的源域类别,将出现负迁移的影响。为削弱负迁移的影响,实现源域风格的准确迁移,本发明实施例提供的三维人脸识别方法对不同域分辨器分别设置不同的前向传播函数。
源域点云图对应的中间特征为将源域点云图输入至识别主分支,识别主分支的池化层输出得到的特征。任一源域类别的类别中心特征为任一源域类别包含的所有源域点云图对应的样本特征的均值,作为优选,可以是任一源域类别包含的正脸、抬头、低头、左转头、右转头五幅源域点云图对应的样本特征的均值;任一目标域类别的类别中心特征为任一目标域类别包含的所有目标域点云图对应的样本特征的均值,作为优选,可以是任一目标域类别包含的正脸、抬头、低头、左转头、右转头五幅目标域点云图对应的样本特征的均值。源域点云图对应的样本特征和目标域点云图对应的样本特征是识别主分支的最后一层全连接层输出得到的特征。源域点云图对应的源域类别和目标域点云图对应的目标域类别是基于人工标记确定的。
假设源域点云图输入至识别主分支,识别主分支的池化层输出的源域点云图对应的中间特征为x,源域点云图对应的源域类别的类别中心特征为
即源域点云图对应的源域类别为第m类源域类别。第n类目标域类别的类别中心特征为
n=1,…,T
c,其中T
c为目标域类别的数量,由于域分辨器与目标域类别一一对应,第n个域分辨器对应的目标域类别的类别中心特征即为
由于识别主分支的池化层与任一域分辨器的梯度翻转层连接,源域点云图对应的中间特征为x同样作为任一域分辨器的梯度翻转层的输入特征。将源域类别的类别中心特征
与第n个域分辨器对应的目标域类别的类别中心特征
的相似度作为权重,则可以得到第n个域分辨器的梯度翻转层的前向传播公式为:
式中,
为第n个域分辨器的梯度翻转层的输出特征,
为
与
之间的余弦相似度。余弦相似度
的计算公式如下:
本发明实施例提供的三维人脸识别方法,通过目标域类别的类别中心特征与源域类别的类别中心特征之间的相似度,对域分辨器的梯度翻转层的前向传播函数进行加权处理,以实现与目标域类别相似度高的源域类别得到更好的迁移,同时抑制了与目标域类别相似度低的源域类别的迁移,削弱了负迁移的影响,实现了源域风格的准确迁移,进而提升了三维人脸识别方法对不同质量、不同风格点云数据的泛化能力。
基于上述任一实施例,该三维人脸识别方法中,识别主分支和域分辨器分支联合对抗学习的损失函数是基于识别主分支的损失函数和域分辨器分支的损失函数之差确定的。
具体地,由于识别主分支是通过与域分辨器分支进行对抗学习训练得到的,为达到对抗学习的目的,识别主分支和域分辨器分支联合对抗学习的损失函数是基于识别主分支的损失函数和域分辨器分支的损失函数之差确定的,使得识别主分支的损失最小化且域分辨器分支的损失最大化,识别主分支的损失最小化表征识别主分支输出的人脸识别结果尽可能接近标注的人脸识别结果,域分辨器分支最大化表征域分辨器无法分辨源域点云图和目标域点云图。其中,识别主分支的损失函数是基于所有源域点云图确定的,域分辨器分支的损失函数是基于所有源域点云图和所有目标域点云图确定的。
识别主分支和域分辨器分支联合对抗学习的损失函数Ltotal的具体计算公式如下:
Ltotal=Lm-Ld
式中,Lm为识别主分支的损失函数,Ld为域分辨器分支的损失函数。
识别主分支的损失函数Lm可以为带margin的softmax损失函数,依据CosFace中将全连接层特征与权重的乘积形式转变为余弦表示,并在CosFace损失的基础上添加角度margin,得到带margin的识别损失,识别主分支的损失函数Lm的计算公式如下:
式中,N为一次批处理的样本数目,i为样本标记,j为标签标记,y
i为样本i对应的标签标记,
和θ
j为对应全连接层特征与权重之间的夹角,m
1为余弦margin,m
2为角度margin,s为特征归一化的尺度,在训练中可以设置m
1=0.2,m
2=0.3,s=64。
域分辨器分支Ld的损失函数的计算公式具体如下:
式中,T
c为目标域类别数量,
为第n个域分辨器的损失函数,域分辨器的损失函数
可以为softmax损失函数,
的计算公式如下:
式中,M为域类别数目,
为输入样本预测为第l类的得分,l为输入样本的真实标签,f
k为输入样本预测为第k类的得分。需要说明的是,此处M可以为2,表示目标域和源域。
基于上述任一实施例,该三维人脸识别方法中,识别主分支的损失函数是基于源域点云图对应的特征及其距离权重确定的;其中,任一距离权重是基于任一源域点云图对应的采集距离确定的。
具体地,由于不同距离采集的点云数据质量不同,距离越远,质量通常越差,为降低质量差的点云数据在人脸识别模型训练过程的影响,本发明实施例提供的识别主分支的损失函数在带margin的softmax损失函数的基础上,利用距离权重进行加权处理,任一距离权重是基于任一源域点云图对应的采集距离确定的,源域点云图对应的采集距离越近,距离权重就越大。其中,源域点云图对应的采集距离为待识别人脸与深度相机之间的距离,可以通过计算源域点云图中存储的所有像素的Z坐标值的平均值得到。
距离权重可以为源域点云图对应的采集距离的倒数,在此基础上,本发明实施例提供的识别主分支的损失函数的计算公式如下:
式中,di为第i个样本对应的采集距离。
需要说明的是,识别主分支的损失函数是基于所有源域点云图确定的,因此确定识别主分支的损失函数的样本即为源域点云图。
本发明实施例提供的三维人脸识别方法,通过在识别主分支的损失函数中对不同质量的点云数据赋予不同的权重,降低了质量差的点云数据在人脸识别模型训练过程的影响,提升了三维人脸识别方法对不同质量点云数据的泛化能力。
基于上述任一实施例,该三维人脸识别方法中,步骤110具体包括:
步骤111,获取深度图和深度图的二维人脸关键点;
步骤112,基于深度图和二维人脸关键点,确定三维点云数据和三维人脸关键点;
步骤113,基于三维点云数据和三维人脸关键点,以及标准人脸关键点,确定标准人脸三维点云数据;
步骤114,基于标准人脸三维点云数据,确定点云图。
具体地,首先获取深度相机采集的深度图,并检测得到深度图中的二维人脸关键点,其中,二维人脸关键点可以为人脸中鼻子、眼睛、嘴角等位置的像素点。利用深度相机参数,将深度图和二维人脸关键点进行坐标转换,得到三维点云数据和三维人脸关键点。
由于实际采集时待识别人脸往往不能完全正对深度相机,使得获取的三维点云数据存在一定的角度偏差,进而影响后续的人脸识别效果。为对三维点云数据进行角度校正,将正对深度相机的待识别人脸对应的三维关键点作为标准人脸关键点,标准人脸关键点可以通过百万级样本三维人脸关键点的平均点确定。根据三维人脸关键点和标准人脸关键点之间的相似变换矩阵,将三维点云数据转换为标准人脸点云数据。其中,相似变换矩阵包含x、y、z方向的缩放因子sx、sy、sz,绕x轴、y轴、z轴的旋转角度φ、θ、γ,及x、y、z方向的平移tx、ty、tz。
在得到标准人脸三维点云数据之后,将标准人脸三维点云数据投影到预设尺寸的二维空间,其中,预设尺寸为二维图像的图像大小,例如预设尺寸可以为112×96。通过二维图像的图像三通道RGB分别存储标准人脸三维点云数据的XYZ坐标值,即可以按照二维图像结构存储标准人脸三维点云数据,用于存储标准人脸三维点云数据的二维图像即为深度图对应的点云图。
本发明实施例提供的三维人脸识别方法,通过基于标准人脸关键点,对深度图对应的三维点云数据进行角度校正,有利于提升人脸识别效果,同时利用二维的点云图存储三维的点云数据,进而可以使用二维的人脸识别模型对点云数据进行处理,降低了模型的复杂度,提升了模型的运算效率。
基于上述任一实施例,该三维人脸识别方法中,源域点云图和目标域点云图是基于源域深度图和目标域深度图确定的,源域深度图和目标域深度图是通过对原始源域深度图和原始目标域深度图进行畸变增强得到的;畸变增强为基于深度相机参数,对原始源域深度图和原始目标域深度图添加径向畸变和/或切向畸变。
具体地,源域点云图和目标域点云图是基于源域深度图和目标域深度图确定的,源域深度图和目标域深度图来自不同类型的深度相机,目标域点云图对应的深度相机类型可以为人脸识别模型的应用场景对应的深度相机类型,根据不同的应用场景,调整目标域点云图对应的深度相机类型,不仅提升了三维人脸识别方法的识别效果,而且避免了对大量不同相机采集的数据进行标注,基于深度图确定点云图的方法参见上一实施例,本发明实施例在此不再赘述。
为增强人脸识别模型对不同深度相机数据的鲁棒性,模拟不同畸变类型的深度相机数据,在人脸识别模型的训练过程中,将对原始源域深度图和原始目标域深度图进行畸变增强,并将经过畸变增强处理之后,得到的源域深度图和目标域深度图作为训练数据。
畸变增强的具体过程是:首先,利用深度相机参数,将深度图的像素坐标转换为深度相机坐标,具体公式如下:
式中,u、v为深度图的像素坐标,x′、y′是转换后的相机坐标,
分别为深度图中像素坐标系u轴和v轴上的归一化焦距,f为深度相机的焦距,δ
x和δ
y分别为深度图中像素坐标系u轴和v轴上单位像素的尺寸大小,c
x、c
y为光学中心坐标,光学中心即深度相机光轴与深度相机图像平面的交点,通常位于图像中心处,c
x、c
y的数值可以分别取图像分辨率的一半,例如图像分辨率为36×24,则c
x、c
y的数值分别为18和12。
然后,对转换后的相机坐标添加径向畸变和/或切向畸变,当同时添加径向畸变和切向畸变时,具体公式如下:
式中,x″、y″分别添加畸变之后的深度相机坐标,k1、k2分别为径向畸变参数的前两项,p1、p2分别为切向畸变参数,r2=x′2+y′2。
随后,将添加畸变后的深度相机坐标转换为畸变增强后的深度图的像素坐标,具体公式如下:
式中,u′、v′分别为畸变增强后的深度图的像素坐标。
根据径向畸变和切向畸变的特点,在模拟不同深度相机的畸变时,径向畸变参数k1、k2的取值范围可以设置为[-0.5,0.5],切向畸变参数p1、p2的取值范围可以设置为[-0.1,0.1]。
本发明实施例提供的三维人脸识别方法,通过对原始源域深度图和原始目标域深度图进行畸变增强,模拟不同畸变类型的深度相机数据,提升了三维人脸识别方法对跨相机、不同畸变类型数据的泛化能力。
基于上述任一实施例,图2为本发明实施例提供的三维人脸识别装置的结构示意图,如图2所示,本发明实施例提供的三维人脸识别装置包括:
数据确定模块210,用于确定深度图对应的点云图;
人脸识别模块220,用于将点云图输入至人脸识别模型,得到人脸识别模型输出的点云图的人脸特征,并基于所述人脸特征进行人脸识别;
人脸识别模型是基于源域点云图及其对应的源域类别和目标域点云图及其对应的目标域类别,以及域分辨器分支进行对抗学习训练得到的。
本发明实施例提供的三维人脸识别装置,通过基于源域点云图及其对应的源域类别和目标域点云图及其对应的目标域类别,以及域分辨器分支进行对抗学习训练得到人脸识别模型,能够实现人脸识别模型从源域到目标域的风格迁移,进而提升了三维人脸识别方法对不同质量、不同风格点云数据的泛化能力。同时利用二维的点云图存储三维的点云数据,进而可以使用二维的人脸识别模型对点云数据进行处理,降低了模型的复杂度,提升了模型的运算效率。
基于上述任一实施例,该三维人脸识别装置中,人脸识别模型包括识别主分支,识别主分支是通过与域分辨器分支进行对抗学习训练得到的;域分辨器分支包括多个域分辨器,域分辨器和目标域类别一一对应,每一域分辨器包括一个梯度翻转层。
本发明实施例提供的三维人脸识别装置,通过与域分辨器分支进行对抗学习训练得到识别主分支,并对每一目标域类别构建一个域分辨器,且每一域分辨器包括一个用于混淆目标域和源域的梯度翻转层,能够实现人脸识别模型从源域到目标域的风格迁移,进而提升了三维人脸识别方法对不同质量、不同风格点云数据的泛化能力。
基于上述任一实施例,该三维人脸识别装置中,任一域分辨器中的梯度翻转层的前向传播公式是基于识别主分支输出的源域点云图的对应的中间特征,以及源域点云图对应的源域类别的类别中心特征与任一域分辨器对应的目标域类别的类别中心特征之间的相似度确定的。
本发明实施例提供的三维人脸识别装置,通过目标域类别的类别中心特征与源域类别的类别中心特征之间的相似度,对域分辨器的梯度翻转层的前向传播函数进行加权处理,以实现与目标域类别相似度高的源域类别得到更好的迁移,同时抑制了与目标域类别相似度低的源域类别的迁移,削弱了负迁移的影响,实现了源域风格的准确迁移,进而提升了三维人脸识别方法对不同质量、不同风格点云数据的泛化能力。
基于上述任一实施例,该三维人脸识别装置中,识别主分支和域分辨器分支联合对抗学习的损失函数是基于识别主分支的损失函数和域分辨器分支的损失函数之差确定的。
基于上述任一实施例,该三维人脸识别装置中,识别主分支的损失函数是基于源域点云图对应的特征及其距离权重确定的;其中,任一距离权重是基于任一源域点云图对应的采集距离确定的。
本发明实施例提供的三维人脸识别装置,通过在识别主分支的损失函数中对不同质量的点云数据赋予不同的权重,降低了质量差的点云数据在人脸识别模型训练过程的影响,提升了三维人脸识别方法对不同质量点云数据的泛化能力。
基于上述任一实施例,该三维人脸识别装置中,数据确定模块210具体用于:
获取深度图和深度图的二维人脸关键点;
基于深度图和二维人脸关键点,确定三维点云数据和三维人脸关键点;
基于三维点云数据和三维人脸关键点,以及标准人脸关键点,确定标准人脸三维点云数据;
基于标准人脸三维点云数据,确定点云图。
本发明实施例提供的三维人脸识别装置,通过基于标准人脸关键点,对深度图对应的三维点云数据进行角度校正,有利于提升人脸识别效果,同时利用二维的点云图存储三维的点云数据,进而可以使用二维的人脸识别模型对点云数据进行处理,降低了模型的复杂度,提升了模型的运算效率。
基于上述任一实施例,该三维人脸识别装置中,源域点云图和目标域点云图是基于源域深度图和目标域深度图确定的,源域深度图和目标域深度图是通过对原始源域深度图和原始目标域深度图进行畸变增强得到的;畸变增强为基于深度相机参数,对原始源域深度图和原始目标域深度图添加径向畸变和切向畸变。
本发明实施例提供的三维人脸识别装置,通过对原始源域深度图和原始目标域深度图进行畸变增强,模拟不同畸变类型的深度相机数据,提升了三维人脸识别方法对跨相机、不同畸变类型数据的泛化能力。
图3为本发明实施例提供的电子设备的实体结构示意图,如图3所示,该电子设备可以包括:处理器301、通信接口302、存储器303和通信总线304,其中,处理器301,通信接口302,存储器303通过通信总线304完成相互间的通信。处理器301可以调用存储器303中的逻辑指令,以执行如下方法:确定深度图对应的点云图;将点云图输入至人脸识别模型,得到人脸识别模型输出的点云图的人脸特征,并基于人脸特征进行人脸识别;人脸识别模型是基于源域点云图及其对应的源域类别和目标域点云图及其对应的目标域类别,以及域分辨器分支进行对抗学习训练得到的。
此外,上述的存储器303中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的方法,例如包括:确定深度图对应的点云图;将点云图输入至人脸识别模型,得到人脸识别模型输出的点云图的人脸特征,并基于人脸特征进行人脸识别;人脸识别模型是基于源域点云图及其对应的源域类别和目标域点云图及其对应的目标域类别,以及域分辨器分支进行对抗学习训练得到的。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。