CN111583372B - 虚拟角色面部表情生成方法和装置、存储介质及电子设备 - Google Patents

虚拟角色面部表情生成方法和装置、存储介质及电子设备 Download PDF

Info

Publication number
CN111583372B
CN111583372B CN202010388896.0A CN202010388896A CN111583372B CN 111583372 B CN111583372 B CN 111583372B CN 202010388896 A CN202010388896 A CN 202010388896A CN 111583372 B CN111583372 B CN 111583372B
Authority
CN
China
Prior art keywords
facial expression
expression data
constraint condition
target
virtual character
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
CN202010388896.0A
Other languages
English (en)
Other versions
CN111583372A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202010388896.0A priority Critical patent/CN111583372B/zh
Publication of CN111583372A publication Critical patent/CN111583372A/zh
Application granted granted Critical
Publication of CN111583372B publication Critical patent/CN111583372B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/403D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本发明公开了一种虚拟角色的面部表情的生成方法和装置、存储介质及电子设备。其中,该方法包括:获取第一虚拟角色的第一面部表情数据,根据第一面部表情中目标区域上的部分顶点确定目标形变约束条件,根据预先确定的目标形变矩阵和目标形变约束条件,将第一面部表情数据转换为第一虚拟角色的第二面部表情数据的方式。本发明解决了相关技术中存在的自动生成的虚拟角色面部表情不匹配虚拟角色的面部特征,用户体验较差的技术问题。

Description

虚拟角色面部表情生成方法和装置、存储介质及电子设备
技术领域
本发明涉及计算机领域,具体而言,涉及一种虚拟角色的面部表情的生成方法和装置、存储介质及电子设备。
背景技术
目前现有的自动生成虚拟角色面部表情的技术方案均为将预设虚拟角色的面部表情由中立表情转化为其他表情的形变数据自动应用在目标虚拟角色的中立面部表情中,以得到对应于上述其他表情的虚拟角色面部表情数据,实现自动生成数字人脸。
但是,在上述自动生成数字人脸的过程中,如果目标虚拟角色的面部表情数据与预设虚拟角色的面部表情数据差异过大,则基于上述目标虚拟角色的中立面部表情进行形变迁移后得到的对应的面部表情存在不匹配虚拟角色的面部特征、观感不自然、用户体验较差的技术问题,具体表现可以例如:目标虚拟角色的眼睛无法准确地闭上、双眼皮的闭眼结果眼皮不平滑、嘴角会出现错误的顶点运动、下巴运动出现“地包天”等上下嘴唇对不齐,目标虚拟角色在预设区域的面部表情出现黑斑等情况。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种虚拟角色的面部表情的生成方法和装置、存储介质及电子设备,以至少解决相关技术中存在的自动生成的虚拟角色面部表情不匹配虚拟角色的面部特征,用户体验较差的技术问题。
根据本发明实施例的一个方面,提供了一种虚拟角色的面部表情的生成方法,包括:
获取第一虚拟角色的第一面部表情数据,其中,所述第一面部表情数据用于表示所述第一虚拟角色的第一面部表情;
根据所述第一面部表情中目标区域上的部分顶点确定目标形变约束条件;
根据预先确定的目标形变矩阵和所述目标形变约束条件,将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据,其中,所述第二面部表情数据用于表示所述第一虚拟角色的第二面部表情,所述目标形变矩阵是根据第二虚拟角色的第三面部表情数据和第四面部表情数据确定得到的形变矩阵,所述第四面部表情数据是从所述第三面部表情数据转换得到的面部表情数据。
可选地,所述根据所述第一面部表情中目标区域上的部分顶点确定目标形变约束条件,包括:
在所述目标区域包括所述第一虚拟角色的眼睛所在的区域的情况下,获取第一区域上的第一组顶点所构成的第一虚拟三角面片,其中,所述第一区域为所述第一虚拟角色的左眼所在的区域,所述第一组顶点包括所述左眼的上眼皮和下眼皮所在位置上的顶点和/或与所在位置相邻的顶点;根据所述第一虚拟三角面片确定第一形变约束条件,其中,所述目标形变约束条件包括所述第一形变约束条件,所述第一形变约束条件用于使得所述第二面部表情中的所述左眼的上眼皮和下眼皮相接或之间的间隔小于第一阈值;或
在所述目标区域包括所述第一虚拟角色的眼睛所在的区域的情况下,获取第二区域上的第二组顶点所构成的第二虚拟三角面片,其中,所述第二区域为所述第一虚拟角色的右眼所在的区域,所述第二组顶点包括所述右眼的上眼皮和下眼皮所在位置上的顶点和/或与所在位置相邻的顶点;根据所述第二虚拟三角面片确定第二形变约束条件,其中,所述目标形变约束条件包括所述第二形变约束条件,所述第二形变约束条件用于使得所述第二面部表情中的所述右眼的上眼皮和下眼皮相接或之间的间隔小于第二阈值;或
在所述目标区域包括所述第一虚拟角色的眼睛所在的区域的情况下,获取所述第一虚拟三角面片和所述第二虚拟三角面片;根据所述第一虚拟三角面片和所述第二虚拟三角面片确定第三形变约束条件,其中,所述目标形变约束条件包括所述第三形变约束条件,所述第三形变约束条件用于使得所述第二面部表情中的所述左眼的上眼皮和下眼皮相接或之间的间隔小于第一阈值、且使得所述第二面部表情中的所述右眼的上眼皮和下眼皮相接或之间的间隔小于第二阈值。
可选地,所述根据所述第一虚拟三角面片确定第一形变约束条件,包括:
将所述第一虚拟三角面片添加到目标虚拟三角面片集合中,得到第一虚拟三角面片集合;
将所述第一虚拟三角面片集合转换为用于表示所述第一虚拟角色的第二面部表情数据中顶点位置的第一矩阵;
将所述第一矩阵确定为所述第一形变约束条件,所述目标形变约束条件包括所述第一形变约束条件。
可选地,所述根据所述第二虚拟三角面片确定第二形变约束条件,包括:
将所述第二虚拟三角面片添加到目标虚拟三角面片集合中,得到第二虚拟三角面片集合;
将所述第二虚拟三角面片集合转换为用于表示所述第一虚拟角色的第二面部表情数据中顶点位置的第二矩阵;
将所述第二矩阵确定为所述第二形变约束条件,所述目标形变约束条件包括所述第二形变约束条件。
可选地,所述根据所述第一虚拟三角面片和所述第二虚拟三角面片确定第三形变约束条件,包括:
将所述第一虚拟三角面片和所述第二虚拟三角面片添加到目标虚拟三角面片集合中,得到第三虚拟三角面片集合;
将所述第三虚拟三角面片集合转换为用于表示所述第一虚拟角色的第二面部表情数据中顶点位置的第三矩阵;
将所述第三矩阵确定为所述第三形变约束条件,所述目标形变约束条件包括所述第三形变约束条件。
可选地,所述根据预先确定的目标形变矩阵和所述目标形变约束条件,将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据,包括:
所述目标形变约束条件满足如下目标公式:
Figure BDA0002485056100000041
其中,
Figure BDA0002485056100000042
为用于表示所述第二面部表情数据中的顶点位置的向量,c 为用于表示由所述目标形变矩阵确定的所述第四面部表情数据中的顶点位置的向量,A为用于表示所述目标形变约束条件的矩阵,所述目标形变约束条件包括第一形变约束条件或第二形变约束条件或第三形变约束条件;
利用最小二乘法对所述目标公式求解,得到用于表示所述第二面部表情数据中的顶点位置的向量
Figure BDA0002485056100000043
根据所述第二面部表情数据中的用于表示顶点位置的向量
Figure BDA0002485056100000044
将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据。
可选地,所述根据所述第一面部表情中目标区域上的部分顶点确定目标形变约束条件,包括:
在所述目标区域包括所述第一虚拟角色的嘴唇所在的区域的情况下,获取第三区域上的第三组顶点和第四区域上的第四组顶点,其中,所述第三区域为所述第一虚拟角色的上嘴唇所在的区域,所述第四区域为所述第一虚拟角色的下嘴唇所在的区域,所述第三组顶点中的每个顶点与所述第四组顶点中的每个顶点一一对应;
根据所述第三组顶点和所述第四组顶点确定第四形变约束条件,其中,所述目标形变约束条件包括所述第四形变约束条件,所述第四形变约束条件用于使得所述第三组顶点与所述第四组顶点在预设坐标轴上的投影误差小于第三阈值。
可选地,所述根据所述第三组顶点和所述第四组顶点确定第四形变约束条件,包括:
通过如下第一公式获取所述第三组顶点与所述第四组顶点在预设坐标轴上的投影误差:
Figure BDA0002485056100000051
其中,
Figure BDA0002485056100000052
表示所述第三组顶点中的第j个顶点在所述第二面部表情数据中的位置向量,
Figure BDA0002485056100000053
表示所述第四组顶点中的第j个顶点在所述第二面部表情数据中的位置向量,Pz表示将所述第三组顶点和所述第四组顶点在所述预设坐标轴上投影,所述预设坐标轴垂直于所述第一虚拟角色的面部, |M|用于表示所述第三组顶点中与所述第四组顶点一一对应的顶点数量;
将所述投影误差转换为用于表示所述第一虚拟角色的第二面部表情数据中顶点位置的第四矩阵;
将所述第四矩阵确定为所述第四形变约束条件。
可选地,所述根据预先确定的目标形变矩阵和所述目标形变约束条件,将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据,包括:
所述目标形变约束条件满足如下目标公式:
Figure BDA0002485056100000061
其中,
Figure BDA0002485056100000062
为用于表示所述第二面部表情数据中的顶点位置的向量,c 为用于表示由所述目标形变矩阵确定的所述第四面部表情数据中的顶点位置的向量,A为用于表示所述目标形变约束条件的矩阵,所述目标形变约束条件包括所述第四形变约束条件;
利用最小二乘法对所述目标公式求解,得到用于表示所述第二面部表情数据中的顶点位置的向量
Figure BDA0002485056100000063
根据所述第二面部表情数据中的用于表示顶点位置的向量
Figure BDA0002485056100000064
将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据。
可选地,所述根据所述第一面部表情中目标区域上的部分顶点确定目标形变约束条件,包括:
获取所述目标区域的第五组顶点和第六组顶点,其中,所述第五组顶点为根据所述目标形变矩阵确定的在将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据时需要发生位置变化的顶点,所述第六组顶点为与所述第五组顶点相邻的顶点;
根据所述第五组顶点和所述第六组顶点确定第五形变约束条件,其中,所述目标形变约束条件包括所述第五形变约束条件,所述第五形变约束条件用于使得所述第二面部表情中的所述第五组顶点所表示的面部表情信息与所述第六组顶点所表示的面部表情信息满足预定关系。
可选地,所述根据所述第五组顶点和所述第六组顶点确定第五形变约束条件,包括:
通过如下第二公式确定所述第五组顶点所表示的面部表情信息与所述第六组顶点所表示的面部表情信息的所述预定关系:
Figure BDA0002485056100000071
其中,Ni用于表示所述第六组顶点中与所述第五组顶点中第i个顶点相邻的顶点数量,
Figure BDA0002485056100000078
用于所述第二面部表情数据中第五组顶点的顶点位置的向量,
Figure BDA0002485056100000073
表示所述第二面部表情数据中第六组顶点的顶点位置的向量;
将所述预定关系转换为用于表示所述第一虚拟角色的第二面部表情数据中顶点位置的第五矩阵;
将所述第五矩阵确定为所述第五形变约束条件。
可选地,所述根据预先确定的目标形变矩阵和所述目标形变约束条件,将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据,包括:
所述目标形变约束条件满足如下目标公式:
Figure BDA0002485056100000074
其中,
Figure BDA0002485056100000075
为用于表示所述第二面部表情数据中的顶点位置的向量,c 为用于表示由所述目标形变矩阵确定的所述第四面部表情数据中的顶点位置的向量,A为用于表示所述目标形变约束条件的矩阵,所述目标形变约束条件包括所述第五形变约束条件;
利用最小二乘法对所述目标公式求解,得到用于表示所述第二面部表情数据中的顶点位置的向量
Figure BDA0002485056100000076
根据所述第二面部表情数据中的用于表示顶点位置的向量
Figure BDA0002485056100000077
将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据。
可选地,所述获取第一虚拟角色的第一面部表情数据,包括以下至少之一:
获取虚拟人物的所述第一面部表情数据,其中,所述第一虚拟角色包括所述虚拟人物;
获取目标虚拟生物的所述第一面部表情数据,其中,所述第一虚拟角色包括所述目标虚拟生物,所述目标虚拟生物不同于所述虚拟人物。
根据本发明实施例的另一方面,还提供了一种虚拟角色的面部表情的生成装置,包括:
获取模块,用于获取第一虚拟角色的第一面部表情数据,其中,所述第一面部表情数据用于表示所述第一虚拟角色的第一面部表情;
确定模块,用于根据所述第一面部表情中目标区域上的部分顶点确定目标形变约束条件;
转换模块,用于根据预先确定的目标形变矩阵和所述目标形变约束条件,将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据,其中,所述第二面部表情数据用于表示所述第一虚拟角色的第二面部表情,所述目标形变矩阵是根据第二虚拟角色的第三面部表情数据和第四面部表情数据确定得到的形变矩阵,所述第四面部表情数据是从所述第三面部表情数据转换得到的面部表情数据。
可选地,所述确定模块包括:
第一获取单元,用于在所述目标区域包括所述第一虚拟角色的眼睛所在的区域的情况下,获取第一区域上的第一组顶点所构成的第一虚拟三角面片,其中,所述第一区域为所述第一虚拟角色的左眼所在的区域,所述第一组顶点包括所述左眼的上眼皮和下眼皮所在位置上的顶点和/或与所在位置相邻的顶点;
第一确定单元,用于根据所述第一虚拟三角面片确定第一形变约束条件,其中,所述目标形变约束条件包括所述第一形变约束条件,所述第一形变约束条件用于使得所述第二面部表情中的所述左眼的上眼皮和下眼皮相接或之间的间隔小于第一阈值;或
第二获取单元,用于在所述目标区域包括所述第一虚拟角色的眼睛所在的区域的情况下,获取第二区域上的第二组顶点所构成的第二虚拟三角面片,其中,所述第二区域为所述第一虚拟角色的右眼所在的区域,所述第二组顶点包括所述右眼的上眼皮和下眼皮所在位置上的顶点和/或与所在位置相邻的顶点;
第二确定单元,用于根据所述第二虚拟三角面片确定第二形变约束条件,其中,所述目标形变约束条件包括所述第二形变约束条件,所述第二形变约束条件用于使得所述第二面部表情中的所述右眼的上眼皮和下眼皮相接或之间的间隔小于第二阈值;或
第三获取单元,用于在所述目标区域包括所述第一虚拟角色的眼睛所在的区域的情况下,获取所述第一虚拟三角面片和所述第二虚拟三角面片;
第三确定单元,用于根据所述第一虚拟三角面片和所述第二虚拟三角面片确定第三形变约束条件,其中,所述目标形变约束条件包括所述第三形变约束条件,所述第三形变约束条件用于使得所述第二面部表情中的所述左眼的上眼皮和下眼皮相接或之间的间隔小于第一阈值、且使得所述第二面部表情中的所述右眼的上眼皮和下眼皮相接或之间的间隔小于第二阈值。
可选地,所述第一确定单元用于通过如下方式根据所述第一虚拟三角面片确定第一形变约束条件:
将所述第一虚拟三角面片添加到目标虚拟三角面片集合中,得到第一虚拟三角面片集合;
将所述第一虚拟三角面片集合转换为用于表示所述第一虚拟角色的第二面部表情数据中顶点位置的第一矩阵;
将所述第一矩阵确定为所述第一形变约束条件,所述目标形变约束条件包括所述第一形变约束条件。
可选地,所述第二确定单元用于通过如下方式根据所述第二虚拟三角面片确定第二形变约束条件:
将所述第二虚拟三角面片添加到目标虚拟三角面片集合中,得到第二虚拟三角面片集合;
将所述第二虚拟三角面片集合转换为用于表示所述第一虚拟角色的第二面部表情数据中顶点位置的第二矩阵;
将所述第二矩阵确定为所述第二形变约束条件,所述目标形变约束条件包括所述第二形变约束条件。
可选地,所述第三确定单元用于通过如下方式根据所述第一虚拟三角面片和所述第二虚拟三角面片确定第三形变约束条件:
将所述第一虚拟三角面片和所述第二虚拟三角面片添加到目标虚拟三角面片集合中,得到第三虚拟三角面片集合;
将所述第三虚拟三角面片集合转换为用于表示所述第一虚拟角色的第二面部表情数据中顶点位置的第三矩阵;
将所述第三矩阵确定为所述第三形变约束条件,所述目标形变约束条件包括所述第三形变约束条件。
可选地,所述转换模块用于通过如下方式根据预先确定的目标形变矩阵和所述目标形变约束条件,将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据:
所述目标形变约束条件满足如下目标公式:
Figure BDA0002485056100000101
其中,
Figure BDA0002485056100000111
为用于表示所述第二面部表情数据中的顶点位置的向量,c 为用于表示由所述目标形变矩阵确定的所述第四面部表情数据中的顶点位置的向量,A为用于表示所述目标形变约束条件的矩阵,所述目标形变约束条件包括第一形变约束条件或第二形变约束条件或第三形变约束条件;
利用最小二乘法对所述目标公式求解,得到用于表示所述第二面部表情数据中的顶点位置的向量
Figure BDA0002485056100000112
根据所述第二面部表情数据中的用于表示顶点位置的向量
Figure BDA0002485056100000113
将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据。
可选地,所述确定模块包括:
第四获取单元,用于在所述目标区域包括所述第一虚拟角色的嘴唇所在的区域的情况下,获取第三区域上的第三组顶点和第四区域上的第四组顶点,其中,所述第三区域为所述第一虚拟角色的上嘴唇所在的区域,所述第四区域为所述第一虚拟角色的下嘴唇所在的区域,所述第三组顶点中的每个顶点与所述第四组顶点中的每个顶点一一对应;
第四确定单元,用于根据所述第三组顶点和所述第四组顶点确定第四形变约束条件,其中,所述目标形变约束条件包括所述第四形变约束条件,所述第四形变约束条件用于使得所述第三组顶点与所述第四组顶点在预设坐标轴上的投影误差小于第三阈值。
可选地,所述第四确定单元用于通过如下方式根据所述第三组顶点和所述第四组顶点确定第四形变约束条件:
通过如下第一公式获取所述第三组顶点与所述第四组顶点在预设坐标轴上的投影误差:
Figure BDA0002485056100000114
其中,
Figure BDA0002485056100000121
表示所述第三组顶点中的第j个顶点在所述第二面部表情数据中的位置向量,
Figure BDA0002485056100000122
表示所述第四组顶点中的第j个顶点在所述第二面部表情数据中的位置向量,Pz表示将所述第三组顶点和所述第四组顶点在所述预设坐标轴上投影,所述预设坐标轴垂直于所述第一虚拟角色的面部, |M|用于表示所述第三组顶点中与所述第四组顶点一一对应的顶点数量;
将所述投影误差转换为用于表示所述第一虚拟角色的第二面部表情数据中顶点位置的第四矩阵;
将所述第四矩阵确定为所述第四形变约束条件。
可选地,所述转换模块用于通过如下方式根据预先确定的目标形变矩阵和所述目标形变约束条件,将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据:
所述目标形变约束条件满足如下目标公式:
Figure BDA0002485056100000123
其中,
Figure BDA0002485056100000124
为用于表示所述第二面部表情数据中的顶点位置的向量,c 为用于表示由所述目标形变矩阵确定的所述第四面部表情数据中的顶点位置的向量,A为用于表示所述目标形变约束条件的矩阵,所述目标形变约束条件包括所述第四形变约束条件;
利用最小二乘法对所述目标公式求解,得到用于表示所述第二面部表情数据中的顶点位置的向量
Figure BDA0002485056100000125
根据所述第二面部表情数据中的用于表示顶点位置的向量
Figure BDA0002485056100000126
将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据。
可选地,所述确定模块包括:
第五获取单元,用于获取所述目标区域的第五组顶点和第六组顶点,其中,所述第五组顶点为根据所述目标形变矩阵确定的在将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据时需要发生位置变化的顶点,所述第六组顶点为与所述第五组顶点相邻的顶点;
第五确定单元,用于根据所述第五组顶点和所述第六组顶点确定第五形变约束条件,其中,所述目标形变约束条件包括所述第五形变约束条件,所述第五形变约束条件用于使得所述第二面部表情中的所述第五组顶点所表示的面部表情信息与所述第六组顶点所表示的面部表情信息满足预定关系。
可选地,所述第五确定单元用于通过如下方式根据所述第五组顶点和所述第六组顶点确定第五形变约束条件:
通过如下第二公式确定所述第五组顶点所表示的面部表情信息与所述第六组顶点所表示的面部表情信息的所述预定关系:
Figure BDA0002485056100000131
其中,Ni用于表示所述第六组顶点中与所述第五组顶点中第i个顶点相邻的顶点数量,
Figure BDA0002485056100000132
用于所述第二面部表情数据中第五组顶点中的顶点位置的向量,
Figure BDA0002485056100000133
表示所述第二面部表情数据中第六组顶点中的顶点位置的向量;
将所述预定关系转换为用于表示所述第一虚拟角色的第二面部表情数据中顶点位置的第五矩阵;
将所述第五矩阵确定为所述第五形变约束条件。
可选地,所述转换模块用于通过如下方式根据预先确定的目标形变矩阵和所述目标形变约束条件,将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据:
所述目标形变约束条件满足如下目标公式:
Figure BDA0002485056100000141
其中,
Figure BDA0002485056100000142
为用于表示所述第二面部表情数据中的顶点位置的向量,c 为用于表示由所述目标形变矩阵确定的所述第四面部表情数据中的顶点位置的向量,A为用于表示所述目标形变约束条件的矩阵,所述目标形变约束条件包括所述第五形变约束条件;
利用最小二乘法对所述目标公式求解,得到用于表示所述第二面部表情数据中的顶点位置的向量
Figure BDA0002485056100000143
根据所述第二面部表情数据中的用于表示顶点位置的向量
Figure BDA0002485056100000144
将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据。
可选地,所述获取模块用于获取以下至少之一的第一虚拟角色的第一面部表情数据:
获取虚拟人物的所述第一面部表情数据,其中,所述第一虚拟角色包括所述虚拟人物;
获取目标虚拟生物的所述第一面部表情数据,其中,所述第一虚拟角色包括所述目标虚拟生物,所述目标虚拟生物不同于所述虚拟人物。
根据本发明实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述虚拟角色的面部表情的生成方法。
根据本发明实施例的又一方面,还提供了一种电子设备,包括存储器和处理器,上述存储器中存储有计算机程序,上述处理器被设置为通过所述计算机程序执行上述的虚拟角色的面部表情的生成方法。
在本发明实施例中,采用获取第一虚拟角色的第一面部表情数据,根据第一面部表情中目标区域上的部分顶点确定目标形变约束条件,根据预先确定的目标形变矩阵和目标形变约束条件,将第一面部表情数据转换为第一虚拟角色的第二面部表情数据,通过对目标形变矩阵增加用于表示第一面部表情数据转换为第一虚拟角色的第二面部表情数据的形变约束条件的方式,达到了对自动生成的虚拟角色面部表情进行优化的目的,从而实现了提高自动生成虚拟角色面部表情的匹配度,优化用户使用体验的技术效果,进而解决了相关技术中存在的自动生成的虚拟角色面部表情不匹配虚拟角色的面部特征,用户体验较差的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种可选的虚拟角色的面部表情的生成方法的应用环境的示意图;
图2是根据本发明实施例的一种可选的虚拟角色的面部表情的生成方法的流程示意图;
图3是根据本发明实施例的一种可选的虚拟角色的面部表情的生成方法的示意图;
图4是根据本发明实施例的另一种可选的虚拟角色的面部表情的生成方法的示意图;
图5是根据本发明实施例的又一种可选的虚拟角色的面部表情的生成方法的示意图;
图6是根据本发明实施例的又一种可选的虚拟角色的面部表情的生成方法的示意图;
图7是根据本发明实施例的又一种可选的虚拟角色的面部表情的生成方法的示意图;
图8是根据本发明实施例的又一种可选的虚拟角色的面部表情的生成方法的示意图;
图9是根据本发明实施例的又一种可选的虚拟角色的面部表情的生成方法的示意图;
图10是根据本发明实施例的又一种可选的虚拟角色的面部表情的生成方法的示意图;
图11是根据本发明实施例的一种可选的虚拟角色的面部表情的生成装置的结构示意图;
图12是根据本发明实施例的另一种可选的虚拟角色的面部表情的生成装置的结构示意图;
图13是根据本发明实施例的一种可选的电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
首先,对本申请实施例中涉及的部分名词或者术语进行说明:
多边形网格(polygon mesh):三维计算机图形学中表示多面体形状的顶点与多边形的集合,通常由三角形、四边形或者其它的简单凸多边形组成。
顶点(vertex):几何学中,指两条或多条直线或曲线的相交点。在计算机图形学中,三维模型通常会表示为以三角形构成的多面体,其中,顶点不仅表示位置信息,还包含渲染所需的信息,如颜色、反射特性、纹理和表面法线等。
虚拟三角面片(triangle):由三条边和三个顶点组成的多边形,是计算机图形学中最基本的形状之一。
形变迁移(deformation transfer):将一个多边形网格顶点位置的运动变化赋予到其他多边形网格的顶点。
下面结合实施例对本发明进行说明:
根据本发明实施例的一个方面,提供了一种虚拟角色的面部表情的生成的方法,可选地,在本实施例中,上述虚拟角色的面部表情的生成方法可以应用于如图1所示的由服务器101和用户终端103所构成的硬件环境中。如图1所示,服务器101通过网络与终端103进行连接,可用于为用户终端或用户终端上安装的客户端提供服务(如应用服务、会议服务、游戏服务等),可在服务器上或独立于服务器设置数据库105,用于为服务器 101提供数据存储服务,上述服务器101可以是单一服务器,也可以是由多个服务器组成的服务器集群,或者是云服务器,上述用户终端103可以是配置有目标客户端的终端设备,可以包括但不限于以下至少之一:手机 (如Android手机、iOS手机等)、笔记本电脑、平板电脑、掌上电脑、MID(Mobile Internet Devices,移动互联网设备)、PAD、台式电脑、智能电视等。目标客户端可以是视频客户端、即时通信客户端、浏览器客户端、教育客户端等。上述网络可以包括但不限于:有线网络,无线网络,其中,该有线网络包括:局域网、城域网和广域网,该无线网络包括:蓝牙、 WIFI及其他实现无线通信的网络,可通过终端上配置的目标应用107的入口使用上述虚拟角色的面部表情的生成服务,例如,捏脸,特殊表情的制作等。上述仅是一种示例,本实施例中对此不作任何限定。
可选地,作为一种可选的实施方式,如图2所示,上述虚拟角色的面部表情的生成方法包括:
S202,获取第一虚拟角色的第一面部表情数据,其中,第一面部表情数据用于表示第一虚拟角色的第一面部表情;
S204,根据第一面部表情中目标区域上的部分顶点确定目标形变约束条件;
S206,根据预先确定的目标形变矩阵和目标形变约束条件,将第一面部表情数据转换为第一虚拟角色的第二面部表情数据,其中,第二面部表情数据用于表示第一虚拟角色的第二面部表情,目标形变矩阵是根据第二虚拟角色的第三面部表情数据和第四面部表情数据确定得到的形变矩阵,第四面部表情数据是从第三面部表情数据转换得到的面部表情数据。
可选地,在本实施例中,上述虚拟角色可以包括但不限于游戏场景中的虚拟角色、动画场景中的虚拟角色、电影场景中的虚拟角色等,上述虚拟角色的面部表情数据可以通过包括但不限于通过多边形网格来进行表示。上述应用场景仅是一种示例,具体进行虚拟角色面部表情数据转换的场景可以包括上述的一种或者多种的组合,以及其他需要自动生成虚拟角色面部表情的场景,本发明对此不做任何具体限定。
可选地,在本实施例中,上述第一虚拟角色为目标虚拟角色,也即,需要进行面部表情转换的虚拟角色,上述第二虚拟角色为模板虚拟角色,也即,用于记录形变迁移过程的虚拟角色。上述目标形变矩阵为上述第二虚拟角色进行面部表情转换时的形变矩阵,用于表示上述形变迁移变化过程。
可选地,在本实施例中,上述目标区域中的部分顶点可以通过系统预设,也可以通过人为指定的方式确定,上述目标形变约束条件为用于对上述形变迁移进行约束的约束条件,将上述形变迁移可以通过线性函数进行表示,例如:上述线性函数中的目标函数为:
Figure BDA0002485056100000191
上述线性函数中与目标函数对应的约束条件:
Figure BDA0002485056100000192
其中,|T|代表上述第一虚拟角色的面部数据中的虚拟三角面片的索引, |M|代表上述第一虚拟角色面部数据中与上述第二虚拟角色面部数据中对应的虚拟三角面片数量,p(vi)代表所有具备共享顶点的虚拟三角面片索引, T+d代表对于第一虚拟角色的面部数据中顶点的形变,sj代表第二虚拟角色的面部数据中的第sj个虚拟三角面片,tj代表第一虚拟角色的面部数据中的第tj个虚拟三角面片,
Figure BDA0002485056100000193
代表第sj个虚拟三角面片对应的形变矩阵,
Figure BDA0002485056100000194
代表第tj个虚拟三角面片的形变矩阵。
上述仅是一种示例,具体用于表示上述第一虚拟角色面部表情形变迁移的方式,本发明不做具体限定。
通过本实施例,采用获取第一虚拟角色的第一面部表情数据,根据第一面部表情中目标区域上的部分顶点确定目标形变约束条件,根据预先确定的目标形变矩阵和目标形变约束条件,将第一面部表情数据转换为第一虚拟角色的第二面部表情数据,通过对目标形变矩阵增加用于表示第一面部表情数据转换为第一虚拟角色的第二面部表情数据的形变约束条件的方式,达到了对自动生成的虚拟角色面部表情进行优化的目的,从而实现了提高自动生成虚拟角色面部表情的匹配度,优化用户使用体验的技术效果,进而解决了相关技术中存在的自动生成的虚拟角色面部表情不匹配虚拟角色的面部特征,用户体验较差的技术问题。
在一个可选的实施例中,根据第一面部表情中目标区域上的部分顶点确定目标形变约束条件,包括:在目标区域包括第一虚拟角色的眼睛所在的区域的情况下,获取第一区域上的第一组顶点所构成的第一虚拟三角面片,其中,第一区域为第一虚拟角色的左眼所在的区域,第一组顶点包括左眼的上眼皮和下眼皮所在位置上的顶点和/或与所在位置相邻的顶点;根据第一虚拟三角面片确定第一形变约束条件,其中,目标形变约束条件包括第一形变约束条件,第一形变约束条件用于使得第二面部表情中的左眼的上眼皮和下眼皮相接或之间的间隔小于第一阈值;或
在目标区域包括第一虚拟角色的眼睛所在的区域的情况下,获取第二区域上的第二组顶点所构成的第二虚拟三角面片,其中,第二区域为第一虚拟角色的右眼所在的区域,第二组顶点包括右眼的上眼皮和下眼皮所在位置上的顶点和/或与所在位置相邻的顶点;根据第二虚拟三角面片确定第二形变约束条件,其中,目标形变约束条件包括第二形变约束条件,第二形变约束条件用于使得第二面部表情中的右眼的上眼皮和下眼皮相接或之间的间隔小于第二阈值;或
在目标区域包括第一虚拟角色的眼睛所在的区域的情况下,获取第一虚拟三角面片和第二虚拟三角面片;根据第一虚拟三角面片和第二虚拟三角面片确定第三形变约束条件,其中,目标形变约束条件包括第三形变约束条件,第三形变约束条件用于使得第二面部表情中的左眼的上眼皮和下眼皮相接或之间的间隔小于第一阈值、且使得第二面部表情中的右眼的上眼皮和下眼皮相接或之间的间隔小于第二阈值。
可选地,在本实施例中,图3是根据本发明实施例的一种可选的虚拟角色的面部表情的生成方法的示意图,上述第一组顶点可以如图3所示,顶点302即为上述虚拟角色左眼的上眼皮和下眼皮所在位置上的顶点和/ 或与所在位置相邻的顶点,上述根据第一虚拟三角面片确定第一形变约束条件可以包括但不限于将上述顶点302构成的虚拟三角面片304添加到用于确定上述第一虚拟角色的面部数据中顶点的形变矩阵中,实现对上述第一虚拟角色的第一面部表情数据转化为第二面部表情数据的约束。
可选地,在本实施例中,上述第二组顶点可以如图3所示,顶点306 即为上述虚拟角色右眼的上眼皮和下眼皮所在位置上的顶点和/或与所在位置相邻的顶点,上述根据第二虚拟三角面片确定第二形变约束条件可以包括但不限于将上述顶点306构成的虚拟三角面片308添加到用于确定上述第二虚拟角色的面部数据中顶点的形变矩阵中,实现对上述第一虚拟角色的第一面部表情数据转化为第二面部表情数据的约束。
可选地,在本实施例中,上述第一阈值和上述第二阈值的大小可以相同或者不同,上述第二面部表情中的左眼的上眼皮和下眼皮相接或之间的间隔小于第一阈值用于表示上述第一虚拟角色的面部表情中的左眼的上下眼皮尽量接近,可以达到正常闭合的效果,上述第二面部表情中的右眼的上眼皮和下眼皮相接或之间的间隔小于第二阈值用于表示使得上述第一虚拟角色的面部表情中的右眼的上下眼皮尽量接近,达到正常闭合的效果。
在一个可选的实施例中,根据第一虚拟三角面片确定第一形变约束条件,包括:
将所述第一虚拟三角面片添加到目标虚拟三角面片集合中,得到第一虚拟三角面片集合;将所述第一虚拟三角面片集合转换为用于表示所述第一虚拟角色的第二面部表情数据中顶点位置的第一矩阵;将所述第一矩阵确定为所述第一形变约束条件,所述目标形变约束条件包括所述第一形变约束条件。
可选地,在本实施例中,图4是根据本发明实施例的另一种可选的虚拟角色的面部表情的生成方法的示意图,如图4所示,上述目标形变矩阵可以例如矩阵402,其中,矩阵402中每个元素表示上述第一虚拟角色的面部表情数据中的顶点索引,上述第二虚拟三角面片所关联的顶点在上述矩阵402中所对应的元素为元素404,元素404为0表示该元素所表示的顶点不进行形变迁移,通过将上述第一虚拟三角面片添加到目标虚拟三角面片集合,也即,将与上述第一虚拟三角面片相关联的顶点的形变添加到上述矩阵402中的元素404,生成上述第一矩阵408,能够达到根据第一虚拟三角面片对上述目标函数进行约束的技术效果。
上述矩阵中元素的数量以及元素的数值仅是示例,本发明不做任何具体限定。
在一个可选的实施例中,根据第二虚拟三角面片确定第二形变约束条件,包括:
将所述第二虚拟三角面片添加到目标虚拟三角面片集合中,得到第二虚拟三角面片集合;
将所述第二虚拟三角面片集合转换为用于表示所述第一虚拟角色的第二面部表情数据中顶点位置的第二矩阵;
将所述第二矩阵确定为所述第二形变约束条件,所述目标形变约束条件包括所述第二形变约束条件。
可选地,在本实施例中,如图4所示,上述目标形变矩阵可以例如矩阵402,其中,矩阵402中每个元素表示上述第一虚拟角色的面部表情数据中的顶点索引,上述第二虚拟三角面片所关联的顶点在上述矩阵402中所对应的元素为元素406,元素406为0表示该元素所表示的顶点不进行形变迁移,通过将上述第二虚拟三角面片添加到目标虚拟三角面片集合,也即,将与上述第二虚拟三角面片相关联的顶点的形变添加到上述矩阵 402中的元素406,生成上述第二矩阵410,能够达到根据第二虚拟三角面片对上述目标函数进行约束的技术效果。
上述矩阵中元素的数量以及元素的数值仅是示例,本发明不做任何具体限定。
在一个可选的实施例中,根据第一虚拟三角面片和第二虚拟三角面片确定第三形变约束条件,包括:
将所述第一虚拟三角面片和所述第二虚拟三角面片添加到目标虚拟三角面片集合中,得到第三虚拟三角面片集合;
将所述第三虚拟三角面片集合转换为用于表示所述第一虚拟角色的第二面部表情数据中顶点位置的第三矩阵;
将所述第三矩阵确定为所述第三形变约束条件,所述目标形变约束条件包括所述第三形变约束条件。
可选地,在本实施例中,如图4所示,上述目标形变矩阵可以例如矩阵402,其中,矩阵402中每个元素表示上述第一虚拟角色的面部表情数据中的顶点索引,上述第一虚拟三角面片和第二虚拟三角面片所关联的顶点在上述矩阵402中所对应的元素为元素404、元素406,元素404为0 或者元素406为0表示该元素所表示的顶点不进行形变迁移,通过将上述第一虚拟三角面片和第二虚拟三角面片添加到目标虚拟三角面片集合,也即,将与上述第一虚拟三角面片和第二虚拟三角面片相关联的顶点的形变添加到上述矩阵402中的元素404和元素406,生成上述第三矩阵412,能够达到根据第一虚拟三角面片和第二虚拟三角面片对上述目标函数进行约束的技术效果。
上述矩阵中元素的数量以及元素的数值仅是示例,本发明不做任何具体限定。
在一个可选的实施例中,根据预先确定的目标形变矩阵和目标形变约束条件,将第一面部表情数据转换为第一虚拟角色的第二面部表情数据,包括:
所述目标形变约束条件满足如下目标公式:
Figure BDA0002485056100000231
其中,
Figure BDA0002485056100000241
为用于表示所述第二面部表情数据中的顶点位置的向量,c 为用于表示由所述目标形变矩阵确定的所述第四面部表情数据中的顶点位置的向量,A为用于表示所述目标形变约束条件的矩阵,所述目标形变约束条件包括第一形变约束条件或第二形变约束条件或第三形变约束条件;
利用最小二乘法对所述目标公式求解,得到用于表示所述第二面部表情数据中的顶点位置的向量
Figure BDA0002485056100000242
根据所述第二面部表情数据中的用于表示顶点位置的向量
Figure BDA0002485056100000243
将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据。
可选地,在本实施例中,通过对上述公式进行求解,得到用于表示第一虚拟角色的第二面部表情数据的顶点位置的向量,具体求解过程可以如下:
Figure BDA0002485056100000244
通过根据上述向量
Figure BDA0002485056100000245
确定第一虚拟角色的面部表情数据中各个顶点的位置,从而完成面部表情数据的转换,自动生成需要的面部表情数据。
通过本实施例,利用获取优化后的用于表示第一虚拟角色的面部表情数据中各个顶点的位置的向量,进而根据上述顶点位置向量确定各个顶点的位置,解决了当第一虚拟角色的面部表情数据和第二虚拟角色的面部表情数据在眼睛大小上差别很大时,对于闭眼表情,即使第一虚拟角色的面部表情数据对应的虚拟三角面片按照第二虚拟角色的面部表情数据的顶点形变去变形,也会出现眼睛闭不上(第一虚拟角色的面部表情数据的眼睛轮廓大于第二虚拟角色的面部表情数据的眼睛轮廓,眼皮运动幅度不够) 或者眼皮“刺穿”(第一虚拟角色的面部表情数据的眼睛轮廓小于第二虚拟角色的面部表情数据的眼睛轮廓,眼皮运动幅度过大)等问题,使得形变之后的第一虚拟角色的面部表情数据上下眼皮尽量接近,图5是根据本发明实施例的又一种可选的虚拟角色的面部表情的生成方法的示意图,如图5所示,图5中虚拟角色502为未添加上述第一形变约束条件的效果图,可以从图5中虚拟角色502清楚的看到双眼506均存在缝隙,难以正常实现上眼皮和下眼皮的闭合,而虚拟角色504为添加上述第一形变约束条件之后的效果示意图,可以从图5中虚拟角色504清楚的看到双眼508均不存在缝隙,能够正常实现上眼皮和下眼皮的闭合,上述图5仅是一种效果示意图,本发明不做具体的限制。
在一个可选的实施例中,根据第一面部表情中目标区域上的部分顶点确定目标形变约束条件,包括:
在所述目标区域包括所述第一虚拟角色的嘴唇所在的区域的情况下,获取第三区域上的第三组顶点和第四区域上的第四组顶点,其中,所述第三区域为所述第一虚拟角色的上嘴唇所在的区域,所述第四区域为所述第一虚拟角色的下嘴唇所在的区域,所述第三组顶点中的每个顶点与所述第四组顶点中的每个顶点一一对应;
根据所述第三组顶点和所述第四组顶点确定第四形变约束条件,其中,所述目标形变约束条件包括所述第四形变约束条件,所述第四形变约束条件用于使得所述第三组顶点与所述第四组顶点在预设坐标轴上的投影误差小于第三阈值。
可选地,在本实施例中,图6是根据本发明实施例的又一种可选的虚拟角色的面部表情的生成方法的示意图,如图6所示,第三组顶点602即为上述第二面部表情中的上嘴唇的表情数据,第四组顶点604即为上述第二面部表情中的下嘴唇的表情数据,上述根据第三组顶点和第四组顶点确定第四形变约束条件可以包括但不限于将上述顶点602和上述顶点604构成的虚拟三角面片添加到用于确定上述第一虚拟角色的面部数据中顶点的形变矩阵中,实现对上述第一虚拟角色的第一面部表情数据转化为第二面部表情数据的约束。
可选地,在本实施例中,上述第三阈值可以由人为根据实际需要进行设置,将上述第三阈值设置的越小,则上述投影误差越小,上述第四形变约束条件对于将第一虚拟角色的由第一面部表情数据转换为第二面部表情数据时,约束效果更明显。上述第一虚拟角色嘴唇部位的表情数据更加真实自然,能够解决相关技术中自动生成虚拟角色面部表情出现“地包天”现象,下嘴唇与上嘴唇不够自然美观的技术问题。
在一个可选的实施例中,根据第三组顶点和第四组顶点确定第四形变约束条件,包括:
通过如下第一公式获取所述第三组顶点与所述第四组顶点在预设坐标轴上的投影误差:
Figure BDA0002485056100000261
其中,
Figure BDA0002485056100000262
表示所述第三组顶点中的第j个顶点在所述第二面部表情数据中的位置向量,
Figure BDA0002485056100000263
表示所述第四组顶点中的第j个顶点在所述第二面部表情数据中的位置向量,Pz表示将所述第三组顶点和所述第四组顶点在所述预设坐标轴上投影,所述预设坐标轴垂直于所述第一虚拟角色的面部, |M|用于表示所述第三组顶点中与所述第四组顶点一一对应的顶点数量;
将所述投影误差转换为用于表示所述第一虚拟角色的第二面部表情数据中顶点位置的第四矩阵;
将所述第四矩阵确定为所述第四形变约束条件。
可选地,在本实施例中,上述预设坐标轴可以如图6所示中的预设坐标轴606所示,通过将上述第三组顶点和第四组顶点中一一对应的顶点分别在上述预设坐标轴投影,得到上述第三组顶点和第四组顶点中一一对应的顶点在上述预设坐标轴606的投影距离之差,将上述投影距离之差确定为上述投影误差608,上述仅是一种示例,本发明对于投影误差的大小不做具体限定。
可选地,在本实施例中,图7是根据本发明实施例的又一种可选的虚拟角色的面部表情的生成方法的示意图,如图7所示,上述目标形变矩阵可以例如矩阵702,其中,矩阵702中每个元素表示上述第一虚拟角色的面部表情数据中的顶点索引,上述第三组顶点和上述第四组顶点可以对应于矩阵702中的元素704,元素706,将上述投影误差转换后添加到上述矩阵702中的元素704、元素706,生成上述第四矩阵708,根据第四矩阵确定对上述目标函数的约束条件。
上述矩阵中元素的数量以及元素的数值仅是示例,本发明不做任何具体限定。
在一个可选的实施例中,根据预先确定的目标形变矩阵和目标形变约束条件,将第一面部表情数据转换为第一虚拟角色的第二面部表情数据,包括:
所述目标形变约束条件满足如下目标公式:
Figure BDA0002485056100000271
其中,
Figure BDA0002485056100000272
为用于表示所述第二面部表情数据中的顶点位置的向量,c 为用于表示由所述目标形变矩阵确定的所述第四面部表情数据中的顶点位置的向量,A为用于表示所述目标形变约束条件的矩阵,所述目标形变约束条件包括所述第四形变约束条件;
利用最小二乘法对所述目标公式求解,得到用于表示所述第二面部表情数据中的顶点位置的向量
Figure BDA0002485056100000273
根据所述第二面部表情数据中的用于表示顶点位置的向量
Figure BDA0002485056100000274
将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据。
可选地,在本实施例中,通过对上述公式进行求解,得到用于表示第一虚拟角色的第二面部表情数据的顶点位置的向量,具体求解过程可以如下:
Figure BDA0002485056100000281
通过根据上述向量
Figure BDA0002485056100000282
确定第一虚拟角色的面部表情数据中各个顶点的位置,从而完成面部表情数据的转换,自动生成需要的面部表情数据,图8是根据本发明实施例的又一种可选的虚拟角色的面部表情的生成方法的示意图,如图8所示,可以从图8中虚拟角色802清楚的看到下嘴唇明显凸出,和上嘴唇存在差异,出现了“地包天”现象,而虚拟角色804为添加上述第四形变约束条件之后的效果示意图,可以从图8中虚拟角色804 清楚的看到上嘴唇与下嘴唇更加自然,解决了相关技术中存在的自动生成虚拟角色面部表情会出现的“地包天”现象,达到使自动生成的虚拟角色更加自然生动美观的技术效果,上述图8仅是一种效果示意图,本发明不做具体的限制。
在一个可选的实施例中,根据第一面部表情中目标区域上的部分顶点确定目标形变约束条件,包括:
获取所述目标区域的第五组顶点和第六组顶点,其中,所述第五组顶点为根据所述目标形变矩阵确定的在将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据时需要发生位置变化的顶点,所述第六组顶点为与所述第五组顶点相邻的顶点;
根据所述第五组顶点和所述第六组顶点确定第五形变约束条件,其中,所述目标形变约束条件包括所述第五形变约束条件,所述第五形变约束条件用于使得所述第二面部表情中的所述第五组顶点所表示的面部表情信息与所述第六组顶点所表示的面部表情信息满足预定关系。
可选地,在本实施例中,图9是根据本发明实施例的又一种可选的虚拟角色的面部表情的生成方法的示意图,如图9所示,第五组顶点902即为上述第二面部表情中发生位置变化的顶点,第六组顶点904即为与上述第五组顶点相邻的顶点,上述顶点位置仅是一种示意,本发明对此不做任何具体限定。
可选地,在本实施例中,上述预定关系可以包括但不限于上述第五组顶点的位置等于上述第六组顶点中与上述第五组顶点对应的顶点位置的平均值。
在一个可选的实施例中,根据第五组顶点和第六组顶点确定第五形变约束条件,包括:
通过如下第二公式确定所述第五组顶点所表示的面部表情信息与所述第六组顶点所表示的面部表情信息的所述预定关系:
Figure BDA0002485056100000291
其中,Ni用于表示所述第六组顶点中与所述第五组顶点中第i个顶点相邻的顶点数量,
Figure BDA0002485056100000292
用于所述第二面部表情数据中第五组顶点中的顶点位置的向量,
Figure BDA0002485056100000293
表示所述第二面部表情数据中第六组顶点中的顶点位置的向量;
将所述预定关系转换为用于表示所述第一虚拟角色的第二面部表情数据中顶点位置的第五矩阵;
将所述第五矩阵确定为所述第五形变约束条件。
可选地,在本实施例中,如图7所示,上述目标形变矩阵可以例如矩阵702,其中,矩阵702中每个元素表示上述第一虚拟角色的面部表情数据中的顶点索引,上述第五组顶点和上述第六组顶点可以对应于矩阵702 中的元素710,元素712,将上述预定关系转换后添加到上述矩阵702中的元素710、元素712,生成上述第五矩阵714,根据第五矩阵确定对上述目标函数的约束条件。
上述矩阵中元素的数量以及元素的数值仅是示例,本发明不做任何具体限定。
在一个可选的实施例中,根据预先确定的目标形变矩阵和目标形变约束条件,将第一面部表情数据转换为第一虚拟角色的第二面部表情数据,包括:
所述目标形变约束条件满足如下目标公式:
Figure BDA0002485056100000301
其中,
Figure BDA0002485056100000302
为用于表示所述第二面部表情数据中的顶点位置的向量,c 为用于表示由所述目标形变矩阵确定的所述第四面部表情数据中的顶点位置的向量,A为用于表示所述目标形变约束条件的矩阵,所述目标形变约束条件包括所述第五形变约束条件;
利用最小二乘法对所述目标公式求解,得到用于表示所述第二面部表情数据中的顶点位置的向量
Figure BDA0002485056100000303
根据所述第二面部表情数据中的用于表示顶点位置的向量
Figure BDA0002485056100000306
将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据。
可选地,在本实施例中,通过对上述公式进行求解,得到用于表示第一虚拟角色的第二面部表情数据的顶点位置的向量,具体求解过程可以如下:
Figure BDA0002485056100000304
通过根据上述向量
Figure BDA0002485056100000305
确定第一虚拟角色的面部表情数据中各个顶点的位置,从而完成面部表情数据的转换,自动生成需要的面部表情数据,图 10是根据本发明实施例的又一种可选的虚拟角色的面部表情的生成方法的示意图,如图10所示,可以从图10中虚拟角色1002清楚的看到虚拟角色1002的口腔中存在黑斑1006,而虚拟角色1004为添加上述第五形变约束条件之后的效果示意图,可以从图8中虚拟角色1004清楚的看到虚拟角色1002的口腔中不存在任何黑斑,且显示的虚拟角色的面部表情数据的效果非常平滑,解决了相关技术中存在的自动生成虚拟角色面部表情会出现“黑斑”,输出效果不平滑的技术问题,达到使自动生成的虚拟角色更加自然生动美观的技术效果,上述图10仅是一种效果示意图,本发明不做具体的限制。。
在一个可选的实施例中,获取第一虚拟角色的第一面部表情数据,包括以下至少之一:
获取虚拟人物的所述第一面部表情数据,其中,所述第一虚拟角色包括所述虚拟人物;
获取目标虚拟生物的所述第一面部表情数据,其中,所述第一虚拟角色包括所述目标虚拟生物,所述目标虚拟生物不同于所述虚拟人物。
可选地,在本实施例中,上述面部表情数据可以为虚拟人物或者虚拟生物的面部表情数据,上述虚拟生物可以包括但不限于虚拟动物,例如,马、狗等,虚拟植物,例如,向日葵等。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
根据本发明实施例的另一个方面,还提供了一种用于实施上述虚拟角色的面部表情的生成方法的虚拟角色的面部表情的生成装置。如图11所示,该装置包括:
获取模块1102,用于获取第一虚拟角色的第一面部表情数据,其中,所述第一面部表情数据用于表示所述第一虚拟角色的第一面部表情;
确定模块1104,用于根据所述第一面部表情中目标区域上的部分顶点确定目标形变约束条件;
转换模块1106,用于根据预先确定的目标形变矩阵和所述目标形变约束条件,将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据,其中,所述第二面部表情数据用于表示所述第一虚拟角色的第二面部表情,所述目标形变矩阵是根据第二虚拟角色的第三面部表情数据和第四面部表情数据确定得到的形变矩阵,所述第四面部表情数据是从所述第三面部表情数据转换得到的面部表情数据。
在一个可选的实施例中,图12是根据本发明实施例的又一种可选的虚拟角色的面部表情的生成装置的结构示意图,如图12所示,所述确定模块1104包括:
第一获取单元1202,用于在所述目标区域包括所述第一虚拟角色的眼睛所在的区域的情况下,获取第一区域上的第一组顶点所构成的第一虚拟三角面片,其中,所述第一区域为所述第一虚拟角色的左眼所在的区域,所述第一组顶点包括所述左眼的上眼皮和下眼皮所在位置上的顶点和/或与所在位置相邻的顶点;
第一确定单元1204,用于根据所述第一虚拟三角面片确定第一形变约束条件,其中,所述目标形变约束条件包括所述第一形变约束条件,所述第一形变约束条件用于使得所述第二面部表情中的所述左眼的上眼皮和下眼皮相接或之间的间隔小于第一阈值;或
第二获取单元1206,用于在所述目标区域包括所述第一虚拟角色的眼睛所在的区域的情况下,获取第二区域上的第二组顶点所构成的第二虚拟三角面片,其中,所述第二区域为所述第一虚拟角色的右眼所在的区域,所述第二组顶点包括所述右眼的上眼皮和下眼皮所在位置上的顶点和/或与所在位置相邻的顶点;
第二确定单元1208,用于根据所述第二虚拟三角面片确定第二形变约束条件,其中,所述目标形变约束条件包括所述第二形变约束条件,所述第二形变约束条件用于使得所述第二面部表情中的所述右眼的上眼皮和下眼皮相接或之间的间隔小于第二阈值;或
第三获取单元1210,用于在所述目标区域包括所述第一虚拟角色的眼睛所在的区域的情况下,获取所述第一虚拟三角面片和所述第二虚拟三角面片;
第三确定单元1212,用于根据所述第一虚拟三角面片和所述第二虚拟三角面片确定第三形变约束条件,其中,所述目标形变约束条件包括所述第三形变约束条件,所述第三形变约束条件用于使得所述第二面部表情中的所述左眼的上眼皮和下眼皮相接或之间的间隔小于第一阈值、且使得所述第二面部表情中的所述右眼的上眼皮和下眼皮相接或之间的间隔小于第二阈值。
在一个可选的实施例中,所述第一确定单元1204用于通过如下方式根据所述第一虚拟三角面片确定第一形变约束条件:将所述第一虚拟三角面片添加到目标虚拟三角面片集合中,得到第一虚拟三角面片集合;将所述第一虚拟三角面片集合转换为用于表示所述第一虚拟角色的第二面部表情数据中顶点位置的第一矩阵;将所述第一矩阵确定为所述第一形变约束条件,所述目标形变约束条件包括所述第一形变约束条件。
在一个可选的实施例中,所述第二确定单元1208用于通过如下方式根据所述第二虚拟三角面片确定第二形变约束条件:将所述第二虚拟三角面片添加到目标虚拟三角面片集合中,得到第二虚拟三角面片集合;将所述第二虚拟三角面片集合转换为用于表示所述第一虚拟角色的第二面部表情数据中顶点位置的第二矩阵;将所述第二矩阵确定为所述第二形变约束条件,所述目标形变约束条件包括所述第二形变约束条件。
在一个可选的实施例中,所述第三确定单元1212用于通过如下方式根据所述第一虚拟三角面片和所述第二虚拟三角面片确定第三形变约束条件:将所述第一虚拟三角面片和所述第二虚拟三角面片添加到目标虚拟三角面片集合中,得到第三虚拟三角面片集合;将所述第三虚拟三角面片集合转换为用于表示所述第一虚拟角色的第二面部表情数据中顶点位置的第三矩阵;将所述第三矩阵确定为所述第三形变约束条件,所述目标形变约束条件包括所述第三形变约束条件。
在一个可选的实施例中,所述转换模块1106用于通过如下方式根据预先确定的目标形变矩阵和所述目标形变约束条件,将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据:
所述目标形变约束条件满足如下目标公式:
Figure BDA0002485056100000341
其中,
Figure BDA0002485056100000342
为用于表示所述第二面部表情数据中的顶点位置的向量,c 为用于表示由所述目标形变矩阵确定的所述第四面部表情数据中的顶点位置的向量,A为用于表示所述目标形变约束条件的矩阵,所述目标形变约束条件包括第一形变约束条件或第二形变约束条件或第三形变约束条件;
利用最小二乘法对所述目标公式求解,得到用于表示所述第二面部表情数据中的顶点位置的向量
Figure BDA0002485056100000343
根据所述第二面部表情数据中的用于表示顶点位置的向量
Figure BDA0002485056100000344
将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据。
在一个可选的实施例中,所述确定模块1104包括:
第四获取单元1214,用于在所述目标区域包括所述第一虚拟角色的嘴唇所在的区域的情况下,获取第三区域上的第三组顶点和第四区域上的第四组顶点,其中,所述第三区域为所述第一虚拟角色的上嘴唇所在的区域,所述第四区域为所述第一虚拟角色的下嘴唇所在的区域,所述第三组顶点中的每个顶点与所述第四组顶点中的每个顶点一一对应;
第四确定单元1216,用于根据所述第三组顶点和所述第四组顶点确定第四形变约束条件,其中,所述目标形变约束条件包括所述第四形变约束条件,所述第四形变约束条件用于使得所述第三组顶点与所述第四组顶点在预设坐标轴上的投影误差小于第三阈值。
在一个可选的实施例中,所述第四确定单元1216用于通过如下方式根据所述第三组顶点和所述第四组顶点确定第四形变约束条件:
通过如下第一公式获取所述第三组顶点与所述第四组顶点在预设坐标轴上的投影误差:
Figure BDA0002485056100000351
其中,
Figure BDA0002485056100000352
表示所述第三组顶点中的第j个顶点在所述第二面部表情数据中的位置向量,
Figure BDA0002485056100000353
表示所述第四组顶点中的第j个顶点在所述第二面部表情数据中的位置向量,Pz表示将所述第三组顶点和所述第四组顶点在所述预设坐标轴上投影,所述预设坐标轴垂直于所述第一虚拟角色的面部, |M|用于表示所述第三组顶点中与所述第四组顶点一一对应的顶点数量;
将所述投影误差转换为用于表示所述第一虚拟角色的第二面部表情数据中顶点位置的第四矩阵;
将所述第四矩阵确定为所述第四形变约束条件。
在一个可选的实施例中,所述转换模块用于通过如下方式根据预先确定的目标形变矩阵和所述目标形变约束条件,将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据:
所述目标形变约束条件满足如下目标公式:
Figure BDA0002485056100000354
其中,
Figure BDA0002485056100000361
为用于表示所述第二面部表情数据中的顶点位置的向量,c 为用于表示由所述目标形变矩阵确定的所述第四面部表情数据中的顶点位置的向量,A为用于表示所述目标形变约束条件的矩阵,所述目标形变约束条件包括所述第四形变约束条件;
利用最小二乘法对所述目标公式求解,得到用于表示所述第二面部表情数据中的顶点位置的向量
Figure BDA0002485056100000362
根据所述第二面部表情数据中的用于表示顶点位置的向量
Figure BDA0002485056100000363
将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据。
在一个可选的实施例中,所述确定模块1104包括:
第五获取单元1218,用于获取所述目标区域的第五组顶点和第六组顶点,其中,所述第五组顶点为根据所述目标形变矩阵确定的在将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据时需要发生位置变化的顶点,所述第六组顶点为与所述第五组顶点相邻的顶点;
第五确定单元1220,用于根据所述第五组顶点和所述第六组顶点确定第五形变约束条件,其中,所述目标形变约束条件包括所述第五形变约束条件,所述第五形变约束条件用于使得所述第二面部表情中的所述第五组顶点所表示的面部表情信息与所述第六组顶点所表示的面部表情信息满足预定关系。
在一个可选的实施例中,所述第五确定单元1220用于通过如下方式根据所述第五组顶点和所述第六组顶点确定第五形变约束条件:
通过如下第二公式确定所述第五组顶点所表示的面部表情信息与所述第六组顶点所表示的面部表情信息的所述预定关系:
Figure BDA0002485056100000364
其中,Ni用于表示所述第六组顶点中与所述第五组顶点中第i个顶点相邻的顶点数量,
Figure BDA0002485056100000371
用于所述第二面部表情数据中第五组顶点中的顶点位置的向量,
Figure BDA0002485056100000372
表示所述第二面部表情数据中第六组顶点中的顶点位置的向量;
将所述预定关系转换为用于表示所述第一虚拟角色的第二面部表情数据中顶点位置的第五矩阵;
将所述第五矩阵确定为所述第五形变约束条件。
在一个可选的实施例中,所述转换模块1106用于通过如下方式根据预先确定的目标形变矩阵和所述目标形变约束条件,将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据:
所述目标形变约束条件满足如下目标公式:
Figure BDA0002485056100000373
其中,
Figure BDA0002485056100000374
为用于表示所述第二面部表情数据中的顶点位置的向量,c 为用于表示由所述目标形变矩阵确定的所述第四面部表情数据中的顶点位置的向量,A为用于表示所述目标形变约束条件的矩阵,所述目标形变约束条件包括所述第五形变约束条件;
利用最小二乘法对所述目标公式求解,得到用于表示所述第二面部表情数据中的顶点位置的向量
Figure BDA0002485056100000375
根据所述第二面部表情数据中的用于表示顶点位置的向量
Figure BDA0002485056100000376
将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据。
在一个可选的实施例中,所述获取模块1102用于获取以下至少之一的第一虚拟角色的第一面部表情数据:
获取虚拟人物的所述第一面部表情数据,其中,所述第一虚拟角色包括所述虚拟人物;
获取目标虚拟生物的所述第一面部表情数据,其中,所述第一虚拟角色包括所述目标虚拟生物,所述目标虚拟生物不同于所述虚拟人物。
根据本发明实施例的又一个方面,还提供了一种用于实施上述虚拟角色的面部表情的生成方法的电子设备,该电子设备可以是图1所示的终端设备或服务器。本实施例以该电子设备是服务器为例来说明。如图13所示,该电子设备包括存储器1302和处理器1304,该存储器1302中存储有计算机程序,该处理器1304被设置为通过计算机程序执行上述任一项方法实施例中的步骤。
在一个可选的实施例中,在本实施例中,上述电子设备可以位于计算机网络的多个网络设备中的至少一个网络设备。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,获取第一虚拟角色的第一面部表情数据,其中,第一面部表情数据用于表示第一虚拟角色的第一面部表情;
S2,根据第一面部表情中目标区域上的部分顶点确定目标形变约束条件;
S3,根据预先确定的目标形变矩阵和目标形变约束条件,将第一面部表情数据转换为第一虚拟角色的第二面部表情数据,其中,第二面部表情数据用于表示第一虚拟角色的第二面部表情,目标形变矩阵是根据第二虚拟角色的第三面部表情数据和第四面部表情数据确定得到的形变矩阵,第四面部表情数据是从第三面部表情数据转换得到的面部表情数据。
可选地,本领域普通技术人员可以理解,图13所示的结构仅为示意,电子装置电子设备也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile Internet Devices,MID)、 PAD等终端设备。图13其并不对上述电子装置电子设备的结构造成限定。例如,电子装置电子设备还可包括比图13中所示更多或者更少的组件(如网络接口等),或者具有与图13所示不同的配置。
其中,存储器1302可用于存储软件程序以及模块,如本发明实施例中的虚拟角色的面部表情的生成方法和装置对应的程序指令/模块,处理器 1304通过运行存储在存储器1302内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的虚拟角色的面部表情的生成方法。存储器1302可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器1302可进一步包括相对于处理器1304远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。其中,存储器1302 具体可以但不限于用于存储虚拟角色的面部表情数据等信息。作为一种示例,如图13所示,上述存储器1302中可以但不限于包括上述虚拟角色的面部表情的生成装置中的获取模块1102、确定模块1104及转换模块1106。此外,还可以包括但不限于上述虚拟角色的面部表情的生成装置中的其他模块单元,本示例中不再赘述。
可选地,上述的传输装置1306用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置1306包括一个网络适配器(Network Interface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置1306为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
此外,上述电子设备还包括:显示器1308,用于显示虚拟角色的面部表情数据;和连接总线1310,用于连接上述电子设备中的各个模块部件。
在其他实施例中,上述终端设备或者服务器可以是一个分布式系统中的一个节点,其中,该分布式系统可以为区块链系统,该区块链系统可以是由该多个节点通过网络通信的形式连接形成的分布式系统。其中,节点之间可以组成点对点(P2P,Peer To Peer)网络,任意形式的计算设备,比如服务器、终端等电子设备都可以通过加入该点对点网络而成为该区块链系统中的一个节点。
根据本发明的实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述计算机可读的存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,获取第一虚拟角色的第一面部表情数据,其中,第一面部表情数据用于表示第一虚拟角色的第一面部表情;
S2,根据第一面部表情中目标区域上的部分顶点确定目标形变约束条件;
S3,根据预先确定的目标形变矩阵和目标形变约束条件,将第一面部表情数据转换为第一虚拟角色的第二面部表情数据,其中,第二面部表情数据用于表示第一虚拟角色的第二面部表情,目标形变矩阵是根据第二虚拟角色的第三面部表情数据和第四面部表情数据确定得到的形变矩阵,第四面部表情数据是从第三面部表情数据转换得到的面部表情数据。
可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(Random Access Memory,RAM)、磁盘或光盘等。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (14)

1.一种虚拟角色的面部表情的生成方法,其特征在于,包括:
获取第一虚拟角色的第一面部表情数据,其中,所述第一面部表情数据用于表示所述第一虚拟角色的第一面部表情;
根据所述第一面部表情中目标区域上的部分顶点确定目标形变约束条件;
根据预先确定的目标形变矩阵和所述目标形变约束条件,将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据,其中,所述第二面部表情数据用于表示所述第一虚拟角色的第二面部表情,所述目标形变矩阵是根据第二虚拟角色的第三面部表情数据和第四面部表情数据确定得到的形变矩阵,所述第四面部表情数据是从所述第三面部表情数据转换得到的面部表情数据;
所述根据所述第一面部表情中目标区域上的部分顶点确定目标形变约束条件,包括:
在所述目标区域包括所述第一虚拟角色的嘴唇所在的区域的情况下,获取第三区域上的第三组顶点和第四区域上的第四组顶点,其中,所述第三区域为所述第一虚拟角色的上嘴唇所在的区域,所述第四区域为所述第一虚拟角色的下嘴唇所在的区域,所述第三组顶点中的每个顶点与所述第四组顶点中的每个顶点一一对应;
根据所述第三组顶点和所述第四组顶点确定第四形变约束条件,其中,所述目标形变约束条件包括所述第四形变约束条件,所述第四形变约束条件用于使得所述第三组顶点与所述第四组顶点在预设坐标轴上的投影误差小于第三阈值。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第一面部表情中目标区域上的部分顶点确定目标形变约束条件,包括:
在所述目标区域包括所述第一虚拟角色的眼睛所在的区域的情况下,获取第一区域上的第一组顶点所构成的第一虚拟三角面片,其中,所述第一区域为所述第一虚拟角色的左眼所在的区域,所述第一组顶点包括所述左眼的上眼皮和下眼皮所在位置上的顶点和/或与所在位置相邻的顶点;根据所述第一虚拟三角面片确定第一形变约束条件,其中,所述目标形变约束条件包括所述第一形变约束条件,所述第一形变约束条件用于使得所述第二面部表情中的所述左眼的上眼皮和下眼皮相接或之间的间隔小于第一阈值;或
在所述目标区域包括所述第一虚拟角色的眼睛所在的区域的情况下,获取第二区域上的第二组顶点所构成的第二虚拟三角面片,其中,所述第二区域为所述第一虚拟角色的右眼所在的区域,所述第二组顶点包括所述右眼的上眼皮和下眼皮所在位置上的顶点和/或与所在位置相邻的顶点;根据所述第二虚拟三角面片确定第二形变约束条件,其中,所述目标形变约束条件包括所述第二形变约束条件,所述第二形变约束条件用于使得所述第二面部表情中的所述右眼的上眼皮和下眼皮相接或之间的间隔小于第二阈值;或
在所述目标区域包括所述第一虚拟角色的眼睛所在的区域的情况下,获取所述第一虚拟三角面片和所述第二虚拟三角面片;根据所述第一虚拟三角面片和所述第二虚拟三角面片确定第三形变约束条件,其中,所述目标形变约束条件包括所述第三形变约束条件,所述第三形变约束条件用于使得所述第二面部表情中的所述左眼的上眼皮和下眼皮相接或之间的间隔小于第一阈值、且使得所述第二面部表情中的所述右眼的上眼皮和下眼皮相接或之间的间隔小于第二阈值。
3.根据权利要求2所述的方法,其特征在于,所述根据所述第一虚拟三角面片确定第一形变约束条件,包括:
将所述第一虚拟三角面片添加到目标虚拟三角面片集合中,得到第一虚拟三角面片集合;
将所述第一虚拟三角面片集合转换为用于表示所述第一虚拟角色的第二面部表情数据中顶点位置的第一矩阵;
将所述第一矩阵确定为所述第一形变约束条件,所述目标形变约束条件包括所述第一形变约束条件。
4.根据权利要求2所述的方法,其特征在于,所述根据所述第二虚拟三角面片确定第二形变约束条件,包括:
将所述第二虚拟三角面片添加到目标虚拟三角面片集合中,得到第二虚拟三角面片集合;
将所述第二虚拟三角面片集合转换为用于表示所述第一虚拟角色的第二面部表情数据中顶点位置的第二矩阵;
将所述第二矩阵确定为所述第二形变约束条件,所述目标形变约束条件包括所述第二形变约束条件。
5.根据权利要求2所述的方法,其特征在于,所述根据所述第一虚拟三角面片和所述第二虚拟三角面片确定第三形变约束条件,包括:
将所述第一虚拟三角面片和所述第二虚拟三角面片添加到目标虚拟三角面片集合中,得到第三虚拟三角面片集合;
将所述第三虚拟三角面片集合转换为用于表示所述第一虚拟角色的第二面部表情数据中顶点位置的第三矩阵;
将所述第三矩阵确定为所述第三形变约束条件,所述目标形变约束条件包括所述第三形变约束条件。
6.根据权利要求2所述的方法,其特征在于,所述根据预先确定的目标形变矩阵和所述目标形变约束条件,将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据,包括:
所述目标形变约束条件满足如下目标公式:
Figure FDA0003042189310000041
其中,
Figure FDA0003042189310000042
为用于表示所述第二面部表情数据中的顶点位置的向量,c为用于表示由所述目标形变矩阵确定的所述第四面部表情数据中的顶点位置的向量,A为用于表示所述目标形变约束条件的矩阵,所述目标形变约束条件包括第一形变约束条件或第二形变约束条件或第三形变约束条件,
Figure FDA0003042189310000043
用于表示所述第二面部表情数据中的顶点;
利用最小二乘法对所述目标公式求解,得到用于表示所述第二面部表情数据中的顶点位置的向量
Figure FDA0003042189310000044
根据所述第二面部表情数据中的用于表示顶点位置的向量
Figure FDA0003042189310000045
将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据。
7.根据权利要求1所述的方法,其特征在于,所述根据所述第三组顶点和所述第四组顶点确定第四形变约束条件,包括:
通过如下第一公式获取所述第三组顶点与所述第四组顶点在预设坐标轴上的投影误差:
Figure FDA0003042189310000046
其中,
Figure FDA0003042189310000047
表示所述第三组顶点中的第j个顶点在所述第二面部表情数据中的位置向量,
Figure FDA0003042189310000048
表示所述第四组顶点中的第j个顶点在所述第二面部表情数据中的位置向量,Pz表示将所述第三组顶点和所述第四组顶点在所述预设坐标轴上投影,所述预设坐标轴垂直于所述第一虚拟角色的面部,|M|用于表示所述第三组顶点中与所述第四组顶点一一对应的顶点数量;
将所述投影误差转换为用于表示所述第一虚拟角色的第二面部表情数据中顶点位置的第四矩阵;
将所述第四矩阵确定为所述第四形变约束条件。
8.根据权利要求1所述的方法,其特征在于,所述根据预先确定的目标形变矩阵和所述目标形变约束条件,将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据,包括:
所述目标形变约束条件满足如下目标公式:
Figure FDA0003042189310000051
其中,
Figure FDA0003042189310000052
为用于表示所述第二面部表情数据中的顶点位置的向量,c为用于表示由所述目标形变矩阵确定的所述第四面部表情数据中的顶点位置的向量,A为用于表示所述目标形变约束条件的矩阵,所述目标形变约束条件包括所述第四形变约束条件,
Figure FDA0003042189310000053
用于表示所述第二面部表情数据中的顶点;
利用最小二乘法对所述目标公式求解,得到用于表示所述第二面部表情数据中的顶点位置的向量
Figure FDA0003042189310000054
根据所述第二面部表情数据中的用于表示顶点位置的向量
Figure FDA0003042189310000055
将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据。
9.根据权利要求1所述的方法,其特征在于,所述根据所述第一面部表情中目标区域上的部分顶点确定目标形变约束条件,包括:
获取所述目标区域的第五组顶点和第六组顶点,其中,所述第五组顶点为根据所述目标形变矩阵确定的在将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据时需要发生位置变化的顶点,所述第六组顶点为与所述第五组顶点相邻的顶点;
根据所述第五组顶点和所述第六组顶点确定第五形变约束条件,其中,所述目标形变约束条件包括所述第五形变约束条件,所述第五形变约束条件用于使得所述第二面部表情中的所述第五组顶点所表示的面部表情信息与所述第六组顶点所表示的面部表情信息满足预定关系。
10.根据权利要求9所述的方法,其特征在于,所述根据所述第五组顶点和所述第六组顶点确定第五形变约束条件,包括:
通过如下第二公式确定所述第五组顶点所表示的面部表情信息与所述第六组顶点所表示的面部表情信息的所述预定关系:
Figure FDA0003042189310000061
其中,Ni用于表示所述第六组顶点中与所述第五组顶点中第i个顶点相邻的顶点数量,
Figure FDA0003042189310000062
用于所述第二面部表情数据中第五组顶点的顶点位置的向量,
Figure FDA0003042189310000063
表示所述第二面部表情数据中第六组顶点的顶点位置的向量;
将所述预定关系转换为用于表示所述第一虚拟角色的第二面部表情数据中顶点位置的第五矩阵;
将所述第五矩阵确定为所述第五形变约束条件。
11.根据权利要求9所述的方法,其特征在于,所述根据预先确定的目标形变矩阵和所述目标形变约束条件,将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据,包括:
所述目标形变约束条件满足如下目标公式:
Figure FDA0003042189310000064
其中,
Figure FDA0003042189310000065
为用于表示所述第二面部表情数据中的顶点位置的向量,c为用于表示由所述目标形变矩阵确定的所述第四面部表情数据中的顶点位置的向量,A为用于表示所述目标形变约束条件的矩阵,所述目标形变约束条件包括所述第五形变约束条件,
Figure FDA0003042189310000071
用于表示所述第二面部表情数据中的顶点;
利用最小二乘法对所述目标公式求解,得到用于表示所述第二面部表情数据中的顶点位置的向量
Figure FDA0003042189310000072
根据所述第二面部表情数据中的用于表示顶点位置的向量
Figure FDA0003042189310000073
将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据。
12.一种虚拟角色的面部表情的生成装置,其特征在于,包括:
获取模块,用于获取第一虚拟角色的第一面部表情数据,其中,所述第一面部表情数据用于表示所述第一虚拟角色的第一面部表情;
确定模块,用于根据所述第一面部表情中目标区域上的部分顶点确定目标形变约束条件;
转换模块,用于根据预先确定的目标形变矩阵和所述目标形变约束条件,将所述第一面部表情数据转换为所述第一虚拟角色的第二面部表情数据,其中,所述第二面部表情数据用于表示所述第一虚拟角色的第二面部表情,所述目标形变矩阵是根据第二虚拟角色的第三面部表情数据和第四面部表情数据确定得到的形变矩阵,所述第四面部表情数据是从所述第三面部表情数据转换得到的面部表情数据;
所述根据所述第一面部表情中目标区域上的部分顶点确定目标形变约束条件,包括:
在所述目标区域包括所述第一虚拟角色的嘴唇所在的区域的情况下,获取第三区域上的第三组顶点和第四区域上的第四组顶点,其中,所述第三区域为所述第一虚拟角色的上嘴唇所在的区域,所述第四区域为所述第一虚拟角色的下嘴唇所在的区域,所述第三组顶点中的每个顶点与所述第四组顶点中的每个顶点一一对应;
根据所述第三组顶点和所述第四组顶点确定第四形变约束条件,其中,所述目标形变约束条件包括所述第四形变约束条件,所述第四形变约束条件用于使得所述第三组顶点与所述第四组顶点在预设坐标轴上的投影误差小于第三阈值。
13.一种计算机可读的存储介质,所述计算机可读的存储介质包括存储的程序,其中,所述程序运行时执行所述权利要求1至11任一项中所述的方法。
14.一种电子设备,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至11任一项中所述的方法。
CN202010388896.0A 2020-05-09 2020-05-09 虚拟角色面部表情生成方法和装置、存储介质及电子设备 Active CN111583372B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010388896.0A CN111583372B (zh) 2020-05-09 2020-05-09 虚拟角色面部表情生成方法和装置、存储介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010388896.0A CN111583372B (zh) 2020-05-09 2020-05-09 虚拟角色面部表情生成方法和装置、存储介质及电子设备

Publications (2)

Publication Number Publication Date
CN111583372A CN111583372A (zh) 2020-08-25
CN111583372B true CN111583372B (zh) 2021-06-25

Family

ID=72124770

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010388896.0A Active CN111583372B (zh) 2020-05-09 2020-05-09 虚拟角色面部表情生成方法和装置、存储介质及电子设备

Country Status (1)

Country Link
CN (1) CN111583372B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112807688A (zh) * 2021-02-08 2021-05-18 网易(杭州)网络有限公司 游戏内表情设置方法、装置、处理器及电子装置
CN116778107A (zh) * 2022-03-11 2023-09-19 腾讯科技(深圳)有限公司 表情模型的生成方法、装置、设备及介质
CN115564642B (zh) * 2022-12-05 2023-03-21 腾讯科技(深圳)有限公司 图像变换方法、装置、电子设备、存储介质及程序产品

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109509242A (zh) * 2018-11-05 2019-03-22 网易(杭州)网络有限公司 虚拟对象面部表情生成方法及装置、存储介质、电子设备

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9202300B2 (en) * 2013-06-20 2015-12-01 Marza Animation Planet, Inc Smooth facial blendshapes transfer
CN105139438B (zh) * 2014-09-19 2018-01-12 电子科技大学 视频人脸卡通动画生成方法
CN107180446B (zh) * 2016-03-10 2020-06-16 腾讯科技(深圳)有限公司 人物面部模型的表情动画生成方法及装置
CN107103646B (zh) * 2017-04-24 2020-10-23 厦门黑镜科技有限公司 一种表情合成方法及装置
CN109087379B (zh) * 2018-08-09 2020-01-17 北京华捷艾米科技有限公司 人脸表情的迁移方法和人脸表情的迁移装置
CN109272566A (zh) * 2018-08-15 2019-01-25 广州多益网络股份有限公司 虚拟角色的动作表情编辑方法、装置、设备、系统及介质
CN109191507B (zh) * 2018-08-24 2019-11-05 北京字节跳动网络技术有限公司 三维人脸图像重建方法、装置和计算机可读存储介质
CN110363135B (zh) * 2019-07-10 2022-09-27 广州市百果园信息技术有限公司 人眼闭合程度的确定方法、眼睛控制方法和装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109509242A (zh) * 2018-11-05 2019-03-22 网易(杭州)网络有限公司 虚拟对象面部表情生成方法及装置、存储介质、电子设备

Also Published As

Publication number Publication date
CN111583372A (zh) 2020-08-25

Similar Documents

Publication Publication Date Title
US11380050B2 (en) Face image generation method and apparatus, device, and storage medium
CN111583372B (zh) 虚拟角色面部表情生成方法和装置、存储介质及电子设备
US11823315B2 (en) Animation making method and apparatus, computing device, and storage medium
CN109448099B (zh) 画面的渲染方法、装置、存储介质及电子装置
CN107358649B (zh) 地形文件的处理方法和装置
CN109325990B (zh) 图像处理方法及图像处理装置、存储介质
CN106710003B (zh) 一种基于OpenGL ES的三维拍照方法和系统
CN112837406B (zh) 一种三维重建方法、装置及系统
CN113313818B (zh) 一种三维重建方法、装置及系统
KR102491140B1 (ko) 가상 아바타 생성 방법 및 장치
CN108043027B (zh) 存储介质、电子装置、游戏画面的显示方法和装置
CN112102480B (zh) 图像数据处理方法、装置、设备以及介质
CN110458924B (zh) 一种三维脸部模型建立方法、装置和电子设备
EP1866870B1 (en) Rendering 3d computer graphics using 2d computer graphics capabilities
CN115222862B (zh) 虚拟人衣物生成方法、装置、设备、介质及程序产品
CN109697748A (zh) 模型压缩处理方法、模型贴图处理方法装置、存储介质
CN113095206A (zh) 虚拟主播生成方法、装置和终端设备
CN116342782A (zh) 生成虚拟形象渲染模型的方法和装置
CN112206519B (zh) 实现游戏场景环境变化的方法、装置、存储介质及计算机设备
US20230342942A1 (en) Image data processing method, method and apparatus for constructing digital virtual human, device, storage medium, and computer program product
WO2019042028A1 (zh) 全视向的球体光场渲染方法
CN112827169A (zh) 游戏图像处理方法和装置、存储介质及电子设备
CN115830203A (zh) 分布式渲染方法、装置、设备、介质和程序产品
CN115393487A (zh) 一种虚拟角色模型处理方法、装置、电子设备及存储介质
CN115526967A (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