CN111325846B - 表情基确定方法、虚拟形象驱动方法、装置及介质 - Google Patents
表情基确定方法、虚拟形象驱动方法、装置及介质 Download PDFInfo
- Publication number
- CN111325846B CN111325846B CN202010090945.2A CN202010090945A CN111325846B CN 111325846 B CN111325846 B CN 111325846B CN 202010090945 A CN202010090945 A CN 202010090945A CN 111325846 B CN111325846 B CN 111325846B
- Authority
- CN
- China
- Prior art keywords
- model
- face
- expression
- fitting
- facial
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
- G06T13/40—3D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了表情基确定方法、虚拟形象驱动方法、装置及介质,本发明通过获取能够确定面部模型的第一面部特征的第一网格模型,以及获取能够确定面部模型的第二面部特征的第二网格模型,接着组合得到既能确定第一面部特征又能确定第二面部特征的第三网格模型,最后根据这个能够充分表达细节特征的第三网格模型从标准模型库中拟合得到表情基组,减小了表情基与面部模型的之间的误差,能够得到更加准确逼真的表情基;此外,根据生成的更加准确逼真的表情基,可以驱动更加准确逼真的虚拟形象,可广泛应用于基于人工智能的图像处理技术领域。
Description
技术领域
本发明涉及面部模型处理技术领域,尤其是一种表情基确定方法、虚拟形象驱动方法、装置及介质。
背景技术
面部模型参数化是构建虚拟形象的一项重要工作,它特别适用于特效电影和计算机游戏等场景中。在面部模型参数化中,通过确定面部表情基来驱动虚拟形象的这种技术,能够逼真地创建出各种虚拟形象的表情动画,进而极大地增强虚拟形象的真实感,提升了表现力,带给用户更加沉浸式的体验。所述虚拟形象可以是卡通、虚拟人等虚拟形象,也可以是基于真人外形构建的仿真角色,亦或者是虚拟动物角色。
在实现对虚拟形象的驱动工作中,一个重要任务就是准确地获取该虚拟形象的面部模型表情基。
现有技术只能获取与真实面部粗略近似的模型,然后基于这个模型从标准模型库(例如3DMM库)中导出一组粗略的表情基,该方法得到的表情基无法准确展现面部的细节特征,导致表情基与真实面部之间的误差较大,不够逼真,进而影响虚拟形象的表情驱动效果,降低了虚拟形象的真实感和表现力。
发明内容
有鉴于此,本发明提供一种表情基确定方法、虚拟形象驱动方法、装置及介质,能够形成更像真实面部的精确的模型,进而导出更加准确逼真的表情基,减小表情基与真实面部之间的误差,并驱动更加准确逼真的虚拟形象。
本发明的第一方面,提供一种表情基确定方法,包括:
根据面部模型的点云数据,确定体现第一面部特征的第一网格模型;
根据面部模型中第二面部特征对应的点云数据,确定体现第二面部特征的第二网格模型;
将所述第一网格模型中第一面部特征上点所在的区域与所述第二网格模型中第二面部特征上点所在的区域进行组合,形成第三网格模型;以及
根据所述第三网格模型从标准模型库中确定第一表情基组。
根据本发明的第二方面,提供了一种表情基确定方法,包括:
采集面部图像;
确定所述面部图像的轮廓特征区域;
确定所述面部图像的五官特征区域;
将所述轮廓特征区域和所述五官特征区域进行组合;以及
从标准模型库中获取所述面部图像对应的第一表情基组。
根据本发明的第三方面,提供了一种虚拟形象驱动方法,包括:
根据本发明第一方面所述的表情基确定方法生成一组表情基;以及
根据所述表情基对所述虚拟形象进行驱动。
根据本发明的第四方面,提供了一种表情基确定装置,包括第一网格模型生成模块、第二网格模型生成模块、第三网格模型生成模块和第一表情基生成模块:
所述第一网格模型生成模块,用于根据面部模型的点云数据,确定体现第一面部特征的第一网格模型;
所述第二网格模型生成模块,用于根据面部模型中第二面部特征对应的点云数据,确定体现第二面部特征的第二网格模型;
所述第三网格模型生成模块,用于将所述第一网格模型中第一面部特征上点所在的区域与所述第二网格模型中第二面部特征上点所在的区域进行组合,形成第三网格模型;以及所述第一表情基生成模块,用于根据所述第三网格模型从标准模型库中确定第一表情基组。
根据本发明的第五方面,一种虚拟形象驱动装置,包括表情基生成模块和驱动模块:
所述表情基生成模块,用于根据第三方面所述的表情基确定装置生成一组表情基;以及所述驱动模块,用于根据所述表情基对所述虚拟形象进行驱动。
根据本发明的第六方面,一种计算机可读存储介质,所述计算机可读存储介质存储有程序,所述程序被处理器执行完成如本发明第一方面、第二方面或者第三方面中所述的方法。
根据本发明的第七方面,一种设备,所述设备包括处理器以及存储器;
所述存储器用于存储程序;
所述处理器用于根据所述程序执行如本发明第一方面、第二方面或者第三方面中所述的方法。
本发明所提供的技术方案,通过获取能够体现第一面部特征的第一网格模型,以及获取能够体现第二面部特征的第二网格模型,接着组合得到既能体现第一面部特征又能体现第二面部特征的第三网格模型,最后根据这个逼真的第三网格模型从标准模型库中获取表情基组,减小了表情基与面部模型之间的误差,能够得到更加准确逼真的表情基;此外,根据生成的更加准确逼真的表情基,可以驱动更加准确逼真的虚拟形象。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种双线性存储形式的3DMM库的示例图;
图2为本申请实施例提供的表情基确定过程的示例图;
图3为本申请实施例提供的一种表情基确定方法的应用场景示意图;
图4为本申请实施例提供的第二网格模型示例图;
图5为本申请实施例提供的一种表情基确定方法的第一流程图;
图6为本申请实施例提供的初步网格模型的点云数据和面部模型的点云数据进行对齐的示例图;
图7为本申请实施例提供的第一网格模型示例图;
图8为本申请实施例提供的第二网格模型上划分得到的各个区域的示例图;
图9为本申请实施例提供的第一网格模型与第二网格模型的组合过程示意图;
图10为本申请实施例提供的第三网格模型的示例图;
图11为本申请实施例提供的确定第二表情基组的过程示意图;
图12为本申请实施例提供的一种表情基确定方法的第二流程图;
图13为本申请实施例提供的一种表情基确定装置的结构图;
图14为本申请实施例提供的一种设备的结构图;
图15为本申请实施例提供的一种服务器的结构图。
具体实施方式
下面结合附图,对本申请的实施例进行描述。
现有技术在生成面部模型的表情基时,主要倾向于表达面部的轮廓等粗略特征,无法准确表达面部的细节特征,导致获取到的表情基与输入的人脸模型误差较大,不够逼真,进而影响虚拟形象的表情驱动效果,使得驱动的虚拟形象也不够逼真。
为此,本申请实施例首先提供了一种表情基确定方法,该方法首先得到能够体现第一面部特征的第一网格模型,然后根据面部模型中第二面部特征对应的点云数据,确定体现第二面部特征的第二网格模型,接着将所述第一网格模型中第一面部特征上点所在的区域与所述第二网格模型中第二面部特征上点所在的区域进行组合,形成第三网格模型,最后根据所述第三网格模型从标准模型库中确定第一表情基组,本申请实施例确定的第三网格模型既能充分表达面部模型的第一面部特征,又能充分表达面部模型的第二面部特征,进而得到能够准确展现细节特征的与人脸模型更加逼真的表情基。本申请实施例接着提供了一种虚拟形象驱动方法,能够基于所述更加逼真的表情基来驱动虚拟形象,提升了虚拟形象的真实感和表现力。
需要说明的是,本申请实施例提供的表情基确定方法和虚拟形象驱动方法都可基于人工智能来实现。人工智能(Artificial Intelligence,AI)是一门综合学科,是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
在本申请实施例中,主要涉及的人工智能技术包括计算机视觉(图像)等方向,例如,可以涉及计算机视觉(Computer Vision)中的视频处理(Video Processing)、视频语义理解(Video Semantic Understanding,VSU)、人脸识别(Face Recognition)等。视频语义理解中包括目标识别(Target Recognition)、目标检测与定位(Target Detection&Localization)等;人脸识别中包括人脸3D重建(Face3D Reconstruction)、人脸检测(FaceDetection)、人脸跟踪(Face Tracking)等。
本申请实施例提供的表情基确定方法和虚拟形象驱动方法可以应用于处理设备上,该处理设备可以是终端设备,也可以是服务器。
处理设备可以具有实施计算机视觉技术的能力。在本申请实施例中,处理设备通过实施上述计算机视觉技术,可以实现根据面部模型的点云数据,确定体现第一脸部特征的第一网格模型;根据面部模型中第二脸部特征对应的点云数据,确定体现第二脸部特征的第二网格模型;将所述第一网格模型和所述第二网格模型组合成第一脸部特征和第二脸部特征对应的第三网格模型;以及根据所述第三网格模型从标准模型库中确定第一表情基组等功能。
处理设备可以是终端设备,例如智能终端、计算机、个人数字助理(PersonalDigital Assistant,简称PDA)、平板电脑等。
处理设备还可以是服务器,例如独立服务器或集群服务器。当服务器实施该基于人工智能的表情基确定方法时,服务器可以根据面部模型的点云数据确定第一网格模型,通过标准模型库和所述面部模型的点云数据确定第二网格模型,将第一网格模型和第二网格模型组合形成第三网格模型,最终根据第三网格模型获取面部模型对应的表情基组,并将得到的表情基在终端设备上的显示、推出。
本申请实施例提供的基于人工智能的表情基确定方法可以应用到各种适用虚拟形象的应用场景,例如新闻播报、天气预报、游戏解说以及游戏场景中允许用于构建和用户自己脸型一样的游戏人物等,还能用于利用虚拟形象承担私人化的服务的场景,例如心理医生,虚拟助手等面向个人的一对一服务。在这些场景下,利用本申请实施例提供的方法可以确定出人脸模型的表情基,进而通过表情基来构建人脸模型,以便基于该人脸模型和表情基来驱动虚拟形象。
为了便于理解本申请的技术方案,下面还将结合实际应用场景对本申请实施例提供的基于人工智能的表情基确定方法进行介绍。
参见图3,图3为本申请实施例提供的基于人工智能的表情基确定方法的应用场景示意图。应用场景以处理设备为终端设备为例进行介绍,应用场景中包括终端设备301,终端设备301可以获取面部模型(例如拍照、拍视频等)。通过面部模型确定第一网格模型和第二网格模型,然后将第一网格模型和第二网格模型组合成第一脸部特征和第二脸部特征对应的第三网格模型,最后基于该第三网格模型从3DMM库中导出一组表情基。
本申请实施例的面部模型可以是通过传感器针对虚拟形象进行采集得到的,该传感器可以是深度传感器例如RGBD传感器,也可以是普通传感器(二维传感器)。采集数据中包括对应对象的面部模型的点云数据。
本申请实施例的终端设备301在采集到面部模型后,采用非刚性配准方法(例如nricp算法)来对面部模型的点云数据进行处理,直接得到第一网格模型。本实施例的nricp算法通过加大平滑项的权重,能够使得第一网格模型表达平滑完整的轮廓,不会出现轮廓的瑕疵;另外,本实施例还可以表达出面部的大轮廓形状(例如尖下巴形状)。
本申请实施例的终端设备301进一步通过调用标准模型库和所述面部模型的点云数据确定第二网格模型,该第二网格模型能够表达出面部模型的五官等细节特征,通过生成的第二网格模型,能够得到平滑无噪声的五官等细节特征。
于是,本申请实施例的终端设备301在计算得到第一网格模型和第二网格模型后,将两者组合得到第三网格模型,所述第三网格模型既能够表达面部模型的轮廓等粗略特征,又能表达面部模型的五官等细节特征。这个第三网格模型是与面部模型最逼真的网格。本申请实施例通过该第三网格模型来获取表情基,提高了表情基与面部模型的相似度,能够得到平滑且无噪声的逼真的表情基。
由于终端设备301能够获取面部模型(例如拍照得到的图像),然后处理得到第一网格模型和第二网格模型,并能够将第一网格模型和第二网格模型融合成第三网格模型,最后根据第三网格模型从标准模型库(例如3DMM库)中找到最逼真的表情基,因此,终端设备301能够得到表情基。
需要说明的是,本申请提及的面部模型可以是人、动物、甚至是具有面部的玩偶等对象的模型,所述模型可以由图像、视频以及深度点云数据等内容转化而来,本实施例在此不对面部模型的对象以及面部模型的来源做限定。
本申请实施例所述的第一面部特征是指输入的面部模型的粗略特征,例如面部轮廓,以人脸为例,面部轮廓也称为脸型,按照形态学分类,脸型可分为以下十种:(1)圆形脸型:(2)椭圆形脸型;(3)卵圆形脸型;(4)倒卵圆形脸型;(5)方形脸型;(6)长方形脸型;(7)梯形脸型;(8)倒梯形脸型;(9)菱形脸型;(10)五角形脸型;按照字形学分类,脸型又可以分为以下八种:(1)国字形脸型;(2)目字形脸型;(3)田字形脸型;(4)由字形脸型;(5)申字形脸型;(6)甲字形脸型;(7)用字形脸型;(8)风字形脸型。本申请实施例所述的轮廓包括但不限于以上种类,在此不做具体限定。
本申请实施例所述的第二面部特征通常是指输入的面部模型的细节特征,例如眼睛、鼻子、耳朵、嘴巴、舌头等五官细节,又如胎记、疤痕等细节。
应当理解的是,本申请实施例所述的第二面部特征是相对于第一面部特征而言的,由于在构建第一网格模型的过程中,将会从所述标准模型库中获取初步网格模型来与面部模型进行处理,如果初步网格模型与面部模型之间在五官特征部分的误差比轮廓特征部分的误差更大,例如,两者的鼻子大小差距很大,但面部轮廓的胖瘦程度基本一致,则此时就将五官特征部分视为第一面部特征,而将轮廓特征部分视为第二面部特征。也就是说,本申请实施例的第一面部特征和第二面部特征并没有具体限定为轮廓或者五官,第一面部特征和第二面部特征取决于面部模型与初步网格模型之间的误差大小,误差较大的粗略特征即为第一面部特征,误差较小的细节特征即为第二面部特征。虽然在本申请实施例中将面部轮廓作为第一面部特征,将面部五官作为第二面部特征来进行相关描述,但是,根据上述说明,本申请实施例所述第一面部特征应该是包括面部轮廓特征和/或面部五官特征;所述第二面部特征应该是包括面部细节特征,在此不对第一面部特征的和第二面部特征的对象进行限定。
为了便于理解本申请的技术方案,下面结合附图对本申请实施例提供的表情基确定方法进行详细介绍,参见图5,所述方法包括步骤S501、S502、S503和S504。
S501:根据面部模型的点云数据,确定体现第一面部特征的第一网格模型。
本申请实施例将面部模型的眼睛、舌头、耳朵、鼻子和嘴巴识别为五官,将面部模型的其他的部分都算作轮廓区域。在步骤501中,通过从标准模型库(例如3DMM库)中获取一个初步网格模型,然后将这个初步网格模型与原始的面部模型的点云数据进行非刚性配准(non-rigid icp,简写为nricp算法)处理,可以直接得到第一网格模型。
需要说明的是,根据面部模型的点云数据,获取第一网格模型,可以采用多种实现方式,例如,第一种实现方式是:将面部模型作为输入,从标准模型库中拟合得到与该面部模型轮廓接近的第一网格模型;第二种实现方式是:先根据面部模型从标准模型库中拟合得到一个与该面部模型轮廓接近的初步网格模型,然后通过nricp算法对初步网格模型进行处理,得到一个轮廓更加接近面部模型的第一网格模型。
还需要说明的是,面部模型配准(Imageregistration)是指将不同时间、不同传感器(成像设备)或不同条件下(天候、照度、摄像位置和角度等)获取的两幅或多幅面部模型进行匹配、叠加的过程,它已经被广泛地应用于遥感数据分析、计算机视觉、面部模型处理等领域。在逆向工程,计算机视觉,文物数字化等领域中,由于点云的不完整,例如旋转错位,平移错位等,使得要得到的完整的点云就需要对局部点云进行配准,为了得到被测物体的完整数据模型,需要确定一个合适的坐标系,将从各个视角得到的点集合并到统一的坐标系下形成一个完整的点云,然后就可以方便进行可视化的操作,这就是点云数据的配准。点云的配准有手动配准依赖仪器的配准和自动配准,点云的自动配准技术是通过一定的算法或者统计学规律利用计算机计算两块点云之间错位,从而达到两块点云自动配准的效果,其实质就是把不同的坐标系中测得到的数据点云进行坐标系的变换,以得到整体的数据模型,问题的关键是如何让得到坐标变换的参数R(旋转矩阵)和T(平移向量),使得两视角下测得的三维数据经坐标变换后的距离最小,目前配准算法按照过程可以分为整体配准和局部配准。本申请实施例提到的非刚性配准(Non-rigid registration)就是其中一种配准方法,也称为nricp算法,当然,除了使用nricp算法,还可以采用其他配准算法,本实施例对此不做限定。
接下来,本申请实施例详细描述获取第一网格模型的具体实现过程,该过程进一步包括步骤S5011、S5012和S5013。
S5011:根据所述面部模型的点云数据,从所述标准模型库中获取初步网格模型;
本申请实施例获取面部模型的点云数据,在标准模型库(例如3DMM库)中获取一个初步网格模型。在一些实施例中,获取的初步网格模型可以是标准模型库中的平均脸模型,也可以是将面部模型于标准模型库中拟合得到的一个模型,亦或者是标准模型库中任意一个模型,本申请实施例仅需获取一个初步网格模型来执行步骤S5012和步骤S5013,所述初步网格模型的获取方式在此不做具体限定。
S5012:根据所述面部模型上的第一关键点和所述初步网格模型中预先标记的第二关键点,将所述面部模型的点云数据与所述初步网格模型的点云数据进行对齐;
本申请实施例在面部模型的点云数据中识别面部轮廓的第一关键点,并在初步网格模型的点云数据上标记面部轮廓的第二关键点;然后,基于确定的第一关键点和第二关键点,将所述面部模型的点云数据与所述初步网格模型的点云数据进行对齐。
需要说明的是,本申请实施例可采用以下两种方式来将所述面部模型的点云数据与所述初步网格模型的点云数据进行对齐。
其中,第一种实现方式为:将所述面部模型上的点划分为第一面部特征区域和第二面部特征区域,根据所述面部模型上的第一关键点和所述初步网格模型中预先标记的第二关键点,将所述第一面部特征区域的点云数据与所述初步网格模型的点云数据进行对齐。
参见图6,本申请实施例基于确定的第一关键点和第二关键点,先将面部模型上的点划分为第一面部特征区域和第二面部特征区域,然后将第二面部特征区域抠除,将第一面部特征区域的点云数据601与初步网格模型的点云数据602对齐整合,整合后的结果如图6所示。也就是说,在这第一种实现方式中,面部模型仅将面部模型的部分点云进行对齐处理,减少了对齐处理的点云数据量,能够提高处理效率。
需要说明的是,本申请实施例描述的第一关键点和第二关键点用于标记模型的各个部位,例如标记模型的眼部、鼻子、嘴巴等。通过所述第一关键点和第二关键点,就能够确定两个模型的相对应位置,进而实现将两个模型对齐。本申请实施例不对关键点的选取作限定。
第二种实现方式为:根据所述面部模型上的第一关键点和所述初步网格模型中预先标记的第二关键点,将所述面部模型上的所有点云数据与所述初步网格模型的点云数据进行对齐。
也就是说,在这第二种实现方式中,本申请实施例没有将面部模型的点云划分成多个区域,直接根据标记好的第一关键点,基于面部模型与初步网格模型之间的点云对应关系,将面部模型的所有点云数据进行对齐处理,能够确保点云数据的完整,提高了第一网格模型与面部模型之间的相似度。
本申请实施例所述的第一关键点和第二关键点,可以是眼睛、鼻子、嘴巴、轮廓等区域的边界上的点,通过标记这些关键点,就能通过面部模型与初步网格模型之间的对应关系来实现两个模型之间的对齐。
S5013:根据所述面部模型上的点与所述初步网格模型上的点之间的对应关系,将所述初步网格模型上的点变换到所述面部模型的对应点上,得到第一网格模型。
此时,对应3DMM库中得到的初步网格模型,本申请实施例通过初步网格模型的点与面部模型上的点之间的对应关系,对初步网格模型上的每个面部点,都在面部模型的点云上找到对应的最近点,例如,通过计算初步网格模型上的每个点与面部模型上的点之间的距离,选取面部模型上距离值最小的点作为最近点。另外,本申请实施例还将采用knn算法来加速匹配得到所有最近点,以提高获取所有最近点的效率。需要说明的是,本申请实施例举例说明了一种获取最近点的方式,在另外的实施例中也可以采用其他方式来获取最近点,只要能够根据获取到的最近点来确定本申请实施例所述的第一网格模型即可,本实施例不对获取最近点的具体实施方式作出限定。本申请实施例还通过加大nricp算法的平滑项权重,来加大算法处理得到的第一网格模型的平滑程度,使得第一网格模型能够表达的轮廓特征更加平滑完整。
由此,每一个初步网格模型上的点都变换到对应的最近点上,经过变换后的最近点均能保持原有初步网格模型的拓扑信息。最后,通过求解初步网格模型上每一个点的变化,就可以把初步网格模型的点变成面部模型上的样子,同时,还能保证第一网格模型的拓扑与标准模型库的拓扑一致。
参见图7,图7为本申请实施例得到的第一网格模型的结果的三个视角图。从图7可以看出,本申请实施例可以得到平滑完整的轮廓,在面部与脖颈交接处平滑且完整,同时,本申请实施例的第一网格模型还能表达出尖下巴形状,更加准确逼真。
除了步骤S5011-S5013的方法,一些实施例还可以通过标准模型库直接获取第一网格模型。例如,采用3DMM库作为标准模型库,3DMM库包括表情基和捏脸基两个部分,它可以是线性或者双线性的存储形式。
对于线性存储形式的3DMM库,以一个任意形状/带有任意表情的人脸为例,该人脸模型可以用这个3DMM库参数化表示为:M=mu+Basis_shape*id+Basis_exp*exp;其中,M是指该人脸模型;mu代表3DMM库中的平均脸;exp是表情系数;id是捏脸基系数。
对于双线性存储形式的3DMM库,如图1所示,其中每一行代表一个人,一共m行则代表有m个人(图1中的m0-m5),即有m个不同的捏脸基;每一列对应一种表情,一共有n列则代表有n种表情(图1中的n0-n15),即有n个表情基。
利用图1所示的3DMM库,以一个任意形状/带有任意表情的人脸为例,该人脸模型可以用这个3DMM库进行双线性参数化表示,即:M=exp*Cr*id;其中,M是指该人脸模型;exp是表情系数,维度是1*n;Cr是3DMM库,维度为n*k*m,k是单个人脸点云的个数,n是表情基的数目,m是捏脸基的数目;id是捏脸基系数,维度是m*1。
也就是说,任意一个人脸模型可以根据选用的标准模型库(例如3DMM库)来参数化表示成“id+exp”形式的模型。通过3DMM库获取的模型,也能够表达该人脸的粗略特征。
接着,执行步骤S502。
S502:根据面部模型中第二面部特征对应的点云数据,确定体现第二面部特征的第二网格模型;
本申请实施例通过划分区域来分别处理的方法,能够从标准模型库(例如3DMM库)中确定面部模型中的细节特征(例如五官)的点。本申请实施例根据面部模型的点云数据以及标准模型库中模型的点与面部模型上的点之间的对应关系,来确定各个区域的点,相较于现有技术还通过检测特征点和计算相机姿态来确定细节特征点的方式,能够避免检测特征点以及计算相机姿态所造成的误差,提高结果的精确度。
本申请实施例的步骤S502包括两种实现方式,第一种实现方式包括步骤S50201、S50202、S50203、S50204和S50205。
S50201:将所述面部模型中第二面部特征对应的点云数据划分为多个拟合区域和第一过渡区域;其中,所述第一过渡区域的点位于任意两个相邻的拟合区域之间;
本申请实施例面部模型上划分出第二面部特征对应的点云区域,其中第二面部特征对应的点云区域在本实施例中是指眼睛鼻子嘴巴等需要进行拟合的区域,本申请实施例以眼睛鼻子嘴巴作为拟合区域,在实际应用中,所述拟合区域不局限于鼻子眼睛嘴巴等五官部位,也可以是其他面部区域,例如面部的胎记区域等,本实施例在此不作限定。如图8所示,由于拟合区域的个数不止一个(包括眼部区域802、鼻子区域803和嘴巴区域804),因此各个拟合区域之间还具有第一过渡区域801。
S50202:根据所述各个拟合区域的拟合前的点,在标准模型库上分别拟合得到各个拟合区域对应的第一捏脸基系数和表情系数;
本申请实施例通过划分出来的拟合区域的点,分别到标准模型库上寻找最相似的对应点,由于标准模型库是参数化的表示方法,因此在寻找最相似的对应点的过程中,拟合得到捏脸基系数和表情系数,就能确定对应的模型,进而确定该模型对应区域的点,即步骤S50203。
另外,在一种可能的实施例中,当拟合区域为眼部区域时,所述步骤S50202进一步包括S502021和S502022。
S502021:获取正则项;以及
S502022:根据所述正则项,在标准模型库上拟合得到第一捏脸基系数和表情系数;所述表情系数对应于标准模型库中的无表情模型。
本申请实施例所述的将第二网格模型划分各个区域来进行拟合的方法,除了能够解决每个拟合区域上点的噪声较大的问题,还能根据实际应用需求来动态调整模型,例如大小眼问题。在实际采集面部模型的过程中,如果采用拍照采集的方式,则拍摄得到的正脸照片可能会存在大小眼的问题,大小眼问题会严重影响导出的表情基的精确度。由于标准模型库中的模型的大小眼是由表情系数决定的,当模型处于无表情状态时,该模型的左右眼必然是对称等同的,当模型处于有表情状态时,其左右眼则可能出现不对称情况(例如单眼眨眼、单眼眯眼等)。因此,要控制模型的双眼保持对称一致,则应当控制模型的参数化表达式中的表情系数为无表情模型的系数,如图1所示的3DMM库中,无表情模型对应的表情系数为0,控制参数化表达式由捏脸基系数决定时,此时,模型的双眼则能保持对称且大小一致。因此,本申请实施例在对眼部区域进行划分拟合时,基于图1所示的3DMM库,通过获取形变迁移的正则项,使得表情系数为0,此时模型的参数化表示受捏脸基系数控制,最后根据所述区域点、表情系数和捏脸基系数,就能确定第二网格模型上的眼部区域,且能保证该眼部区域不会出现大小眼问题,进一步提高了模型的精确度。
S50203:根据所述第一捏脸基系数和表情系数确定各个拟合区域的拟合后的点;
S50204:根据所述各个拟合区域的拟合后的点,确定所述第一过渡区域的拟合后的点;
本申请实施例在确定了各个拟合区域的点之后,对拟合区域的点进行加权平均处理,得到第一过渡区域的点。
S50205:将所述各个拟合区域的拟合后的点和所述第一过渡区域的拟合后的点组合,得到所述第二网格模型。
最后,本申请实施例根据拟合区域的最终点以及第一过渡区域的点,得到一个能够确定第二面部特征的第二网格模型。本申请实施例通过将面部模型划分成多个区域来进行拟合,得到的第二网格模型明确了面部细节的特征,能够保证每个拟合区域不受面部模型上细节特征的噪声干扰,解决了现有技术在五官等面部细节区域的地方会出现噪声的问题,提高了第二网格模型在细节特征区域的准确度和逼真程度。
另外,所述步骤S502还包括第二种实现方式,其包括步骤S50211、步骤S50212和步骤S50213。
S50211:根据所述面部模型中第二面部特征对应的点云数据,在标准模型库上拟合得到第一捏脸基系数和表情系数;
本申请实施例从面部模型上划分出第二面部特征对应的点云数据,其中,第二面部特征对应的点云数据在本实施例中是指细节特征区域。参见图9,本申请实施例将整个面部除了轮廓区域903以外的区域整体作为第二面部特征对应的区域902,相较于现有技术将整个面部置于3DMM库中拟合得到对应的模型,本申请实施例缩小了需要拟合的点云数据区域,能够提高拟合结果的准确度。
S50212:根据所述第一捏脸基系数和所述表情系数确定所述面部模型中第二面部特征对应的的拟合后的点;
S50213:根据所述拟合后的点,确定所述第二网格模型。
通过步骤S50212至S50213的实现过程,得到了一个能够确定第二面部特征的第二网格模型。如图4所示,本申请实施例通过将面部模型划分成第一面部特征对应的区域和第二面部特征对应的区域来进行处理,得到的第二网格模型明确了第二面部特征区域的特征,能够保证第二面部特征区域不受面部模型的噪声干扰,解决了现有技术在五官等面部细节区域的地方会出现面部模型噪声的问题,提高了第二网格模型在细节特征区域的准确度和逼真程度,相较于图7所示的五官细节部分,经过本申请实施例的步骤S502,得到的第二网格模型(如图4所示)中的眼部区域401、鼻子区域402以及嘴巴区域403都提高了准确度和逼真程度。
接着,执行步骤S503。
S503:将所述第一网格模型中第一面部特征上点所在的区域与所述第二网格模型中第二面部特征上点所在的区域进行组合,形成第三网格模型;
本申请实施例通过步骤S501得到一个可以充分表达轮廓等粗略特征的第一网格模型,通过步骤S502得到一个可以充分表达五官等细节特征的第二网格模型,因此,本申请实施例通过步骤S503将上述第一网格模型和第二网格模型组合得到第三网格模型,则既能够充分表达面部模型的轮廓等粗略特征,也能充分表达面部模型的五官等细节特征。
具体的,在本申请实施例的方式中,步骤S503进一步包括步骤S5031和步骤S5032。
S5031:将所述第一网格模型的点云数据和所述第二网格模型的点云数据进行加权平均处理,确定第二过渡区域,所述第二过渡区域的点位于所述第一面部特征的点与所述第二面部特征的点之间。
如图9所示,本申请实施例根据第一网格模型,获取对应面部模型的轮廓区域903;接着根据第二网格模型,获取对应面部模型的五官区域902;接着在轮廓区域903和五官区域902之间确定出第二过渡区域901。所述根据轮廓区域903和五官区域902确定第二过渡区域的过程,与步骤S50204中根据划分区域确定第一过渡区域的过程相似。本申请实施例将第一网格模型和第二网格模型中对应的各个点进行加权平均处理,所述加权平均的计算公式为:
Vertex=w1*vertex1+w2*vertex2;
其中,Vertex代表加权平均后得到的点;w1代表第一网格模型的点的权重值;vertex1代表第一网格模型上的点;vertex2代表第二网格模型上的点;w2代表第二网格模型的点的权重值。本申请实施例的w1和w2可以分别根据第一网格模型和第二网格模型中五官与轮廓之间的距离来动态调整。
S5032:将所述第一面部特征上点所在的区域、所述第二面部特征上点所在的区域以及所述第二过渡区域组合,确定第三网格模型。
需要说明的是,本实施例提供了如步骤S5031和S5032所述的组合方式,当然还包括了其他可能的组合方式。例如,将第一网格模型的所有点云数据与第二网格模型的所有点云数据求均值,将均值的点云数据作为第三网格模型的点。又如,将第一网格模型和第二网格模型中,误差较小的模型保持不变,仅对误差较大的模型与平均脸进行加权平均处理后,再处理结果与误差较小的模型进行组合。本申请实施例在此不对所述组合的方式作限定。
如图10所示,通过将第一网格模型和第二网格模型组合,得到的第三网格模型既能够充分表达人脸模型的轮廓等粗略特征(包括尖下巴等大轮廓形状特征),又能充分表达人脸模型的五官等细节特征(例如眼睛鼻子和嘴巴)。
S504:根据所述第三网格模型从标准模型库中确定第一表情基组。
本申请实施例通过如图10所示的第三网格模型来从3DMM库中导出对应的表情基,既能满足面部模型的轮廓要求,也能满足面部模型的五官等细节要求,提高了表情基的准确度,使之与面部模型更加相像。
为了进一步提高导出的表情基组与面部模型之间的相似度,本申请实施例还包括步骤S505:基于所述第三网格模型,对所述第一表情基组进行形变迁移处理,确定第二表情基组。
所述步骤S505进一步包括步骤S5051和S5052。
S5051:确定形变迁移的形变项和平滑项;以及
S5052:根据所述形变项和平滑项,将第一表情基组上的点形变迁移到所述第三网格模型上,得到第二表情基组。
本申请实施例根据第三网格模型,将第三网格模型作为约束M0,在3DMM库上拟合到捏脸基系数和表情系数,本申请实施例的拟合公式为:
f(id)=min(s(R[(exp*Cr)*id]+T)-M0)
其中,R代表旋转变换操作;T代表平移变换操作;s代表缩放变换操作;exp是表情系数,id是目标shape系数(也称为捏脸基系数)。根据这个拟合公式,本申请实施例的拟合过程通过拟合得到的捏脸基系数和3DMM库中预先定义的表情系数(如图1所示的各个表情下的模型,即代表exp0--expn),可以导出一组表情基Bi。其中,exp0对应的表情基B0是无表情的网格模型,exp1到expn对应的是各种表情的网格模型,如图1所示,exp1到expn对应的可以是每一行中从左往右各个表情的网格模型。本申请实施例所述的表情基属于可变形网格,例如blendshape。本申请实施例的变换处理包括旋转平移缩放处理,当然,还包括其他变换处理,本实施例在此不做限定。
本申请实施例的步骤S504已经得到一组与面部模型相似的表情基组Bi,但是,受限于3DMM库中模型的表达能力,表情基组Bi中的表情基B0与第三网格模型M0仍然存在一定的误差,如图11所示,本申请实施例根据第三网格模型M0,从3DMM库中拟合得到对应M0的表情系数和捏脸基系数,根据拟合得到的表情系数和捏脸基系数导出一组表情基B0-Bn,此时,如果3DMM库中存储的所有人脸模型均不像输入的面部模型,则导出的3DMM库中预存的表情基组必然与输入的面部模型之间存在一定误差,例如在图11中,3DMM库中预存的B0-Bn与输入的面部模型不像,因此,本申请实施例采用形变迁移的方法(例如deformationtransfer算法),把表情基Bi迁移到Mi上去,本申请实施例采用如下计算公式作为形变迁移的示例:
Mi=M0+(Bi–B0);
在本申请实施例的形变迁移过程中,相当于把第一表情基组中与面部模型误差较大的B0替换为相似度最高的M0,在实际应用中,除了考虑该公式中的形变项B0,还可考虑平滑项的约束,用来限制形变迁移前后的Mi的三角形拓扑和法线保持平滑。如图11所示,本申请实施例将导出的第一表情基组Bi全部形变迁移到第二表情基组Mi上,得到了一组与输入的面部模型最相似的表情基组。本申请实施例的目的在于将B0替换为M0,并举例说明了形变迁移的具体计算公式,当然,还包括其他形变迁移的方法和计算公式,本实施例在此不作限定。
如图2所示,通过本申请实施例的方法,最终得到一组跟面部模型201最相似的表情基组202,该表情基组可用于驱动面部模型对应的虚拟形象。本申请实施例克服了现有技术的缺陷,能够根据面部模型确定一组逼真程度高的表情基组。
本申请的另一实施例中,还提供了一种表情基确定方法。该实施例将面部轮廓特征作为第一面部特征,将五官轮廓特征作为第二面部特征。如图12所示,该方法首先获取面部图像数据;接着通过nricp算法来确定面部图像中的轮廓特征区域,并通过划分面部模型的区域来分别确定五官特征区域;然后将轮廓特征区域和五官特征区域进行组合;再根据组合结果从标准模型库中获取第一表情基组;最后将第一表情基组上的点形变迁移到所述组合结果上,得到第二表情基组。
本申请实施例中,面部图像可以是通过传感器针对虚拟形象进行采集得到的,该传感器可以是深度传感器例如RGBD传感器,也可以是普通传感器(二维传感器)等。
其中,本申请实施例通过nricp算法来确定面部图像中的轮廓特征区域的步骤中,参见上述实施例的步骤S501,将整个面部图像除了五官之外的所有区域都作为轮廓区域,对面部图像的点云数据进行非刚性配准处理(英文名称为nricp处理),得到轮廓特征区域的各个最终点。
本申请实施例通过划分面部图像的区域来分别确定五官特征区域的步骤中,参见上述实施例的步骤S502,分别将面部图像中各个五官位置的点进行拟合,得到五官特征区域的最终点。
接着,参见上述实施例的步骤S503,本申请实施例将轮廓特征区域的最终点与五官特征区域的最终点组合,得到整个面部的最终点。
再接着,参见上述实施例的步骤S504,基于整个面部的最终点,从标准模型库中获取第一表情基组;最后,参见上述实施例的步骤S505,将第一表情基组上的点形变迁移到组合的结果上,得到第二表情基组。至此,本申请实施例得到了一组与输入的面部图像最相似的表情基组。
本申请的另一实施例中,还提供了一种虚拟形象驱动方法。该方法首先根据上述实施例提供的表情基确定方法获得一组表情基,然后根据上述表情基组对虚拟形象进行驱动。例如,在游戏场景中构建用户自己脸型的游戏人物,基于上述表情基,就能对该游戏人物进行驱动。
基于前述实施例提供的表情基确定方法,本实施例还提供一种表情基确定装置。参见图13,所述装置包括第一网格模型生成模块1101、第二网格模型生成模块1102、第三网格模型生成模块1103和第一表情基生成模块1104:
所述第一网格模型生成模块1101,用于根据面部模型的点云数据,确定体现第一面部特征的第一网格模型;
所述第二网格模型生成模块1102,用于根据面部模型中第二面部特征对应的点云数据,确定体现第二面部特征的第二网格模型;
所述第三网格模型生成模块1103,用于将所述第一网格模型中第一面部特征上点所在的区域与所述第二网格模型中第二面部特征上点所在的区域进行组合,形成第三网格模型;
所述第一表情基生成模块1104,用于根据所述第三网格模型从标准模型库中确定第一表情基组。
在一些实施例中,还包括第二表情基生成模块:
所述第二表情基生成模块,用于基于所述第三网格模型,对所述第一表情基组进行形变迁移处理,确定第二表情基组。
在一些实施例中,所述第一网格模型生成模块1101包括获取单元、对齐单元和变换单元:
所述获取单元,用于根据所述面部模型的点云数据,从所述标准模型库中获取初步网格模型;
所述对齐单元,用于根据所述面部模型上的第一关键点和所述初步网格模型中预先标记的第二关键点,将所述面部模型的点云数据与所述初步网格模型的点云数据进行对齐;以及
所述变换单元,用于根据所述面部模型上的点与所述初步网格模型上的点之间的对应关系,将所述初步网格模型上的点变换到所述面部模型的对应点上,得到第一网格模型。
在一些实施例中,所述第二网格模型生成模块1102包括划分单元、第一拟合单元、第一确定单元、第一过渡区域确定单元和第一组合单元:
所述划分单元,用于将所述面部模型中第二面部特征对应的点云数据划分为多个拟合区域和第一过渡区域;其中,所述第一过渡区域的点位于任意两个相邻的拟合区域之间;
所述第一拟合单元,用于根据所述各个拟合区域的拟合前的点,在标准模型库上分别拟合得到各个拟合区域对应的第一捏脸基系数和表情系数;
所述第一确定单元,用于根据所述第一捏脸基系数和表情系数确定各个拟合区域的拟合后的点;
所述第一过渡区域确定单元,用于根据所述各个拟合区域的拟合后的点,确定所述第一过渡区域的拟合后的点;以及
所述第一组合单元,用于将所述各个拟合区域的拟合后的点和所述第一过渡区域的拟合后的点组合,得到所述第二网格模型。
在一些实施例中,所述第三网格模型生成模块1103包括第二确定单元和第二组合单元:
所述第二确定单元,用于将所述第一网格模型的点云数据和所述第二网格模型的点云数据进行加权平均处理,确定第二过渡区域,所述第二过渡区域的点位于所述第一面部特征的点与所述第二面部特征的点之间;以及
所述第二组合单元,用于将所述第一面部特征上点所在的区域、所述第二面部特征上点所在的区域以及所述第二过渡区域组合,确定第三网格模型。
在一些实施例中,所述第一表情基生成模块1104包括第二拟合单元和导出单元:
所述第二拟合单元,用于根据所述第三网格模型,在标准模型库上拟合得到第二捏脸基系数;以及
所述导出单元,用于根据所述第二捏脸基系数和预设的表情系数,确定所述面部模型在所述标准模型库中的第一表情基组。
在一些实施例中,所述第二表情基生成模块包括第三确定单元和形变迁移单元:
所述第三确定单元,用于确定形变迁移的形变项和平滑项;以及
所述形变迁移单元,用于根据所述形变项和平滑项,将第一表情基组上的点形变迁移到所述第三网格模型上,得到第二表情基组。
基于前述实施例提供的虚拟形象驱动方法,本实施例还提供一种虚拟形象驱动装置。包括表情基生成模块和驱动模块:
所述表情基生成模块,用于根据前述实施例所述的表情基确定装置生成一组表情基;
以及
所述驱动模块,用于根据所述表情基对所述虚拟形象进行驱动。
本申请实施例还提供了一种设备,该设备可以基于人工智能生成表情基,也可以根据所述表情基对虚拟形象进行驱动。该设备还可以是终端设备,该终端设备可以为包括手机、平板电脑、个人数字助理(Personal Digital Assistant,简称PDA)、销售终端(Pointof Sales,简称POS)、车载电脑等任意智能终端,下面结合附图对该设备进行介绍,参见图14,本申请实施例以终端设备为手机为例:
图14示出的是与本申请实施例提供的终端设备相关的手机的部分结构的框图。参考图14,手机包括:射频(Radio Frequency,简称RF)电路1210、存储器1220、输入单元1230、显示单元1240、传感器1250、音频电路1260、无线保真(wireless fidelity,简称WiFi)模块1270、处理器1280、以及电源1290等部件。本领域技术人员可以理解,图14中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
在本申请实施例中,该终端设备所包括的处理器1280具有以下功能:
根据面部模型的点云数据,确定体现第一面部特征的第一网格模型;
根据面部模型中第二面部特征对应的点云数据,确定体现第二面部特征的第二网格模型;
将所述第一网格模型中第一面部特征上点所在的区域与所述第二网格模型中第二面部特征上点所在的区域进行组合,形成第三网格模型;以及
根据所述第三网格模型从标准模型库中确定第一表情基组。
该终端设备所包括的处理器1280还具有以下功能:
根据表情基确定装置生成一组表情基;以及
根据所述表情基对虚拟形象进行驱动。
本申请实施例还提供服务器,请参见图15所示,图15为本申请实施例提供的服务器1300的结构图,服务器1300可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(Central Processing Units,简称CPU)1322(例如,一个或一个以上处理器)和存储器1332,一个或一个以上存储应用程序1342或数据1344的存储介质1330(例如一个或一个以上海量存储设备)。其中,存储器1332和存储介质1330可以是短暂存储或持久存储。存储在存储介质1330的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1322可以设置为与存储介质1330通信,在服务器1300上执行存储介质1330中的一系列指令操作。
服务器1300还可以包括一个或一个以上电源1326,一个或一个以上有线或无线网络接口1350,一个或一个以上输入输出接口1358,和/或,一个或一个以上操作系统1341,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
上述实施例中由处理器1280所实现的功能也可以基于该图15所示的服务器结构来实现。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质用于存储程序,所述程序被处理器执行完成如前述各个实施例所述的表情基确定方法和虚拟形象驱动方法。
本申请实施例还提供一种包括指令的计算机程序产品,当其在计算机上运行时,使得计算机执行前述各个实施例所述的表情基确定方法和虚拟形象驱动方法。
本申请的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括多指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (14)
1.一种表情基确定方法,其特征在于,包括:
根据面部模型的点云数据,确定体现第一面部特征的第一网格模型;
根据面部模型中第二面部特征对应的点云数据,确定体现第二面部特征的第二网格模型;
将所述第一网格模型中第一面部特征上点所在的区域与所述第二网格模型中第二面部特征上点所在的区域进行组合,形成第三网格模型;以及
根据所述第三网格模型从标准模型库中确定第一表情基组;
其中,所述根据面部模型中第二面部特征对应的点云数据,确定体现第二面部特征的第二网格模型,包括:
将所述面部模型中第二面部特征对应的点云数据划分为多个拟合区域和第一过渡区域;其中,所述第一过渡区域的点位于任意两个相邻的拟合区域之间;
根据所述各个拟合区域的拟合前的点,在标准模型库上分别拟合得到各个拟合区域对应的第一捏脸基系数和表情系数;
根据所述第一捏脸基系数和表情系数确定各个拟合区域的拟合后的点;
根据所述各个拟合区域的拟合后的点,确定所述第一过渡区域的拟合后的点;以及
将所述各个拟合区域的拟合后的点和所述第一过渡区域的拟合后的点组合,得到所述第二网格模型。
2.根据权利要求1所述的方法,其特征在于,还包括:
确定形变迁移的形变项和平滑项;以及
根据所述形变项和平滑项,将第一表情基组上的点形变迁移到所述第三网格模型上,得到第二表情基组。
3.根据权利要求1或2所述的方法,其特征在于,所述根据面部模型的点云数据,确定体现第一面部特征的第一网格模型,包括:
根据所述面部模型的点云数据,从所述标准模型库中获取初步网格模型;
根据所述面部模型上的第一关键点和所述初步网格模型中预先标记的第二关键点,将所述面部模型的点云数据与所述初步网格模型的点云数据进行对齐;以及
根据所述面部模型上的点与所述初步网格模型上的点之间的对应关系,将所述初步网格模型上的点变换到所述面部模型的对应点上,得到所述第一网格模型。
4.根据权利要求3所述的方法,其特征在于,所述根据所述面部模型上的第一关键点和所述初步网格模型中预先标记的第二关键点,将所述面部模型的点云数据与所述初步网格模型的点云数据进行对齐,包括:
将所述面部模型上的点划分为第一面部特征区域和第二面部特征区域,根据所述面部模型上的第一关键点和所述初步网格模型中预先标记的第二关键点,将所述第一面部特征区域的点云数据与所述初步网格模型的点云数据进行对齐。
5.根据权利要求1或2所述的方法,其特征在于,所述根据面部模型中第二面部特征对应的点云数据,确定体现第二面部特征的第二网格模型,包括:
根据所述面部模型中第二面部特征对应的点云数据,在标准模型库上拟合得到第一捏脸基系数和表情系数;
根据所述第一捏脸基系数和所述表情系数确定所述面部模型中第二面部特征对应的拟合后的点;以及
根据所述拟合后的点,确定所述第二网格模型。
6.根据权利要求1所述的方法,其特征在于,所述多个拟合区域包括以下至少之一:眼部区域、耳部区域、舌头区域、鼻子区域和嘴巴区域;
当拟合区域为眼部区域时,所述根据所述拟合区域的点,在标准模型库上拟合得到第一捏脸基系数和表情系数,包括:
获取正则项;以及
根据所述正则项,在标准模型库上拟合得到第一捏脸基系数和表情系数;所述表情系数对应于标准模型库中的无表情模型。
7.根据权利要求1或2所述的方法,其特征在于,所述将所述第一网格模型中第一面部特征上点所在的区域与所述第二网格模型中第二面部特征上点所在的区域进行组合,形成第三网格模型,包括:
将所述第一网格模型的点云数据和所述第二网格模型的点云数据进行加权平均处理,确定第二过渡区域,所述第二过渡区域的点位于所述第一面部特征的点与所述第二面部特征的点之间;以及
将所述第一面部特征上点所在的区域、所述第二面部特征上点所在的区域以及所述第二过渡区域组合,确定第三网格模型。
8.根据权利要求1或2所述的方法,其特征在于,所述根据所述第三网格模型从标准模型库中确定第一表情基组,包括:
根据所述第三网格模型,在标准模型库上拟合得到第二捏脸基系数;以及
根据所述第二捏脸基系数和预设的表情系数,确定所述面部模型在所述标准模型库中的第一表情基组。
9.一种表情基确定方法,其特征在于,包括:
采集面部图像;
确定所述面部图像的轮廓特征区域;
确定所述面部图像的五官特征区域;
将所述轮廓特征区域和所述五官特征区域进行组合;以及
从标准模型库中获取所述面部图像对应的第一表情基组;
其中,所述确定所述面部图像的轮廓特征区域,包括:
将所述面部图像中第二面部特征对应的点云数据划分为多个拟合区域和第一过渡区域;其中,所述第一过渡区域的点位于任意两个相邻的拟合区域之间;
根据所述各个拟合区域的拟合前的点,在标准模型库上分别拟合得到各个拟合区域对应的第一捏脸基系数和表情系数;
根据所述第一捏脸基系数和表情系数确定各个拟合区域的拟合后的点;
根据所述各个拟合区域的拟合后的点,确定所述第一过渡区域的拟合后的点;以及
将所述各个拟合区域的拟合后的点和所述第一过渡区域的拟合后的点组合,得到所述轮廓特征区域。
10.根据权利要求9所述的方法,其特征在于,还包括:
确定形变迁移的形变项和平滑项;以及
根据所述形变项和平滑项,对第一表情基组上的点进行形变迁移,得到第二表情基组。
11.一种虚拟形象驱动方法,其特征在于,包括:
根据权利要求1-8任一项或权利要求9-10任一项所述的表情基确定方法生成一组表情基;以及
根据所述表情基对所述虚拟形象进行驱动。
12.一种表情基确定装置,其特征在于,包括第一网格模型生成模块、第二网格模型生成模块、第三网格模型生成模块和第一表情基生成模块:
所述第一网格模型生成模块,用于根据面部模型的点云数据,确定体现第一面部特征的第一网格模型;
所述第二网格模型生成模块,用于根据面部模型中第二面部特征对应的点云数据,确定体现第二面部特征的第二网格模型;
所述第三网格模型生成模块,用于将所述第一网格模型中第一面部特征上点所在的区域与所述第二网格模型中第二面部特征上点所在的区域进行组合,形成第三网格模型;以及
所述第一表情基生成模块,用于根据所述第三网格模型从标准模型库中确定第一表情基组;
其中,所述第二网格模型生成模块具体用于:
将所述面部模型中第二面部特征对应的点云数据划分为多个拟合区域和第一过渡区域;其中,所述第一过渡区域的点位于任意两个相邻的拟合区域之间;
根据所述各个拟合区域的拟合前的点,在标准模型库上分别拟合得到各个拟合区域对应的第一捏脸基系数和表情系数;
根据所述第一捏脸基系数和表情系数确定各个拟合区域的拟合后的点;
根据所述各个拟合区域的拟合后的点,确定所述第一过渡区域的拟合后的点;以及
将所述各个拟合区域的拟合后的点和所述第一过渡区域的拟合后的点组合,得到所述第二网格模型。
13.一种虚拟形象驱动装置,其特征在于,包括表情基生成模块和驱动模块:
所述表情基生成模块,用于根据权利要求12所述的表情基确定装置生成一组表情基;以及
所述驱动模块,用于根据所述表情基对所述虚拟形象进行驱动。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有程序,所述程序被处理器执行完成如权利要求1-8、9-10或11中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010090945.2A CN111325846B (zh) | 2020-02-13 | 2020-02-13 | 表情基确定方法、虚拟形象驱动方法、装置及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010090945.2A CN111325846B (zh) | 2020-02-13 | 2020-02-13 | 表情基确定方法、虚拟形象驱动方法、装置及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111325846A CN111325846A (zh) | 2020-06-23 |
CN111325846B true CN111325846B (zh) | 2023-01-20 |
Family
ID=71172796
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010090945.2A Active CN111325846B (zh) | 2020-02-13 | 2020-02-13 | 表情基确定方法、虚拟形象驱动方法、装置及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111325846B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111798551B (zh) * | 2020-07-20 | 2024-06-04 | 网易(杭州)网络有限公司 | 虚拟表情生成方法及装置 |
CN112530016B (zh) * | 2020-10-30 | 2022-11-11 | 北京字跳网络技术有限公司 | 一种道具吸附的方法、装置、设备及存储介质 |
CN114767112A (zh) * | 2021-01-22 | 2022-07-22 | 中国移动通信有限公司研究院 | 一种情绪识别方法、装置及电子设备 |
CN113344770A (zh) * | 2021-04-30 | 2021-09-03 | 螳螂慧视科技有限公司 | 虚拟模型及其构建方法、交互方法以及电子设备 |
CN113223127A (zh) * | 2021-05-21 | 2021-08-06 | 广州虎牙科技有限公司 | 虚拟对象的表情生成方法、应用程序、设备及存储介质 |
CN113470149B (zh) * | 2021-06-30 | 2022-05-06 | 完美世界(北京)软件科技发展有限公司 | 表情模型的生成方法及装置、存储介质、计算机设备 |
CN114385285B (zh) * | 2021-11-30 | 2024-02-06 | 重庆长安汽车股份有限公司 | 一种基于汽车ai智慧助手的形象创建方法 |
CN116778107B (zh) * | 2022-03-11 | 2024-10-15 | 腾讯科技(深圳)有限公司 | 表情模型的生成方法、装置、设备及介质 |
CN115359171B (zh) * | 2022-10-21 | 2023-04-07 | 北京百度网讯科技有限公司 | 虚拟形象处理方法、装置、电子设备和存储介质 |
CN116152122B (zh) * | 2023-04-21 | 2023-08-25 | 荣耀终端有限公司 | 图像处理方法和电子设备 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102157007A (zh) * | 2011-04-11 | 2011-08-17 | 北京中星微电子有限公司 | 一种表演驱动的制作人脸动画的方法和装置 |
CN105427385B (zh) * | 2015-12-07 | 2018-03-27 | 华中科技大学 | 一种基于多层形变模型的高保真人脸三维重建方法 |
CN110135226B (zh) * | 2018-02-09 | 2023-04-07 | 腾讯科技(深圳)有限公司 | 表情动画数据处理方法、装置、计算机设备和存储介质 |
CN109308727B (zh) * | 2018-09-07 | 2020-11-10 | 腾讯科技(深圳)有限公司 | 虚拟形象模型生成方法、装置及存储介质 |
CN109377563A (zh) * | 2018-11-29 | 2019-02-22 | 广州市百果园信息技术有限公司 | 一种人脸网格模型的重建方法、装置、设备和存储介质 |
CN110517340B (zh) * | 2019-08-30 | 2020-10-23 | 腾讯科技(深圳)有限公司 | 一种基于人工智能的脸部模型确定方法和装置 |
-
2020
- 2020-02-13 CN CN202010090945.2A patent/CN111325846B/zh active Active
Non-Patent Citations (1)
Title |
---|
Resampling Approach to Facial Expression Recognition Using 3D Meshes;Y.V. Venkatesh等;《2010 20th International Conference on Pattern Recognition》;20101007;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111325846A (zh) | 2020-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111325846B (zh) | 表情基确定方法、虚拟形象驱动方法、装置及介质 | |
US11748934B2 (en) | Three-dimensional expression base generation method and apparatus, speech interaction method and apparatus, and medium | |
WO2020228389A1 (zh) | 一种创建脸部模型的方法、装置、电子设备及计算机可读存储介质 | |
CN111626218B (zh) | 基于人工智能的图像生成方法、装置、设备及存储介质 | |
JP7526412B2 (ja) | パラメータ推定モデルの訓練方法、パラメータ推定モデルの訓練装置、デバイスおよび記憶媒体 | |
US11900557B2 (en) | Three-dimensional face model generation method and apparatus, device, and medium | |
US20210097759A1 (en) | Predictive personalized three-dimensional body models | |
JP7476428B2 (ja) | 画像の視線補正方法、装置、電子機器、コンピュータ可読記憶媒体及びコンピュータプログラム | |
WO2022143645A1 (zh) | 三维人脸重建的方法、装置、设备和存储介质 | |
JP2019096113A (ja) | キーポイントデータに関する加工装置、方法及びプログラム | |
CN112085835B (zh) | 三维卡通人脸生成方法、装置、电子设备及存储介质 | |
CN110717391A (zh) | 一种基于视频图像的身高测量方法、系统、装置和介质 | |
CN111815768B (zh) | 三维人脸重建方法和装置 | |
TWI780919B (zh) | 人臉影像的處理方法、裝置、電子設備及儲存媒體 | |
CN113570684A (zh) | 图像处理方法、装置、计算机设备和存储介质 | |
CN112884868B (zh) | 三维网格顶点特征确定方法、骨骼蒙皮方法及相关装置 | |
KR20230110787A (ko) | 개인화된 3d 머리 및 얼굴 모델들을 형성하기 위한 방법들 및 시스템들 | |
CN111754622B (zh) | 脸部三维图像生成方法及相关设备 | |
WO2024174422A1 (zh) | 模型的生成方法及装置、电子设备、存储介质 | |
CN115546361A (zh) | 三维卡通形象处理方法、装置、计算机设备和存储介质 | |
CN115994944A (zh) | 三维关键点预测方法、训练方法及相关设备 | |
CN117011449A (zh) | 三维面部模型的重构方法和装置、存储介质及电子设备 | |
CN111222448B (zh) | 图像转换方法及相关产品 | |
US20230079478A1 (en) | Face mesh deformation with detailed wrinkles | |
CN114820907A (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40024420 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |