CN115512193A - 面部表情生成方法和装置 - Google Patents
面部表情生成方法和装置 Download PDFInfo
- Publication number
- CN115512193A CN115512193A CN202211010113.0A CN202211010113A CN115512193A CN 115512193 A CN115512193 A CN 115512193A CN 202211010113 A CN202211010113 A CN 202211010113A CN 115512193 A CN115512193 A CN 115512193A
- Authority
- CN
- China
- Prior art keywords
- expression
- expression base
- base set
- coefficient
- bases
- 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.)
- Pending
Links
- 230000008921 facial expression Effects 0.000 title claims abstract description 195
- 238000000034 method Methods 0.000 title claims abstract description 75
- 230000014509 gene expression Effects 0.000 claims abstract description 899
- 238000012545 processing Methods 0.000 claims abstract description 20
- 238000013508 migration Methods 0.000 claims description 88
- 230000005012 migration Effects 0.000 claims description 88
- 239000011159 matrix material Substances 0.000 claims description 35
- 238000013461 design Methods 0.000 abstract description 10
- 238000004891 communication Methods 0.000 description 11
- 210000004709 eyebrow Anatomy 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 210000000744 eyelid Anatomy 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000007429 general method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/80—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/174—Facial expression recognition
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请提供了一种面部表情生成方法,涉及数据处理领域。包括获取第一表情基集合和第一表情基集合对应的第一表情基系数,第一表情基集合中多个第一表情基按照第一表情基系数的叠加用于表示第一面部表情;根据第一表情基集合、第二表情基集合和第一表情基系数,确定第二表情基系数,其中,所述第二表情基系数用于对第二表情基集合中多个第二表情基进行叠加以生成第二面部表情。无需基于第二表情基集合重新进行面部表情的设计,提高设计效率,降低人工成本。
Description
技术领域
本申请涉及数据处理领域,尤其涉及一种面部表情生成方法和装置,以及一种计算机可读存储介质。
背景技术
随着虚拟现实(virtual reality,VR)技术、增强现实(augmented reality,AR)技术逐渐发展,终端设备的性能不断提高,对3D虚拟形象的需求越来越强烈。
形变动画是一种三维(3-dimension,3D)计算机动画方法。在形变动画中,可以通过表情基集合中各个维度的表情基按照表情基系数的叠加表示面部表情。为了生成更加精细的面部表情,可以对原有的表情基集合中的某些表情基进行修改或增减。在对表情基集合进行更新之后,需要基于更新后的表情基集合中的各个表情基重新设计面部表情,成本较高。
发明内容
有鉴于此,本申请提供了一种面部表情生成方法和装置,通过根据第一表情基集合及其对应的第一表情基系数以及第二表情基集合,确定第二表情基系数,从而可以根据第二表情基集合和第二表情基系数,生成第二面部表情,无需基于第二表情基集合重新进行面部表情的设计,提高设计效率,降低人工成本。
本申请实施例第一方面提供了面部表情生成方法,包括:
获取第一表情基集合和所述第一表情基集合对应的第一表情基系数,所述第一表情基集合中多个第一表情基按照所述第一表情基系数的叠加用于表示第一面部表情;
根据所述第一表情基集合、第二表情基集合和所述第一表情基系数,确定第二表情基系数,其中,所述第二表情基系数用于对所述述第二表情基集合中多个第二表情基进行叠加以生成第二面部表情。
在一个可选的实施方式中,所述根据所述第一表情基集合、第二表情基集合和所述第一表情基系数,确定第二表情基系数,包括:
根据所述第一表情基集合和所述第二表情基集合,确定迁移矩阵,所述迁移矩阵用于表示所述多个第一表情基与所述多个第二表情基之间的线性相关关系;
根据所述迁移矩阵和所述第一表情基系数,确定所述第二表情基系数。
在一个可选的实施方式中,所述迁移矩阵包括所述多个第一表情基中每个第一表情基对应的迁移系数;
所述根据所述第一表情基集合和所述第二表情基集合,确定迁移矩阵,包括:根据所述第一表情基集合和所述第二表情基集合,确定所述多个迁移系数,任一个所述第一表情基对应的迁移系数用于表示所述任一个第一表情基与所述多个第二表情基之间的线性相关关系。
在一个可选的实施方式中,所述根据所述第一表情基集合和所述第二表情基集合,确定所述多个迁移系数,包括:根据所述第二表情基集合以及所述任一个所述第一表情基,确定所述任一个第一表情基对应的所述迁移系数。
在一个可选的实施方式中,所述根根据所述第二表情基集合以及任一个所述第一表情基,确定所述任一个第一表情基对应的所述迁移系数,包括:根据第三面部表情与所述任一个第一表情基之间的第一差异,确定所述任一个第一表情基对应的所述迁移系数,所述第三面部表情是所述多个第二表情基按照关系系数的叠加,所述任一个第一表情基对应的所述迁移系数是使得所述第一差异最小的关系系数。
在一个可选的实施方式中,所述根据第三面部表情与所述任一个第一表情基之间的第一差异,确定所述任一个第一表情基对应的所述迁移系数,包括:利用最小二乘法,确定所述任一个第一表情基对应的迁移系数,所述第一差异为第三面部表情的多个网格顶点坐标与所述任一个第一表情基的相应网格顶点坐标的距离平方和。
在一个可选的实施方式中,所述根据第一表情基集合、第二表情基集合和所述第一表情基系数,确定第二表情基系数,包括:
根据所述第一表情基集合和所述第一表情基系数,生成所述第一面部表情;
根据所述第一面部表情和所述第二表情基集合,确定所述第二表情基系数。
在一个可选的实施方式中,所述根据所述第一面部表情和所述第二表情基集合,确定所述第二表情基系数,包括:
利用最小二乘法,根据第四面部表情与所述第一面部表情之间的第二差异,确定所述第二表情基系数,所述第四面部表情是所述多个第二表情基按照表情基系数的叠加,所述第二表情基系数是使得所述第二差异最小的表情基系数。
在一个可选的实施方式中,所述多个第一表情基和所述多个第二表情基中各个表情基的拓扑结构相同。
在一个可选的实施方式中,所述方法还包括:根据至少一个用户操作,对所述第一表情基集合中的部分第一表情基进行调整,以得到所述第二表情基集合。
在一个可选的实施方式中,所述获取第一表情基集合和所述第一表情基集合对应的第一表情基系数,包括:
在表情基集合与表情基系数的对应关系记录的多个表情基集合中确定所述第一表情基集合,所述第一表情基集合与所述第二表情基集合包括顶点位置相同的表情基。
本申请实施例第二方面提供了一种面部表情生成装置,包括:获取单元、处理单元和生成单元。
获取单元用于,获取第一表情基集合和所述第一表情基集合对应的第一表情基系数,所述第一表情基集合中多个第一表情基按照所述第一表情基系数的叠加用于表示第一面部表情;
处理单元用于,根据所述第一表情基集合、第二表情基集合和所述第一表情基系数,确定第二表情基系数,其中,所述第二表情基系数用于对所述述第二表情基集合中多个第二表情基进行叠加以生成第二面部表情。
本申请实施例第三方面提供了一种面部表情生成装置,包括:存储器和处理器,存储器和处理器耦合。
其中,存储器用于存储一条或多条计算机指令。
处理器用于执行一条或多条计算机指令,以实现上述第一方面所述的方法。
本申请实施例第四方面还提供了一种计算机可读存储介质,其上存储有一条或多条计算机指令,其特征在于,该指令被处理器执行以实现第一方面所述的方法。
本申请实施例所提供的技术方案,根据第一表情基集合、第二表情基集合以及第一表情基系数可以确定第二表情基系数,根据第二表情基系数和第二表情基集合即可生成面部表情。第一表情基集合以及第一表情基系数可以表示基于第一表情基集合设计的面部表情。从而,对于新的第二表情基集合,全自动化实现表情基系数重定向以及基于第二表情基集合的面部表情生成,不需要人工参与,可以不再基于第二表情基集合重新进行表情设计,降低人工成本,提高设计效率。
附图说明
图1是一种面部表情生成方法的示意图;
图2是本申请实施例提供的一种面部表情生成方法的示意性流程图;
图3是本申请实施例提供的一种面部表情生成方法的示意性流程图;
图4是本申请实施例提供的一种面部表情生成方法的示意性流程图;
图5是本申请实施例提供的一种面部表情生成装置的示意性结构图;
图6是本申请实施例提供的一种面部表情生成装置的示意性结构图。
具体实施方式
本申请提供了一种面部表情生成方法和装置。根据第一表情基集合、第二表情基集合以及第一表情基系数可以确定第二表情基系数,根据第二表情基系数和第二表情基集合即可生成面部表情,不需要人工参与,降低人工成本,提高设计效率。
为了使本领域的技术人员能够更好的理解本申请的技术方案,下面结合本申请实施例中的附图,对本申请进行清楚、完整地描述。但本申请能够以很多不同于上述描述的其他方式进行实施,因此,基于本申请提供的实施例,本领域普通技术人员在不经过创造性劳动的情况下,所获得的所有其他实施例,都应属于本申请保护的范围。
需要说明的是,本申请的权利要求书、说明书及附图中的术语“第一”、“第二”、“第三”等是用于区别类似的对象,并不用于描述特定的顺序或先后次序。这样使用的数据在适当情况下是可以互换的,以便于本文所描述的本申请的实施例,能够以除了在本文图示或描述的内容以外的顺序实施。此外,术语“包括”、“具有”以及他们的变形形式,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
随着虚拟现实(virtual reality,VR)技术、增强现实(augmented reality,AR)技术逐渐发展,终端设备的性能不断提高,对3D虚拟形象的需求越来越强烈。
形变动画是一种三维(3-dimension,3D)计算机动画方法,是一种改变对象的位置、形状颜色等属性的动画形式。利用形变动画技术,可以生成动画表情。
在形变动画技术中,通过对表情基集合中各个维度的表情基按照表情基系数进行叠加,可以形成面部表情。表情基集合中的各个维度的表情基对应于相同的拓扑。模型可以是三维的,可以表示为多边形网格模型。多边形网格模型可以包括网格(mesh)和纹理(texture)信息。网格用于描绘物体的形状,可以包括多个顶点(vertex)。网格中的各个顶点均可以通过三维坐标(xyz)表示。网格中相邻的顶点可以连接以形成的三角形、四边形或者其它的简单凸多边形。纹理信息可以表示为各个顶点或多边形的颜色信息(RGB)和光反射强度(intensity)等。
表情基集合中各个维度的表情基按照表情基系数的叠加,可以是各个维度的表情基与表情基系数的线性组合或非线性组合。
表情基集合中多个维度的表情基可以理解为多种局部表情,不同的局部表情可以对应于不同的语义。例如,多个局部表情的语义可以包括左眉内侧上移、右眼下眼睑提升、上嘴唇外翻、张嘴、撇嘴、抬眉、皱眉。
也就是说,在根据表情基集合和表情基系数生成面部表情时,相当于是采用一系列的系数对表情基集合对应的多种局部表情进行叠加。
如图1所示,面部表情模型110中各个顶点的位置集合P110可以表示为:a1×P121+a2×P122+...+an×P12n,其中,P121至P12n分别为表情基集合中维度1至n的表情基121至12n中顶点的位置集合,表情基系数包括参数a1至an。从而,根据表情基集合和表情基系数,可以确定面部表情。也就是说,表情基系数可以是在生成面部表情时,与各个表情基进行线性组合所采用的系数。
在游戏等场景中,角色模型动画制作过程中,原有的表情基集合中表情基的数量可能较少,并且表情基表示的表情可能较为粗糙。利用原有的表情基集合生成的动画表情需要动捕较多动画。
可以对原有的表情基集合中的某些表情基进行修改,或者在原有表情基集合中删除原有表情基或添加新的表情基,以形成更新后的表情基集合。更新后的表情基集合可以包括更多的表情基,并且表情基表示的表情可以更为精细。从而,基于更新后的表情基集合可以生成更加贴切真实的面部表情。
在对表情基集合进行更新之后,采用人工手动的方式,在设计新的表情基之后,基于新的表情基重新设计虚拟表情,成本较高。例如,一种通用的表情基(blendshape)系数重定向算法,通过人工将利用新的表情基集合表示的表情与原表情基集合表示的至少几十个表情分别进行手动对齐,以确定每个表情在新的表情基集合对应的表情基系数,不能实现完全自动化,这种手工对齐的方式非常消耗人力,在人脸模型较多的情况下会大大的增加用人成本和耗时。特别是,即使是将这种通用的方法应用到相同拓扑、不同表情基集合的表情系数重定向问题上,仍旧要采用人手工对齐的方法。所以,即使在同拓扑人脸模型下,通用的技术方案仍旧是高人力成本和高耗时的。
为了解决上述问题,本申请实施例提供了一种面部表情生成方法和装置,以及计算机可读存储介质。
图2是本申请实施例提供的一种面部表情生成方法的示意性流程图。该方法应用于电子设备,该电子设备可以是服务器、终端设备,也可以是其他能够进行数据处理的电子设备,其中,终端设备可以包括台式电脑、笔记本电脑、手机、平板电脑、游戏机、车载终端等,本申请实施例不具体限定。
如图2所示,本申请实施例所提供的面部表情生成方法包括以下几个步骤:
在S201,获取第一表情基集合和所述第一表情基集合对应的第一表情基系数,所述第一表情基集合中多个第一表情基按照所述第一表情基系数的叠加用于表示第一面部表情。
表情基集合可以用于表示虚拟人物或拟人动物的面部表情。
在一个表情基集合中,不同的表情基可以用于表示不同的局部表情,即不同的局部表情可以对应于不同的语义,如左眉内侧上移、右眼下眼睑提升、上嘴唇外翻、张嘴、撇嘴、抬眉、皱眉等。
对于第一表情基集合,可以存储有多个第一表情基系数。第一表情基集合中各个维度的第一表情基按照不同第一表情基系数进行叠加,可以得到不同的第一面部表情。该多个第一表情基系数可以是预设的。也就是说,第一表情基系数可以理解为对基于第一表情基集合设计的面部表情的存储形式。
表情基集合的维度与该表情基集合对应的表情基系数的维度相等。也就是说,第一表情基集合与第一表情基系数的维度相等。
第一表情基集合和第一表情基系数可以存储在存储器中。可以在存储器中读取第一表情基集合和第一表情基系数。用户可以通过美术软件设计第一表情基集合。设计好的第一表情基集合可以存储为obj格式、ma格式或mb格式等。
或者,在S201,也可以接收其他设备发送的第一表情基集合和第一表情基系数。
可以根据表情基集合与表情基系数的对应关系,获取与第一表情基集合对应的第一表情基系数。表情基集合按照该表情基集合对应的表情基系数的叠加用于表示面部表情。
第二表情基集合可以是用户基于第一表情基集合进行优化得到的。
在S201之后,还可以根据至少一个用户操作,对所述第一表情基集合进行调整,以得到所述第二表情基集合。
例如,可以根据至少一个用户操作,对所述第一表情基集合中的部分第一表情基进行调整。进行调整的第一表情基可以是第一表情基集合中除语义为“无表情”的第一表情基之外的其他第一表情基。无表情可以是指面部没有任何表情,也可以理解为平静。
可以在第一表情基集合中增加新的表情基,修改第一表情基集合原有的表情基,或删除第一表情基集合原有的部分表情基,以得到第二表情基集合。例如,用户可以通过美术软件调整第一表情基中顶点的位置,以修改第一表情基。
第二表情基集合中第二表情基的数量可以大于第一表情基集合中第一表情基的数量。例如,第一表情基集合中可以包括51个第一表情基,第二表情基集合中可以包括61个第二表情基。
并且,优化后的第二表情基集合中各个第二表情基表示的表情可以更加精细,与实际的面部表情的差异更小。
基于第一表情基集合进行优化得到的第二表情基集合。利用第二表情基集合生成面部表情,可以得到与实际面部表情差异更小的面部表情,提高用户体验。
第二表情基集合可以是对第一表情基集合中的部分第一表情基进行修改得到的,即第二表情基集合与第一表情基集合中可以包括相同的表情基。在一个表情基集合中,各个表情基具有相同的拓扑结构。因此,第一表情基集合与第二表情基集合中的各个表情基具有相同的拓扑结构。
一般情况下,不同角色可以对应于具有不同拓扑结构的表情基集合。在用户需要对某个角色对应的表情基集合进行修改优化时,可以根据角色与表情基集合的对应关系,获取与该某个角色对应的第一表情基集合。
应当理解,对第一表情基集合中的全部第一表情基进行调整得到的第二表情基集合,也可以具有与第一表情基集合相同的拓扑结构。
或者,第二表情基集合也可以是用户新设计的。可以获取用户新设计的第二表情基集合。可以在存储器中读取第二表情基集合,或者,接受其他设备发送的第二表情基集合。
表情基集合中的各个表情基可以具有相同的拓扑结构。也就是说,属于同一个表情基集合的两个表情基的顶点一一对应。表情基的顶点也可以理解为表情基的网格顶点。
可以根据第二表情基集合,在多个表情基集合中获取与第二表情基集合具有相同拓扑结构的第一表情基集合。第二表情基集合的拓扑结构,也可以理解为第二表情基集合中各个第二表情基的拓扑结构。表情基集合与表情基系数的对应关系可以记录有该多个表情基集合中的每个表情基集合对应的表情基系数。表情基集合按照该表情基集合对应的表情基系数的叠加用于表示面部表情。也就是说,对于该多个表情基集合中的每个表情基集合,设计有该表情基集合对应的面部表情。
两个表情基集合包括相同表情基的情况下,该两个表情基集合具有相同的拓扑结构。也就是说,可以在表情基集合与表情基系数的对应关系记录的多个表情基集合中确定第一表情基集合,第一表情基集合与所述第二表情基集合包括顶点位置相同的表情基。
两个表情基的顶点位置相同可以理解为,该两个表情基中的一个表情基包括与另一个表情基任一个顶点位置相同的顶点,且该两个表情基的顶点数量相等。
对于第二表情基集合,可以在该多个表情基集合中确定至少一个与第二表情基集合的第二表情基具有相同顶点数量的待比较表情基集合。可以在该至少一个待比较表情基集合中确定第一表情基集合,第一表情基集合中存在与某个第二表情基顶点位置相同的第一表情基。
可以将该多个表情基集合中的各个表情基与第二表情基集合中的各个第二表情基进行顶点位置的比较,从而确定第一表情基集合。如果某个待比较表情基与某个第二表情基具有相同的顶点位置,则该待比较表情基所属的待比较表情集合即为第一表情基集合。
不同表情基集合中可以包括表示相同语义的表情基。可以对分别属于两个表情基集合且表示相同语义的两个表情基的模型进行比较。如果该两个表情基的顶点数量相同,且其中的一个表情基中存在与另一个表情基任一个顶点位置相同的顶点,可以认为该两个表情基具有相同的拓扑结构,即该两个表情基分别所属的两个表情基集合具有相同的拓扑结构。
可以将该多个表情基集合中与第二表情基集合中具有相同语义的表情基进行顶点位置的比较,从而确定第一表情基集合。第一表情基集合与第二表情基集合中具有某个相同语义的表情基的拓扑结构相同。对具有相同语义的表情基进行顶点位置的比较,可以降低运算量。
各个表情基集合中可以包括语义为“无表情”的表情基。可以将各个待比较表情基集合中“无表情”的待比较表情基与第二表情基集合中“无表情”的第二表情基进行顶点位置的比较。与“无表情”的第二表情基的顶点位置相同的“无表情”的待比较表情基所属的待比较表情基集合即为第一表情基集合。
在该多个表情基集合中的各个表情基与第二表情基集合中的各个第二表情基不存在顶点位置相同的情况下,还可以通过人工判断该多个表情基集合中是否存在与第二表情基集合具有相同拓扑结构的表情基。
表情基集合与表情基系数的对应关系记录的多个表情基集合中不存在与第二表情基集合具有相同拓扑结构的表情基集合的情况下,对该多个表情基集合中的某个表情基集合进行变换,以使得变换后的表情基集合与第二表情基集合具有相同的拓扑结构。变换后的表情基集合可以作为第一表情基集合。
或者,也可以对第二表情基集合进行变换。变换后的第二表情基集合与该多个表情基集合中的第一表情基集合具有相同的拓扑结构。可以利用变换后的第二表情基集合进行S202。
在S202,根据所述第一表情基集合、第二表情基集合和所述第一表情基系数,确定第二表情基系数,其中,所述第二表情基系数用于对所述述第二表情基集合中多个第二表情进行叠加以生成第二面部表情。
第二表情基集合与第二表情基系数的维度相等。第二表情基集合中多个第二表情基按照第二表情基系数的叠加用于生成第二面部表情,即第二表情基系数为第二表情基集合对应的表情基系数。
在一些实施例中,可以根据第一表情基集合和第一表情基系数,生成第一面部表情。之后,可以根据第一面部表情和第二表情基集合,确定第二表情基系数。
将第一表情基集合中的各个第一表情基按照第一表情基系数进行叠加,可以生成第一面部表情。
表情基可以通过三维网格表示。各个第一表情基按照第一表情基系数进行叠加,可以理解为,将各个第一表情基中相对应的网格顶点的坐标按照第一表情基系数进行叠加,以得到的第一面部表情中相对应的网格顶点的坐标。
根据第一表情基集合和第一表情基系数生成第一面部表情,也可以理解为对第一表情基集合中的第一表情基按照第一表情基系数进行形变,以得到第一面部表情。
第二表情基集合按照表情基系数进行叠加以得到第四面部表情,使得第四面部表情与第一面部表情差异最小的表情基系数即为第二表情基系数。
第四面部表情与第一面部表情差异,可以表示为第四面部表情中各个网格顶点的坐标与第一面部表情相对应的网格顶点的坐标的差值之和。差异最小可以理解为相对应的网格顶点的坐标的差值之和的最小。各个网格顶点的坐标的差值可以均为大于或等于0的值。
或者,第四面部表情与第一面部表情差异,可以为第四面部表情中各个网格顶点的坐标与第一面部表情相对应的网格顶点的坐标的差值的平方和。
两个面部表情中相对应的两个网格顶点的坐标差值的平方,可以理解为该两个相对应的网格顶点的距离的平方。在欧氏几何空间中,两个相对应的网格顶点的距离可以表示为相对应的网格顶点之间向量的范数,即该向量的长度。该向量从相对应的两个网格顶点中的一个网格顶点指向另一个网格顶点。
在第四面部表情与第一面部表情的差异表示为相对应的网格顶点的坐标的差值的平方和的情况下,可以理解为利用最小二乘法计算第二表情基系数。第二表情基系数可以理解为使得该差异为0情况下的对表情基系数计算得到的解析解。该差异为0,即第四面部表情与第一面部表情相对应的网格顶点重合,即第四面部表情与第一面部表情中各个相对应的网格顶点的坐标相同。
在另一些实施例中,可以根据第一表情基集合和第二表情基集合,确定第一表情基集合中多个第一表情基与第二表情基中多个第二表情基之间的线性相关关系。从而,可以根据该线性相关关系和第一表情基系数,确定第二表情基系数。
在第一表情基系数的数量较多的情况下,根据多个第一表情基与多个第二表情基之间的线性相关关系,以及多个第一表情基系数,计算第二表情基系数,无需生成对应于每个第一表情基系数的多个第一面部表情,也不需要分别根据多个第一面部表情进行第二表情基系数的计算,能够降低计算量。
多个第一表情基与多个第二表情基之间的线性相关关系可以表示为迁移矩阵。
迁移矩阵可以包括第一表情基集合中每个第一表情基对应的迁移系数。任一个所述第一表情基对应的迁移系数用于表示所述任一个第一表情基与所述多个第二表情基之间的线性相关关系。
也就是说,根据迁移矩阵,可以利用第二表情基集合按照某个第一表情基对应的迁移系数,表示该第一表情基。从而,根据迁移矩阵与第一表情基系数,可以确定该第一表情基系数对应的第二表情基系数。
从而,可以根据所述第一表情基集合和所述第二表情基集合,确定多个迁移系数,以确定迁移矩阵。
通过确定每个第一表情基对应的迁移系数,使得后续根据迁移矩阵和第一表情基确定第二表情基的方式更为简便。
可以通过多种方式计算迁移系数。
例如,可以根据第二表情基集合以及该任一个所述第一表情基,确定该任一个第一表情基对应的迁移系数。
可以根据第三面部表情与任一个第一表情基之间的差异,确定该任一个第一表情基对应的迁移系数。第三面部表情是第二表情基集合中各个第二表情基按照关系系数的叠加,该任一个第一表情基对应的迁移系数是使得该差异最小的关系系数。
第三面部表情与该任一个第一表情基之间的差异,可以表示为第三面部表情中各个网格顶点的坐标与该任一个第一表情基相对应的网格顶点的坐标的差值之和。
或者,第三面部表情与该任一个第一表情基之间的差异,可以表示为第三面部表情中各个网格顶点的坐标与该任一个第一表情基相对应的网格顶点的坐标的差值的平方和。
第三面部表情与该任一个第一表情基之间的差异表示为相对应的网格顶点的坐标的差值的平方和以确定迁移系数,可以理解为利用最小二乘法计算迁移系数。利用最小二乘法计算得到的迁移系数更为准确。
任一个第一表情基对应的迁移系数可以是使得该差异为0的关系系数。也就是说,迁移系数可以是使得该差异为0的解析解。
再例如,可以根据第一表情基集合以及任一个第二表情基,确定该任一个第二表情基对应的相关系数。
可以根据第一表情基集合中各个第一表情基按照关系系数的叠加得到的面部表情与该任一个第二表情基之间的差异,确定该任一个第二表情基对应的相关系数。该任一个第二表情基对应的相关系数是使得该差异最小的关系系数。
之后,可以根据各个第二表情基对应的相关系数,计算各个第一表情基对应的迁移系数。
根据第二表情基集合以及该任一个所述第一表情基,确定该任一个第一表情基对应的迁移系数,可以降低计算量。
第一表情基集合和第二表情基集合中各个表情基的可以具有相同的拓扑结构。示例性地,第二表情基集合可以是用户基于第一表情基集合进行调整得到的。
在S20 2之后,还可以根据第二表情基系数和第二表情基集合,生成第二面部表情。
从而,根据第二表情基系数与第二表情基集合生成的第二面部表情,与第一表情基集合以及对应的第一表情基系数表示的第一面部表情基本一致。
在S202利用变换后的第二表情基集合确定第二表情基系数的情况下,在S202之后可以利用变换前的第二表情基集合与第二表情基系数,生成第二面部表情。
在S202之后,也可以向其他设备发送第二表情基系数和第二表情基集合,以使得该其他设备生成第二面部表情。
用于生成第二面部表情的电子设备,可以是具有显示视频画面或者显示图片功能的设备,例如可以是移动终端(例如智能手机)、电脑、个人数字助理、可穿戴设备、车载设备、物联网设备、AR设备或VR设备等等。
通过S201至S202,根据第一表情基集合、第二表情基集合以及第一表情基集合对应的第一表情基系数,可以确定第二表情基系数。从而,对于新设计的第二表情基集合,可以不再重新进行表情设计,根据第二表情基系数和第二表情基集合,即可生成面部表情,不需要人工参与,降低人工成本,提高设计效率,全自动化实现基于不同表情基集合的表情基系数重定向。
图3是本申请实施例提供的一种面部表情生成方法的示意性流程图。图3所示的方法包括S301至S302。
在S301,根据第一表情基集合和第一表情基系数,生成第一面部表情。
不同的表情基可以用于表示不同的局部表情。不同的局部表情可以对应于不同的语义。例如,多个局部表情的语义可以包括左眉内侧上移、右眼下眼睑提升、上嘴唇外翻、张嘴、撇嘴、抬眉、皱眉等。
第一表情基集合中各个维度的第一表情基与第二表情基集合中各个维度的第二表情基具有相同的拓扑结构。各个维度的第一表情基、各个维度的第二表情基中的表情基用于表示面部表情。
两个的表情基具有相同的拓扑结构,可以理解为该两个表情基的模型中顶点的总个数相同,并且各个顶点一一对应,相对应的两个顶点表示的面部相同的点。
具有相同的拓扑结构的两个表情基可以用于表示同一个对象的面部表情。对象可以是虚拟人物或拟人动物。不同的对象例如可以是游戏中不同的角色。
一般情况下,属于某个表情基集合的各个表情基的拓扑结构相同。
第一表情基集合与第二表情基集合中的表情基不同。例如,第一表情基集合的维度与第二表情基集合的维度可以不同。或者,第一表情基集合与第二表情基集合包括用于表示不同语义的表情基。
示例性地,第二表情基集合可以是对第一表情基集合进行更新得到的。例如,可以在第一表情基集合中增加新的表情基,删除原有表情基,或对原有表情基的模型进行调整,以得到第二表情基。
对于第一表情基集合,可以存储有多个第一表情基系数。第一表情基集合中各个维度的第一表情基按照不同第一表情基系数进行叠加,可以得到不同的面部表情。
该多个第一表情基系数可以是预设的。根据第一表情基集合和该多个第一表情基系数得到的多个面部表情,可以理解为基于第一表情基集合设计的面部表情。也就是说,第一表情基系数可以理解为对基于第一表情基集合设计的面部表情的存储形式。
第一表情基集合的各个第一表情基按照第一表情基系数叠加,可以生成第一面部表情。第一面部表情P1可以表示为
在S302,根据第一面部表情和第二表情基集合,确定第二表情基系数。
第二表情基系数使得,第二表情基集合中的各个第二表情基按照第二表情基系数叠加,得到的面部表情与第一面部表情P1的差异最小。
也就是说,第二表情基集合中的各个第二表情基按照不同表情基系数进行叠加得到的多个面部表情中,按照第二表情基系数得到的第二面部表情与第一面部表情的差异最小。
第一表情基集合与第二表情基集合中各个表情基对应的模型的拓扑结构相同,则基于第一表情基集合得到的第一面部表情与基于第二表情基集合得到的第二面部表情的差异最小,也可以理解为两个面部表情的模型中各个相对应顶点的位置差异最小。
可以利用最小二乘法,确定第二表情基系数。
第二表情基集合中的各个第二表情基按照表情基系数的叠加表示的第四面部表情与第一面部表情的差异,可以表示为第四面部表情的各个网格顶点与第一面部表情相对应网格顶点之间距离的平方和。利用最小二乘法,可以求解使得该差异为0的解析解,该解析解即为第二表情基系数。该差异为0,即使得第四面部表情与第一面部表情的各个相对应的网络顶点坐标一致。利用最小二乘法,可以计算线性空间中使得第四面部表情与第一面部表情网络顶点坐标一致的表情基系数为第二表情基系数,从而实现表情基系数的重定向。
通过S301至S302,结合第一表情基集合和第二表情基集合,确定每个第一表情基系数对应的第二表情基系数,从而,对第一表情基集合能够表示的第一面部表情,可以通过对第二表情基集合按照第二表情基进行叠加得到。
在S303,根据第二表情基集合和第二表情基系数,生成第二面部表情。
可以将第二表情基集合中的各个第二表情基按照第二表情基系数进行叠加,以得到第二面部表情。
在对第一表情基集合进行修改得到与第一表情基集合的模型拓扑结构相同的第二表情基集合的情况下,对于基于第一表情基集合设计的面部表情,不需要重新进行设计。利用第二表情基系数,即可得到这些设计好的表情。
基于第二表情基集合表示的设计好的面部表情,即为第二面部表情。
在第二表情基集合中的第二表情基的拓扑结构与第一表情基集合中的第一表情基的拓扑结构不同的情况下,可以对第二表情基的模型三维网格进行变换,以使得变换后的第二表情基与第一表情基的拓扑结构相同。对第二表情基的模型三维网格进行变换的方式可以包括对旋转、平移、缩放和朝向调整等。
变换前后,第二表情基对应的语义相同。也就是说,变换可以不改变第二表情基表示局部表情。在S301,可根据变换后的第二表情基,确定迁移矩阵。在S303,可以根据未经过变换的第二表情基,生成第二面部表情。
应当理解,S301-S303可以由相同或不同的设备执行。
示例性地,S301和S302可以由第一设备执行,之后,第一设备可以将第二表情基系数发送至第二设备,S303可以由第二设备执行。第一设备可以是第一服务器,第二设备可以是终端或第二服务器。第一设备可以是内容提供者,第二设备可以是内容消费者。示例性地,第二设备可以是移动终端(例如智能手机)、电脑、个人数字助理、可穿戴设备、车载设备、物联网设备、AR设备或VR设备等等。第二设备还可以是其它能够显示视频画面或者显示图片的电子设备。
示例性地,第一设备可以在执行S301和S302之后,生成更新数据,更新数据包括第二表情基集合和第二表情基系数。之后,第一设备可以向第二设备发送更新数据。第二设备接收更新数据后,可以进行S303,并通过第二设备的显示设备,显示第二面部表情。
在对表情基集合进行修改,但不改变表情基集合对应的模型拓扑结构的情况下,基于修改后的表情基集合,可以通过S301至S303,结合第一表情基集合和修改后的第二表情基集合,确定每个第一表情基系数对应的第二表情基系数,根据对第二表情基集合按照第二表情基对第一表情基集合生成第二面部表情,第二面部表情可以用于表示基于第一表情基集合设计的第一面部表情,从而对于修改后的表情基集合无需重新开始进行面部表情的设计,已经设计好并通过第一表情基集合以及第一表情基系数表示的第一面部表情,也可以利用修改后的表情基集合表示,能够节约面部表情的设计成本。
应当理解,第一面部表情可以是一段动画视频对应的一段连续的动画表情中某一帧中的面部表情。对于第一表情基集合,可以预设置有多个第一表情基系数,该多个第一表情基系数可以对应于一段或多段连续的动画表情。在预设置的第一表情基系数的数量较多的情况下,通过S301至S302计算第二表情基系数,计算量较大。为了降低计算量,可以采用图4所示的面部表情生成方法中S401至S402的方式,确定第二表情基系数。
图4是本申请实施例提供的一种面部表情生成方法的示意性流程图。图4所示的面部表情生成方法包括S401至S403。
在S401,根据第一表情基集合和第二表情基集合,确定迁移矩阵。
第一表情基集合中各个维度的第一表情基与第二表情基集合中各个维度的第二表情基具有相同的拓扑结构。
第一表情基集合与第二表情基集合中的表情基不同。第一表情基集合与第二表情基集合中的表情基的维度可以相同或不同。
对于第一表情基集合,可以存储有多个第一表情基系数。第一表情基集合中各个维度的第一表情基按照不同第一表情基系数进行叠加,可以得到不同的第一面部表情。该多个第一表情基系数可以是预设的。
迁移矩阵包括多个迁移系数,该多个迁移系数的数量与第一表情基集合的多个维度一一对应。每个维度的第一表情基可以表示为第二表情基集合中各个维度的表情基按照该维度的第一表情基对应的迁移系数的叠加。
维度为m的第一表情基集合可以表示为其中,为第一表情基集合中的m个第一表情基。维度为n的第二表情基集合可以表示为其中,为第二表情基集合中的n个第二表情基。且v表示表情基模型中的顶点数量,i为小于或等于m的正整数,j为小于或等于n的正整数。也就是说,各个第一表情基、第二表情基的模型中顶点的数量相等。
对于第一表情基集合中每个第一表情基可以利用第二表情基集合表示。可以利用最小二乘法,求解迁移系数,第二表情基集合按照迁移系数叠加得到的模型与之间的差异最小的。其中,即迁移系数的维度数量与第二表情基集合的维度数量相等,且迁移系数的维度与第二表情基集合的维度一一对应。利用最小二乘法情况下,对迁移系数的约束可以表示为线性最小二乘式
其中,“·”表示相乘,min表示最小数,||||表示范数。
线性最小二乘式有解析解,该解析解为
其中,(BB)T表示BB的转置,((BB)T·BB)-1表示(BB)T·BB的逆矩阵。
在S402,根据迁移矩阵,确定第一表情基系数对应的第二表情基系数。
第一表情基集合的各个第一表情基按照第一表情基系数叠加,可以得到基于第一表情基集合的第一面部表情。得到的第一面部表情P1可以表示为
迁移矩阵用于表示第二表情基集合中的各个第二表情基与第一表情基集合中各个第一表情基之间的线性相关关系。第二表情基系数的每个维度可以通过对迁移矩阵与第一表情基系数进行运算得到。
根据迁移矩阵,利用第二表情基集合中的各个第二表情基表示第一表情基集合中的各个第一表情基,则第一面部表情可以表示为
在S403,根据第二表情基系数和第二表情基集合,生成第二面部表情。
第二面部表情可以表示为第二表情基集合中各个表情基按照第二表情基系数叠加,即第二面部表情可以表示为
根据第二表情基系数和第二表情基集合生成的第二面部表情,与根据第一表情基系数和第一表情基集合生成的第一面部表情基本相同。
第一面部表情可以是一段动画视频对应的一段连续动画中的面部表情,也可以是某一帧中的面部表情。第一面部表情表示的一段连续动画可以表示为DA,其中,DA∈RL×m,L表示动画的帧数。第二面部表情表示的连续动画可以表示为DB,其中,DB∈RL×n。动画DA与动画DB中的面部表情基本相同。
通过步骤S401至S403,根据第一表情基集合和第二表情基集合,确定迁移矩阵,迁移矩阵用于表示第一表情集合中各个第一表情基与第二表情基集合中各个第二表情基之间的线性相关关系。根据迁移矩阵,确定第一表情基系数对应的第二表情基系数。从而,对第一表情基集合能够表示的第一面部表情,可以通过对第二表情基集合按照第二表情基进行叠加得到。
在对第一表情基集合进行修改得到与第一表情基集合的模型拓扑结构相同的第二表情基集合的情况下,对于基于第一表情基集合设计的面部表情,不需要重新进行设计。利用第二表情基系数,即可得到这些设计好的表情。
应当理解,S401-S403可以由相同或不同的设备执行。
示例性地,S401和S402可以由第一设备执行,之后,第一设备可以将第二表情基系数发送至第二设备,S403可以由第二设备执行。或者,S401可以由第一设备执行,之后,第一设备可以向第二设备发送迁移矩阵,S402和S403可以由第二设备执行。或者,S401-S403可以由不同的三个设备执行。
执行步骤S403的电子设备可以是具有显示视频画面或者显示图片功能的设备,例如可以是移动终端(例如智能手机)、电脑、个人数字助理、可穿戴设备、车载设备、物联网设备、AR设备或VR设备等等。
上文结合图1至图4描述了本申请实施例提供的面部表情生成方法,下面结合图5至图6,描述本申请实施例的装置实施例。应理解,面部表情生成方法的描述与装置实施例的描述相互对应,因此,下文中未详细描述的内容可以参见上述方法实施例中的相关描述。
图5是本申请实施例提供的一种面部表情生成装置的示意性结构图。
面部表情生成装置包括获取单元501和处理单元502。
获取单元501用于,获取第一表情基集合和所述第一表情基集合对应的第一表情基系数,所述第一表情基集合中多个第一表情基按照所述第一表情基系数的叠加用于表示第一面部表情。
处理单元502用于,根据所述第一表情基集合、第二表情基集合和所述第一表情基系数,确定第二表情基系数,其中,所述第二表情基系数用于对所述述第二表情基集合中多个第二表情基进行叠加以生成第二面部表情。
在一个可选的实施方式中,处理单元502还用于,根据所述第一表情基集合和所述第二表情基集合,确定迁移矩阵,所述迁移矩阵用于表示所述多个第一表情基与所述多个第二表情基之间的线性相关关系。
处理单元502还用于,根据所述迁移矩阵和所述第一表情基系数,确定所述第二表情基系数。
在一个可选的实施方式中,所述迁移矩阵包括所述多个第一表情基中每个第一表情基对应的迁移系数。
处理单元502还用于,根据所述第一表情基集合和所述第二表情基集合,确定所述多个迁移系数,任一个所述第一表情基对应的迁移系数用于表示所述任一个第一表情基与所述多个第二表情基之间的线性相关关系。
在一个可选的实施方式中,处理单元502还用于,根据所述第二表情基集合以及所述任一个所述第一表情基,确定所述任一个第一表情基对应的所述迁移系数。
在一个可选的实施方式中,处理单元502还用于,根据第三面部表情与所述任一个第一表情基之间的第一差异,确定所述任一个第一表情基对应的所述迁移系数,所述第三面部表情是所述多个第二表情基按照关系系数的叠加,所述任一个第一表情基对应的所述迁移系数是使得所述第一差异最小的关系系数。
在一个可选的实施方式中,处理单元502还用于,利用最小二乘法,确定所述任一个第一表情基对应的迁移系数,所述第一差异为第三面部表情的多个网格顶点坐标与所述任一个第一表情基的相应网格顶点坐标的距离平方和。
在一个可选的实施方式中,所述处理单元502还用于,根据所述第一表情基集合和所述第一表情基系数,生成所述第一面部表情。
处理单元502还用于,根据所述第一面部表情和所述第二表情基集合,确定所述第二表情基系数。
在一个可选的实施方式中,所述多个第一表情基和所述多个第二表情基中各个表情基的拓扑结构相同。
在一个可选的实施方式中,获取单元501还用于,根据至少一个用户操作,对所述第一表情基集合中的部分第一表情基进行调整,以得到所述第二表情基集合。
在一个可选的实施方式中,获取单元501还用于,在表情基集合与表情基系数的对应关系记录的多个表情基集合中确定所述第一表情基集合,所述第一表情基集合与所述第二表情基集合包括顶点位置相同的表情基。
需要说明的是,面部表情生成装置中各模块/单元之间的信息交互、执行过程等内容,与本申请中图2至图4对应的各个方法实施例基于同一构思,具体内容可参见本申请前述所示的方法实施例中的叙述,此处不再赘述。
图6是本申请实施例提供的一种面部表情生成装置的示意性结构图。
图6所示的面部表情生成装置包括存储器601、处理器602、通信接口603以及通信总线604。其中,存储器601、处理器602、通信接口603通过通信总线604实现彼此之间的通信连接。
存储器601可以是只读存储器(read only memory,ROM),静态存储设备,动态存储设备或者随机存取存储器(random access memory,RAM)。存储器601可以存储程序,当存储器601中存储的程序被处理器602执行时,处理器602和通信接口603用于执行本申请实施例的面部表情生成方法的各个步骤。
处理器602可以采用通用的中央处理器(central processing unit,CPU),微处理器,应用专用集成电路(application specific integrated circuit,ASIC),图形处理器(graphics processing unit,GPU)或者一个或多个集成电路,用于执行相关程序,以实现本申请实施例的面部表情生成装置中的单元所需执行的功能,或者执行本申请方法实施例的面部表情生成方法。
处理器602还可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,本申请的神经网络模型压缩的方法的各个步骤可以通过处理器602中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器602还可以是通用处理器、数字信号处理器(digital signal processing,DSP)、专用集成电路(application specific integratedcircuit,ASIC)、现成可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器601,处理器602读取存储器601中的信息,结合其硬件完成本申请实施例的面部表情生成装置中包括的单元所需执行的功能,或者执行本申请方法实施例的面部表情生成方法。
通信接口603使用例如但不限于收发器一类的收发装置,来实现图6所示的电子设备与其他设备或通信网络之间的通信。例如,可以通过通信接口603获取第一表情基集合、第二表情基集合、第一表情基系数中的一种或多种。
通信总线604可包括在图6所示的电子设备各个部件(例如,存储器601、处理器602、通信接口603)之间传送信息的通路。
本申请实施例提供了一种计算机可读存储介质,计算机可读存储介质包括计算机指令,计算机指令在被处理器执行时用于实现本申请实施例中面部表情生成方法的技术方案。
本申请实施例中还提供一种包括计算机程序产品,当其在计算机上运行时,使得计算机执行如前述图2至图4所示实施例描述的方法中的步骤。
需要说明的是,尽管在上文详细描述中提及了用于动作执行的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本申请的具体实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
此外,尽管在附图中以特定顺序描述了本申请中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
应当注意,本申请的实施方式可以通过硬件、软件或者软件和硬件的结合来实现。硬件部分可以利用专用逻辑来实现;软件部分可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域的普通技术人员可以理解上述的设备和方法可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本申请的设备及其模块可以由诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用由各种类型的处理器执行的软件实现,也可以由上述硬件电路和软件的结合例如固件来实现。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,凡在本申请的精神和原则之内所作的任何修改、等同替换和改进等,都应涵盖在本申请的保护范围之内。
Claims (13)
1.一种面部表情生成方法,其特征在于,所述方法包括:
获取第一表情基集合和所述第一表情基集合对应的第一表情基系数,所述第一表情基集合中多个第一表情基按照所述第一表情基系数的叠加用于表示第一面部表情;
根据所述第一表情基集合、第二表情基集合和所述第一表情基系数,确定第二表情基系数,其中,所述第二表情基系数用于对所述述第二表情基集合中多个第二表情基进行叠加以生成第二面部表情。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第一表情基集合、第二表情基集合和所述第一表情基系数,确定第二表情基系数,包括:
根据所述第一表情基集合和所述第二表情基集合,确定迁移矩阵,所述迁移矩阵用于表示所述多个第一表情基与所述多个第二表情基之间的线性相关关系;
根据所述迁移矩阵和所述第一表情基系数,确定所述第二表情基系数。
3.根据权利要求2所述的方法,其特征在于,所述迁移矩阵包括所述多个第一表情基中每个第一表情基对应的迁移系数;
所述根据所述第一表情基集合和所述第二表情基集合,确定迁移矩阵,包括:根据所述第一表情基集合和所述第二表情基集合,确定所述多个迁移系数,任一个所述第一表情基对应的迁移系数用于表示所述任一个第一表情基与所述多个第二表情基之间的线性相关关系。
4.根据权利要求3所述的方法,其特征在于,所述根据所述第一表情基集合和所述第二表情基集合,确定所述多个迁移系数,包括:根据所述第二表情基集合以及所述任一个所述第一表情基,确定所述任一个第一表情基对应的所述迁移系数。
5.根据权利要求4所述的方法,其特征在于,所述根根据所述第二表情基集合以及任一个所述第一表情基,确定所述任一个第一表情基对应的所述迁移系数,包括:根据第三面部表情与所述任一个第一表情基之间的第一差异,确定所述任一个第一表情基对应的所述迁移系数,所述第三面部表情是所述多个第二表情基按照关系系数的叠加,所述任一个第一表情基对应的所述迁移系数是使得所述第一差异最小的关系系数。
6.根据权利要求4或5所述的方法,其特征在于,所述根据第三面部表情与所述任一个第一表情基之间的第一差异,确定所述任一个第一表情基对应的所述迁移系数,包括:利用最小二乘法,确定所述任一个第一表情基对应的迁移系数,所述第一差异为第三面部表情的多个网格顶点坐标与所述任一个第一表情基的相应网格顶点坐标的距离平方和。
7.根据权利要求1所述的方法,其特征在于,所述根据第一表情基集合、第二表情基集合和所述第一表情基系数,确定第二表情基系数,包括:
根据所述第一表情基集合和所述第一表情基系数,生成所述第一面部表情;
根据所述第一面部表情和所述第二表情基集合,确定所述第二表情基系数。
8.根据权利要求1所述的方法,其特征在于,所述多个第一表情基和所述多个第二表情基中各个表情基的拓扑结构相同。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:根据至少一个用户操作,对所述第一表情基集合中的部分第一表情基进行调整,以得到所述第二表情基集合。
10.根据权利要求8所述的方法,其特征在于,所述获取第一表情基集合和所述第一表情基集合对应的第一表情基系数,包括:
在表情基集合与表情基系数的对应关系记录的多个表情基集合中确定所述第一表情基集合,所述第一表情基集合与所述第二表情基集合包括顶点位置相同的表情基。
11.一种面部表情生成装置,其特征在于,包括获取单元、处理单元和生成单元。
获取单元用于,获取第一表情基集合和所述第一表情基集合对应的第一表情基系数,所述第一表情基集合中多个第一表情基按照所述第一表情基系数的叠加用于表示第一面部表情;
处理单元用于,根据所述第一表情基集合、第二表情基集合和所述第一表情基系数,确定第二表情基系数,其中,所述第二表情基系数用于对所述述第二表情基集合中多个第二表情基进行叠加以生成第二面部表情。
12.一种面部表情生成装置,其特征在于,包括:存储器和处理器、所述存储器和所述处理器耦合;
所述存储器用于存储计算机指令;
所述处理器用于执行所述计算机指令,以实现如权利要求1-10中任意一项所述的方法。
13.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,所述计算机指令被处理器执行以实现如权利要求1-10任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211010113.0A CN115512193A (zh) | 2022-08-22 | 2022-08-22 | 面部表情生成方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211010113.0A CN115512193A (zh) | 2022-08-22 | 2022-08-22 | 面部表情生成方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115512193A true CN115512193A (zh) | 2022-12-23 |
Family
ID=84502362
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211010113.0A Pending CN115512193A (zh) | 2022-08-22 | 2022-08-22 | 面部表情生成方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115512193A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118331431A (zh) * | 2024-06-13 | 2024-07-12 | 海马云(天津)信息技术有限公司 | 虚拟数字人驱动方法与装置、电子设备及存储介质 |
WO2024193438A1 (zh) * | 2022-11-25 | 2024-09-26 | 北京字跳网络技术有限公司 | 一种表情驱动方法、装置、设备及介质 |
-
2022
- 2022-08-22 CN CN202211010113.0A patent/CN115512193A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024193438A1 (zh) * | 2022-11-25 | 2024-09-26 | 北京字跳网络技术有限公司 | 一种表情驱动方法、装置、设备及介质 |
CN118331431A (zh) * | 2024-06-13 | 2024-07-12 | 海马云(天津)信息技术有限公司 | 虚拟数字人驱动方法与装置、电子设备及存储介质 |
CN118331431B (zh) * | 2024-06-13 | 2024-08-27 | 海马云(天津)信息技术有限公司 | 虚拟数字人驱动方法与装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109961507B (zh) | 一种人脸图像生成方法、装置、设备及存储介质 | |
US9314692B2 (en) | Method of creating avatar from user submitted image | |
CN111768477B (zh) | 三维人脸表情基建立方法及装置、存储介质及电子设备 | |
CN112950775A (zh) | 一种基于自监督学习的三维人脸模型重建方法及系统 | |
CN114820905B (zh) | 虚拟形象生成方法、装置、电子设备及可读存储介质 | |
CN114373056B (zh) | 一种三维重建方法、装置、终端设备及存储介质 | |
CN111047509B (zh) | 一种图像特效处理方法、装置及终端 | |
CN111383308A (zh) | 生成动画表情的方法和电子设备 | |
CN112288665A (zh) | 图像融合的方法、装置、存储介质及电子设备 | |
CN111583379B (zh) | 虚拟模型的渲染方法、装置、存储介质与电子设备 | |
CN115512193A (zh) | 面部表情生成方法和装置 | |
KR102353556B1 (ko) | 사용자 얼굴기반 표정 및 포즈 재현 아바타 생성장치 | |
CN111476851A (zh) | 图像处理方法、装置、电子设备及存储介质 | |
WO2024098685A1 (zh) | 虚拟人物面部驱动方法、装置、终端设备和可读存储介质 | |
EP3855386B1 (en) | Method, apparatus, device and storage medium for transforming hairstyle and computer program product | |
US10269165B1 (en) | Facial animation models | |
CN115311395A (zh) | 三维场景渲染方法、装置及设备 | |
CN111179390A (zh) | 高效预览cg资产的方法和装置 | |
CN115686202A (zh) | 跨Unity/Optix平台的三维模型交互渲染方法 | |
CN114299203A (zh) | 虚拟模型的处理方法和装置 | |
CN110223367B (zh) | 动画显示方法、装置、终端及存储介质 | |
CN112508772A (zh) | 图像生成方法、装置及存储介质 | |
CN114820908B (zh) | 虚拟形象生成方法、装置、电子设备和存储介质 | |
US20240290063A1 (en) | Method, device, and computer program product for image processing | |
US20230196702A1 (en) | Object Deformation with Bindings and Deformers Interpolated from Key Poses |
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 |