CN112634416B - 虚拟形象模型的生成方法、装置、电子设备及存储介质 - Google Patents
虚拟形象模型的生成方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN112634416B CN112634416B CN202011536809.8A CN202011536809A CN112634416B CN 112634416 B CN112634416 B CN 112634416B CN 202011536809 A CN202011536809 A CN 202011536809A CN 112634416 B CN112634416 B CN 112634416B
- Authority
- CN
- China
- Prior art keywords
- avatar
- target
- sub
- dimensional model
- model
- 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
Classifications
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/04—Texture mapping
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
技术领域
本公开涉及计算机技术领域,尤其涉及一种虚拟形象模型的生成方法、装置、电子设备及存储介质。
背景技术
随着网络技术的发展,越来越多的用户会通过观看直播的方式进行娱乐。为了提升直播效果,很多直播平台都为提供了虚拟形象来辅助主播进行直播。虚拟形象能够在主播的直播间内进行表演,通过虚拟形象的表演就也能够提高直播效果。
相关技术中,虚拟形象仅具有一种或几种固定的形象,而一种或几种固定的形象有时并不能满足主播的直播需要。若主播想要采用其他形象的虚拟形象进行直播,那么往往需要请设计人员重新制作虚拟形象或者修改虚拟形象已有的形象。在这种情况下,导致生成虚拟形象的效率较低,成本较高。
发明内容
本公开提供一种虚拟形象模型的生成方法、装置、电子设备及存储介质,以提高生成虚拟形象效率。本公开的技术方案如下:
一方面,提供了一种虚拟形象模型的生成方法,包括:
获取目标虚拟形象的图像,所述图像包括多个图层,每个所述图层对应于所述目标虚拟形象的一个或多个部位;
将原始虚拟形象的三维模型和所述图像输入虚拟形象编辑***,所述原始虚拟形象和所述目标虚拟形象为同一类型的虚拟形象,所述虚拟形象编辑***用于编辑所述原始虚拟形象的三维模型,通过所述虚拟形象编辑***,执行下述步骤:
基于每个所述图层对应的所述目标虚拟形象的一个或多个部位,将所述原始虚拟形象的三维模型分割成与所述多个图层分别对应的多个子模型;
从每个所述图层中获取与所述目标虚拟形象的一个或多个部位分别对应的一个或多个贴图,基于所述一个或多个贴图,更新对应的所述多个子模型的纹理;
将纹理更新后的所述多个子模型进行组合,得到所述目标虚拟形象的三维模型。
在一种可能的实施方式中,所述基于每个所述图层对应的所述目标虚拟形象的一个或多个部位,将所述原始虚拟形象的三维模型分割成与所述多个图层分别对应的多个子模型包括:
基于每个所述图层对应的一个或多个部位,对所述原始虚拟形象的三维模型中多个顶点进行聚类,得到顶点分界线,所述顶点分界线用于分割所述原始虚拟形象的三维模型;
基于所述顶点分界线,将所述原始虚拟形象的三维模型分割成与所述多个图层分别对应的所述多个子模型。
在一种可能的实施方式中,每个所述图层包括位置提示信息,所述位置提示信息用于指示图层中与不同部位对应贴图的位置,所述从每个所述图层中获取与所述目标虚拟形象的一个或多个部位分别对应的一个或多个贴图包括:
从所述多个图层中获取所述位置提示信息;
根据所述位置提示信息,从每个所述图层中获取与所述目标虚拟形象的一个或多个部位分别对应的所述一个或多个贴图。
在一种可能的实施方式中,所述将纹理更新后的所述多个子模型进行组合,得到所述目标虚拟形象的三维模型包括:
基于所述原始虚拟形象的三维模型中对应部位的组合关系,将所述纹理更新后的所述多个子模型进行拼接,得到所述目标虚拟形象的三维模型。
在一种可能的实施方式中,所述得到所述目标虚拟形象的三维模型之前,所述方法还包括:
对所述纹理更新后的所述多个子模型的拼接位置进行线性插值处理。
在一种可能的实施方式中,所述基于每个所述图层对应的所述目标虚拟形象的一个或多个部位,将所述原始虚拟形象的三维模型分割成与所述多个图层分别对应的多个子模型包括:
响应于所述图像的多个图层的标识和数量均符合目标条件,基于每个所述图层对应的所述目标虚拟形象的一个或多个部位,将所述原始虚拟形象的三维模型分割成与所述多个图层分别对应的多个子模型。
在一种可能的实施方式中,所述得到所述目标虚拟形象的三维模型之后,所述方法还包括:
响应于对所述目标虚拟形象的任一部位的选择指令,获取所述任一部位的纹理更新图层,所述纹理更新图层用于替换所述多个图层中与所述任一部位对应的图层;
基于所述纹理更新图层,更新所述任一部位对应的子模型的纹理;
采用纹理更新后的所述任一部位对应的子模型替换所述目标虚拟形象的三维模型中对应的子模型。
在一种可能的实施方式中,所述得到所述目标虚拟形象的三维模型之后,所述方法还包括:
响应于对所述目标虚拟形象的三维模型中任一子模型的选择指令,显示与所述任一子模型对应的骨骼关键点以及所述任一子模型与对应的骨骼关键点之间的蒙皮权重;
响应于对所述蒙皮权重的调整操作,基于所述调整操作所指示的数值,更新所述蒙皮权重。
在一种可能的实施方式中,所述目标虚拟形象包括多个子虚拟形象,所述方法还包括:
获取所述多个子虚拟形象的变形程度参数和运动速度参数,所述变形程度参数用于表示所述子虚拟形象的最大变形幅度,所述运动速度参数用于表示所述子虚拟形象的状态改变速度;
响应于所述目标虚拟形象的三维模型中与任一子虚拟形象连接的任一顶点的位置发生变化,基于所述变形程度参数、所述运动速度参数以及所述任一顶点变化后的位置,对所述任一子虚拟形象的位置进行调整。
在一种可能的实施方式中,所述得到所述目标虚拟形象的三维模型之后,所述方法还包括下述至少一项:
响应于对所述目标虚拟形象嘴部的宽度调整指令,根据所述宽度调整指令所指示的宽度,对所述目标虚拟形象的三维模型中与嘴部对应顶点的位置进行调整;
获取所述目标虚拟形象嘴部的最大张开幅度,基于所述最大张开幅度,为所述目标虚拟形象的三维模型中与嘴部对应顶点设置最大允许移动距离。
一方面,提供了一种虚拟形象模型的生成装置,包括:
图像获取模块,被配置为执行获取目标虚拟形象的图像,所述图像包括多个图层,每个所述图层对应于所述目标虚拟形象的一个或多个部位;
输入模块,被配置为执行将原始虚拟形象的三维模型和所述图像输入虚拟形象编辑***,所述原始虚拟形象和所述目标虚拟形象为同一类型的虚拟形象,所述虚拟形象编辑***用于编辑所述原始虚拟形象的三维模型,通过所述虚拟形象编辑***,执行下述步骤:
基于每个所述图层对应的所述目标虚拟形象的一个或多个部位,将所述原始虚拟形象的三维模型分割成与所述多个图层分别对应的多个子模型;
从每个所述图层中获取与所述目标虚拟形象的一个或多个部位分别对应的一个或多个贴图,基于所述一个或多个贴图,更新对应的所述多个子模型的纹理;
将纹理更新后的所述多个子模型进行组合,得到所述目标虚拟形象的三维模型。
在一种可能的实施方式中,所述输入模块,被配置为执行基于每个所述图层对应的一个或多个部位,对所述原始虚拟形象的三维模型中多个顶点进行聚类,得到顶点分界线,所述顶点分界线用于分割所述原始虚拟形象的三维模型;基于所述顶点分界线,将所述原始虚拟形象的三维模型分割成与所述多个图层分别对应的所述多个子模型。
在一种可能的实施方式中,每个所述图层包括位置提示信息,所述位置提示信息用于指示图层中与不同部位对应贴图的位置,所述输入模块,被配置为执行从所述多个图层中获取所述位置提示信息;根据所述位置提示信息,从每个所述图层中获取与所述目标虚拟形象的一个或多个部位分别对应的所述一个或多个贴图。
在一种可能的实施方式中,所述输入模块,被配置为执行基于所述原始虚拟形象的三维模型中对应部位的组合关系,将所述纹理更新后的所述多个子模型进行拼接,得到所述目标虚拟形象的三维模型。
在一种可能的实施方式中,所述输入模块,被配置为执行对所述纹理更新后的所述多个子模型的拼接位置进行线性插值处理。
在一种可能的实施方式中,所述装置还包括:
图像校验模块,被配置为执行响应于所述图像的多个图层的标识和数量均符合目标条件,基于每个所述图层对应的所述目标虚拟形象的一个或多个部位,将所述原始虚拟形象的三维模型分割成与所述多个图层分别对应的多个子模型。
在一种可能的实施方式中,所述输入模块还被配置为执行响应于对所述目标虚拟形象的任一部位的选择指令,获取所述任一部位的纹理更新图层,所述纹理更新图层用于替换所述多个图层中与所述任一部位对应的图层;基于所述纹理更新图层,更新所述任一部位对应的子模型的纹理;采用纹理更新后的所述任一部位对应的子模型替换所述目标虚拟形象的三维模型中对应的子模型。
在一种可能的实施方式中,所述装置还包括:
显示模块,被配置为执行响应于对所述目标虚拟形象的三维模型中任一子模型的选择指令,显示与所述任一子模型对应的骨骼关键点以及所述任一子模型与对应的骨骼关键点之间的蒙皮权重;
蒙皮权重更新模块,被配置为执行响应于对所述蒙皮权重的调整操作,基于所述调整操作所指示的数值,更新所述蒙皮权重。
在一种可能的实施方式中,所述目标虚拟形象包括多个子虚拟形象,所述装置还包括:
参数获取模块,被配置为执行获取所述多个子虚拟形象的变形程度参数和运动速度参数,所述变形程度参数用于表示所述子虚拟形象的最大变形幅度,所述运动速度参数用于表示所述子虚拟形象的状态改变速度;
位置调整模块,被配置为执行响应于所述目标虚拟形象的三维模型中与任一子虚拟形象连接的任一顶点的位置发生变化,基于所述变形程度参数、所述运动速度参数以及所述任一顶点变化后的位置,对所述任一子虚拟形象的位置进行调整。
在一种可能的实施方式中,所述得到所述目标虚拟形象的三维模型之后,所述装置还包括下述至少一个模块:
宽度调整模块,被配置为执行响应于对所述目标虚拟形象嘴部的宽度调整指令,根据所述宽度调整指令所指示的宽度,对所述目标虚拟形象的三维模型中与嘴部对应顶点的位置进行调整;
幅度调整模块,被配置为执行获取所述目标虚拟形象嘴部的最大张开幅度,基于所述最大张开幅度,为所述目标虚拟形象的三维模型中与嘴部对应顶点设置最大允许移动距离。
一方面,提供一种电子设备,该电子设备包括:
一个或多个处理器;
用于存储该处理器可执行程序代码的存储器;
其中,该处理器被配置为执行该程序代码,以实现上述虚拟形象模型的生成方法。
一方面,提供一种存储介质,当该存储介质中的程序代码由电子设备的处理器执行时,使得电子设备能够执行上述虚拟形象模型的生成方法。
一方面,提供一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序可以由电子设备的处理器执行,以完成上述虚拟形象模型的生成方法。
本公开的实施例提供的技术方案至少带来以下有益效果:
当需要对原始虚拟形象的三维模型进行编辑时,用户只需要通过终端向虚拟形象编辑***输入目标虚拟形象的图像和原始虚拟形象的三维模型,通过虚拟形象编辑***就能够快速生成目标虚拟形象的三维模型,生成三维模型的效率较高。同时,在生成三维模型的过程中,无需用户具备三维模型生成的相关知识,全部流程由虚拟形象编辑***完成,降低了生成三维模型的成本,简化了用户的操作,提高了人机交互的效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种虚拟形象的示意图;
图2是根据一示例性实施例示出的一种虚拟形象模型的生成方法的实施环境示意图;
图3是根据一示例性实施例示出的一种虚拟形象的示意图;
图4是根据一示例性实施例示出的一种虚拟形象的示意图;
图5是根据一示例性实施例示出的一种虚拟形象模型的生成方法的流程图;
图6是根据一示例性实施例示出的一种虚拟形象模型的生成方法的流程图;
图7是根据一示例性实施例示出的一种界面示意图;
图8是根据一示例性实施例示出的一种界面示意图;
图9是根据一示例性实施例示出的一种模型分割示意图;
图10是根据一示例性实施例示出的一种虚拟形象的示意图;
图11是根据一示例性实施例示出的一种虚拟形象的示意图;
图12是根据一示例性实施例示出的一种虚拟形象模型的生成装置的框图;
图13是根据一示例性实施例示出的一种终端的框图;
图14是根据一示例性实施例示出的一种服务器的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
本公开所涉及的用户信息可以为经用户授权或者经过各方充分授权的信息。
首先对本公开实施例涉及的名词进行介绍。
虚拟形象:也可以称为虚拟偶像或者动画人物,是通过绘画、动画、计算机动画(Computer Graphics,CG)等形式制作,在因特网等虚拟场景进行活动,但本身并不以实体形式存在的人物对象。参见图1,左边虚拟形象的平面图像,右边为虚拟形象的三维图像。
图2是根据一示例性实施例示出的一种虚拟形象模型的生成方法的实施环境示意图,如图2所示,包括终端201和服务器202。
可选地,终端201为智能手机、智能手表、台式电脑、手提电脑和膝上型便携计算机等设备中的至少一种。终端201上可以安装并运行有支持在线直播的应用程序,用户可以通过终端201登录该应用程序来进行直播。终端201可以通过无线网络或有线网络与服务器202相连。
可选地,终端201为多个终端中的一个,本实施例仅以终端201来举例说明。本领域技术人员可以知晓,上述终端的数量能够更多或更少。比如上述终端201能够仅为几个,或者上述终端201为几十个或几百个,或者更多数量,本公开实施例对终端201的数量和设备类型均不加以限定。
可选地,服务器202为一台服务器、多台服务器、云计算平台和虚拟化中心中的至少一种。服务器202能够用于进行直播。
可选地,上述服务器202的数量为更多或更少,本公开实施例对此不加以限定。当然,可选地,服务器202还包括其他功能服务器,以便提供更全面且多样化的服务。
本公开实施例提供的虚拟形象模型的生成方法能够应用在多种场景,下面将对这些场景进行介绍。
本公开实施例提供的技术方案能够应用在主播进行直播的场景下。在直播场景下,终端通过摄像头来采集主播的直播视频,终端对采集到的直播视频进行编码,将编码后的直播视频发送给服务器。服务器对编码后的直播视频进行解码和二次编码,将不同码率的直播视频发送给观众使用的终端,观众使用的终端将服务器发送的直播视频进行解码,将解码后的直播视频呈现给观众。为了提升直播效果,一些直播平台为主播提供的采用虚拟形象进行直播的方式,在这种方式下,主播像往常一样进行直播,但是观众在直播视频中看到的不是主播,而是虚拟形象。举例来说,若主播想要采用虚拟形象来进行直播,那么主播在直播软件上调用虚拟形象的模型,终端采集主播的直播视频,对直播视频进行图像识别,得到直播视频中主播的多个骨骼关键点。终端根据主播的多个骨骼关键点与虚拟形象的多个骨骼关键点的对应关系,控制虚拟形象按照主播的行为进行活动。从观众的角度来看,也就是主播以虚拟形象的形式进行直播。
在直播场景下,直播软件往往会为主播提供一种或几种固定形象的虚拟形象,主播能够自行选择想要进行直播的虚拟形象。采用本公开实施例提供的技术方案之后,终端还能够在直播时,通过目标虚拟形象的多图层图像,自动生成全新的虚拟形象,主播能够采用全新的虚拟形象进行直播。另外,若主播想要对已有的虚拟形象的某个部位进行替换,也能够通过本公开实施例提供的技术方案,采用局部更新后的部位,替换该部位,就能够完成对该部位的局部替换。在一些实施例中,参见图3和图4,图3是以后的虚拟形象,图4是采用本公开实施例提供的技术方案后,自动生成的全新的虚拟形象。
本公开实施例提供的技术方案还能够应用在动画制作的过程中。在动画制作的过程中,动画制作人员先制作动画人物的模型,模型制作完毕之后,在模型上增加贴图,也就完成了动画人物的制作。制作动画人物之后,若需要对制作完成的动画人物需要替换或编辑,通过本公开实施例提供的技术方案,能够通过目标动画人物的多图层图像,自动生成全新的动画人物或者自动对动画人物的指定部位进行更新。
介绍完本公开的实施环境和应用场景之后,下面对本公开实施例提供的技术方案进行说明。
图5是根据一示例性实施例示出的一种虚拟形象模型的生成方法的流程图,如图5所示,包括以下步骤。
在步骤S501中,获取目标虚拟形象的图像,图像包括多个图层,每个图层对应于目标虚拟形象的一个或多个部位。
在步骤S502中,将原始虚拟形象的三维模型和图像输入虚拟形象编辑***,原始虚拟形象和目标虚拟形象为同一类型的虚拟形象,虚拟形象编辑***用于编辑原始虚拟形象的三维模型,通过虚拟形象编辑***,执行下述步骤S503-S505。
在步骤S503中,基于每个图层对应的目标虚拟形象的一个或多个部位,将原始虚拟形象的三维模型分割成与多个图层分别对应的多个子模型。
在步骤S504中,从每个图层中获取与目标虚拟形象的一个或多个部位分别对应的一个或多个贴图,基于一个或多个贴图,更新对应的多个子模型的纹理。
在步骤S505中,将纹理更新后的多个子模型进行组合,得到目标虚拟形象的三维模型。
通过本公开实施例提供的技术方案,当需要对原始虚拟形象的三维模型进行编辑时,用户只需要通过终端向虚拟形象编辑***输入目标虚拟形象的图像和原始虚拟形象的三维模型,通过虚拟形象编辑***就能够快速生成目标虚拟形象的三维模型,生成三维模型的效率较高。同时,在生成三维模型的过程中,无需用户具备三维模型生成的相关知识,全部流程由虚拟形象编辑***完成,降低了生成三维模型的成本,简化了用户的操作,提高了人机交互的效率。
在一种可能的实施方式中,基于每个图层对应的目标虚拟形象的一个或多个部位,将原始虚拟形象的三维模型分割成与多个图层分别对应的多个子模型包括:
基于每个图层对应的一个或多个部位,对原始虚拟形象的三维模型中多个顶点进行聚类,得到顶点分界线,顶点分界线用于分割原始虚拟形象的三维模型。
基于顶点分界线,将原始虚拟形象的三维模型分割成与多个图层分别对应的多个子模型。
在一种可能的实施方式中,每个图层包括位置提示信息,位置提示信息用于指示图层中与不同部位对应贴图的位置,从每个图层中获取与目标虚拟形象的一个或多个部位分别对应的一个或多个贴图包括:
从多个图层中获取位置提示信息。
根据位置提示信息,从每个图层中获取与目标虚拟形象的一个或多个部位分别对应的一个或多个贴图。
在一种可能的实施方式中,将纹理更新后的多个子模型进行组合,得到目标虚拟形象的三维模型包括:
基于原始虚拟形象的三维模型中对应部位的组合关系,将纹理更新后的多个子模型进行拼接,得到目标虚拟形象的三维模型。
在一种可能的实施方式中,得到目标虚拟形象的三维模型之前,方法还包括:
对纹理更新后的多个子模型的拼接位置进行线性插值处理。
在一种可能的实施方式中,基于每个图层对应的目标虚拟形象的一个或多个部位,将原始虚拟形象的三维模型分割成与多个图层分别对应的多个子模型包括:
响应于图像的多个图层的标识和数量均符合目标条件,基于每个图层对应的目标虚拟形象的一个或多个部位,将原始虚拟形象的三维模型分割成与多个图层分别对应的多个子模型。
在一种可能的实施方式中,得到目标虚拟形象的三维模型之后,方法还包括:
响应于对目标虚拟形象的任一部位的选择指令,获取任一部位的纹理更新图层,纹理更新图层用于替换多个图层中与任一部位对应的图层。
基于纹理更新图层,更新任一部位对应的子模型的纹理。
采用纹理更新后的任一部位对应的子模型替换目标虚拟形象的三维模型中对应的子模型。
在一种可能的实施方式中,得到目标虚拟形象的三维模型之后,方法还包括:
响应于对目标虚拟形象的三维模型中任一子模型的选择指令,显示与任一子模型对应的骨骼关键点以及任一子模型与对应的骨骼关键点之间的蒙皮权重。
响应于对蒙皮权重的调整操作,基于调整操作所指示的数值,更新蒙皮权重。
在一种可能的实施方式中,目标虚拟形象包括多个子虚拟形象,方法还包括:
获取多个子虚拟形象的变形程度参数和运动速度参数,变形程度参数用于表示子虚拟形象的最大变形幅度,运动速度参数用于表示子虚拟形象的状态改变速度。
响应于目标虚拟形象的三维模型中与任一子虚拟形象连接的任一顶点的位置发生变化,基于变形程度参数、运动速度参数以及任一顶点变化后的位置,对任一子虚拟形象的位置进行调整。
在一种可能的实施方式中,得到目标虚拟形象的三维模型之后,方法还包括下述至少一项:
响应于对目标虚拟形象嘴部的宽度调整指令,根据宽度调整指令所指示的宽度,对目标虚拟形象的三维模型中与嘴部对应顶点的位置进行调整。
获取目标虚拟形象嘴部的最大张开幅度,基于最大张开幅度,为目标虚拟形象的三维模型中与嘴部对应顶点设置最大允许移动距离。
上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。
上述图5所示仅为本公开的基本流程,下面基于一种具体实施方式,来对本公开提供的方案进行进一步阐述,图6是根据一示例性实施例示出的一种虚拟形象模型的生成方法的流程图。以电子设备被实现为终端为例,参见图6,方法包括:
在步骤S601中,获取目标虚拟形象的图像,图像包括多个图层,每个图层对应于目标虚拟形象的一个或多个部位。
其中,在直播场景中,目标虚拟形象为主要想要进行直播的虚拟形象,在动画制作场景中,目标虚拟形象也即是想要使用的动画人物。目标虚拟形象的图像为包括多个图层的图像,在一些实施例中,该图像为PSD(Photoshop Document,照片工厂文件)格式的图像。该图像的多个图层具有不同的名称,一个图层对应于一个或多个部位,比如,该图像中名称为“头部”的图层对应于原始虚拟形象的三维模型的头部,名为“眼睛”的图层对应于原始虚拟形象的左眼和右眼。需要说明的是,在下述过程中,对于直播场景中的用户,统称为主播,对于动画制作场景下的用户,统称为动画制作人员。
在一种可能的实施方式中,在直播场景下,若主播想要采用自己设计的目标虚拟形象进行直播,那么主播能够自行制作目标虚拟形象的图像,在制作该图像的过程中,主播需要将目标虚拟形象的不同身体部分存储在不同的图层上。
在这种实施方式下,主播能够根据自己的喜好来设计目标虚拟形象,后续能够采用自己设计的目标虚拟形象进行直播,直播的效果更好。另外,在主播采用自己设计的目标虚拟形象进行直播时,也无需主播自己设计三维模型,主播只需提供目标虚拟形象的平面图像,终端就能够自动基于主播设计的平面图像生成目标虚拟形象的三维模型。
下面通过两个例子对上述实施方式进行说明。
例1、主播能够通过图像绘制软件来绘制目标虚拟形象的图像,主播在图像绘制软件的第一个图层上绘制目标虚拟形象的头部。头部绘制完成之后,主播在图像绘制软件上新建一个图层,在新建的第二个图层上绘制目标虚拟形象的躯干。在绘制完目标虚拟形象的躯干之后,主播在图像绘制软件上再次新建一个图层,在新建的第三个图层上绘制目标虚拟形象的双臂,以此类推,直至完成目标虚拟形象的绘制。当然,在上述举例过程中,是以主播先绘制目标虚拟形象的头部,再绘制目标虚拟形象的躯干,接着绘制目标虚拟形象的双臂为例进行说明的,在其他可能的实施方式中,主播也能够采用其他顺序来绘制目标虚拟形象,只要保证不同部位绘制在不同图层上即可。
例2、直播软件的运营公司可以为主播提供一个制作目标虚拟形象的图像的平台,在该平台上,为主播提供了大量可选的部位图像,主播能够通过该平台,自行选择不同的部位进行组合,得到目标虚拟形象的图像。比如,参见图7,该平台为主播提供了界面701,界面701上为主播提供了多个部位的标识702,标识702下方为主播提供了与该标识对应的多种部位,另外,界面701上还提供了预览区域703,主播能够通过预览区域703实时看到自己创建的目标虚拟形象,也就是说,主播通过点击标识702下方的任一部位,该部位就能够实时显示在预览区域703,当主播选择完成所有的部位时,预览区域703上也就显示有目标虚拟形象的预览图像。当主播对预览区域703上显示的目标虚拟形象的预览图像满意时,点击界面701上的输出按钮704,就能够得到目标虚拟形象的图像。
在一种可能的实施方式中,在直播场景下,主播能够通过终端从网络上获取目标虚拟形象的图像,基于目标虚拟形象的图像进行后续的模型编辑。
在这种实施方式下,主播既无需自己制作目标虚拟形象的三维模型,也无需自己绘制目标虚拟形象的图像,只需通过网络下载图像即可,大大简化了主播制作目标虚拟形象的模型的难度。
举例来说,主播软件的运营公司可以为主播提供一个用于分享目标虚拟形象的图像的论坛,该论坛允许用户发布自己制作的目标虚拟形象的图像,主播能够从该论坛上免费或者付费的获取不同用户制作的虚拟形象的图像。
在一种可能的实施方式中,在动画制作场景下,若动画制作人员想要采用目标动画人物来代替已经制作完成的动画人物时,那么动画设计人员能够重新绘制目标动画人物的图像,或者直接从终端中调用已经绘制完成的目标动画人物的图像即可。
在步骤S602中,将原始虚拟形象的三维模型和图像输入虚拟形象编辑***,原始虚拟形象和目标虚拟形象为同一类型的虚拟形象,虚拟形象编辑***用于编辑原始虚拟形象的三维模型,通过虚拟形象编辑***,执行下述步骤S603-S607。
其中,原始虚拟形象为已经制作完毕的虚拟形象,在直播场景下,原始虚拟形象也即是直播软件为主播提供的虚拟形象;在动画制作场景下,原始虚拟形象也即是制作完毕的动画人物。可选地,虚拟形象编辑***为一个集成了多种功能的应用程序,在终端运行该应用程序时,主播或者动画制作人员能够通过虚拟形象编辑***,方便快捷对三维模型进行编辑。原始虚拟形象和目标虚拟形象为同一类型的虚拟形象是指,若原始虚拟形象为动漫人物,那么目标虚拟形象也为动漫人物,若原始虚拟形象为猫,那么目标虚拟形象也为猫。
在一种可能的实施方式中,虚拟形象编辑***能够提供一个入口,用户能够通过该入口将原始虚拟形象的三维模型和该图像输入虚拟形象编辑***。
举例来说,参见图8,终端显示界面801,界面801上显示有模型导入按钮802,用户通过该按钮802就能够将存储有原始虚拟形象的三维模型的文件导入虚拟形象编辑***。界面801上还显示有图像导入按钮803,用户通过该按钮803就能够将目标虚拟形象的图像导入虚拟形象编辑***。
下面将分直播场景和动画制作场景对该举例进行说明。
在直播场景下,直播软件为虚拟形象编辑***提供调用接口,终端通过该调用接口就能够直接将直播软件中的虚拟形象的三维模型导入虚拟形象编辑***。在一些实施例中,调用接口与按钮802绑定,响应于检测到对按钮802的点击操作,终端触发模型导入指令。响应于模型导入指令,终端通过该调用接口从直播软件中将虚拟形象的三维模型导入虚拟形象编辑***。响应于检测到对按钮803的点击操作,终端触发图像导入指令。响应于图像导入指令,终端显示图像选择界面。主播通过图像选择界面来选择目标虚拟形象的图像,终端将主播选择的图像导入虚拟形象编辑***。
在动画制作场景下,动画制作人员点击按钮802之后,终端触发模型导入指令。响应于模型导入指令,终端显示模型文件选择界面,动画制作人员能够通过文件选择界面选择原始动画人物的三维模型文件。终端能够将动画制作人员选择的文件导入虚拟形象编辑***。响应于检测到对按钮803的点击操作,终端触发图像导入指令。响应于图像导入指令,终端显示图像选择界面。动画制作人员通过图像选择界面来选择目标动画人物的图像,终端将动画制作人员选择的图像导入虚拟形象编辑***。
可选地,终端在执行步骤S602之后,既能够执行步骤S603,也能够执行步骤S604,本公开实施例对此不做限定。
在步骤S603中,通过虚拟形象编辑***,对该图像进行校验,响应于该图像的多个图层的标识和数量均符合目标条件,执行下述步骤S604。
其中,该图像的多个图层的标识和数量均符合目标条件是指,该图像中多个图层的数量与虚拟形象编辑***中设置的参考数量相同,且多个图层的标识与虚拟形象编辑***中设置的参考标识相同。
在一种可能的实施方式中,终端通过虚拟形象编辑***,将该图像中多个图层的数量与虚拟形象编辑***中设置的参考数量进行比较。当确定出该图像中多个图层的数量与参考数量相同时,终端通过虚拟形象编辑***,将该图像中多个图层的标识分别与参考标识进行比较。当确定出该图像中多个图层的标识与参考标识相同时,终端通过虚拟形象编辑***执行下述步骤S604。当确定出该图像中多个图层的数量与参考数量不同,或该图像中多个图层的标识与参考标识不同时,终端不在执行下述步骤S604,在一些实施例中,终端能够显示错误信息,该错误信息用于提醒该图像未通过校验。
在这种实施方式下,终端在通过虚拟形象编辑***对原始虚拟形象的三维模型进行编辑之前,会对目标虚拟形象的图像校验,保证目标对象的图像中多个图层符合虚拟形象编辑***的要求,避免在对三维模型编辑的过程中产生错误,提高虚拟形象编辑***对三维模型进行编辑的成功率。
在步骤S604中,通过虚拟形象编辑***,基于每个图层对应的目标虚拟形象的一个或多个部位,将原始虚拟形象的三维模型分割成与多个图层分别对应的多个子模型。
在一种可能的实施方式中,终端通过虚拟形象编辑***,基于每个图层对应的一个或多个部位,对原始虚拟形象的三维模型中多个顶点进行聚类,得到顶点分界线,顶点分界线用于分割原始虚拟形象的三维模型。终端通过虚拟形象编辑***,基于顶点分界线,将原始虚拟形象的三维模型分割成与多个部位分别对应的多个子模型,不同子模型对应于原始虚拟形象的不同部位。
在这种实施方式下,终端能够通过虚拟形象编辑***对三维模型中的顶点进行聚类,并基于顶点聚类的结果,得到不同类别之间的顶点分界线。终端通过虚拟形象编辑***,基于顶点分界线将原始虚拟形象的三维模型分割为多个子模型,这样后续能够基于多个子模型分别进行纹理调整,多个子模型在纹理调整的过程中不会相互影响,提高了对三维模型进行编辑的成功率。
在一种可能的实施方式中,虚拟形象编辑***集成了一个顶点分类模型,该顶点分类模型是具有多个标注了类型的样本顶点训练得到的,具有对顶点进行分类的能力。终端能够将原始虚拟形象的三维模型输入该顶点分类模型,通过该顶点分类模型,根据原始虚拟形象的三维模型中不同顶点之间的相对位置关系,对原始虚拟形象的三维模型中多个顶点进行分类,不同类别之间连接处的顶点也就构成了顶点分界线。终端通过虚拟形象编辑***,基于顶点分界线,将原始虚拟形象的三维模型分割成多个子模型,不同子模型对应于原始虚拟形象的不同部位。
在这种实施方式下,终端能够通过虚拟形象编辑***集成的顶点分类模型对三维模型中的多个顶点进行分类,分类的效率较高。
在一种可能的实施方式中,终端通过虚拟形象编辑***,对原始虚拟形象的三维模型进行显示,用户能够原始虚拟形象的三维模型上绘制顶点分界线,终端通过虚拟形象编辑***,基于顶点分界线将原始虚拟形象的三维模型分割为多个子模型。
在这种实施方式下,用户能够根据自己的想法对原始虚拟形象的三维模型进行切割,切割得到的多个子模型更加符合用户的喜好,用户体验较好。
在一种可能的实施方式中,终端能够通过虚拟形象编辑***,根据原始虚拟形象的三维模型中的多个虚拟骨骼,将原始虚拟形象的三维模型拆分为多个子模型。
在这种实施方式下,终端能够根据原始虚拟形象的三维模型中的虚拟骨骼,快速对原始虚拟形象的三维模型进行切割,三维模型切割效率较高。
举例来说,虚拟骨骼与原始虚拟形象的三维模型中的至少一个顶点进行了绑定,终端能够通过控制虚拟骨骼来控制原始虚拟形象的三维模型进行活动。终端能够通过虚拟形象编辑***,根据多个虚拟骨骼与不同顶点的对应关系,将对应于同一个虚拟骨骼的顶点划分为一个子模型。
需要说明的是,终端能够通过上述任一种方式将原始虚拟形象的三维模型分割成多个子模型,本公开实施例对此不做限定。在一些实施例中,参见图9,终端通过虚拟形象编辑***从原始虚拟形象的三维模型中分割出了原始虚拟形象头部对应的子模型901,躯干对应的子模型902、左侧发梢对应的子模型903、右侧发梢对应的子模型904以及头发主体905。
在步骤S605中,通过虚拟形象编辑***,从每个图层中获取与目标虚拟形象的一个或多个部位分别对应的一个或多个贴图。
在一种可能的实施方式中,每个图层包括位置提示信息,位置提示信息用于指示图层中与不同部位对应贴图的位置,终端通过虚拟形象编辑***,从多个图层中获取位置提示信息,根据位置提示信息,从每个图层中获取与目标虚拟形象的一个或多个部位分别对应的一个或多个贴图。
在这种实施方式下,终端能够基于每个图层的位置提示信息,快速的获取与部位对应的贴图,贴图的获取效率较高。
举例来说,目标虚拟形象的图像中每个图层上可能包括两个贴图,比如,一个图层上同时包括左眼对应的贴图和右眼对应的贴图,每个图层上除了存储有贴图之外,还存储有位置提示信息。终端能够通过虚拟形象编辑***,基于图层中的位置提示信息,确定与不同部位对应贴图的位置,从该图层中获取对应的贴图。比如,图层中包括左眼对应的贴图和右眼对应的贴图,位置提示信息中包括左眼对应的贴图在图层中的坐标以及右眼对应的贴图在图层中的坐标,终端通过虚拟形象编辑***,从图层的对应坐标获取左眼对应的贴图和右眼对应的坐标。
在一种可能的实施方式中,虚拟形象编辑***集成了一个图像分割模型,该图像分割模型是具有多个标注了类型的样本贴图训练得到的,具有对贴图进行分类的能力。终端能够将目标虚拟形象的图像中的不同图层输入该图像分割模型,通过该图像分割模型,对图层进行卷积处理、全连接处理和归一化处理,得到图层中不同贴图的贴图类型,不同贴图类型对应于不同的部位。
在这种实施方式下,终端能够通过虚拟形象编辑***集成的贴图分类模型对图层中的贴图进行分类,分类的效率较高。
在步骤S606中,通过虚拟形象编辑***,基于一个或多个贴图,更新对应的多个子模型的纹理。
在一种可能的实施方式中,终端通过虚拟形象编辑***,采用一个或多个贴图对对应的多个子模型上的贴图进行替换,以更新对应的多个子模型的纹理。
在这种实施方式下,终端能够通过虚拟形象编辑***,对子模型上的贴图进行更换,从而实现对子模型纹理的快速更新,模型编辑的效率较高。
在步骤S607中,通过虚拟形象编辑***,将纹理更新后的多个子模型进行组合,得到目标虚拟形象的三维模型。
在一种可能的实施方式中,终端通过虚拟形象编辑***,将纹理更新后的多个子模型进行拼接,对拼接位置进行线性插值处理,得到目标虚拟形象的三维模型。
在这种实施方式下,终端能够通过虚拟形象编辑***,对多个子模型拼接的位置进行线性插值,线性插值能够使得两个子模型在拼接位置的过渡更加平滑,目标虚拟形象的显示效果更加真实。
举例来说,存在子模型A和子模型B,子模型A为目标虚拟形象的左臂,子模型B为目标虚拟形象的躯干。终端通过虚拟形象编辑***,基于子模型A和子模型B之间的顶点分界线,将子模型A和子模型B进行拼接,也即是将目标虚拟形象的左臂和躯干进行拼接。终端通过虚拟形象编辑***,以顶点分界线为中心,对顶点分界线两侧三角面的像素值进行线性插值,以使得顶点分界线两侧三角面的像素值过渡平缓。比如,在顶点分界线的一侧存在一个属于子模型A的三角面A1,在顶点分界线的另一侧存在一个属于子模型B的三见面B1,三角面A1上存在逐渐远离顶点分界线的三个像素点a、b和c,a、b和c的像素值分别为100、80和160。三角面A2上存在逐渐远离顶点分界线的三个像素点d、e和f,d、e和f的像素值分别为210、160和110。终端能够通过虚拟形象编辑***,按照从三角面A到三角面B的方向,获取线性差值处理的区间为(160,80,100,210,160,110)。终端能够在区间中第一个数值160和最后一个数值110之间进行线性差值,采用线性差值后的数值来替换160和110之间的数值。比如终端能够通过虚拟形象编辑***,按照平均差值的方法,在数值160和110之间确定出4个数值:150、140、130以及120,将区间中对应位置的数值进行替换,得到新的像素值160、150、140、130、120以及110,也即是将像素点b、c、d和e的像素值分别更新为150、140、130以及120。
需要说明的是,上述是以终端通过虚拟形象编辑***对拼接位置进行线性插值为例进行说明的,在其他可能的实施方式中,终端也能够通过虚拟形象编辑***对拼接位置进行均值滤波或者中值滤波,本公开实施例对此不做限定。
可选地,在步骤S607之后,终端还能够通过虚拟形象编辑***,执行下述任一个步骤。
步骤A、响应于对目标虚拟形象的三维模型中任一部位的选择指令,终端获取任一部位的纹理更新图层,纹理更新图层用于替换多个图层中与任一部位对应的图层。终端基于纹理更新图层,更新任一部位对应的子模型的纹理。终端采用纹理更新后的任一部位对应的子模型替换目标虚拟形象的三维模型中对应的子模型。
通过执行步骤A,终端除了能够通过虚拟形象编辑***对原始虚拟形象的三维模型进行整体编辑,也能够在得到目标虚拟形象的三维模型的基础上对目标虚拟形象的三维模型进行局部编辑,三维模型编辑的方式更加灵活,提高了三维模型编辑的效率。
举例来说,当得到目标虚拟形象的三维模型之后,若用户对目标虚拟形象的三维模型中任一个部位不满意,那么还能够将采用该部位的纹理更新图层替换目标虚拟形象的图像中的对应图层。终端通过虚拟形象编辑***,基于该部位的纹理更新图层,对该部位对应子模型的纹理进行更新。终端通过虚拟形象编辑***,采用纹理更新后的该子模型,替换目标虚拟形成的三维模型中的对应子模型。由于各个子模型之间相互独立,对该子模型纹理的更新并不会影响其他子模型,三维模型编辑的效率较高。
在上述步骤A的基础上,终端还能够通过虚拟形象编辑***,对纹理更新后的任一部位对应的子模型与其他部位对应的子模型的拼接位置进行线性插值处理。这种实施方式中线性插值处理的方法与步骤S607中的描述属于同一发明构思,实施方式参见步骤S607的相关说明,在此不再赘述。
步骤B、响应于对目标虚拟形象的三维模型中任一子模型的选择指令,终端显示与任一子模型对应的骨骼关键点以及任一子模型与对应的骨骼关键点之间的蒙皮权重。响应于对蒙皮权重的调整操作,终端基于调整操作所指示的数值,更新蒙皮权重。
在本公开实施例中,目标虚拟形象的三维模型能够由用户的驱动而执行不同的动作。以直播场景为例,终端能够通过摄像头采集主播的视频流,并基于主播在视频流中的动作变化,来驱动目标虚拟形象的三维模型执行不同动作。而目标虚拟形象的不同部位,在用户驱动之下,其运动的特点是不一样的,不同的运动特点,主要是由蒙皮权重决定的。比如胳膊和头发相比,就会明显不同,胳膊会比较硬,并且只有肘关节连接处才可以动。而头发则不同,相对较软,并且没有明显的关节连接处。当主播想要对目标虚拟形象的三维模型的运动特点进行调整时,能够选择想要调整的子模型,比如点击目标虚拟形象的三维模型的左胳膊。响应于检测到对目标虚拟形象的三维模型的左胳膊的点击操作,终端显示与左胳膊对应的骨骼关键点以及对应的蒙皮权重。用户点击左胳膊上的任一顶点,就能够实现对该顶点与骨骼关键点之间蒙皮权重的调整,也即是,响应于检测到对该顶点的点击操作,终端显示蒙皮权重调整界面,蒙皮权重调整界面上显示有该顶点与不同骨骼关键点之间的蒙皮权重,用户能够在蒙皮权重调整界面上对该顶点与不同骨骼关键点之间的蒙皮权重进行调整。
在步骤B的基础上,终端也能够基于用户的操作,通过虚拟形象编辑模型,在目标虚拟形象的三维模型中调整骨骼关键点的位置,或者增加骨骼关键点,调整骨骼关键点的位置或者增加骨骼关键点之后,用户能够通过上述方式来为不同模型顶点设置蒙皮权重。
步骤C、终端获取多个子虚拟形象的变形程度参数和运动速度参数,变形程度参数用于表示子虚拟形象的最大变形幅度,运动速度参数用于表示子虚拟形象的状态改变速度。响应于目标虚拟形象的三维模型中与任一子虚拟形象连接的任一顶点的位置发生变化,基于变形程度参数、运动速度参数以及任一顶点变化后的位置,对任一子虚拟形象的位置进行调整。
可选的,子虚拟形象为目标虚拟形象的头发以及配饰等虚拟形象。对于子虚拟形象来说,其模型顶点对应的骨骼关键点的位置可以由设计人员根据需要来确定。比如,将目标虚拟形象的头发上确定5个骨骼关键点,其中,第1个骨骼关键点为头发的顶部,第5个骨骼关键点为头发的尾部,第2个骨骼关键点为头发的中点,第3个第4个骨骼关键点平分第2个骨骼关键点到第5个骨骼关键点之间的头发。通过控制上述5个骨骼关键点,就能够控制目标虚拟形象头发的移动。
举例来说,在直播场景下,若子虚拟形象为目标虚拟形象的头发,那么主播可以为头发设置变形参数和运动参数。对于变形参数来说,若变形参数被设置的较大,那么头发的变形幅度也就更大,头发的变形也就更加容易,在目标虚拟形象进行运动的过程中,头发容易发生弯折等变形,从观众的角度来看,也就是目标虚拟形象的头发较“软”。相应的,若变形参数设置的较小,那么头发的变形幅度也就更小,头发的变形也就更加困难,在目标虚拟形象进行移动的过程中,头发不易发生弯折,从观众的角度来看,也就是目标虚拟形象的头发较“硬”。对于运动参数来说,若运动参数设置的较大,那么在目标虚拟形象进行运动的过程中,头发的加速度也就越大。以头发的尾部为例,当目标虚拟形象的头部向右边移动时,右侧头发的尾部也能够以与头部移动速度相同或者更快的速度向右移动。若运动参数设置的较小,那么在目标虚拟形象进行运动的过程中,头发的加速度也就越小。还是以头发的尾部为例,当目标虚拟形象的头部向右边移动时,左侧头发的尾部以与头部移动速度更慢的速度向右移动。在一些实施例中,参见图10,当主播控制左边虚拟形象和右边虚拟形象做出相同动作时,在1001和1002方框所指示的位置上头发的运动状态不同。
关于变形参数和运动参数调整的目标和方向,主要是让目标虚拟形象的运动更加逼真。多次的实验发现,参数调整的目标和方向,其实是客观存在的。只是普通用户,可能不太容易找到。对于有经验的动画师而言,调整起来会比普通用户快很多,效果更好。
步骤D、响应于对目标虚拟形象嘴部的宽度调整指令,终端根据宽度调整指令所指示的宽度,对目标虚拟形象的三维模型中与嘴部对应顶点的位置进行调整。
通过执行步骤D,用户能够通过虚拟形象编辑***,快捷的对目标虚拟形象嘴部的宽度进行个性化调整,无需重新生成三维模型,简化了模型调整的操作,提高了模型调整的效率。
举例来说,得到目标虚拟形象的三维模型之后,用户还能够对目标虚拟形象的部位进行调整,对于目标虚拟形象的嘴部来说,响应于检测到对目标虚拟形象的嘴部的点击操作,终端显示嘴部宽度调整界面,用户在嘴部宽度调整界面上输入想要的嘴部宽度,终端能够通过虚拟形象编辑***,基于用户输入的嘴部宽度,对目标虚拟形象嘴部对应的顶点位置进行调整,以使得目标虚拟形象嘴部的宽度与用于输入的嘴部宽度一致。当然,为了保证目标虚拟形象不会出现明显的变形,终端还能够通过虚拟形象编辑***,基于关联权重,对于目标虚拟形象嘴部关联的多个其他顶点的位置进行调整,其中,关联权重与其他顶点到目标虚拟形象嘴部顶点之间的距离负相关,也即是,一个顶点与目标虚拟形象嘴部对应顶点的距离越远,那么关联权重也就越小,终端调整目标虚拟形象嘴部对应的顶点位置时,该顶点移动的距离也就越小;另一个顶点与目标虚拟形象嘴部对应顶点的距离越近,那么关联权重也就越大,终端调整目标虚拟形象嘴部对应的顶点位置时,该顶点移动的距离也就越大。
步骤E、终端获取目标虚拟形象嘴部的最大张开幅度,基于最大张开幅度,为目标虚拟形象的三维模型中与嘴部对应顶点设置最大允许移动距离。
通过执行步骤E,用户能够通过虚拟形象编辑***,快捷的对目标虚拟形象嘴部的最大张开幅度进行调整,无需重新生成三维模型,简化了模型调整的操作,提高了模型调整的效率。
举例来说,得到目标虚拟形象的三维模型之后,用户还能够对目标虚拟形象的部位进行调整,对于目标虚拟形象的嘴部来说,响应于检测到对目标虚拟形象的嘴部的点击操作,终端显示嘴部张开幅度调整界面,用户在嘴部张开幅度调整界面上输入想要的嘴部张开幅度,终端能够通过虚拟形象编辑***,基于用户输入的嘴部张开幅度,为目标虚拟形象嘴部对应的顶点设置最大允许移动距离。参见图11,用户通过终端为目标虚拟形象1101和目标虚拟形象1102的嘴部设置了不同最大张开幅度,图11显示了为嘴部设置最大张开幅度之后,目标虚拟形象的嘴部以最大张开幅度张开时的情况。
通过本公开实施例提供的技术方案,当需要对原始虚拟形象的三维模型进行编辑时,用户只需要通过终端向虚拟形象编辑***输入目标虚拟形象的图像和原始虚拟形象的三维模型,通过虚拟形象编辑***就能够快速生成目标虚拟形象的三维模型,生成三维模型的效率较高。同时,在生成三维模型的过程中,无需用户具备三维模型生成的相关知识,全部流程由虚拟形象编辑***完成,降低了生成三维模型的成本,简化了用户的操作,提高了人机交互的效率。
图12是根据一示例性实施例示出的一种虚拟形象模型的生成装置的框图。参照图12,该装置包括:图像获取模块1201以及输入模块1202。
图像获取模块1201,被配置为执行获取目标虚拟形象的图像,图像包括多个图层,每个图层对应于目标虚拟形象的一个或多个部位。
输入模块1202,被配置为执行将原始虚拟形象的三维模型和图像输入虚拟形象编辑***,原始虚拟形象和目标虚拟形象为同一类型的虚拟形象,虚拟形象编辑***用于编辑原始虚拟形象的三维模型,通过虚拟形象编辑***,执行下述步骤:
基于每个图层对应的目标虚拟形象的一个或多个部位,将原始虚拟形象的三维模型分割成与多个图层分别对应的多个子模型。
从每个图层中获取与目标虚拟形象的一个或多个部位分别对应的一个或多个贴图,基于一个或多个贴图,更新对应的多个子模型的纹理。
将纹理更新后的多个子模型进行组合,得到目标虚拟形象的三维模型。
在一种可能的实施方式中,输入模块,被配置为执行基于每个图层对应的一个或多个部位,对原始虚拟形象的三维模型中多个顶点进行聚类,得到顶点分界线,顶点分界线用于分割原始虚拟形象的三维模型。基于顶点分界线,将原始虚拟形象的三维模型分割成与多个图层分别对应的多个子模型。
在一种可能的实施方式中,每个图层包括位置提示信息,位置提示信息用于指示图层中与不同部位对应贴图的位置,输入模块,被配置为执行从多个图层中获取位置提示信息。根据位置提示信息,从每个图层中获取与目标虚拟形象的一个或多个部位分别对应的一个或多个贴图。
在一种可能的实施方式中,输入模块,被配置为执行基于原始虚拟形象的三维模型中对应部位的组合关系,将纹理更新后的多个子模型进行拼接,得到目标虚拟形象的三维模型。
在一种可能的实施方式中,输入模块,被配置为执行对纹理更新后的多个子模型的拼接位置进行线性插值处理。
在一种可能的实施方式中,装置还包括:
图像校验模块,被配置为执行响应于图像的多个图层的标识和数量均符合目标条件,基于每个图层对应的目标虚拟形象的一个或多个部位,将原始虚拟形象的三维模型分割成与多个图层分别对应的多个子模型。
在一种可能的实施方式中,输入模块还被配置为执行响应于对目标虚拟形象的任一部位的选择指令,获取任一部位的纹理更新图层,纹理更新图层用于替换多个图层中与任一部位对应的图层。基于纹理更新图层,更新任一部位对应的子模型的纹理。采用纹理更新后的任一部位对应的子模型替换目标虚拟形象的三维模型中对应的子模型。
在一种可能的实施方式中,装置还包括:
显示模块,被配置为执行响应于对目标虚拟形象的三维模型中任一子模型的选择指令,显示与任一子模型对应的骨骼关键点以及任一子模型与对应的骨骼关键点之间的蒙皮权重。
蒙皮权重更新模块,被配置为执行响应于对蒙皮权重的调整操作,基于调整操作所指示的数值,更新蒙皮权重。
在一种可能的实施方式中,目标虚拟形象包括多个子虚拟形象,装置还包括:
参数获取模块,被配置为执行获取多个子虚拟形象的变形程度参数和运动速度参数,变形程度参数用于表示子虚拟形象的最大变形幅度,运动速度参数用于表示子虚拟形象的状态改变速度。
位置调整模块,被配置为执行响应于目标虚拟形象的三维模型中与任一子虚拟形象连接的任一顶点的位置发生变化,基于变形程度参数、运动速度参数以及任一顶点变化后的位置,对任一子虚拟形象的位置进行调整。
在一种可能的实施方式中,得到目标虚拟形象的三维模型之后,装置还包括下述至少一个模块:
宽度调整模块,被配置为执行响应于对目标虚拟形象嘴部的宽度调整指令,根据宽度调整指令所指示的宽度,对目标虚拟形象的三维模型中与嘴部对应顶点的位置进行调整。
幅度调整模块,被配置为执行获取目标虚拟形象嘴部的最大张开幅度,基于最大张开幅度,为目标虚拟形象的三维模型中与嘴部对应顶点设置最大允许移动距离。
通过本公开实施例提供的技术方案,当需要对原始虚拟形象的三维模型进行编辑时,用户只需要通过终端向虚拟形象编辑***输入目标虚拟形象的图像和原始虚拟形象的三维模型,通过虚拟形象编辑***就能够快速生成目标虚拟形象的三维模型,生成三维模型的效率较高。同时,在生成三维模型的过程中,无需用户具备三维模型生成的相关知识,全部流程由虚拟形象编辑***完成,降低了生成三维模型的成本,简化了用户的操作,提高了人机交互的效率。
在本公开实施例中,电子设备可以实现为终端或服务器,首先对终端的结构进行说明:
图13是根据一示例性实施例示出的一种终端框图。该终端图13示出了本公开一个示例性实施例提供的终端1300的结构框图,该终端1300可以为用户所使用的终端。该终端1300可以是:智能手机、智能手表、台式电脑、手提电脑和膝上型便携计算机等设备中的至少一种。终端1300还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端1300包括有:处理器1301和存储器1302。
处理器1301可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1301可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1301也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1301可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1301还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1302可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1302还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。
在一些实施例中,终端1300还可选包括有:***设备接口1303和至少一个***设备。处理器1301、存储器1302和***设备接口1303之间可以通过总线或信号线相连。各个***设备可以通过总线、信号线或电路板与***设备接口1303相连。具体地,***设备包括:射频电路1304、显示屏1305、摄像头组件1306、音频电路1307、定位组件1308和电源13013中的至少一种。
***设备接口1303可被用于将I/O(Input/Output,输入/输出)相关的至少一个***设备连接到处理器1301和存储器1302。在一些实施例中,处理器1301、存储器1302和***设备接口1303被集成在同一芯片或电路板上;在一些其他实施例中,处理器1301、存储器1302和***设备接口1303中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路1304用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1304通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1304将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选的,射频电路1304包括:天线***、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1304可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路1304还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本公开对此不加以限定。
显示屏1305用于显示UI(User Interface,用户界面)。该UI可以包括图像、文本、图标、视频及其它们的任意组合。当显示屏1305是触摸显示屏时,显示屏1305还具有采集在显示屏1305的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1301进行处理。此时,显示屏1305还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1305可以为一个,设置终端1300的前面板;在另一些实施例中,显示屏1305可以为至少两个,分别设置在终端1300的不同表面或呈折叠设计;在再一些实施例中,显示屏1305可以是柔性显示屏,设置在终端1300的弯曲表面上或折叠面上。甚至,显示屏1305还可以设置成非矩形的不规则图像,也即异形屏。显示屏1305可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件1306用于采集图像或视频。可选的,摄像头组件1306包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1306还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路1307可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1301进行处理,或者输入至射频电路1304以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端1300的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1301或射频电路1304的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1307还可以包括耳机插孔。
定位组件1308用于定位终端1300的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件1308可以是基于美国的GPS(GlobalPositioning System,全球定位***)、中国的北斗***、俄罗斯的格雷纳斯***或欧盟的伽利略***的定位组件。
电源1309用于为终端1300中的各个组件进行供电。电源1309可以是交流电、直流电、一次性电池或可充电电池。当电源1309包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端1300还包括有一个或多个传感器1310。该一个或多个传感器1310包括但不限于:加速度传感器1311、陀螺仪传感器1312、压力传感器1313、指纹传感器1314、光学传感器1315以及接近传感器1316。
加速度传感器1311可以检测以终端1300建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1311可以用于检测重力加速度在三个坐标轴上的分量。处理器1301可以根据加速度传感器1311采集的重力加速度信号,控制显示屏1305以横向视图或纵向视图进行用户界面的显示。加速度传感器1311还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器1312可以检测终端1300的机体方向及转动角度,陀螺仪传感器1312可以与加速度传感器1311协同采集用户对终端1300的3D动作。处理器1301根据陀螺仪传感器1312采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器1313可以设置在终端1300的侧边框和/或显示屏1305的下层。当压力传感器1313设置在终端1300的侧边框时,可以检测用户对终端1300的握持信号,由处理器1301根据压力传感器1313采集的握持信号进行左右手识别或快捷操作。当压力传感器1313设置在显示屏1305的下层时,由处理器1301根据用户对显示屏1305的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器1314用于采集用户的指纹,由处理器1301根据指纹传感器1314采集到的指纹识别用户的身份,或者,由指纹传感器1314根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器1301授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器1314可以被设置终端1300的正面、背面或侧面。当终端1300上设置有物理按键或厂商Logo时,指纹传感器1314可以与物理按键或厂商Logo集成在一起。
光学传感器1315用于采集环境光强度。在一个实施例中,处理器1301可以根据光学传感器1315采集的环境光强度,控制显示屏1305的显示亮度。具体地,当环境光强度较高时,调高显示屏1305的显示亮度;当环境光强度较低时,调低显示屏1305的显示亮度。在另一个实施例中,处理器1301还可以根据光学传感器1315采集的环境光强度,动态调整摄像头组件1306的拍摄参数。
接近传感器1316,也称距离传感器,通常设置在终端1300的前面板。接近传感器1316用于采集用户与终端1300的正面之间的距离。在一个实施例中,当接近传感器1316检测到用户与终端1300的正面之间的距离逐渐变小时,由处理器1301控制显示屏1305从亮屏状态切换为息屏状态;当接近传感器1316检测到用户与终端1300的正面之间的距离逐渐变大时,由处理器1301控制显示屏1305从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图13中示出的结构并不构成对终端1300的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
在本公开实施例中,电子设备可以实现为服务器,下面对服务器的结构进行说明:
图14是根据一示例性实施例示出的一种服务器1400的框图,该服务器1400可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(CentralProcessing Units,CPU)1401和一个或一个以上的存储器1402。该存储器1402中存储有至少一条指令,该至少一条指令由该处理器1401加载并执行以实现上述各个方法实施例提供的虚拟形象模型的生成方法。
在示例性实施例中,还提供了一种包括指令的存储介质,例如包括指令的存储器1402,上述指令可由服务器1400的处理器1401执行以完成上述虚拟形象模型的生成方法。可选的,存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供了一种计算机程序产品,包括计算机程序,该计算机程序可以由电子设备的处理器执行,以完成上述各个实施例提供的虚拟形象模型的生成方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (22)
1.一种虚拟形象模型的生成方法,其特征在于,包括:
获取目标虚拟形象的图像,所述图像包括多个图层,每个所述图层对应于所述目标虚拟形象的一个或多个部位;
将原始虚拟形象的三维模型和所述图像输入虚拟形象编辑***,所述原始虚拟形象和所述目标虚拟形象为同一类型的虚拟形象,所述虚拟形象编辑***用于编辑所述原始虚拟形象的三维模型,通过所述虚拟形象编辑***,执行下述步骤:
基于每个所述图层对应的所述目标虚拟形象的一个或多个部位,将所述原始虚拟形象的三维模型分割成与所述多个图层分别对应的多个子模型;
从每个所述图层中获取与所述目标虚拟形象的一个或多个部位分别对应的一个或多个贴图,基于所述一个或多个贴图,更新对应的所述多个子模型的纹理;
将纹理更新后的所述多个子模型进行组合,得到所述目标虚拟形象的三维模型。
2.根据权利要求1所述的虚拟形象模型的生成方法,其特征在于,所述基于每个所述图层对应的所述目标虚拟形象的一个或多个部位,将所述原始虚拟形象的三维模型分割成与所述多个图层分别对应的多个子模型包括:
基于每个所述图层对应的一个或多个部位,对所述原始虚拟形象的三维模型中多个顶点进行聚类,得到顶点分界线,所述顶点分界线用于分割所述原始虚拟形象的三维模型;
基于所述顶点分界线,将所述原始虚拟形象的三维模型分割成与所述多个图层分别对应的所述多个子模型。
3.根据权利要求1所述的虚拟形象模型的生成方法,其特征在于,每个所述图层包括位置提示信息,所述位置提示信息用于指示图层中与不同部位对应贴图的位置,所述从每个所述图层中获取与所述目标虚拟形象的一个或多个部位分别对应的一个或多个贴图包括:
从所述多个图层中获取所述位置提示信息;
根据所述位置提示信息,从每个所述图层中获取与所述目标虚拟形象的一个或多个部位分别对应的所述一个或多个贴图。
4.根据权利要求1所述的虚拟形象模型的生成方法,其特征在于,所述将纹理更新后的所述多个子模型进行组合,得到所述目标虚拟形象的三维模型包括:
基于所述原始虚拟形象的三维模型中对应部位的组合关系,将所述纹理更新后的所述多个子模型进行拼接,得到所述目标虚拟形象的三维模型。
5.根据权利要求4所述的虚拟形象模型的生成方法,其特征在于,所述得到所述目标虚拟形象的三维模型之前,所述方法还包括:
对所述纹理更新后的所述多个子模型的拼接位置进行线性插值处理。
6.根据权利要求1所述的虚拟形象模型的生成方法,其特征在于,所述基于每个所述图层对应的所述目标虚拟形象的一个或多个部位,将所述原始虚拟形象的三维模型分割成与所述多个图层分别对应的多个子模型包括:
响应于所述图像的多个图层的标识和数量均符合目标条件,基于每个所述图层对应的所述目标虚拟形象的一个或多个部位,将所述原始虚拟形象的三维模型分割成与所述多个图层分别对应的多个子模型。
7.根据权利要求1所述的虚拟形象模型的生成方法,其特征在于,所述得到所述目标虚拟形象的三维模型之后,所述方法还包括:
响应于对所述目标虚拟形象的任一部位的选择指令,获取所述任一部位的纹理更新图层,所述纹理更新图层用于替换所述多个图层中与所述任一部位对应的图层;
基于所述纹理更新图层,更新所述任一部位对应的子模型的纹理;
采用纹理更新后的所述任一部位对应的子模型替换所述目标虚拟形象的三维模型中对应的子模型。
8.根据权利要求1所述的虚拟形象模型的生成方法,其特征在于,所述得到所述目标虚拟形象的三维模型之后,所述方法还包括:
响应于对所述目标虚拟形象的三维模型中任一子模型的选择指令,显示与所述任一子模型对应的骨骼关键点以及所述任一子模型与对应的骨骼关键点之间的蒙皮权重;
响应于对所述蒙皮权重的调整操作,基于所述调整操作所指示的数值,更新所述蒙皮权重。
9.根据权利要求1所述的虚拟形象模型的生成方法,其特征在于,所述目标虚拟形象包括多个子虚拟形象,所述方法还包括:
获取所述多个子虚拟形象的变形程度参数和运动速度参数,所述变形程度参数用于表示所述子虚拟形象的最大变形幅度,所述运动速度参数用于表示所述子虚拟形象的状态改变速度;
响应于所述目标虚拟形象的三维模型中与任一子虚拟形象连接的任一顶点的位置发生变化,基于所述变形程度参数、所述运动速度参数以及所述任一顶点变化后的位置,对所述任一子虚拟形象的位置进行调整。
10.根据权利要求1所述的虚拟形象模型的生成方法,其特征在于,所述得到所述目标虚拟形象的三维模型之后,所述方法还包括下述至少一项:
响应于对所述目标虚拟形象嘴部的宽度调整指令,根据所述宽度调整指令所指示的宽度,对所述目标虚拟形象的三维模型中与嘴部对应顶点的位置进行调整;
获取所述目标虚拟形象嘴部的最大张开幅度,基于所述最大张开幅度,为所述目标虚拟形象的三维模型中与嘴部对应顶点设置最大允许移动距离。
11.一种虚拟形象模型的生成装置,其特征在于,包括:
图像获取模块,被配置为执行获取目标虚拟形象的图像,所述图像包括多个图层,每个所述图层对应于所述目标虚拟形象的一个或多个部位;
输入模块,被配置为执行将原始虚拟形象的三维模型和所述图像输入虚拟形象编辑***,所述原始虚拟形象和所述目标虚拟形象为同一类型的虚拟形象,所述虚拟形象编辑***用于编辑所述原始虚拟形象的三维模型,通过所述虚拟形象编辑***,执行下述步骤:
基于每个所述图层对应的所述目标虚拟形象的一个或多个部位,将所述原始虚拟形象的三维模型分割成与所述多个图层分别对应的多个子模型;
从每个所述图层中获取与所述目标虚拟形象的一个或多个部位分别对应的一个或多个贴图,基于所述一个或多个贴图,更新对应的所述多个子模型的纹理;
将纹理更新后的所述多个子模型进行组合,得到所述目标虚拟形象的三维模型。
12.根据权利要求11所述的虚拟形象模型的生成装置,其特征在于,所述输入模块,被配置为执行基于每个所述图层对应的一个或多个部位,对所述原始虚拟形象的三维模型中多个顶点进行聚类,得到顶点分界线,所述顶点分界线用于分割所述原始虚拟形象的三维模型;基于所述顶点分界线,将所述原始虚拟形象的三维模型分割成与所述多个图层分别对应的所述多个子模型。
13.根据权利要求11所述的虚拟形象模型的生成装置,其特征在于,每个所述图层包括位置提示信息,所述位置提示信息用于指示图层中与不同部位对应贴图的位置,所述输入模块,被配置为执行从所述多个图层中获取所述位置提示信息;根据所述位置提示信息,从每个所述图层中获取与所述目标虚拟形象的一个或多个部位分别对应的所述一个或多个贴图。
14.根据权利要求11所述的虚拟形象模型的生成装置,其特征在于,所述输入模块,被配置为执行基于所述原始虚拟形象的三维模型中对应部位的组合关系,将所述纹理更新后的所述多个子模型进行拼接,得到所述目标虚拟形象的三维模型。
15.根据权利要求14所述的虚拟形象模型的生成装置,其特征在于,所述输入模块,被配置为执行对所述纹理更新后的所述多个子模型的拼接位置进行线性插值处理。
16.根据权利要求11所述的虚拟形象模型的生成装置,其特征在于,所述装置还包括:
图像校验模块,被配置为执行响应于所述图像的多个图层的标识和数量均符合目标条件,基于每个所述图层对应的所述目标虚拟形象的一个或多个部位,将所述原始虚拟形象的三维模型分割成与所述多个图层分别对应的多个子模型。
17.根据权利要求11所述的虚拟形象模型的生成装置,其特征在于,所述输入模块还被配置为执行响应于对所述目标虚拟形象的任一部位的选择指令,获取所述任一部位的纹理更新图层,所述纹理更新图层用于替换所述多个图层中与所述任一部位对应的图层;基于所述纹理更新图层,更新所述任一部位对应的子模型的纹理;采用纹理更新后的所述任一部位对应的子模型替换所述目标虚拟形象的三维模型中对应的子模型。
18.根据权利要求11所述的虚拟形象模型的生成装置,其特征在于,所述装置还包括:
显示模块,被配置为执行响应于对所述目标虚拟形象的三维模型中任一子模型的选择指令,显示与所述任一子模型对应的骨骼关键点以及所述任一子模型与对应的骨骼关键点之间的蒙皮权重;
蒙皮权重更新模块,被配置为执行响应于对所述蒙皮权重的调整操作,基于所述调整操作所指示的数值,更新所述蒙皮权重。
19.根据权利要求11所述的虚拟形象模型的生成装置,其特征在于,所述目标虚拟形象包括多个子虚拟形象,所述装置还包括:
参数获取模块,被配置为执行获取所述多个子虚拟形象的变形程度参数和运动速度参数,所述变形程度参数用于表示所述子虚拟形象的最大变形幅度,所述运动速度参数用于表示所述子虚拟形象的状态改变速度;
位置调整模块,被配置为执行响应于所述目标虚拟形象的三维模型中与任一子虚拟形象连接的任一顶点的位置发生变化,基于所述变形程度参数、所述运动速度参数以及所述任一顶点变化后的位置,对所述任一子虚拟形象的位置进行调整。
20.根据权利要求11所述的虚拟形象模型的生成装置,其特征在于,所述得到所述目标虚拟形象的三维模型之后,所述装置还包括下述至少一个模块:
宽度调整模块,被配置为执行响应于对所述目标虚拟形象嘴部的宽度调整指令,根据所述宽度调整指令所指示的宽度,对所述目标虚拟形象的三维模型中与嘴部对应顶点的位置进行调整;
幅度调整模块,被配置为执行获取所述目标虚拟形象嘴部的最大张开幅度,基于所述最大张开幅度,为所述目标虚拟形象的三维模型中与嘴部对应顶点设置最大允许移动距离。
21.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行程序代码的存储器;
其中,所述处理器被配置为执行所述程序代码,以实现如权利要求1至10中任一项所述的虚拟形象模型的生成方法。
22.一种存储介质,当所述存储介质中的程序代码由电子设备的处理器执行时,使得电子设备能够执行如权利要求1至10中任一项所述的虚拟形象模型的生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011536809.8A CN112634416B (zh) | 2020-12-23 | 2020-12-23 | 虚拟形象模型的生成方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011536809.8A CN112634416B (zh) | 2020-12-23 | 2020-12-23 | 虚拟形象模型的生成方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112634416A CN112634416A (zh) | 2021-04-09 |
CN112634416B true CN112634416B (zh) | 2023-07-28 |
Family
ID=75321481
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011536809.8A Active CN112634416B (zh) | 2020-12-23 | 2020-12-23 | 虚拟形象模型的生成方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112634416B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113240778B (zh) * | 2021-04-26 | 2024-04-12 | 北京百度网讯科技有限公司 | 虚拟形象的生成方法、装置、电子设备和存储介质 |
CN117321556A (zh) * | 2021-05-21 | 2023-12-29 | 苹果公司 | 头像贴纸编辑器用户界面 |
CN113487710A (zh) * | 2021-07-12 | 2021-10-08 | 广州虎牙科技有限公司 | 虚拟形象生成方法、装置、电子设备和计算机可读存储介质 |
CN113643412B (zh) * | 2021-07-14 | 2022-07-22 | 北京百度网讯科技有限公司 | 虚拟形象的生成方法、装置、电子设备及存储介质 |
CN114078184B (zh) * | 2021-11-11 | 2022-10-21 | 北京百度网讯科技有限公司 | 数据处理方法、装置、电子设备和介质 |
CN114092675A (zh) * | 2021-11-22 | 2022-02-25 | 北京百度网讯科技有限公司 | 图像显示方法、图像显示装置、电子设备及存储介质 |
CN114237540A (zh) * | 2021-12-20 | 2022-03-25 | 安徽教育出版社 | 一种智慧课堂在线教学互动方法、装置、存储介质及终端 |
CN116524077B (zh) * | 2022-01-21 | 2024-07-23 | 腾讯科技(深圳)有限公司 | 虚拟对象的编辑方法及相关设备 |
CN114913058A (zh) * | 2022-05-27 | 2022-08-16 | 北京字跳网络技术有限公司 | 显示对象的确定方法、装置、电子设备及存储介质 |
CN115936970A (zh) * | 2022-06-27 | 2023-04-07 | 北京字跳网络技术有限公司 | 虚拟面部形象生成方法、装置、电子设备及存储介质 |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103116902A (zh) * | 2011-11-16 | 2013-05-22 | 华为软件技术有限公司 | 三维虚拟人头像生成方法、人头像运动跟踪方法和装置 |
CN107393017A (zh) * | 2017-08-11 | 2017-11-24 | 北京铂石空间科技有限公司 | 图像处理方法、装置、电子设备及存储介质 |
CN107481304A (zh) * | 2017-07-31 | 2017-12-15 | 广东欧珀移动通信有限公司 | 在游戏场景中构建虚拟形象的方法及其装置 |
CN108510437A (zh) * | 2018-04-04 | 2018-09-07 | 科大讯飞股份有限公司 | 一种虚拟形象生成方法、装置、设备以及可读存储介质 |
CN108876878A (zh) * | 2017-05-08 | 2018-11-23 | 腾讯科技(深圳)有限公司 | 头像生成方法及装置 |
CN108961367A (zh) * | 2018-06-21 | 2018-12-07 | 珠海金山网络游戏科技有限公司 | 三维虚拟偶像直播中角色形象变形的方法、***及装置 |
CN109126136A (zh) * | 2018-07-27 | 2019-01-04 | 腾讯科技(深圳)有限公司 | 三维虚拟宠物的生成方法、装置、设备及存储介质 |
CN109345616A (zh) * | 2018-08-30 | 2019-02-15 | 腾讯科技(深圳)有限公司 | 三维虚拟宠物的二维渲染图的生成方法、设备及存储介质 |
CN109427083A (zh) * | 2017-08-17 | 2019-03-05 | 腾讯科技(深圳)有限公司 | 三维虚拟形象的显示方法、装置、终端及存储介质 |
CN109685869A (zh) * | 2018-12-25 | 2019-04-26 | 网易(杭州)网络有限公司 | 虚拟模型渲染方法与装置、存储介质、电子设备 |
CN110135226A (zh) * | 2018-02-09 | 2019-08-16 | 腾讯科技(深圳)有限公司 | 表情动画数据处理方法、装置、计算机设备和存储介质 |
CN110693609A (zh) * | 2019-08-30 | 2020-01-17 | 上海杏脉信息科技有限公司 | 植入物介入模拟方法、选取方法、介质及设备 |
CN110782515A (zh) * | 2019-10-31 | 2020-02-11 | 北京字节跳动网络技术有限公司 | 虚拟形象的生成方法、装置、电子设备及存储介质 |
CN111462307A (zh) * | 2020-03-31 | 2020-07-28 | 腾讯科技(深圳)有限公司 | 虚拟对象的虚拟形象展示方法、装置、设备及存储介质 |
-
2020
- 2020-12-23 CN CN202011536809.8A patent/CN112634416B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103116902A (zh) * | 2011-11-16 | 2013-05-22 | 华为软件技术有限公司 | 三维虚拟人头像生成方法、人头像运动跟踪方法和装置 |
CN108876878A (zh) * | 2017-05-08 | 2018-11-23 | 腾讯科技(深圳)有限公司 | 头像生成方法及装置 |
CN107481304A (zh) * | 2017-07-31 | 2017-12-15 | 广东欧珀移动通信有限公司 | 在游戏场景中构建虚拟形象的方法及其装置 |
CN107393017A (zh) * | 2017-08-11 | 2017-11-24 | 北京铂石空间科技有限公司 | 图像处理方法、装置、电子设备及存储介质 |
CN109427083A (zh) * | 2017-08-17 | 2019-03-05 | 腾讯科技(深圳)有限公司 | 三维虚拟形象的显示方法、装置、终端及存储介质 |
CN110135226A (zh) * | 2018-02-09 | 2019-08-16 | 腾讯科技(深圳)有限公司 | 表情动画数据处理方法、装置、计算机设备和存储介质 |
CN108510437A (zh) * | 2018-04-04 | 2018-09-07 | 科大讯飞股份有限公司 | 一种虚拟形象生成方法、装置、设备以及可读存储介质 |
CN108961367A (zh) * | 2018-06-21 | 2018-12-07 | 珠海金山网络游戏科技有限公司 | 三维虚拟偶像直播中角色形象变形的方法、***及装置 |
CN109126136A (zh) * | 2018-07-27 | 2019-01-04 | 腾讯科技(深圳)有限公司 | 三维虚拟宠物的生成方法、装置、设备及存储介质 |
CN109345616A (zh) * | 2018-08-30 | 2019-02-15 | 腾讯科技(深圳)有限公司 | 三维虚拟宠物的二维渲染图的生成方法、设备及存储介质 |
CN109685869A (zh) * | 2018-12-25 | 2019-04-26 | 网易(杭州)网络有限公司 | 虚拟模型渲染方法与装置、存储介质、电子设备 |
CN110693609A (zh) * | 2019-08-30 | 2020-01-17 | 上海杏脉信息科技有限公司 | 植入物介入模拟方法、选取方法、介质及设备 |
CN110782515A (zh) * | 2019-10-31 | 2020-02-11 | 北京字节跳动网络技术有限公司 | 虚拟形象的生成方法、装置、电子设备及存储介质 |
CN111462307A (zh) * | 2020-03-31 | 2020-07-28 | 腾讯科技(深圳)有限公司 | 虚拟对象的虚拟形象展示方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112634416A (zh) | 2021-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112634416B (zh) | 虚拟形象模型的生成方法、装置、电子设备及存储介质 | |
CN109978989B (zh) | 三维人脸模型生成方法、装置、计算机设备及存储介质 | |
WO2020216025A1 (zh) | 虚拟角色的面部显示方法、装置、计算机设备及可读存储介质 | |
CN111701238A (zh) | 虚拟画卷的显示方法、装置、设备及存储介质 | |
CN110427110B (zh) | 一种直播方法、装置以及直播服务器 | |
CN108694073B (zh) | 虚拟场景的控制方法、装置、设备及存储介质 | |
CN112533017B (zh) | 直播方法、装置、终端及存储介质 | |
CN110992493A (zh) | 图像处理方法、装置、电子设备及存储介质 | |
CN112156464B (zh) | 虚拟对象的二维形象展示方法、装置、设备及存储介质 | |
CN112907725B (zh) | 图像生成、图像处理模型的训练、图像处理方法和装置 | |
WO2022052620A1 (zh) | 图像生成方法及电子设备 | |
WO2020233403A1 (zh) | 三维角色的个性化脸部显示方法、装置、设备及存储介质 | |
CN109947338B (zh) | 图像切换显示方法、装置、电子设备及存储介质 | |
CN112581571B (zh) | 虚拟形象模型的控制方法、装置、电子设备及存储介质 | |
CN111083526B (zh) | 视频转场方法、装置、计算机设备及存储介质 | |
CN112337105B (zh) | 虚拟形象生成方法、装置、终端及存储介质 | |
CN109978996B (zh) | 生成表情三维模型的方法、装置、终端及存储介质 | |
CN114546227B (zh) | 虚拟镜头控制方法、装置、计算机设备及介质 | |
CN112581358A (zh) | 图像处理模型的训练方法、图像处理方法及装置 | |
CN110662105A (zh) | 动画文件的生成方法、装置及存储介质 | |
CN113420177A (zh) | 音频数据处理方法、装置、计算机设备及存储介质 | |
CN110517346B (zh) | 虚拟环境界面的展示方法、装置、计算机设备及存储介质 | |
CN110312144B (zh) | 进行直播的方法、装置、终端和存储介质 | |
CN116958344A (zh) | 虚拟形象的动画生成方法、装置、计算机设备及存储介质 | |
CN112950753A (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 |