CN112508778B - 一种3d人脸道具贴图方法、终端及存储介质 - Google Patents

一种3d人脸道具贴图方法、终端及存储介质 Download PDF

Info

Publication number
CN112508778B
CN112508778B CN202011511505.6A CN202011511505A CN112508778B CN 112508778 B CN112508778 B CN 112508778B CN 202011511505 A CN202011511505 A CN 202011511505A CN 112508778 B CN112508778 B CN 112508778B
Authority
CN
China
Prior art keywords
face
prop
key points
attached
processed
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202011511505.6A
Other languages
English (en)
Other versions
CN112508778A (zh
Inventor
李琳
张学成
张犁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Mobile Communications Group Co Ltd
MIGU Culture Technology Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
MIGU Culture Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by China Mobile Communications Group Co Ltd, MIGU Culture Technology Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN202011511505.6A priority Critical patent/CN112508778B/zh
Publication of CN112508778A publication Critical patent/CN112508778A/zh
Application granted granted Critical
Publication of CN112508778B publication Critical patent/CN112508778B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/04Context-preserving transformations, e.g. by using an importance map
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • G06T15/205Image-based rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4084Scaling of whole images or parts thereof, e.g. expanding or contracting in the transform domain, e.g. fast Fourier transform [FFT] domain scaling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/60Rotation of whole images or parts thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • G06V40/165Detection; Localisation; Normalisation using facial parts and geometric relationships
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/168Feature extraction; Face representation
    • G06V40/171Local features and components; Facial parts ; Occluding parts, e.g. glasses; Geometrical relationships
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/172Classification, e.g. identification

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Geometry (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computing Systems (AREA)
  • Computer Graphics (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本发明实施例涉及图像处理技术领域,特别涉及一种3D人脸道具贴图方法、终端及存储介质,该方法通过定点逆向投影的方法,估算当前帧待处理人脸图像中2D人脸关键点在投影前准确的3D空间位置,实现待贴图3D人脸道具和当前帧待处理人脸图像间的点对点精准对齐,无需进行实时的人脸面部3D形状重建,去除了对3D人脸关键点技术依赖,执行速度快,在高低端机中都可以流畅运行。

Description

一种3D人脸道具贴图方法、终端及存储介质
技术领域
本申请实施例涉及图像处理技术领域,特别涉及一种3D人脸道具贴图方法、终端及存储介质。
背景技术
3D人脸道具贴图是将3D道具贴图到2D人脸面部上,该功能在移动手机端AR产品应用中比较常见,如:抖音、快手等应用中。该功能的现有实现方法主要有两种,第一种是对2D人脸形状(shape)进行3D重建,得到带有深度信息的3D人脸关键点,然后将3D道具中顶点和重建的3D人脸关键点对齐,完成道具贴图;第二种是基于PnP(Perspective-n-Point,透视N点投影)方法估计一个3D基准人脸形状到2D人脸形状的最优投影几何参数,如缩放、平移、旋转。
现有的上述3D人脸道具贴图方法中,第一种需要进行实时的人脸面部3D形状重建,在低端手机设备上实时性能不太理想,用户只能在一些中高端设备上体验3D道具功能,第二种的PnP投影估计方法中,为多组3D到2D样本的局部最优投影估计,无法实现3D模型道具中的特定顶点和2D人脸中的特定顶点精准对齐。
发明内容
本发明实施方式的目的在于提供一种3D人脸道具贴图方法、终端及存储介质,解决了现有技术中3D人脸道具贴图无法实现3D模型道具中的特定顶点和2D人脸中的特定顶点精准对齐的问题。
为解决上述技术问题,第一方面,本发明的实施方式提供了一种3D人脸道具贴图方法,包括:
根据待贴图3D人脸道具中3D人脸关键点和当前帧待处理人脸图像中2D人脸关键点的对应关系,确定所述待贴图3D人脸道具的旋转矩阵和缩放系数;
根据所述旋转矩阵和所述缩放系数对所述待贴图3D人脸道具进行旋转和缩放,以使所述待贴图3D人脸道具和所述当前帧待处理人脸图像的姿态、大小相匹配;确定旋转和缩放后的所述待贴图3D人脸道具中各所述3D人脸关键点的第一3D坐标,以及当前帧待处理人脸图像中与所述3D人脸关键点对应的2D人脸关键点的2D坐标;根据所述第一3D坐标中的深度坐标值对所述2D坐标进行逆向投影,得到所述2D人脸关键点逆向投影到3D空间下的第二3D坐标;根据所有所述3D人脸关键点的所述第一3D坐标和对应2D人脸关键点的所述第二3D坐标确定所述待贴图3D人脸道具的位置变换参数;
根据所述旋转矩阵、所述缩放系数和所述位置变换参数将所述待贴图3D人脸道具渲染至所述当前帧待处理人脸图像。
第二方面,本发明实施例提供了一种终端,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如本发明第一方面实施例所述3D人脸道具贴图方法的步骤。
第三方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如本发明第一方面实施例所述3D人脸道具贴图方法的步骤。
本发明实施方式相对于现有技术而言,通过定点逆向投影的方法,估算当前帧待处理人脸图像中2D人脸关键点在投影前准确的3D空间位置,实现待贴图3D人脸道具和当前帧待处理人脸图像间的点对点精准对齐,同时无需进行实时的人脸面部3D形状重建,去除了对3D人脸关键点技术依赖,执行速度快,在高低端机中都可以流畅运行。
另外,所述根据待贴图3D人脸道具中3D人脸关键点和当前帧待处理人脸图像中2D人脸关键点的对应关系,确定所述待贴图3D人脸道具的旋转矩阵和缩放系数前,还包括:
对预先采集得到的3D人脸模型数据集进行聚类,得到一个3D人脸模型;
以所述3D人脸模型为基准3D人脸进行贴图道具设计,得到待贴图3D人脸道具。
通过3D人脸模型数据集中海量的3D人脸模型数据聚类得到的基准3D人脸设计待贴图3D人脸道具,能够提取最具代表、相似性最高的三维人脸表面形状的曲率特征,以作为表达人脸的空间几何形状,能够提高该待贴图3D人脸道具与各种类型的人脸图像的契合度,提高贴合效果。
另外,所述根据待贴图3D人脸道具中3D人脸关键点和当前帧待处理人脸图像中2D人脸关键点的对应关系,确定所述待贴图3D人脸道具的旋转矩阵和缩放系数,具体包括:
在3D人脸道具渲染场景中建立3D物体投影到2D窗口的透视投影矩阵模型;
根据所述透视投影矩阵模型,以及待贴图3D人脸道具的3D人脸关键点和当前帧待处理人脸图像中对应的2D人脸关键点的正交投影关系,确定所述待贴图3D人脸道具的旋转矩阵;
根据所述旋转矩阵和所述透视投影矩阵模型,将预设3D人脸关键点旋转并投影到当前帧待处理人脸图像所在的2D平面,根据投影后所述预设3D人脸关键点和对应的2D人脸关键点的比例关系,确定所述待贴图3D人脸道具的缩放系数。
以待贴图3D人脸道具的3D人脸关键点和当前帧待处理人脸图像中对应的2D人脸关键点的对应关系,可以准确得到在贴图过程中所述待贴图3D人脸道具旋转矩阵和缩放系数,使得贴图后待贴图3D人脸道具和当前帧待处理人脸图像中的关键特征能够完美贴合。
另外,所述在3D人脸道具渲染场景中建立3D物体投影到2D窗口的透视投影矩阵模型,具体包括:
提取3D人脸道具渲染场景中的近远剪裁平面位置参数、视野广角参数和视口纵横比参数;
根据所述近远剪裁平面位置参数、所述视野广角参数和所述视口纵横比参数建立3D人脸道具渲染场景中3D物体投影到2D窗口的透视投影矩阵模型。
另外,所述根据所述透视投影矩阵模型,以及待贴图3D人脸道具的3D人脸关键点和当前帧待处理人脸图像中对应的2D人脸关键点,确定所述待贴图3D人脸道具的旋转矩阵,具体包括:
根据预先得到的人脸关键点检测模型对所述待贴图3D人脸道具和所述当前帧待处理人脸图像进行人脸关键点检测,得到所述待贴图3D人脸道具的3D人脸关键点和所述当前帧待处理人脸图像的2D人脸关键点;
根据正交投影建立所述3D人脸关键点到所述2D人脸关键点的投影方程组,并根据奇异值分解法对所述投影方程组中的旋转变量求解,将求解后得到的旋转变量作为所述待贴图3D人脸道具的旋转矩阵。
另外,所述将预设3D人脸关键点旋转并投影到当前帧待处理人脸图像所在的2D平面,根据投影后所述预设3D人脸关键点和对应的2D人脸关键点的比例关系,确定所述待贴图3D人脸道具的缩放系数,具体包括:
选择所述3D人脸关键点中的3D左眼关键点和3D右眼关键点作为预设3D人脸关键点;
根据所述旋转矩阵对所述3D左眼关键点和所述3D右眼关键点进行旋转变换;
根据所述透视投影矩阵模型对经旋转变换后的所述3D左眼关键点和所述3D右眼关键点进行透视投影变换,得到所述3D左眼关键点和所述3D右眼关键点在2D平面下的投影坐标;
根据所述3D左眼关键点和所述3D右眼关键点的所述投影坐标确定所述待贴图3D人脸道具的第一眼距;
根据所述2D人脸关键点中2D左眼关键点和2D右眼关键点的坐标确定所述当前帧待处理人脸图像的第二眼距;
根据所述第一眼距和所述第二眼距的比值确定所述待贴图3D人脸道具的缩放系数。
两眼之间的距离,随人脸表情或姿态影响较小,可作为人脸缩放系数大小的度量,本实施例中,通过将按旋转矩阵旋转后待贴图3D人脸道具中左眼和右眼的在3D空间中的3D坐标投影至2D平面,以得到待贴图3D人脸道具的第一眼距,结合2D平面上当前帧待处理人脸图像的第二眼距,得到待贴图3D人脸道具的缩放系数。
另外,所述根据所述旋转矩阵、所述缩放系数和所述位置变换参数将所述待贴图3D人脸道具渲染至所述当前帧待处理人脸图像,具体包括:
确定所述待贴图3D人脸道具中的光照节点和渲染节点;
遍历所述光照节点,得到光照参数;
遍历所述渲染节点,获取当前渲染节点的顶点数据,所述顶点数据包括表面法向量数据;
在顶点着色器中根据所述透视投影矩阵模型、所述旋转矩阵、所述缩放系数和所述位置变换参数对当前渲染节点中的顶点数据进行几何变换;
在片段着色器中,对当前渲染节点,根据所述光照参数和所述表面法向量数据得到当前像素的环境光系数、漫反射光系数和高光系数,基于所述环境光系数、所述漫反射光系数和所述高光系数得到当前像素渲染结果;
根据预先的渲染状态配置对当前渲染节点进行深度测试和颜色混合,得到最终待贴图3D人脸道具的颜色输出结果。
另外,所述得到最终待贴图3D人脸道具的颜色输出结果后,还包括:
获取当前渲染节点的骨骼数据,若根据所述骨骼数据判断当前渲染节点带有骨骼动画,则根据当前时间和所述骨骼数据的关键帧信息计算得到下一帧待处理人脸图像对应的所述待贴图3D人脸道具的顶点数据,并将所述待贴图3D人脸道具渲染至下一帧待处理人脸图像。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
图1是根据本发明实施例的一种3D人脸道具贴图方法流程图;
图2是根据本发明第二实施例的一种终端结构框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请所要求保护的技术方案。以下各个实施例的划分是为了描述方便,不应对本发明的具体实现方式构成任何限定,各个实施例在不矛盾的前提下可以相互结合相互引用。
本申请实施例中的术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。本申请的描述中,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列部件或单元的系统、产品或设备没有限定于已列出的部件或单元,而是可选地还包括没有列出的部件或单元,或可选地还包括对于这些产品或设备固有的其它部件或单元。本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
目前3D人脸道具贴图方法,第一种需要进行实时的人脸面部3D形状重建,在低端手机设备上实时性能不太理想,用户只能在一些中高端设备上体验3D道具功能,第二种PnP投影估计方法,为多组3D到2D样本的局部最优投影估计,无法实现3D模型道具中的特定顶点和2D人脸中的特定顶点精准对齐。
因此,本发明实施例通过定点逆向投影方法,估算待投影点投影前准确的3D空间位置,实现待贴图3D人脸道具和当前帧待处理人脸图像间的点对点精准对齐,同时无需进行实时的人脸面部3D形状重建,去除了对3D人脸关键点技术依赖,执行速度快,在高低端机中都可以流畅运行。以下将通过多个实施例进行展开说明和介绍。
本发明的第一实施方式涉及一种3D人脸道具贴图方法,具体流程如图1中所示,包括:
S1、根据待贴图3D人脸道具中3D人脸关键点和当前帧待处理人脸图像中2D人脸关键点的对应关系,确定所述待贴图3D人脸道具的旋转矩阵和缩放系数;
具体地,人脸关键点是对于图像中人脸五官与轮廓定位的标注,主要用来对人脸的关键位置,如脸廓、眉毛、眼睛、嘴唇进行定位,本实施例选择现有的106人脸点模型,这些关键点能够完美地贴合面部五官,即使在大角度或大动作的视频流中抖动,依然能保持稳定,在特效应用中为基于人脸的照片或视频加3D人脸道具贴图的时候,不会造成贴纸抖动。
通过待贴图3D人脸道具中3D人脸关键点和当前帧待处理人脸图像中2D人脸关键点的对应关系,可以得到所述待贴图3D人脸道具和所述当前帧待处理人脸图像的位姿关系和大小比例关系,以根据该位姿关系和大小比例关系得到所述待贴图3D人脸道具的旋转矩阵和缩放系数;
S2、根据所述旋转矩阵和所述缩放系数对所述待贴图3D人脸道具进行旋转和缩放,以使所述待贴图3D人脸道具和所述当前帧待处理人脸图像的姿态、大小相匹配;确定旋转和缩放后的所述待贴图3D人脸道具中各所述3D人脸关键点的第一3D坐标,以及当前帧待处理人脸图像中与所述3D人脸关键点对应的2D人脸关键点的2D坐标;根据所述第一3D坐标中的深度坐标值对所述2D坐标进行逆向投影,得到所述2D人脸关键点逆向投影到3D空间下的第二3D坐标;根据所有所述3D人脸关键点的所述第一3D坐标和对应2D人脸关键点的所述第二3D坐标确定所述待贴图3D人脸道具的位置变换参数;
具体地,根据旋转矩阵和缩放系数对待贴图3D人脸道具依次进行旋转和缩放后,所述待贴图3D人脸道具和所述当前帧待处理人脸图像的姿态、大小相匹配,但是由于待贴图3D人脸道具中3D人脸关键点的坐标为3D坐标,当前帧待处理人脸图像中对应2D人脸关键点的为2D坐标,因此,还需要得到3D人脸关键点和2D人脸关键点的位置变换参数;
具体地,通过定点逆向投影方法,对当前帧待处理人脸图像中与所述3D人脸关键点对应的2D人脸关键点的2D坐标进行逆投影变换,估算2D人脸关键点投影前准确的3D空间位置,实现待贴图3D人脸道具和当前帧待处理人脸图像间的点对点精准对齐,同时无需进行实时的人脸面部3D形状重建。
S3、根据所述旋转矩阵、所述缩放系数和所述位置变换参数将所述待贴图3D人脸道具渲染至所述当前帧待处理人脸图像。
在上述实施例的基础上,作为一种优选的实施方式,所述根据待贴图3D人脸道具中3D人脸关键点和当前帧待处理人脸图像中2D人脸关键点的对应关系,确定所述待贴图3D人脸道具的旋转矩阵和缩放系数前,还包括:
对预先采集得到的3D人脸模型数据集进行聚类,得到一个3D人脸模型;
以所述3D人脸模型为基准3D人脸进行贴图道具设计,得到待贴图3D人脸道具。
具体地,基于业界开源的3D人脸模型数据集聚类出一个中性的3D人脸模型,并作为基准3D人脸,该3D人脸模型数据集可以选用开源的人脸数据库BFM(Basel Face Model),该人脸数据库中的人脸模型需要是正脸且无表情,最终得到一个正脸且无表情的3D人脸模型并作为基准人脸模型。
基于上述的基准人脸模型,在建模工具中(如:3ds max)完成待贴图的模型及素材的设计,得到待贴图3D人脸道具,并将该待贴图3D人脸道具以指定格式导出(如:fbx、DAE)。
本实施例中,通过3D人脸模型数据集中海量的3D人脸模型数据聚类得到的基准3D人脸设计待贴图3D人脸道具,能够提取最具代表、相似性最高的三维人脸表面形状的曲率特征,以作为表达人脸的空间几何形状,能够提高该待贴图3D人脸道具与各种类型的人脸图像的契合度,提高贴合效果。
在上述各实施例的基础上,作为一种优选的实施方式,所述根据待贴图3D人脸道具中3D人脸关键点和当前帧待处理人脸图像中2D人脸关键点的对应关系,确定所述待贴图3D人脸道具的旋转矩阵和缩放系数,具体包括:
基于预先得到的106人脸关键点检测模型,从基准人脸模型中挑选出所对应的106个3D人脸关键点,记为F3d;确定当前帧待处理人脸图像的宽高信息(w,h),使用106人脸关键点检测模型对当前帧待处理人脸图像进行检测,得到106个2D人脸关键点,记为F2d
在3D人脸道具渲染场景中建立3D物体投影到2D窗口的透视投影矩阵模型;
具体地,根据3D人脸道具渲染场景中的近远剪裁平面位置参数(n/f)、视野角参数(θ)、视口纵横比参数(aspect,输入图像宽高比),建立3D物体投影到2D窗口的透视投影矩阵模型,记为P,则有:
根据所述透视投影矩阵模型,以及待贴图3D人脸道具的3D人脸关键点和当前帧待处理人脸图像中对应的2D人脸关键点的正交投影关系,确定所述待贴图3D人脸道具的旋转矩阵;
具体地,基于正交投影建立3D关键点到2D关键点投影模型,该模型中的旋转参数R为待求解参数,记为记为Oth(R),有:
根据上述3D人脸关键点(F3d)和2D人脸关键点(F2d),建立投影方程组,即有:
其中表示第i个3D人脸关键点,/>表示第i个2D人脸关键点,通过SVD(Singular Value Decomposition,奇异值分解)对该方程组中的旋转参数R进行求解,所求解得到的旋转参数R即为所述待贴图3D人脸道具的旋转矩阵R。
根据所述旋转矩阵R和所述透视投影矩阵模型P,将预设3D人脸关键点旋转并投影到当前帧待处理人脸图像所在的2D平面,根据投影后所述预设3D人脸关键点和对应的2D人脸关键点的比例关系,确定所述待贴图3D人脸道具的缩放系数。
以待贴图3D人脸道具的3D人脸关键点和当前帧待处理人脸图像中对应的2D人脸关键点的对应关系,可以准确得到在贴图过程中所述待贴图3D人脸道具旋转矩阵和缩放系数,使得贴图后待贴图3D人脸道具和当前帧待处理人脸图像中的关键特征能够完美贴合。
具体地,本实施例中通过实验验证发现,两眼之间的距离,一般不随人脸表情或姿态影响,可以作为人脸缩放系数大小的度量,
因此,在本实施例中,使用上述的透视投影矩阵模型P对述待贴图3D人脸道具中的3D左眼关键点(左眼瞳孔中心,对应106人脸关键点中74号点位)和3D右眼关键点(右眼瞳孔中心,对应106人脸关键点中77号点位)进行旋转变换,得到旋转后所述3D左眼关键点和所述3D右眼关键点在3D空间中的坐标F′74和F′77;则有:
根据所述透视投影矩阵模型对经旋转变换后的所述3D左眼关键点和所述3D右眼关键点进行透视投影变换,得到所述3D左眼关键点和所述3D右眼关键点在2D平面下的投影坐标F″74和F″77;则有:
根据所述3D左眼关键点和所述3D右眼关键点在2D平面下的的所述投影坐标确定所述待贴图3D人脸道具的第一眼距:
dis1=||F″74-F″77||
根据所述2D人脸关键点中2D左眼关键点(左瞳孔中心)和2D右眼关键点(左瞳孔中心)的坐标确定所述当前帧待处理人脸图像的第二眼距dis2;待贴图3D人脸道具和当前帧待处理人脸图像的眼距比值为该待贴图3D人脸道具的缩放系数,即有:S=dis1/dis2。
在上述各实施例的基础上,作为一种优选的实施方式,步骤S2具体包括:
确定待贴图3D人脸道具对齐位置后所对应3D人脸关键点下标索引index,index∈[0,105],基于上述的透视投影矩阵模型P、旋转矩阵R、缩放系数S,进行逆向投影变换计算出该待贴图3D人脸道具的几何位置变换参数T,位置变换参数的计算过程如下:
对待贴图3D人脸道具中得到的index对齐的3D坐标(x0,y0,z0),根据所述旋转矩阵R和所述缩放系数S进行旋转和缩放,使得待贴图3D人脸道具和当前帧待处理人脸图像的姿态、大小保持一致,并得到index索引下新的第一3D坐标,记为(x0',y0',z0'),有:
从F2d中得到对应index对齐的2D坐标,使用上述的z0'值作为深度值,对该2D坐标进行逆向投影,得到该2D坐标在投影前的3D空间下的第二3D坐标,记为(x1,y1,z1),并得到该3D贴图的位置变换参数T。有:
在上述各实施例的基础上,作为一种优选的实施方式,所述根据所述旋转矩阵、所述缩放系数和所述位置变换参数将所述待贴图3D人脸道具渲染至所述当前帧待处理人脸图像,具体包括:
确定所述待贴图3D人脸道具中的光照节点和渲染节点;使用assimp库解析待贴图3D人脸道具中的节点,遍历得到该待贴图3D人脸道具中的光照节点{l1,…,li,…,ln}和渲染节点{n1,…,ni,…,nn};
遍历所述光照节点,得到光照参数,记光照参数为L,所述光照参数包括光照类型、光源位置或方向、光照颜色和光照强度,其中光照类型包括电光、方向光和聚光灯,光照颜色包括白光和黄光;
遍历所述渲染节点,针对当前的渲染节点ni,解析该渲染节点ni的顶点数据Di、骨骼数据Si、材质数据Mi、网格绘制索引数据。其中,顶点数据包括顶点世界坐标、纹理贴图坐标和法向量。材质数据主要包括:贴图文件(如:漫反射贴图/高光贴图/环境贴图等),材质状态配置(如:纹理采样器状态)、渲染状态配置(混合状态及混合因子、深度测试等),加载这些顶点数据Di、骨骼数据Si、材质数据Mi、网格绘制索引数据和状态配置到渲染管线中,完成渲染的配置。
将摄像机放到3D人脸道具渲染场景的正前方(0,0,2)位置处,使用上述透视投影矩阵模型P,在顶点着色器(vertex shader)中使用所述旋转矩阵R、所述缩放系数S和所述位置变换参数T对当前渲染节点ni中的顶点数据Di进行几何变换;
在片段着色器(fragment shader)中,对当前渲染节点ni,使用Blinn-Phong光照模,根据所述光照参数和所述表面法向量数据得到当前像素的环境光系数camb、漫反射光系数cdif和高光系数cspe,并分别对当前像素漫反射和高光贴图材质进行采样,得到采样值记为pdif和pspe基于所述环境光系数camb、所述漫反射光系数cdif和所述高光系数cspe得到当前像素渲染结果p:
p=camb*pdif+cdif*pdif+cspe*pspe
针对当前渲染节点ni,根据预先的渲染状态配置依次进行深度测试和颜色混合,得到最终待贴图3D人脸道具的颜色输出结果。
若当前的渲染节点ni带有骨骼动画,根据当前时间t和骨骼节点的关键帧信息计算得到下一帧待处理人脸图像对应的所述待贴图3D人脸道具的顶点数据Si完成更新,跳转上述步骤S1继续渲染下一帧待处理人脸图像。
上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包括相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。
本发明第二实施方式涉及一种终端,该终端可以是智能手机、平板电脑等,如图2所示,该终端包括处理器(processor)810、通信接口(Communications Interface)820、存储器(memory)830和通信总线840,其中,处理器810,通信接口820,存储器830通过通信总线840完成相互间的通信。处理器810可以调用存储器830中的逻辑指令,以执行如上述各实施例所述3D人脸道具贴图方法的步骤。例如包括:
根据待贴图3D人脸道具中3D人脸关键点和当前帧待处理人脸图像中2D人脸关键点的对应关系,确定所述待贴图3D人脸道具的旋转矩阵和缩放系数;
根据所述旋转矩阵和所述缩放系数对所述待贴图3D人脸道具进行旋转和缩放,以使所述待贴图3D人脸道具和所述当前帧待处理人脸图像的姿态、大小相匹配;确定旋转和缩放后的所述待贴图3D人脸道具中各所述3D人脸关键点的第一3D坐标,以及当前帧待处理人脸图像中与所述3D人脸关键点对应的2D人脸关键点的2D坐标;根据所述第一3D坐标中的深度坐标值对所述2D坐标进行逆向投影,得到所述2D人脸关键点逆向投影到3D空间下的第二3D坐标;根据所有所述3D人脸关键点的所述第一3D坐标和对应2D人脸关键点的所述第二3D坐标确定所述待贴图3D人脸道具的位置变换参数;
根据所述旋转矩阵、所述缩放系数和所述位置变换参数将所述待贴图3D人脸道具渲染至所述当前帧待处理人脸图像。
其中,存储器和处理器采用通信总线方式连接,通信总线可以包括任意数量的互联的总线和桥,通信总线将一个或多个处理器和存储器的各种电路连接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在通信总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器。
处理器负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器可以被用于存储处理器在执行操作时所使用的数据。
本发明第四实施方式涉及一种计算机可读存储介质,存储有计算机程序。计算机程序被处理器执行时实现如上述各实施例所述3D人脸道具贴图方法的步骤。例如包括:
根据待贴图3D人脸道具中3D人脸关键点和当前帧待处理人脸图像中2D人脸关键点的对应关系,确定所述待贴图3D人脸道具的旋转矩阵和缩放系数;
根据所述旋转矩阵和所述缩放系数对所述待贴图3D人脸道具进行旋转和缩放,以使所述待贴图3D人脸道具和所述当前帧待处理人脸图像的姿态、大小相匹配;确定旋转和缩放后的所述待贴图3D人脸道具中各所述3D人脸关键点的第一3D坐标,以及当前帧待处理人脸图像中与所述3D人脸关键点对应的2D人脸关键点的2D坐标;根据所述第一3D坐标中的深度坐标值对所述2D坐标进行逆向投影,得到所述2D人脸关键点逆向投影到3D空间下的第二3D坐标;根据所有所述3D人脸关键点的所述第一3D坐标和对应2D人脸关键点的所述第二3D坐标确定所述待贴图3D人脸道具的位置变换参数;
根据所述旋转矩阵、所述缩放系数和所述位置变换参数将所述待贴图3D人脸道具渲染至所述当前帧待处理人脸图像。
即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。

Claims (8)

1.一种3D人脸道具贴图方法,其特征在于,包括:
根据待贴图3D人脸道具中3D人脸关键点和当前帧待处理人脸图像中2D人脸关键点的对应关系,确定所述待贴图3D人脸道具的旋转矩阵和缩放系数;
根据所述旋转矩阵和所述缩放系数对所述待贴图3D人脸道具进行旋转和缩放,以使所述待贴图3D人脸道具和所述当前帧待处理人脸图像的姿态、大小相匹配;确定旋转和缩放后的所述待贴图3D人脸道具中各所述3D人脸关键点的第一3D坐标,以及当前帧待处理人脸图像中与所述3D人脸关键点对应的2D人脸关键点的2D坐标;根据所述第一3D坐标中的深度坐标值对所述2D坐标进行逆向投影,得到所述2D人脸关键点逆向投影到3D空间下的第二3D坐标;根据所有所述3D人脸关键点的所述第一3D坐标和对应2D人脸关键点的所述第二3D坐标确定所述待贴图3D人脸道具的位置变换参数;
根据所述旋转矩阵、所述缩放系数和所述位置变换参数将所述待贴图3D人脸道具渲染至所述当前帧待处理人脸图像;
所述根据待贴图3D人脸道具中3D人脸关键点和当前帧待处理人脸图像中2D人脸关键点的对应关系,确定所述待贴图3D人脸道具的旋转矩阵和缩放系数,具体包括:
在3D人脸道具渲染场景中建立3D物体投影到2D窗口的透视投影矩阵模型;
根据所述透视投影矩阵模型,以及待贴图3D人脸道具的3D人脸关键点和当前帧待处理人脸图像中对应的2D人脸关键点的正交投影关系,确定所述待贴图3D人脸道具的旋转矩阵;
根据所述旋转矩阵和所述透视投影矩阵模型,将预设3D人脸关键点旋转并投影到当前帧待处理人脸图像所在的2D平面,根据投影后所述预设3D人脸关键点和对应的2D人脸关键点的比例关系,确定所述待贴图3D人脸道具的缩放系数;
所述在3D人脸道具渲染场景中建立3D物体投影到2D窗口的透视投影矩阵模型,具体包括:
提取3D人脸道具渲染场景中的近远剪裁平面位置参数、视野广角参数和视口纵横比参数;
根据所述近远剪裁平面位置参数、所述视野广角参数和所述视口纵横比参数建立3D人脸道具渲染场景中3D物体投影到2D窗口的透视投影矩阵模型。
2.根据权利要求1所述的3D人脸道具贴图方法,其特征在于,所述根据待贴图3D人脸道具中3D人脸关键点和当前帧待处理人脸图像中2D人脸关键点的对应关系,确定所述待贴图3D人脸道具的旋转矩阵和缩放系数前,还包括:
对预先采集得到的3D人脸模型数据集进行聚类,得到一个3D人脸模型;
以所述3D人脸模型为基准3D人脸进行贴图道具设计,得到待贴图3D人脸道具。
3.根据权利要求1所述的3D人脸道具贴图方法,其特征在于,所述根据所述透视投影矩阵模型,以及待贴图3D人脸道具的3D人脸关键点和当前帧待处理人脸图像中对应的2D人脸关键点,确定所述待贴图3D人脸道具的旋转矩阵,具体包括:
根据预先得到的人脸关键点检测模型对所述待贴图3D人脸道具和所述当前帧待处理人脸图像进行人脸关键点检测,得到所述待贴图3D人脸道具的3D人脸关键点和所述当前帧待处理人脸图像的2D人脸关键点;
根据正交投影建立所述3D人脸关键点到所述2D人脸关键点的投影方程组,并根据奇异值分解法对所述投影方程组中的旋转变量求解,将求解后得到的旋转变量作为所述待贴图3D人脸道具的旋转矩阵。
4.根据权利要求1所述的3D人脸道具贴图方法,其特征在于,所述将预设3D人脸关键点旋转并投影到当前帧待处理人脸图像所在的2D平面,根据投影后所述预设3D人脸关键点和对应的2D人脸关键点的比例关系,确定所述待贴图3D人脸道具的缩放系数,具体包括:
选择所述3D人脸关键点中的3D左眼关键点和3D右眼关键点作为预设3D人脸关键点;
根据所述旋转矩阵对所述3D左眼关键点和所述3D右眼关键点进行旋转变换;
根据所述透视投影矩阵模型对经旋转变换后的所述3D左眼关键点和所述3D右眼关键点进行透视投影变换,得到所述3D左眼关键点和所述3D右眼关键点在2D平面下的投影坐标;
根据所述3D左眼关键点和所述3D右眼关键点的所述投影坐标确定所述待贴图3D人脸道具的第一眼距;
根据所述2D人脸关键点中2D左眼关键点和2D右眼关键点的坐标确定所述当前帧待处理人脸图像的第二眼距;
根据所述第一眼距和所述第二眼距的比值确定所述待贴图3D人脸道具的缩放系数。
5.根据权利要求1所述的3D人脸道具贴图方法,其特征在于,所述根据所述旋转矩阵、所述缩放系数和所述位置变换参数将所述待贴图3D人脸道具渲染至所述当前帧待处理人脸图像,具体包括:
确定所述待贴图3D人脸道具中的光照节点和渲染节点;
遍历所述光照节点,得到光照参数;
遍历所述渲染节点,获取当前渲染节点的顶点数据,所述顶点数据包括表面法向量数据;
在顶点着色器中根据所述透视投影矩阵模型、所述旋转矩阵、所述缩放系数和所述位置变换参数对当前渲染节点中的顶点数据进行几何变换;
在片段着色器中,对当前渲染节点,根据所述光照参数和所述表面法向量数据得到当前像素的环境光系数、漫反射光系数和高光系数,基于所述环境光系数、所述漫反射光系数和所述高光系数得到当前像素渲染结果;
根据预先的渲染状态配置对当前渲染节点进行深度测试和颜色混合,得到最终待贴图3D人脸道具的颜色输出结果。
6.根据权利要求5所述的3D人脸道具贴图方法,其特征在于,所述得到最终待贴图3D人脸道具的颜色输出结果后,还包括:
获取当前渲染节点的骨骼数据,若根据所述骨骼数据判断当前渲染节点带有骨骼动画,则根据当前时间和所述骨骼数据的关键帧信息计算得到下一帧待处理人脸图像对应的所述待贴图3D人脸道具的顶点数据,并将所述待贴图3D人脸道具渲染至下一帧待处理人脸图像。
7.一种终端,其特征在于,包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至6任一项所述3D人脸道具贴图方法的步骤。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至6任一项所述3D人脸道具贴图方法的步骤。
CN202011511505.6A 2020-12-18 2020-12-18 一种3d人脸道具贴图方法、终端及存储介质 Active CN112508778B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011511505.6A CN112508778B (zh) 2020-12-18 2020-12-18 一种3d人脸道具贴图方法、终端及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011511505.6A CN112508778B (zh) 2020-12-18 2020-12-18 一种3d人脸道具贴图方法、终端及存储介质

Publications (2)

Publication Number Publication Date
CN112508778A CN112508778A (zh) 2021-03-16
CN112508778B true CN112508778B (zh) 2024-04-12

Family

ID=74922668

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011511505.6A Active CN112508778B (zh) 2020-12-18 2020-12-18 一种3d人脸道具贴图方法、终端及存储介质

Country Status (1)

Country Link
CN (1) CN112508778B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113450444B (zh) * 2021-07-09 2023-03-24 网易(杭州)网络有限公司 生成光照贴图的方法、装置、存储介质及电子设备
CN113628322B (zh) * 2021-07-26 2023-12-05 阿里巴巴(中国)有限公司 图像处理、ar显示与直播方法、设备及存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102999942A (zh) * 2012-12-13 2013-03-27 清华大学 三维人脸重建方法
CN103514443A (zh) * 2013-10-15 2014-01-15 中国矿业大学 一种基于lpp特征提取的单样本人脸识别迁移学习方法
CN103970518A (zh) * 2013-01-31 2014-08-06 腾讯科技(深圳)有限公司 一种逻辑窗口的3d渲染方法和装置
WO2014205768A1 (zh) * 2013-06-28 2014-12-31 中国科学院自动化研究所 基于增量主成分分析的特征与模型互匹配人脸跟踪方法
CN106709152A (zh) * 2016-11-28 2017-05-24 华中科技大学 一种电磁散射建模中快速构造低维减基空间的方法
CN107506732A (zh) * 2017-08-25 2017-12-22 奇酷互联网络科技(深圳)有限公司 贴图的方法、设备、移动终端以及计算机存储介质
CN108596008A (zh) * 2017-12-12 2018-09-28 南京理工大学 针对三维人脸测量的面部抖动补偿方法
CN111209818A (zh) * 2019-12-30 2020-05-29 新大陆数字技术股份有限公司 视频个体识别方法、系统、设备及可读存储介质
WO2020207270A1 (zh) * 2019-04-09 2020-10-15 五邑大学 一种三维人脸重建方法及其系统、装置、存储介质

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102999942A (zh) * 2012-12-13 2013-03-27 清华大学 三维人脸重建方法
CN103970518A (zh) * 2013-01-31 2014-08-06 腾讯科技(深圳)有限公司 一种逻辑窗口的3d渲染方法和装置
WO2014205768A1 (zh) * 2013-06-28 2014-12-31 中国科学院自动化研究所 基于增量主成分分析的特征与模型互匹配人脸跟踪方法
CN103514443A (zh) * 2013-10-15 2014-01-15 中国矿业大学 一种基于lpp特征提取的单样本人脸识别迁移学习方法
CN106709152A (zh) * 2016-11-28 2017-05-24 华中科技大学 一种电磁散射建模中快速构造低维减基空间的方法
CN107506732A (zh) * 2017-08-25 2017-12-22 奇酷互联网络科技(深圳)有限公司 贴图的方法、设备、移动终端以及计算机存储介质
CN108596008A (zh) * 2017-12-12 2018-09-28 南京理工大学 针对三维人脸测量的面部抖动补偿方法
WO2020207270A1 (zh) * 2019-04-09 2020-10-15 五邑大学 一种三维人脸重建方法及其系统、装置、存储介质
CN111209818A (zh) * 2019-12-30 2020-05-29 新大陆数字技术股份有限公司 视频个体识别方法、系统、设备及可读存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
一种人脸眼部特征提取和定位的方法;刘柯;李旭健;;计算机仿真(第07期);全文 *
基于3D人脸重建的光照、姿态不变人脸识别;柴秀娟;山世光;卿来云;陈熙霖;高文;;软件学报(第03期);全文 *

Also Published As

Publication number Publication date
CN112508778A (zh) 2021-03-16

Similar Documents

Publication Publication Date Title
US11468579B2 (en) Method and device for image processing
WO2021174939A1 (zh) 人脸图像的获取方法与系统
US8711143B2 (en) System and method for interactive image-based modeling of curved surfaces using single-view and multi-view feature curves
US7046840B2 (en) 3-D reconstruction engine
US20160314619A1 (en) 3-Dimensional Portrait Reconstruction From a Single Photo
US20130129190A1 (en) Model-Based Stereo Matching
WO2018009473A1 (en) Motion capture and character synthesis
US20220222897A1 (en) Portrait editing and synthesis
CN112508778B (zh) 一种3d人脸道具贴图方法、终端及存储介质
US11615587B2 (en) Object reconstruction with texture parsing
WO2024007478A1 (zh) 基于单手机的人体三维建模数据采集与重建方法及系统
CN113298936A (zh) 一种基于深度学习的多rgb-d全脸材质恢复方法
CN111382618B (zh) 一种人脸图像的光照检测方法、装置、设备和存储介质
CN113516781A (zh) 一种三维动态跟踪方法、装置、电子设备和存储介质
JP2023516656A (ja) 複数の特徴タイプに基づく効率的位置特定
CN114359453A (zh) 一种三维特效渲染方法、装置、存储介质及设备
JP2022518402A (ja) 三次元再構成の方法及び装置
CN114219001A (zh) 一种模型融合方法及相关装置
Delaunoy et al. Towards full 3D Helmholtz stereovision algorithms
CN110751026B (zh) 视频处理方法及相关装置
Wu et al. Photogrammetric reconstruction of free-form objects with curvilinear structures
CN110378948B (zh) 3d模型重建方法、装置及电子设备
CN113223137B (zh) 透视投影人脸点云图的生成方法、装置及电子设备
KR101627962B1 (ko) 피부 이미지의 미세 주름을 분석하는 방법 및 장치
CN116802692A (zh) 使用媒体数据的对象重构

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant