首页 / 专利库 / 人工智能 / 人脸姿态估计 / 人脸姿态估计/三维人脸重构方法、装置及电子设备

人脸姿态估计/三维人脸重构方法、装置及电子设备

阅读:34发布:2020-05-11

专利汇可以提供人脸姿态估计/三维人脸重构方法、装置及电子设备专利检索,专利查询,专利分析的服务。并且本 申请 公开了人脸 姿态 估计方法和装置,三维人脸重构方法和装置,以及 电子 设备。其中, 人脸姿态估计 方法包括:获取待处理的二维人脸图像,构建所述二维人脸图像对应的三维人脸模型,根据所述三维人脸模型的人脸特征点和所述二维人脸图像的人脸特征点,确定所述二维人脸图像的人脸姿态。采用这种处理方式,使得基于与二维人脸图像对应的三维人脸模型进行姿态求解,而不再只基于三维平均脸模型进行姿态求解,使得在对人脸大 角 度、夸张表情进行姿态估计时,仍可获得较高精准度的姿态;因此,可以有效提升姿态估计的鲁棒性。,下面是人脸姿态估计/三维人脸重构方法、装置及电子设备专利的具体信息内容。

1.一种人脸姿态估计方法,其特征在于,包括:
获取待处理的二维人脸图像;
构建所述二维人脸图像对应的三维人脸模型;
根据所述三维人脸模型的人脸特征点和所述二维人脸图像的人脸特征点,确定所述二维人脸图像的人脸姿态。
2.根据权利要求1所述的方法,其特征在于,所述构建所述二维人脸图像对应的三维人脸模型,包括:
通过人脸形状拟合算法,构建所述二维人脸图像对应的三维人脸模型。
3.根据权利要求2所述的方法,其特征在于,所述人脸形状拟合算法包括:
根据所述二维人脸图像的人脸内部特征点和三维平均脸模型的人脸内部特征点,确定所述三维平均脸模型至所述二维人脸图像的投影映射矩阵;
根据所述投影映射矩阵和三维特征脸空间的特征向量,构建所述二维人脸图像对应的第一三维人脸模型;
根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维模型进行轮廓特征点拟合;
若所述二维人脸图像与人脸轮廓特征点拟合后的三维人脸模型之间的误差小于预设误差,则将所述人脸轮廓特征点拟合后的三维人脸模型作为所述三维人脸模型。
4.根据权利要求3所述的方法,其特征在于,还包括:
若所述误差大于或等于预设误差,则根据所述人脸轮廓特征点拟合后的三维人脸模型,构建所述二维人脸图像对应的三维人脸模型。
5.根据权利要求1所述的方法,其特征在于,所述构建所述二维人脸图像对应的表情三维人脸模型,包括:
通过人脸表情拟合算法,构建所述二维人脸图像对应的三维人脸模型。
6.根据权利要求1所述的方法,其特征在于,所述构建所述二维人脸图像对应的三维人脸模型,包括:
通过人脸形状及表情拟合算法,构建所述二维人脸图像对应的三维人脸模型。
7.根据权利要求6所述的方法,其特征在于,所述人脸形状及表情拟合算法包括:
根据所述二维人脸图像的人脸内部特征点和三维平均脸模型的人脸内部特征点,确定所述三维平均脸模型至所述二维人脸图像的投影映射矩阵;
根据所述投影映射矩阵和三维特征脸空间的特征向量,构建所述二维人脸图像对应的第一三维人脸模型;
根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维模型进行轮廓特征点拟合;
根据所述二维人脸图像的人脸内部特征点和所述三维平均脸模型对应的至少一个表情基,对轮廓拟合后的三维人脸模型进行表情拟合;
若所述二维人脸图像与表情拟合后的三维人脸模型之间的误差小于预设误差,则将表情拟合后的三维人脸模型作为所述三维人脸模型。
8.根据权利要求7所述的方法,其特征在于,还包括:
若所述误差大于或等于预设误差,则根据所述表情拟合后的三维人脸模型,构建所述二维人脸图像对应的三维人脸模型。
9.根据权利要求3或7所述的方法,其特征在于,所述根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维模型进行轮廓特征点拟合,包括:
从所述第一三维人脸模型中选取和所述二维人脸图像的人脸轮廓特征点对应的三维点,作为初始三维轮廓特征点;
通过所述投影映射矩阵,将所述初始三维轮廓特征点映射至所述二维人脸图像;
通过最近邻匹配算法,选取映射得到的二维轮廓特征点对应的三维点,作为所述第一三维人脸模型的人脸轮廓特征点。
10.根据权利要求3或7所述的方法,其特征在于,还包括:
根据三维人脸模型样本,确定所述三维平均脸模型和所述特征向量。
11.根据权利要求7所述的方法,其特征在于,还包括:
根据三维人脸模型样本,确定所述三维平均脸模型对应的至少一个表情基。
12.一种三维人脸重构方法,其特征在于,包括:
获取待处理的二维人脸图像;
根据所述二维人脸图像的人脸内部特征点和三维平均脸模型的人脸内部特征点,确定所述三维平均脸模型至所述二维人脸图像的投影映射矩阵;
根据所述投影映射矩阵和三维特征脸空间的特征向量,构建所述二维人脸图像对应的第一三维人脸模型;
根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维人脸模型进行轮廓特征点拟合;
若所述二维人脸图像与拟合后的三维人脸模型之间的误差小于预设误差,则将所述拟合后的三维人脸模型作为所述二维人脸图像的三维人脸模型。
13.根据权利要求12所述的方法,其特征在于,在所述根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维人脸模型进行轮廓特征点拟合之后,还包括:
根据所述二维人脸图像的人脸内部特征点和所述三维平均脸模型对应的至少一个表情基,对轮廓拟合后的三维人脸模型进行表情拟合。
14.根据权利要求12所述的方法,其特征在于,在所述根据所述投影映射矩阵和三维特征脸空间的特征向量,构建所述二维人脸图像对应的第一三维人脸模型之后,还包括:
根据所述三维平均脸模型对应的至少一个表情基,对所述第一三维人脸模型进行表情拟合;
所述根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维人脸模型进行轮廓特征点拟合,包括:
根据所述二维人脸图像的人脸轮廓特征点,对表情拟合后的第一三维人脸模型进行轮廓特征点拟合。
15.根据权利要求12所述的方法,其特征在于,所述根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维模型进行轮廓特征点拟合,包括:
从所述第一三维人脸模型中选取和所述二维人脸图像的人脸轮廓特征点对应的三维点,作为初始三维轮廓特征点;
通过所述投影映射矩阵,将所述初始三维轮廓特征点映射至所述二维人脸图像;
通过最近邻匹配算法,选取映射得到的二维轮廓特征点对应的三维点,作为所述第一三维人脸模型的人脸轮廓特征点。
16.根据权利要求12所述的方法,其特征在于,还包括:
若所述误差大于或等于预设误差,则根据所述拟合后的三维人脸模型,构建所述二维人脸图像对应的三维人脸模型。
17.根据权利要求12所述的方法,其特征在于,还包括:
根据三维人脸模型样本,确定所述三维平均脸模型和所述特征向量。
18.根据权利要求13或14所述的方法,其特征在于,还包括:
根据三维人脸模型样本,确定所述三维平均脸模型对应的至少一个表情基。
19.一种人脸姿态估计装置,其特征在于,包括:
二维人脸图像获取单元,用于获取待处理的二维人脸图像;
三维人脸模型构建单元,用于构建所述二维人脸图像对应的三维人脸模型;
人脸姿态确定单元,用于根据所述三维人脸模型的人脸特征点和所述二维人脸图像的人脸特征点,确定所述二维人脸图像的人脸姿态。
20.一种三维人脸重构装置,其特征在于,包括:
二维人脸图像获取单元,用于获取待处理的二维人脸图像;
投影矩阵确定子单元,用于根据所述二维人脸图像的人脸内部特征点和三维平均脸模型的人脸内部特征点,确定所述三维平均脸模型至所述二维人脸图像的投影映射矩阵;
第一模型构建子单元,用于根据所述投影映射矩阵和三维特征脸空间的特征向量,构建所述二维人脸图像对应的第一三维人脸模型;
轮廓拟合子单元,用于根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维人脸模型进行轮廓特征点拟合;
第二模型确定单元,用于若所述二维人脸图像与拟合后的三维人脸模型之间的误差小于预设误差,则将所述拟合后的三维人脸模型作为所述二维人脸图像的三维人脸模型。
21.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储实现人脸姿态估计方法的程序,该设备通电并通过所述处理器运行该人脸姿态估计方法的程序后,执行下述步骤:获取待处理的二维人脸图像;构建所述二维人脸图像对应的三维人脸模型;根据所述三维人脸模型的人脸特征点和所述二维人脸图像的人脸特征点,确定所述二维人脸图像的人脸姿态。
22.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储实现三维人脸重构方法的程序,该设备通电并通过所述处理器运行该三维人脸重构方法的程序后,执行下述步骤:获取待处理的二维人脸图像;根据所述二维人脸图像的人脸内部特征点和三维平均脸模型的人脸内部特征点,确定所述三维平均脸模型至所述二维人脸图像的投影映射矩阵;根据所述投影映射矩阵和三维特征脸空间的特征向量,构建所述二维人脸图像对应的第一三维人脸模型;根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维人脸模型进行轮廓特征点拟合;若所述二维人脸图像与拟合后的三维人脸模型之间的误差小于预设误差,则将所述拟合后的三维人脸模型作为所述二维人脸图像的三维人脸模型。

说明书全文

人脸姿态估计/三维人脸重构方法、装置及电子设备

技术领域

[0001] 本申请涉及图像处理技术领域,具体涉及人脸姿态估计方法和装置,三维人脸重构方法和装置,以及电子设备。

背景技术

[0002] 人脸姿态估计是计算机领域一个非常热的问题,是指根据人脸图像确定脸部朝向的度信息,即:根据人脸图像的特征计算出三个偏转角度:俯仰角(pitch)、偏航角(yaw)和旋转角(roll)。
[0003] 目前,人脸姿态估计有多种方法,可以分为基于模型的方法,基于表观的方法,以及,基于分类的方法。其中,由于基于模型的方法得到的人脸姿态是连续值,姿态估计精度更高,因此基于模型的方法成为一种常用方法。一种典型的基于模型的人脸姿态估计方法的处理过程如下所述。首先,在二维人脸图像上定位关键点(特征点)坐标,获得二维关键点,如五官、轮廓等;然后,构建一个中性且无表情的平均脸的三维模型,并在该三维模型中提取与二维关键点具有相同语义的三维关键点;接下来,再根据二维关键点的坐标数值、三维关键点的坐标数值和摄像机焦距,获得三维平均脸模型至二维人脸图像的旋转矩阵;最后,根据旋转矩阵确定二维人脸图像的人脸姿态。
[0004] 然而,在实现本发明过程中,发明人发现现有技术至少存在如下问题:由于三维平均脸模型和二维人脸图像通常存在差异,因此,在对人脸大角度、夸张表情进行姿态估计时,姿态估计的精准度将较大幅度降低。综上所述,现有技术存在基于三维平均脸模型进行姿态估计的鲁棒性较差的问题。

发明内容

[0005] 本申请提供人脸姿态估计方法,以解决现有技术存在基于三维平均脸模型进行姿态估计的鲁棒性较差的问题。本申请另外提供三维人脸重构方法和系统,以及电子设备。
[0006] 本申请提供一种人脸姿态估计方法,包括:
[0007] 获取待处理的二维人脸图像;
[0008] 构建所述二维人脸图像对应的三维人脸模型;
[0009] 根据所述三维人脸模型的人脸特征点和所述二维人脸图像的人脸特征点,确定所述二维人脸图像的人脸姿态。
[0010] 可选的,所述构建所述二维人脸图像对应的三维人脸模型,包括:
[0011] 通过人脸形状拟合算法,构建所述二维人脸图像对应的三维人脸模型。
[0012] 可选的,所述人脸形状拟合算法包括:
[0013] 根据所述二维人脸图像的人脸内部特征点和三维平均脸模型的人脸内部特征点,确定所述三维平均脸模型至所述二维人脸图像的投影映射矩阵;
[0014] 根据所述投影映射矩阵和三维特征脸空间的特征向量,构建所述二维人脸图像对应的第一三维人脸模型;
[0015] 根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维模型进行轮廓特征点拟合;
[0016] 若所述二维人脸图像与人脸轮廓特征点拟合后的三维人脸模型之间的误差小于预设误差,则将所述人脸轮廓特征点拟合后的三维人脸模型作为所述三维人脸模型。
[0017] 可选的,还包括:
[0018] 若所述误差大于或等于预设误差,则根据所述人脸轮廓特征点拟合后的三维人脸模型,构建所述二维人脸图像对应的三维人脸模型。
[0019] 可选的,所述构建所述二维人脸图像对应的表情三维人脸模型,包括:
[0020] 通过人脸表情拟合算法,构建所述二维人脸图像对应的三维人脸模型。
[0021] 可选的,所述构建所述二维人脸图像对应的三维人脸模型,包括:
[0022] 通过人脸形状及表情拟合算法,构建所述二维人脸图像对应的三维人脸模型。
[0023] 可选的,所述人脸形状及表情拟合算法包括:
[0024] 根据所述二维人脸图像的人脸内部特征点和三维平均脸模型的人脸内部特征点,确定所述三维平均脸模型至所述二维人脸图像的投影映射矩阵;
[0025] 根据所述投影映射矩阵和三维特征脸空间的特征向量,构建所述二维人脸图像对应的第一三维人脸模型;
[0026] 根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维模型进行轮廓特征点拟合;
[0027] 根据所述二维人脸图像的人脸内部特征点和所述三维平均脸模型对应的至少一个表情基,对轮廓拟合后的三维人脸模型进行表情拟合;
[0028] 若所述二维人脸图像与表情拟合后的三维人脸模型之间的误差小于预设误差,则将表情拟合后的三维人脸模型作为所述三维人脸模型。
[0029] 可选的,还包括:
[0030] 若所述误差大于或等于预设误差,则根据所述表情拟合后的三维人脸模型,构建所述二维人脸图像对应的三维人脸模型。
[0031] 可选的,所述根据所述投影映射矩阵和三维特征脸空间的特征向量,构建所述二维人脸图像对应的第一三维人脸模型,包括:
[0032] 通过最小化能量函数确定三维人脸形状参数;其中,所述能量函数采用如下公式:
[0033]
[0034] 其中,E表示能量函数,N表示人脸内部特征点数量,ypro_2D,i表示通过所述投影映射矩阵将所述三维平均脸模型的人脸内部特征点投影到二维空间得到的二维内部特征点的坐标值,yi表示所述二维人脸图像的人脸内部特征点的坐标值, 表示所述二维人脸图像的人脸内部特征点的协方差矩阵,α表示所述三维人脸形状参数。
[0035] 可选的,所述投影到二维空间得到的二维内部特征点的坐标值,采用如下公式获取:
[0036]
[0037] 其中,U表示由与所述三维平均脸模型的人脸内部特征点对应的特征向量构成的矩阵,P表示所述投影映射矩阵,V表示3d平均脸上对应内部特征点语义相关的顶点坐标数据。
[0038] 可选的,所述根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维模型进行轮廓特征点拟合,包括:
[0039] 从所述第一三维人脸模型中选取和所述二维人脸图像的人脸轮廓特征点对应的三维点,作为初始三维轮廓特征点;
[0040] 通过所述投影映射矩阵,将所述初始三维轮廓特征点映射至所述二维人脸图像;
[0041] 通过最近邻匹配算法,选取映射得到的二维轮廓特征点对应的三维点,作为所述第一三维人脸模型的人脸轮廓特征点。
[0042] 可选的,还包括:
[0043] 根据三维人脸模型样本,确定所述三维平均脸模型和所述特征向量。
[0044] 可选的,还包括:
[0045] 根据三维人脸模型样本,确定所述三维平均脸模型对应的至少一个表情基。
[0046] 本申请还提供一种三维人脸重构方法,包括:
[0047] 获取待处理的二维人脸图像;
[0048] 根据所述二维人脸图像的人脸内部特征点和三维平均脸模型的人脸内部特征点,确定所述三维平均脸模型至所述二维人脸图像的投影映射矩阵;
[0049] 根据所述投影映射矩阵和三维特征脸空间的特征向量,构建所述二维人脸图像对应的第一三维人脸模型;
[0050] 根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维人脸模型进行轮廓特征点拟合;
[0051] 若所述二维人脸图像与拟合后的三维人脸模型之间的误差小于预设误差,则将所述拟合后的三维人脸模型作为所述二维人脸图像的三维人脸模型。
[0052] 可选的,在所述根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维人脸模型进行轮廓特征点拟合之后,还包括:
[0053] 根据所述二维人脸图像的人脸内部特征点和所述三维平均脸模型对应的至少一个表情基,对轮廓拟合后的三维人脸模型进行表情拟合。
[0054] 可选的,在所述根据所述投影映射矩阵和三维特征脸空间的特征向量,构建所述二维人脸图像对应的第一三维人脸模型之后,还包括:
[0055] 根据所述三维平均脸模型对应的至少一个表情基,对所述第一三维人脸模型进行表情拟合;
[0056] 所述根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维人脸模型进行轮廓特征点拟合,包括:
[0057] 根据所述二维人脸图像的人脸轮廓特征点,对表情拟合后的第一三维人脸模型进行轮廓特征点拟合。
[0058] 可选的,所述根据所述投影映射矩阵和三维特征脸空间的特征向量,构建所述二维人脸图像对应的第一三维人脸模型,包括:
[0059] 通过最小化能量函数确定三维人脸形状参数;其中,所述能量函数采用如下公式:
[0060]
[0061] 其中,E表示能量函数,N表示人脸内部特征点数量,ypro_2D,i表示通过所述投影映射矩阵将所述三维平均脸模型的人脸内部特征点投影到二维空间得到的二维内部特征点的坐标值,yi表示所述二维人脸图像的人脸内部特征点的坐标值, 表示所述二维人脸图像的人脸内部特征点的协方差矩阵,α表示所述三维人脸形状参数。
[0062] 可选的,所述投影到二维空间得到的二维内部特征点的坐标值,采用如下公式获取:
[0063]
[0064] 其中,U表示由与所述三维平均脸模型的人脸内部特征点对应的特征向量构成的矩阵,P表示所述投影映射矩阵,V表示3d平均脸上对应内部特征点语义相关的顶点坐标数据。
[0065] 可选的,所述根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维模型进行轮廓特征点拟合,包括:
[0066] 从所述第一三维人脸模型中选取和所述二维人脸图像的人脸轮廓特征点对应的三维点,作为初始三维轮廓特征点;
[0067] 通过所述投影映射矩阵,将所述初始三维轮廓特征点映射至所述二维人脸图像;
[0068] 通过最近邻匹配算法,选取映射得到的二维轮廓特征点对应的三维点,作为所述第一三维人脸模型的人脸轮廓特征点。
[0069] 可选的,还包括:
[0070] 若所述误差大于或等于预设误差,则根据所述拟合后的三维人脸模型,构建所述二维人脸图像对应的三维人脸模型。
[0071] 可选的,还包括:
[0072] 根据三维人脸模型样本,确定所述三维平均脸模型和所述特征向量。
[0073] 可选的,还包括:
[0074] 根据三维人脸模型样本,确定所述三维平均脸模型对应的至少一个表情基。
[0075] 本申请还提供一种人脸姿态估计装置,包括:
[0076] 二维人脸图像获取单元,用于获取待处理的二维人脸图像;
[0077] 三维人脸模型构建单元,用于构建所述二维人脸图像对应的三维人脸模型;
[0078] 人脸姿态确定单元,用于根据所述三维人脸模型的人脸特征点和所述二维人脸图像的人脸特征点,确定所述二维人脸图像的人脸姿态。
[0079] 可选的,所述三维人脸模型构建单元,具体用于通过人脸形状拟合算法,构建所述二维人脸图像对应的三维人脸模型。
[0080] 可选的,所述三维人脸模型构建单元包括:
[0081] 投影矩阵确定子单元,用于根据所述二维人脸图像的人脸内部特征点和三维平均脸模型的人脸内部特征点,确定所述三维平均脸模型至所述二维人脸图像的投影映射矩阵;
[0082] 第一模型构建子单元,用于根据所述投影映射矩阵和三维特征脸空间的特征向量,构建所述二维人脸图像对应的第一三维人脸模型;
[0083] 轮廓拟合子单元,用于根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维模型进行轮廓特征点拟合;
[0084] 第二模型确定子单元,用于若所述二维人脸图像与人脸轮廓特征点拟合后的三维人脸模型之间的误差小于预设误差,则将所述人脸轮廓特征点拟合后的三维人脸模型作为所述三维人脸模型。
[0085] 可选的,所述三维人脸模型构建单元还包括:
[0086] 第三模型构建子单元,用于若所述误差大于或等于预设误差,则根据所述人脸轮廓特征点拟合后的三维人脸模型,构建所述二维人脸图像对应的三维人脸模型。
[0087] 可选的,所述三维人脸模型构建单元,具体用于通过人脸表情拟合算法,构建所述二维人脸图像对应的三维人脸模型。
[0088] 可选的,所述三维人脸模型构建单元,具体用于通过人脸形状及表情拟合算法,构建所述二维人脸图像对应的三维人脸模型。
[0089] 可选的,所述述三维人脸模型构建单元包括:
[0090] 投影矩阵确定子单元,用于根据所述二维人脸图像的人脸内部特征点和三维平均脸模型的人脸内部特征点,确定所述三维平均脸模型至所述二维人脸图像的投影映射矩阵;
[0091] 第一模型构建子单元,用于根据所述投影映射矩阵和三维特征脸空间的特征向量,构建所述二维人脸图像对应的第一三维人脸模型;
[0092] 轮廓拟合子单元,用于根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维模型进行轮廓特征点拟合;
[0093] 表情拟合子单元,用于根据所述二维人脸图像的人脸内部特征点和所述三维平均脸模型对应的至少一个表情基,对轮廓拟合后的三维人脸模型进行表情拟合;
[0094] 第二模型确定子单元,用于若所述二维人脸图像与表情拟合后的三维人脸模型之间的误差小于预设误差,则将表情拟合后的三维人脸模型作为所述三维人脸模型。
[0095] 可选的,还包括:
[0096] 第三模型构建子单元,用于若所述误差大于或等于预设误差,则根据所述表情拟合后的三维人脸模型,构建所述二维人脸图像对应的三维人脸模型。
[0097] 可选的,所述轮廓拟合子单元包括:
[0098] 第一轮廓特征点选取子单元,用于从所述第一三维人脸模型中选取和所述二维人脸图像的人脸轮廓特征点对应的三维点,作为初始三维轮廓特征点;
[0099] 轮廓特征点映射子单元,用于通过所述投影映射矩阵,将所述初始三维轮廓特征点映射至所述二维人脸图像;
[0100] 第二轮廓特征点选取子单元,用于通过最近邻匹配算法,选取映射得到的二维轮廓特征点对应的三维点,作为所述第一三维人脸模型的人脸轮廓特征点。
[0101] 可选的,还包括:
[0102] 第一先验数据确定单元,用于根据三维人脸模型样本,确定所述三维平均脸模型和所述特征向量。
[0103] 可选的,还包括:
[0104] 第二先验数据确定单元,用于根据三维人脸模型样本,确定所述三维平均脸模型对应的至少一个表情基。
[0105] 本申请还提供一种三维人脸重构装置,包括:
[0106] 二维人脸图像获取单元,用于获取待处理的二维人脸图像;
[0107] 投影矩阵确定子单元,用于根据所述二维人脸图像的人脸内部特征点和三维平均脸模型的人脸内部特征点,确定所述三维平均脸模型至所述二维人脸图像的投影映射矩阵;
[0108] 第一模型构建子单元,用于根据所述投影映射矩阵和三维特征脸空间的特征向量,构建所述二维人脸图像对应的第一三维人脸模型;
[0109] 轮廓拟合子单元,用于根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维人脸模型进行轮廓特征点拟合;
[0110] 第二模型确定单元,用于若所述二维人脸图像与拟合后的三维人脸模型之间的误差小于预设误差,则将所述拟合后的三维人脸模型作为所述二维人脸图像的三维人脸模型。
[0111] 可选的,还包括:
[0112] 第一表情拟合单元,用于根据所述二维人脸图像的人脸内部特征点和所述三维平均脸模型对应的至少一个表情基,对轮廓拟合后的三维人脸模型进行表情拟合。
[0113] 可选的,还包括:
[0114] 第二表情拟合单元,用于根据所述三维平均脸模型对应的至少一个表情基,对所述第一三维人脸模型进行表情拟合;
[0115] 所述轮廓拟合子单元,具体用于根据所述二维人脸图像的人脸轮廓特征点,对表情拟合后的第一三维人脸模型进行轮廓特征点拟合。
[0116] 可选的,所述轮廓拟合子单元包括:
[0117] 第一轮廓特征点选取子单元,用于从所述第一三维人脸模型中选取和所述二维人脸图像的人脸轮廓特征点对应的三维点,作为初始三维轮廓特征点;
[0118] 轮廓特征点映射子单元,用于通过所述投影映射矩阵,将所述初始三维轮廓特征点映射至所述二维人脸图像;
[0119] 第二轮廓特征点选取子单元,用于通过最近邻匹配算法,选取映射得到的二维轮廓特征点对应的三维点,作为所述第一三维人脸模型的人脸轮廓特征点。
[0120] 可选的,还包括:
[0121] 第三模型构建子单元,用于若所述误差大于或等于预设误差,则根据所述拟合后的三维人脸模型,构建所述二维人脸图像对应的三维人脸模型。
[0122] 可选的,还包括:
[0123] 第一先验数据确定单元,用于根据三维人脸模型样本,确定所述三维平均脸模型和所述特征向量。
[0124] 可选的,还包括:
[0125] 第二先验数据确定单元,用于根据三维人脸模型样本,确定所述三维平均脸模型对应的至少一个表情基。
[0126] 本申请还提供一种电子设备,包括:
[0127] 处理器;以及
[0128] 存储器,用于存储实现人脸姿态估计方法的程序,该设备通电并通过所述处理器运行该人脸姿态估计方法的程序后,执行下述步骤:获取待处理的二维人脸图像;构建所述二维人脸图像对应的三维人脸模型;根据所述三维人脸模型的人脸特征点和所述二维人脸图像的人脸特征点,确定所述二维人脸图像的人脸姿态。
[0129] 本申请还提供一种电子设备,包括:
[0130] 处理器;以及
[0131] 存储器,用于存储实现三维人脸重构方法的程序,该设备通电并通过所述处理器运行该三维人脸重构方法的程序后,执行下述步骤:获取待处理的二维人脸图像;根据所述二维人脸图像的人脸内部特征点和三维平均脸模型的人脸内部特征点,确定所述三维平均脸模型至所述二维人脸图像的投影映射矩阵;根据所述投影映射矩阵和三维特征脸空间的特征向量,构建所述二维人脸图像对应的第一三维人脸模型;根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维人脸模型进行轮廓特征点拟合;若所述二维人脸图像与拟合后的三维人脸模型之间的误差小于预设误差,则将所述拟合后的三维人脸模型作为所述二维人脸图像的三维人脸模型。
[0132] 本申请还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各种方法。
[0133] 本申请还提供一种包括指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各种方法。
[0134] 与现有技术相比,本申请具有以下优点:
[0135] 本申请实施例提供的人脸姿态估计方法,通过获取待处理的二维人脸图像,构建所述二维人脸图像对应的三维人脸模型,根据所述三维人脸模型的人脸特征点和所述二维人脸图像的人脸特征点,确定所述二维人脸图像的人脸姿态;这种处理方式,使得基于与二维人脸图像对应的三维人脸模型进行姿态求解,而不再只基于三维平均脸模型进行姿态求解,使得在对人脸大角度、夸张表情进行姿态估计时,仍可获得较高精准度的姿态;因此,可以有效提升姿态估计的鲁棒性。
[0136] 本申请实施例提供的三维人脸重构方法,通过获取待处理的二维人脸图像;根据所述二维人脸图像的人脸内部特征点和三维平均脸模型的人脸内部特征点,确定所述三维平均脸模型至所述二维人脸图像的投影映射矩阵;根据所述投影映射矩阵和三维特征脸空间的特征向量,构建所述二维人脸图像对应的第一三维人脸模型;根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维人脸模型进行轮廓特征点拟合;若所述二维人脸图像与拟合后的三维人脸模型之间的误差小于预设误差,则将所述拟合后的三维人脸模型作为所述二维人脸图像的三维人脸模型;这种处理方式,使得基于三维人脸先验数据驱动三维人脸模型拟合,考虑了人脸内部特征点和外轮廓特征点的相结合,进而拟合迭代,实现最小化三维人脸模型与二位人脸图像之间的误差,最大程度还原真实人脸,且重构出的三维人脸模型符合人脸生物学特征;因此,可以有效提升三维人脸模型的重构准确度。附图说明
[0137] 图1是本申请提供的一种人脸姿态估计方法的实施例的流程图
[0138] 图2是本申请提供的一种人脸姿态估计方法的实施例的二维人脸图像示意图;
[0139] 图3是本申请提供的一种人脸姿态估计方法的实施例的人脸形状拟合流程图;
[0140] 图4是本申请提供的一种人脸姿态估计方法的实施例的三维平均脸模型示意图;
[0141] 图5是本申请提供的一种人脸姿态估计方法的实施例的人脸形状拟合具体流程图;
[0142] 图6是本申请提供的一种人脸姿态估计方法的实施例的人脸形状及表情拟合流程图;
[0143] 图7是本申请提供的一种人脸姿态估计方法的实施例的三维平均脸模型的多种表情示意图;
[0144] 图8是本申请提供的一种人脸姿态估计方法的实施例的人脸形状及表情拟合的具体流程图;
[0145] 图9是本申请提供的一种人脸姿态估计装置的实施例的示意图;
[0146] 图10是本申请提供的一种人脸姿态估计装置的实施例的具体示意图;
[0147] 图11是本申请提供的一种电子设备的实施例的示意图;
[0148] 图12是本申请提供的一种三维人脸重构方法的实施例的流程图;
[0149] 图13是本申请提供的一种三维人脸重构方法的实施例的具体流程图;
[0150] 图14是本申请提供的一种三维人脸重构方法的实施例的又一具体流程图;
[0151] 图15是本申请提供的一种三维人脸重构装置的实施例的示意图;
[0152] 图16是本申请提供的一种电子设备的实施例的示意图。

具体实施方式

[0153] 在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制。
[0154] 在本申请中,提供了人脸姿态估计方法和装置,三维人脸重构方法和装置,以及电子设备。人脸姿态估计,对于人脸重构以及虚拟试戴等三维空间具有非常重要的作用,例如,可应用在三维增强现实贴纸(AR贴纸)、三维换脸、三维AR眼镜等领域。在下面的实施例中逐一进行详细说明。
[0155] 第一实施例
[0156] 请参考图1,其为本申请提供的一种人脸姿态估计方法实施例的流程图,该方法的执行主体为人脸姿态估计装置,该装置通常部署于服务器,但并不局限于服务器,也可以是能够实现所述人脸姿态估计方法的任何设备。本申请提供的一种人脸姿态估计方法包括:
[0157] 步骤S101:获取待处理的二维人脸图像。
[0158] 所述二维人脸图像,可以是通过照相机、摄像头等图像采集设备拍摄得到的二维人脸图像。所述二维人脸图像包括多个像素点,例如,如图2所示的二维人脸图像为256*256像素。
[0159] 步骤S103:构建所述二维人脸图像对应的三维人脸模型。
[0160] 本申请提供的人脸姿态估计方法,通过引入三维人脸重构技术,重构出与二维人脸图像对应的三维人脸模型,并在该三维人脸模型中提取和二维人脸图像具有相同语义关系的特征点,进而求解二维人脸姿态。
[0161] 在一个示例中,通过人脸形状拟合算法,构建所述二维人脸图像对应的三维人脸模型;采用这种处理方式,使得构建出与所述二维人脸图像对应的人脸角度相似的三维人脸模型,进而使得在对人脸大角度进行姿态估计时,仍可获得较高精准度的姿态;因此,可以有效提升姿态估计的鲁棒性。
[0162] 在另一个示例中,通过表情拟合算法,构建所述二维人脸图像对应的三维人脸模型;采用这种处理方式,使得构建出与所述二维人脸图像对应的人脸表情相似的三维人脸模型,进而使得在对人脸夸张表情进行姿态估计时,仍可获得较高精准度的姿态;因此,可以有效提升姿态估计的鲁棒性。
[0163] 在又一个示例中,通过人脸及表情拟合算法,构建所述二维人脸图像对应的三维人脸模型;采用这种处理方式,使得构建出与所述二维人脸图像对应的人脸表情相似、且人脸角度相似的三维人脸模型,进而使得在对人脸大角度且夸张表情进行姿态估计时,仍可获得较高精准度的姿态;因此,可以有效提升姿态估计的鲁棒性。
[0164] 步骤S105:根据所述三维人脸模型的人脸特征点和所述二维人脸图像的人脸特征点,确定所述二维人脸图像的人脸姿态。
[0165] 通过上述步骤重构出与所述二维人脸图像对应的三维人脸模型之后,就可以基于重构出的三维人脸模型对所述二维人脸图像进行人脸姿态估计,本实施例根据所述三维人脸模型的人脸特征点和所述二维人脸图像的人脸特征点,即可确定所述二维人脸图像的人脸姿态。
[0166] 所述人脸特征点,可通过人脸特征点定位算法分析获得。如图1所示的66个人脸特征点,其中包括49个所述内部特征点和17个所述轮廓特征点。
[0167] 所述人脸特征点定位算法,包括但不限于以下几类:1)基于优化的方法,如ASM(Active Shape Model,活动形状模型)、AAM(Active Appreance Model,活动外观模型)和CLM等方法;2)基于回归的方法,如级联的姿势回归(cascaded pose regression)、SDM、ESR等方法;3)基于深度学习的方法,如基于卷积神经网络(CNN)、深度自编码器(DAE)和受限玻尔兹曼机(RBM)的人脸特征点定位方法。
[0168] 在一个示例中,步骤S105的处理过程如下所述。首先,通过人脸特征点定位算法,在二维人脸图像上定位人脸特征点坐标,获得二维关键点,以及,在重构出的三维人脸模型中提取与二维关键点具有相同语义的三维关键点;然后,根据二维关键点的坐标数值、三维关键点的坐标数值和摄像机焦距,获得重构出的三维人脸模型至二维人脸图像的旋转矩阵;最后,根据旋转矩阵确定二维人脸图像的人脸姿态。
[0169] 请参考图3,其为本申请实施例提供的一种人脸姿态估计方法实施例的人脸拟合流程图。由于本实施例采用的人脸形状拟合算法基于三维人脸先验数据实现,因此,下面首先对三维人脸先验数据及其生成过程进行说明。
[0170] 所述三维人脸先验数据,可包括三维平均脸模型、三维特征脸空间的特征向量及每一个三维人脸模型样本的特征值。
[0171] 所述三维平均脸模型,包括根据多个三维人脸模型样本计算得到的三维平均脸模型。每个三维人脸模型样本可以转换成一个多维的向量,在获取到三维人脸模型样本的向量集合后,将向量集合内的向量遍历一遍进行累加,然后取平均值得到三维平均脸模型。图4示出了本实施例的三维平均脸模型,该模型是一个中性表情的三维平均脸模型。
[0172] 在一个示例中,所述三维人脸模型样本采用如下步骤生成:1)获取多个三维人脸数据集,例如,Surrey Face Model(SFM)和Basel Face model(BFM)等等,其中,Surrey Face Model人脸数据集包括169个中性表情的三维人脸模型,每个模型包含3448个顶点,Basel Face model人脸数据集包括100个欧洲男性和100个欧洲女性的三维人脸模型,每个模型包含53215个顶点;2)将拥有不同顶点数量、不同三维网络拓扑结构的模型数据,统一为拥有相同顶点数量、相同三维网络拓扑结构的模型数据,作为三维人脸模型样本。
[0173] 在本实施例中,根据SFM和BFM构造三维人脸模型样本。由于SFM和BFM都没有提供原始的三维人脸模型数据,只提供了通过主成分分析法(Principal Component Analysis,PCA)进行特征压缩后的文件M,V,E,其中M表示平均脸数据,V表示三维特征脸空间的特征向量,E表示特征值,再参数化人脸,因此,本实施例首先通过随机采样取得特征值的正负标准差,通过公式S3D=M+V*Enew重建出三维人脸结构数据。本实施例从SFM构建出200个中性表情的三维人脸结构数据,从BFM特征数据中构造出200个三维人脸结构数据。
[0174] 由于SFM和BFM各自对应的三维模型数据的空间尺度不一样,因此还需要将两个特征数据的维度统一,本实施例将两个特征数据的维度统一调整到SFM数据集的三维平均脸尺度上,具体做法可以是通过求解两个模型在三个维度(x,y,z)的变换矩阵来进行转换。具体步骤如下:
[0175] 1)在两个三维平均脸模型中,通过工具(包括人脸特征点定位算法)取得和二维人脸图像的关键定位语义相关的66个三维关键的索引值;
[0176] 2)通过迭代最近点算法(Iterative Closest Point,ICP),根据66个三维点对,分别设两个数据集为P,Q, 通过该两个三维点集求解二者之间的空间转换参数R(3*3旋转矩阵),T(tx,ty,tz)。假设两个三维人脸模型在三维空间中的三维点,两组点之间的欧式距离可以表示为
两个模型之间的坐标归一化问题的目
的就是为了找到P和Q之间的变换矩阵R和T,而对于 (i=0,1,2…66),利用最小
二乘法求解得到最优转换参数R和T,使: 其中N表示66个关键点信息。
[0177] 3)通过上一步得到了两组三维模型在三维空间尺度中的最优转换矩阵R和T,下面就可以改参数,本实施例将基于BFM构造出来的200个三维人脸模型尺度转换了SFM模型的尺度。
[0178] 4)通过步骤3)中得到同一空间坐标尺度的三维模型,但是由于两个三维模型的顶点数量不一样,所以需要从BFM的53215个顶点选择出和SFM语义相关的3448个顶点索引值,具体做法可以是通过比较SFM模型上每个顶点到BFM上顶点的距离,把距离最小的那个顶点的索引记录下来,这样就得到3348个顶点索引值,通过该索引值去BFM的200个三维人脸模型上面的分割模型,这样就得到和SFM三维数据拥有一样的顶点数量以及一样的网络拓扑结构的三维人脸模型,至此构造出来400个中性表情的三维人脸模型样本。
[0179] 在获取到三维人脸模型样本,就可以通过降维算法计算得到所述三维平均脸模型、特征向量和特征值。在本实施例中,通过PCA算法对样本数据进行降维处理,PCA算法指出任何特定的人脸可以由一个低维的特征子空间表示,并可以用这个特征子空间近似地重建。PCA算法选取的特征最大化了三维人脸模型样本间的差异,但也保留了一些由于光照和面部表情产生的不必要的变化。而同一个人由于光照产生的变化可能会大于不同人之间的变化。由于PCA算法实现了降维的过程,因此使得数据的处理更容易,速度更快。在本实施例中,具体做法可包括如下步骤:
[0180] 1)根据400个中性表情的三维人脸模型样本,计算得到所有模型的平均脸模型其中 为所述三维平均脸模型,Si为所述三维平均脸模型样本,N=400。
[0181] 2)将所有模型减去所述三维平均脸模型,得到距离数据: 采用主成分分析法对400个中性表情的三维人脸模型样本进行数据压缩,得到人脸形状的协方差矩阵Cs,以及对应的协方差矩阵特征向量si(对应的特征值由大道小排序)构成的正交基底表示:
[0182] 其中,α=[α1,α2,.......αm-1]T,参数α的概率σi2为人脸形状协方差矩阵Cs的特征值。
[0183] 至此,确定出针对400个三维人脸模型样本构成的所述三维平均脸模型 人脸形状特征向量集合{s1,s2,.....s3n}∈□3n和对应的特征值集合{σs,1,σs,2,.....σs,3n},其中n表情三维人脸模型的顶点数量。
[0184] 在获取到所述三维人脸先验数据后,就可以采用如图3所示的人脸形状拟合算法,构建所述二维人脸图像对应的三维人脸模型。
[0185] 由图3可见,在本实施例中,所述人脸形状拟合算法包括如下步骤:
[0186] 步骤S301:根据所述二维人脸图像的人脸内部特征点和三维平均脸模型的人脸内部特征点,确定所述三维平均脸模型至所述二维人脸图像的投影映射矩阵。
[0187] 在获取到二维人脸图像和三维平均脸模型后,以及,通过人脸特征点点位算法确定所述二维人脸图像的人脸内部特征点(以下简称二维内部特征点)和三维平均脸模型的人脸内部特征点(以下简称三维内部特征点)之后,就可以根据二维内部特征点和三维内部特征点,确定所述三维平均脸模型至所述二维人脸图像的投影映射矩阵。
[0188] 所述人脸内部特征点,是指不包括人脸轮廓特征点的其它人脸特征点,例如,眼睛、鼻尖、嘴角点以及眉毛等等一些重要的特征点。
[0189] 所述二维内部特征点和所述三维内部特征点具有相同语义,即:所述二维内部特征点包括眼睛、鼻尖、嘴角点以及眉毛等特征点,所述三维内部特征点同样包括眼睛、鼻尖、嘴角点以及眉毛等位置的特征点。
[0190] 所述投影映射矩阵,可以用数学表达式P=K[R|T]表示,其中,P为投影映射矩阵,K为摄像头内参矩阵,R为旋转矩阵,T为平移矩阵,通过所述投影映射矩阵可将三维人脸模型投影到二维,获得二维人脸图像,投影过程包括旋转、缩放、变形等变换。其中,[R|T]及K的表达式如下:
[0191]
[0192] 所述投影映射矩阵,可采用如下处理方式确定:
[0193] 设所述二维人脸图像的特征点坐标为pi=(xi,yi),所述三维平均脸模型对应的特征点为Pi=(Xi,Yi,Zi),所述二维人脸图像的特征点与所述三维平均脸模型的特征点之间的对应关系为(pi,Pi)=(xi,yi,Xi,Yi,Zi)这样就可以求解二者之间的投影映射矩阵。设三个旋转角度为roll,yaw,pitch,那么R=(r1,r2,r3)=R(roll)*R(yaw)*R(pitch),[0194]
[0195] 根据摄像头成像原理可知:
[0196] xi=f*(r*Pi+T1)/(r3*Pi+T3),yi=f*(r2*Pi+T2)/(e3*Pi+T3)
[0197] 其中,T=(T1,T2,T3,T4);
[0198] 然后,由透视模型可以得到如下公式:K*[R(roll,yaw,pitxch)*Pi+T],那么这时候的姿态估计就可以表征为K是已知的摄像头参数,Pi是所述三维平均脸模型的特征点坐标,求得的二维图像坐标为pi,由于这样求得的坐标与人脸关键点坐标是有误差的,因此,该问题就转化为了求最优解问题:
[0199] (roll,yaw,pitch)=argmin{pi-Aq*[R(roll,yaw,pitch)*Pi+T]}(i=0,1,2..n)[0200] 下面就是要对该公式用最小化二乘解其最优化解。在本实施例中,设置多次迭代后基本就可以达到一个比较稳定的数值,这样就求出旋转矩阵R和偏移矩阵T,通过变换就可得到三维坐标点到二维坐标点的转化关系P,即:投影映射矩阵。
[0201] 步骤S303:根据所述投影映射矩阵和三维特征脸空间的特征向量,构建所述二维人脸图像对应的第一三维人脸模型。
[0202] 在上一步中已经得到了三维内部特征点到二维内部特征点的投影映射矩阵P,本步骤就需要通过投影映射矩阵和所述特征向量,首先在不考虑人脸外轮廓的情况下去拟合一个粗精度的三维人脸形状,即:第一三维人脸模型。
[0203] 在一个示例中,步骤S303可采用如下方式实现:在得到了所述投影映射矩阵后,就可以利用所述特征向量拟合人脸形状参数α,具体可以通过最小化能量函数来得到,所述能量函数如下所示:
[0204]
[0205] 其中,N表示人脸内部特征点数量(如49个),ypro_2D,i表示通过所述投影映射矩阵将三维内部特征点投影到二维空间得到的二维内部特征点的坐标值,yi表示通过人脸特征点定位算法定位出来的所述二维内部特征点的坐标值, 表示通过人脸特征点定位算法定位出来的所述二维内部特征点的协方差矩阵,α就是需要求解的形状参数,又称为形状系数。
[0206] 具体实施时,可采用如下方式求解形状参数α:在训练出来的人脸形状数据特征向量(所述三维特征脸空间的特征向量){s1,s2,.....s3n}(其中,n为三维人脸模型的顶点数量,si为特征向量)中,取得和对应49个所述三维内部特征点具有相同语义信息的索引值(该索引值主要包括49*3行的向量基,每三行代表一个顶点坐标,而且对应于0到48的3D顶点的序号)的特征向量,将取得的特征向量组成新的矩阵U,然后通过投影映射矩阵P对矩阵U做映射 其中α为需要求解的系数,这样就将所述三维内部特征点转化到对应的二维人脸图像对应的坐标点,并和二维人脸图像中原来的所述二维内部特征点求误差,并最小化E。在求得α后,就得到了所述第一三维人脸模型的数学表达式如下:
[0207] 其中si人脸形状特征向量,为训练出来的平均脸数据
[0208] 步骤S305:根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维人脸模型进行轮廓特征点拟合。
[0209] 在经过上一步得到粗的和所述二维人脸图像对应的第一三维人脸模型,本步骤将向所述第一三维人脸模型加入人脸轮廓信息,以生成更加精准的三维人脸模型。
[0210] 在一个示例中,步骤S305可包括如下子步骤:1)从所述第一三维人脸模型中选取和所述二维人脸图像的人脸轮廓特征点对应的(如最相近的)三维点,作为初始三维轮廓特征点;2)通过所述投影映射矩阵P,将所述初始三维轮廓特征点映射至所述二维人脸图像;3)通过最近邻匹配的方法(如kdtree),选取映射得到的二维轮廓特征点对应的三维点的索引值,这样就得到了所述第一三维人脸模型的人脸轮廓特征点。
[0211] 步骤S307:若所述二维人脸图像与人脸轮廓特征点拟合后的三维人脸模型之间的误差小于预设误差,则将所述人脸轮廓特征点拟合后的三维人脸模型作为所述三维人脸模型。
[0212] 将上一步得到的所述第一三维人脸模型的人脸轮廓特征点和所述第一三维人脸模型的人脸内部特征点进行重新拼接,得到加入人脸轮廓特征点的所述第一三维人脸模型;若所述二维人脸图像与人脸轮廓特征点拟合后的三维人脸模型之间的误差小于预设误差,则将所述人脸轮廓特征点拟合后的三维人脸模型作为所述二维人脸图像对应的三维人脸模型。
[0213] 请参考图5,其为本申请提供的一种人脸姿态估计方法实施例的人脸形状拟合具体流程图。如果所述误差大于或等于预设误差,则基于所述人脸轮廓特征点拟合后的三维人脸模型,执行上述步骤S301、S303、S305和S307,即:将这几个步骤中的所述三维平均脸模型替换为上一次构建的所述人脸轮廓特征点拟合后的三维人脸模型,每次形成新的三维人脸模型,在重复迭代多次上述过程后,当误差小于预设误差后就停止迭代,至此重构出所述二维人脸图像的三维人脸模型。
[0214] 以上对本申请提供的方法可采用的人脸形状拟合算法进行了说明,下面对人脸表情拟合算法进行说明。
[0215] 请参考图6,其为本申请提供的一种人脸姿态估计方法实施例的人脸形状及表情拟合的流程图。由于本实施例采用的表情拟合算法基于三维人脸先验数据包括的表情基数据实现,因此,下面首先对表情基数据及其生成过程进行说明。
[0216] 在一个示例中,对上述构造出的400个中性表情的三维人脸模型样本,将每一个人脸构造出另外的46个表情,相当于构造出400*47个三维人脸模型样本的数据,以使得可以得到表情拟合数据。图7示出了本实施例的一个三维人脸模型样本对应的47种表情图。
[0217] 所述表情,可以是基础表情,如:生气,畏怯,厌恶,厌烦,惊讶,担心,幸福,憎恨,难过等等;也可以是复合表情,如:愤怒+厌恶,愤怒+惊讶,非常生气,非常厌恶,非常惊讶,幸福+厌恶,愉快+惊讶,难过+愤怒,难过+厌恶,难过+害怕,难过+惊讶等等。
[0218] 具体实施时,可以采用现有技术的多种表情构建方法,为一个中性表情的三维人脸模型构建另外46个表情的三维人脸模型。例如,可采用如下表情构建方法构建46个表情的三维人脸模型:通过两组三维模型之间的三角网格之间的形状迁移,不需要源模型和目标模型拥有相同数量的顶点或三角形,或者具有相同的连接性;用户通过指定一组顶点标记,在源模型的三角形和目标的三角形之间建立对应关系,通过计算从源模型到目标模型的对应关系的映射变换矩阵,并以求解一个最优化问题来使原模型变换到目标形状。
[0219] 在获取到46个表情的三维人脸模型样本后,就可以计算得到46种表情的差值数据,即:表情基。具体实施时,对应于所述三维平均脸模型的各类表情基X可通过如下步骤获取:1)针对每一种表情,根据该表情对应的400个三维人脸模型样本,计算得到该表情的三维平均脸模型,又称为平均表情,就可以得到47种平均表情,其中包括中性表情对应的平均表情;2)针对每一种表情,将该表情的每一个三维人脸模型样本减去该表情的平均表情后,就得到46种表情的差值数据 其中Gexp,j表示第j种表情对应的差值数据,N表示每一种表情的三维人脸模型样本数量,如400,表示平均表情,Sexp,i表示第i个三维人脸模型样本。
[0220] 在获得对应于所述三维平均脸模型的各类表情基X后,通过将所述三维平均脸模型M和表情基X相加就可以得到各种表情的平均脸的三维模型S[i]=M+X[i](i=0,1,2,..n)。需要说明的是,表情基X对每个人脸是相同的。
[0221] 由图6可见,本实施例在上述图3基础上加入表情拟合的步骤,在得到了基于人脸内部49个特征点拟合好的所述第一三维人脸模型后,基于该三维模型做进一步的表情拟合,因为所述二维人脸图像可以是任意表情,而该三维模型是无表情的,因此需要做表情的拟合。在本实施例种,人脸形状及表情拟合过程可包括如下步骤:
[0222] 步骤S601:根据所述二维人脸图像的人脸内部特征点和三维平均脸模型的人脸内部特征点,确定所述三维平均脸模型至所述二维人脸图像的投影映射矩阵。
[0223] 步骤S603:根据所述投影映射矩阵和三维特征脸空间的特征向量,构建所述二维人脸图像对应的第一三维人脸模型。
[0224] 步骤S605:根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维人脸模型进行轮廓特征点拟合。
[0225] 步骤S607:根据所述二维人脸图像的人脸内部特征点和所述三维平均脸模型对应的至少一个表情基,对所述轮廓特征点拟合后的三维人脸模型进行表情拟合。
[0226] 在之前步骤中已经得到46种表情基,本步骤可以采用二次规划或非负最小算法求解表情基的拟合表情系数,然后就可以得到表情拟合之后的三维人脸模型,其数学表达式如下:
[0227] Sexp_model=Smodel+G*a
[0228] 其中
[0229] 其中,Smodel表示所述轮廓特征点拟合后的三维人脸模型,Sexp_model表示表情拟合后后的三维人脸模型,G表示表情基,a表示拟合表情系数。
[0230] 请参考图8,其为本申请提供的一种人脸姿态估计方法实施例的人脸形状及表情拟合的具体流程图。由图8可见,本实施例在上述图5基础上加入表情拟合的步骤,在得到了基于人脸内部49个特征点拟合好的所述第一三维人脸模型后,基于该三维模型做进一步的表情拟合,因为所述二维人脸图像可以是任意表情,而该三维模型是无表情的,因此需要做表情的拟合。
[0231] 步骤S609:若所述二维人脸图像与表情拟合后的三维人脸模型之间的误差小于预设误差,则将表情拟合后的三维人脸模型作为所述三维人脸模型。
[0232] 在一个示例中,所述方法还包括如下步骤:若所述误差大于或等于预设误差,则根据所述表情拟合后的三维人脸模型,构建所述二维人脸图像对应的三维人脸模型。即:基于所述表情拟合后的三维人脸模型,执行上述步骤S601至S609,即:将这几个步骤中的所述三维平均脸模型替换为上一次构建的所述表情拟合后的三维人脸模型,每次形成新的三维人脸模型,在重复迭代多次上述过程后,当误差小于预设误差后就停止迭代,至此重构出所述二维人脸图像的三维人脸模型。
[0233] 从上述实施例可见,本申请实施例提供的人脸姿态估计方法,通过获取待处理的二维人脸图像,构建所述二维人脸图像对应的三维人脸模型,根据所述三维人脸模型的人脸特征点和所述二维人脸图像的人脸特征点,确定所述二维人脸图像的人脸姿态;这种处理方式,使得基于与二维人脸图像对应的三维人脸模型进行姿态求解,而不再只基于三维平均脸模型进行姿态求解,使得在对人脸大角度、夸张表情进行姿态估计时,仍可获得较高精准度的姿态;因此,可以有效提升姿态估计的鲁棒性。
[0234] 第二实施例
[0235] 在上述的实施例中,提供了一种人脸姿态估计方法,与之相对应的,本申请还提供一种人脸姿态估计装置。该装置是与上述方法的实施例相对应。
[0236] 请参看图9,其为本申请的人脸姿态估计装置的实施例的示意图。由于装置实施例基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。下述描述的装置实施例仅仅是示意性的。
[0237] 本申请另外提供一种人脸姿态估计装置,包括:
[0238] 二维人脸图像获取单元901,用于获取待处理的二维人脸图像;
[0239] 三维人脸模型构建单元903,用于构建所述二维人脸图像对应的三维人脸模型;
[0240] 人脸姿态确定单元905,用于根据所述三维人脸模型的人脸特征点和所述二维人脸图像的人脸特征点,确定所述二维人脸图像的人脸姿态。
[0241] 可选的,所述三维人脸模型构建单元903,具体用于通过人脸形状拟合算法,构建所述二维人脸图像对应的三维人脸模型。
[0242] 可选的,所述三维人脸模型构建单元903,包括:
[0243] 投影矩阵确定子单元9031,用于根据所述二维人脸图像的人脸内部特征点和三维平均脸模型的人脸内部特征点,确定所述三维平均脸模型至所述二维人脸图像的投影映射矩阵;
[0244] 第一模型构建子单元9033,用于根据所述投影映射矩阵和三维特征脸空间的特征向量,构建所述二维人脸图像对应的第一三维人脸模型;
[0245] 轮廓拟合子单元9035,用于根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维模型进行轮廓特征点拟合;
[0246] 第二模型确定子单元9037,用于若所述二维人脸图像与人脸轮廓特征点拟合后的三维人脸模型之间的误差小于预设误差,则将所述人脸轮廓特征点拟合后的三维人脸模型作为所述三维人脸模型。
[0247] 可选的,所述三维人脸模型构建单元903还包括:
[0248] 第三模型构建子单元,用于若所述误差大于或等于预设误差,则根据所述人脸轮廓特征点拟合后的三维人脸模型,构建所述二维人脸图像对应的三维人脸模型。
[0249] 可选的,所述三维人脸模型构建单元903,具体用于通过人脸表情拟合算法,构建所述二维人脸图像对应的三维人脸模型。
[0250] 可选的,所述三维人脸模型构建单元903,具体用于通过人脸形状及表情拟合算法,构建所述二维人脸图像对应的三维人脸模型。
[0251] 可选的,所述三维人脸模型构建单元903包括:
[0252] 投影矩阵确定子单元,用于根据所述二维人脸图像的人脸内部特征点和三维平均脸模型的人脸内部特征点,确定所述三维平均脸模型至所述二维人脸图像的投影映射矩阵;
[0253] 第一模型构建子单元,用于根据所述投影映射矩阵和三维特征脸空间的特征向量,构建所述二维人脸图像对应的第一三维人脸模型;
[0254] 轮廓拟合子单元,用于根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维模型进行轮廓特征点拟合;
[0255] 表情拟合子单元,用于根据所述二维人脸图像的人脸内部特征点和所述三维平均脸模型对应的至少一个表情基,对轮廓拟合后的三维人脸模型进行表情拟合;
[0256] 第二模型确定子单元,用于若所述二维人脸图像与表情拟合后的三维人脸模型之间的误差小于预设误差,则将表情拟合后的三维人脸模型作为所述三维人脸模型。
[0257] 可选的,还包括:
[0258] 第三模型构建子单元,用于若所述误差大于或等于预设误差,则根据所述表情拟合后的三维人脸模型,构建所述二维人脸图像对应的三维人脸模型。
[0259] 可选的,所述轮廓拟合子单元包括:
[0260] 第一轮廓特征点选取子单元,用于从所述第一三维人脸模型中选取和所述二维人脸图像的人脸轮廓特征点对应的三维点,作为初始三维轮廓特征点;
[0261] 轮廓特征点映射子单元,用于通过所述投影映射矩阵,将所述初始三维轮廓特征点映射至所述二维人脸图像;
[0262] 第二轮廓特征点选取子单元,用于通过最近邻匹配算法,选取映射得到的二维轮廓特征点对应的三维点,作为所述第一三维人脸模型的人脸轮廓特征点。
[0263] 可选的,还包括:
[0264] 第一先验数据确定单元,用于根据三维人脸模型样本,确定所述三维平均脸模型和所述特征向量。
[0265] 可选的,还包括:
[0266] 第二先验数据确定单元,用于根据三维人脸模型样本,确定所述三维平均脸模型对应的至少一个表情基。
[0267] 第三实施例
[0268] 请参考图11,其为本申请的电子设备实施例的示意图。由于设备实施例基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。下述描述的设备实施例仅仅是示意性的。
[0269] 本实施例的一种电子设备,该电子设备包括:处理器1101和存储器1102;存储器,用于存储实现人脸姿态估计方法的程序,该设备通电并通过所述处理器运行该人脸姿态估计方法的程序后,执行下述步骤:获取待处理的二维人脸图像;构建所述二维人脸图像对应的三维人脸模型;根据所述三维人脸模型的人脸特征点和所述二维人脸图像的人脸特征点,确定所述二维人脸图像的人脸姿态。
[0270] 第四实施例
[0271] 与上述的人脸姿态估计方法相对应,本申请还提供一种三维人脸重构方法,该方法的执行主体包括三维人脸重构装置。
[0272] 请参考图12,其为本申请提供的一种三维人脸重构方法实施例的流程图,本实施例与第一实施例内容相同的部分不再赘述,请参见实施例一中的相应部分。本申请提供的一种三维人脸重构方法包括:
[0273] 步骤S1200:获取待处理的二维人脸图像。
[0274] 步骤S1201:根据所述二维人脸图像的人脸内部特征点和三维平均脸模型的人脸内部特征点,确定所述三维平均脸模型至所述二维人脸图像的投影映射矩阵。
[0275] 步骤S1203:根据所述投影映射矩阵和三维特征脸空间的特征向量,构建所述二维人脸图像对应的第一三维人脸模型。
[0276] 步骤S1205:根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维人脸模型进行轮廓特征点拟合。
[0277] 步骤S1207:若所述二维人脸图像与拟合后的三维人脸模型之间的误差小于预设误差,则将所述拟合后的三维人脸模型作为所述二维人脸图像的三维人脸模型。
[0278] 由图13可见,所述方法还可包括如下步骤:
[0279] 步骤S1301:若所述误差大于或等于预设误差,则根据所述拟合后的三维人脸模型,构建所述二维人脸图像对应的三维人脸模型。
[0280] 由图14可见,在所述根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维人脸模型进行轮廓特征点拟合之后,还可包括如下步骤:
[0281] 步骤S1401:根据所述二维人脸图像的人脸内部特征点和所述三维平均脸模型对应的至少一个表情基,对轮廓拟合后的三维人脸模型进行表情拟合。
[0282] 在一个示例中,在所述根据所述投影映射矩阵和三维特征脸空间的特征向量,构建所述二维人脸图像对应的第一三维人脸模型之后,还可包括如下步骤:根据所述三维平均脸模型对应的至少一个表情基,对所述第一三维人脸模型进行表情拟合;相应的,步骤S1205可采用如下方式:根据所述二维人脸图像的人脸轮廓特征点,对表情拟合后的第一三维人脸模型进行轮廓特征点拟合。
[0283] 在一个示例中,所述根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维模型进行轮廓特征点拟合,可包括如下子步骤:1)从所述第一三维人脸模型中选取和所述二维人脸图像的人脸轮廓特征点对应的三维点,作为初始三维轮廓特征点;2)通过所述投影映射矩阵,将所述初始三维轮廓特征点映射至所述二维人脸图像;3)通过最近邻匹配算法,选取映射得到的二维轮廓特征点对应的三维点,作为所述第一三维人脸模型的人脸轮廓特征点。
[0284] 在一个示例中,所述方法还可包括如下步骤:根据三维人脸模型样本,确定所述三维平均脸模型和所述特征向量。
[0285] 在一个示例中,所述方法还可包括如下步骤:根据三维人脸模型样本,确定所述三维平均脸模型对应的至少一个表情基。
[0286] 从上述实施例可见,本申请实施例提供的三维人脸重构方法,通过获取待处理的二维人脸图像;根据所述二维人脸图像的人脸内部特征点和三维平均脸模型的人脸内部特征点,确定所述三维平均脸模型至所述二维人脸图像的投影映射矩阵;根据所述投影映射矩阵和三维特征脸空间的特征向量,构建所述二维人脸图像对应的第一三维人脸模型;根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维人脸模型进行轮廓特征点拟合;若所述二维人脸图像与拟合后的三维人脸模型之间的误差小于预设误差,则将所述拟合后的三维人脸模型作为所述二维人脸图像的三维人脸模型;这种处理方式,使得基于三维人脸先验数据驱动三维人脸模型拟合,考虑了人脸内部特征点和外轮廓特征点的相结合,进而拟合迭代,实现最小化三维人脸模型与二位人脸图像之间的误差,最大程度还原真实人脸,且重构出的三维人脸模型符合人脸生物学特征;因此,可以有效提升三维人脸模型的重构准确度。
[0287] 第五实施例
[0288] 在上述的实施例中,提供了一种三维人脸重构方法,与之相对应的,本申请还提供一种三维人脸重构装置。该装置是与上述方法的实施例相对应。
[0289] 请参看图15,其为本申请的三维人脸重构装置的实施例的示意图。由于装置实施例基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。下述描述的装置实施例仅仅是示意性的。
[0290] 本申请另外提供一种三维人脸重构装置,包括:
[0291] 二维人脸图像获取单元1500,用于获取待处理的二维人脸图像;
[0292] 投影矩阵确定子单元1501,用于根据所述二维人脸图像的人脸内部特征点和三维平均脸模型的人脸内部特征点,确定所述三维平均脸模型至所述二维人脸图像的投影映射矩阵;
[0293] 第一模型构建子单元1503,用于根据所述投影映射矩阵和三维特征脸空间的特征向量,构建所述二维人脸图像对应的第一三维人脸模型;
[0294] 轮廓拟合子单元1505,用于根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维人脸模型进行轮廓特征点拟合;
[0295] 第二模型确定单元1507,用于若所述二维人脸图像与拟合后的三维人脸模型之间的误差小于预设误差,则将所述拟合后的三维人脸模型作为所述二维人脸图像的三维人脸模型。
[0296] 可选的,还包括:
[0297] 第一表情拟合单元,用于根据所述二维人脸图像的人脸内部特征点和所述三维平均脸模型对应的至少一个表情基,对轮廓拟合后的三维人脸模型进行表情拟合。
[0298] 可选的,还包括:
[0299] 第二表情拟合单元,用于根据所述三维平均脸模型对应的至少一个表情基,对所述第一三维人脸模型进行表情拟合;
[0300] 所述轮廓拟合子单元,具体用于根据所述二维人脸图像的人脸轮廓特征点,对表情拟合后的第一三维人脸模型进行轮廓特征点拟合。
[0301] 可选的,所述轮廓拟合子单元1505包括:
[0302] 第一轮廓特征点选取子单元,用于从所述第一三维人脸模型中选取和所述二维人脸图像的人脸轮廓特征点对应的三维点,作为初始三维轮廓特征点;
[0303] 轮廓特征点映射子单元,用于通过所述投影映射矩阵,将所述初始三维轮廓特征点映射至所述二维人脸图像;
[0304] 第二轮廓特征点选取子单元,用于通过最近邻匹配算法,选取映射得到的二维轮廓特征点对应的三维点,作为所述第一三维人脸模型的人脸轮廓特征点。
[0305] 可选的,还包括:
[0306] 第三模型构建子单元,用于若所述误差大于或等于预设误差,则根据所述拟合后的三维人脸模型,构建所述二维人脸图像对应的三维人脸模型。
[0307] 可选的,还包括:
[0308] 第一先验数据确定单元,用于根据三维人脸模型样本,确定所述三维平均脸模型和所述特征向量。
[0309] 可选的,还包括:
[0310] 第二先验数据确定单元,用于根据三维人脸模型样本,确定所述三维平均脸模型对应的至少一个表情基。
[0311] 第六实施例
[0312] 请参考图16,其为本申请的电子设备实施例的示意图。由于设备实施例基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。下述描述的设备实施例仅仅是示意性的。
[0313] 本实施例的一种电子设备,该电子设备包括:处理器1601和存储器1602;所述存储器,用于存储实现三维人脸重构方法的程序,该设备通电并通过所述处理器运行该三维人脸重构方法的程序后,执行下述步骤:获取待处理的二维人脸图像;根据所述二维人脸图像的人脸内部特征点和三维平均脸模型的人脸内部特征点,确定所述三维平均脸模型至所述二维人脸图像的投影映射矩阵;根据所述投影映射矩阵和三维特征脸空间的特征向量,构建所述二维人脸图像对应的第一三维人脸模型;根据所述二维人脸图像的人脸轮廓特征点,对所述第一三维人脸模型进行轮廓特征点拟合;若所述二维人脸图像与拟合后的三维人脸模型之间的误差小于预设误差,则将所述拟合后的三维人脸模型作为所述二维人脸图像的三维人脸模型。
[0314] 本申请虽然以较佳实施例公开如上,但其并不是用来限定本申请,任何本领域技术人员在不脱离本申请的精神和范围内,都可以做出可能的变动和修改,因此本申请的保护范围应当以本申请权利要求所界定的范围为准。
[0315] 在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
[0316] 内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
[0317] 1、计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
[0318] 2、本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈