CN114026524A - 利用纹理操作的动画化人脸 - Google Patents

利用纹理操作的动画化人脸 Download PDF

Info

Publication number
CN114026524A
CN114026524A CN201980097629.3A CN201980097629A CN114026524A CN 114026524 A CN114026524 A CN 114026524A CN 201980097629 A CN201980097629 A CN 201980097629A CN 114026524 A CN114026524 A CN 114026524A
Authority
CN
China
Prior art keywords
face
layer
animation
graphical element
element representing
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.)
Granted
Application number
CN201980097629.3A
Other languages
English (en)
Other versions
CN114026524B (zh
Inventor
迪帕克·钱德拉斯卡伦
斯蒂芬·乔布
文斯·达亚梅利奥
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robles Corp
Original Assignee
Robles Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robles Corp filed Critical Robles Corp
Publication of CN114026524A publication Critical patent/CN114026524A/zh
Application granted granted Critical
Publication of CN114026524B publication Critical patent/CN114026524B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/802D [Two Dimensional] animation, e.g. using sprites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/012Head tracking input arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/001Texturing; Colouring; Generation of texture or colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/403D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/50Lighting effects
    • G06T15/503Blending, e.g. for anti-aliasing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]

Abstract

本申请涉及一种方法和系统来使用纹理操作来创建动画化人脸。人脸模板被提供以使得用户可以定义人脸的特征。复合人脸由多个层组成,包括底层、动画层和静态层。复合人脸的动画化是通过选择性地为一个或多个层进行动画化来实现的。

Description

利用纹理操作的动画化人脸
技术领域
本申请涉及电脑游戏,具体涉及用于在计算机实现的游戏中动画化游戏角色的方法、系统和计算机可读介质。
背景技术
一些在线游戏平台允许用户彼此连接、彼此交互(例如,在游戏内)和/或经由网络(例如,通过因特网)彼此共享信息。在线游戏平台的用户可以参与多人游戏环境(例如,在虚拟二维或三维环境中)、设计自定义游戏环境、设计角色和化身、装饰化身、与其他用户交换虚拟物品、使用音频、视频或文本消息等与其他用户交流。
角色动画化为玩家提供更丰富的游戏体验。然而,需要改进以解决当前用于动画化角色的技术的缺点。
鉴于上述需要提供了一些实施例。
发明内容
本申请涉及的实施例与角色动画化有关。在一些实施例中,一种方法用于动画化人脸的二维(2D)图像,人脸包括眼睛、眉毛、鼻子和嘴巴中的至少一个,该方法包括定义包括多个单元的网格布局。在一些实施例中,所述多个单元的特定单元对应所述人脸的待动画化特征。在一些实施例中,所述待动画化特征包括代表所述眼睛的至少一个第一图形元素,代表所述鼻子的第二图形元素,以及代表所述嘴巴的第三图形元素。
该方法还包括布置所述人脸的所述待动画化特征在动画层以及将所述动画层叠加在底层上,该底层包括所述人脸的静态特征。在一些实施例中,所述静态特征包括代表所述眼睛的虹膜的至少一个第四图形元素和代表所述嘴巴的内部的第五图形元素。
该方法还包括将顶层叠加在所述动画层上。在一些实施例中,该顶层包括与所述人脸相关的至少一个另一静态特征。在一些实施例中,所述底层、叠加在所述底层上的所述动画层以及叠加在所述动画层上的所述顶层一起组成所述人脸的所述二维图像。
该方法还包括选择性地动画化对应所述网格布局的所述特定单元的所述人脸的所述特征的至少一部分,同时使得在所述底层的所述静态特征和在所述顶层所述至少一个另一静态特征保持静止。
在一些实施例中,所述第一图形元素至少部分透明并且使得,当代表所述眼睛的所述第一图形元素叠加在代表所述虹膜的所述第四图形元素上时,所述虹膜在所述二维图像中可见。在一些实施例中,所述第三图形元素至少部分透明并且使得,当代表所述嘴巴的所述第三图形元素叠加在代表所述嘴巴的内部的所述第五图形元素上时,所述嘴巴的内部在所述二维图像中可见。
在一些实施例中,所述底层包括第一底层,所述顶层包括第一顶层,所述人脸包括第一人脸,所述二维图像包括第一二维图像。在一些实施例中,所述方法还包括:将所述动画层叠加在与第二人脸的第二二维图像相关的第二底层上;将第二顶层叠加在所述动画层上,所述动画层叠加在所述第二底层上。在一些实施例中,所述第二底层、叠加在所述第二底层上的所述动画层以及叠加在所述动画层上所述第二顶层一起组成所述第二人脸的所述第二二维图像。
在一些实施例中,所述方法还包括:选择性地动画化被包括在所述网格布局的所述特定单元的至少一部分从而动画化所述第二人脸的所述第二二维图像。
在一些实施例中,与所述人脸相关的所述至少一个另一静态特征包括以下一个或多个:头发、头饰、眼镜、疤痕或眼罩。在一些实施例中,选择性地动画化所述人脸的所述特征的所述至少一部分,包括:根据与所述特征的所述至少一部分对应的至少一个单元的坐标,选择所述特征的所述至少一部分用于动画化;和程式地修改与所述至少一个单元对应的像素。
在一些实施例中,所述方法还包括:提供用户接口从而使得用户可以将所述人脸的所述特征映射到所述网格布局的相应单元。在一些实施例中,所述方法还包括:利用自动人脸追踪技术,将所述人脸的所述特征映射到所述网格布局的相应单元。在这些实施例中至少一些实施例,所述自动人脸追踪技术包括摄像头。
一些实施例包括一种系统用于动画化人脸的二维(2D)图像,人脸包括眼睛、眉毛、鼻子和嘴巴中的至少一个。该系统包括:存储器;和与所述存储器耦接的处理设备,其中,所述处理设备被配置为执行或者导致执行的操作包括:定义包括多个单元的网格布局。在一些实施例中,所述多个单元的特定单元对应所述人脸的待动画化特征,所述待动画化特征包括代表所述眼睛的至少一个第一图形元素,代表所述鼻子的第二图形元素,以及代表所述嘴巴的第三图形元素。
在一些实施例中,所述操作包括:布置所述人脸的所述待动画化特征在动画层,以及将所述动画层叠加在底层上,该底层包括所述人脸的静态特征。在这些实施例中至少一些实施例,所述静态特征包括代表所述眼睛的虹膜的至少一个第四图形元素和代表所述嘴巴的内部的第五图形元素。
在一些实施例中,所述操作包括:将顶层叠加在所述动画层上。在一些实施例中,所述操作包括:该顶层包括与所述人脸相关的至少一个另一静态特征,以及所述底层、叠加在所述底层上的所述动画层以及叠加在所述动画层上的所述顶层一起组成所述人脸的所述二维图像。
在一些实施例中,所述操作包括:选择性地动画化对应所述网格布局的所述特定单元的所述人脸的所述特征的至少一部分,同时使得在所述底层的所述静态特征和在所述顶层所述至少一个另一静态特征保持静止。
在一些实施例中,所述第一图形元素至少部分透明并且使得,当代表所述眼睛的所述第一图形元素叠加在代表所述虹膜的所述第四图形元素上时,所述虹膜在所述二维图像中可见。
在一些实施例中,所述第三图形元素至少部分透明并且使得,当代表所述嘴巴的所述第三图形元素叠加在代表所述嘴巴的内部的所述第五图形元素上时,所述嘴巴的内部在所述二维图像中可见。在一些实施例中,所述底层包括第一底层,所述顶层包括第一顶层,所述人脸包括第一人脸,所述二维图像包括第一二维图像。
在一些实施例中,所述操作还包括:将所述动画层叠加在与第二人脸的第二二维图像相关的第二底层上,以及将第二顶层叠加在所述动画层上,所述动画层叠加在所述第二底层上。在一些实施例中,所述第二底层、叠加在所述第二底层上的所述动画层以及叠加在所述动画层上所述第二顶层一起组成所述第二人脸的所述第二二维图像。
在一些实施例中,所述操作还包括:选择性地动画化被包括在所述网格布局的所述特定单元的至少一部分从而动画化所述第二人脸的所述第二二维图像。在一些实施例中,与所述人脸相关的所述至少一个另一静态特征包括以下一个或多个:头发、头饰、眼镜、疤痕或眼罩。
在一些实施例中,所述操作还包括:提供用户接口从而使得用户可以将所述人脸的所述特征映射到所述网格布局的相应单元。
一些实施例包括一种非暂时性计算机可读介质,该非暂时性计算机可读介质包括指令,该指令响应于被处理设备执行使得该处理设备执行或导致执行的操作包括定义包括多个单元的网格布局。在一些实施例中,所述多个单元的特定单元对应所述人脸的待动画化特征,所述待动画化特征包括代表所述眼睛的至少一个第一图形元素,代表所述鼻子的第二图形元素,以及代表所述嘴巴的第三图形元素。
在一些实施例中,操作包括:布置所述人脸的所述待动画化特征在动画层,以及将所述动画层叠加在底层上,该底层包括所述人脸的静态特征。在一些实施例中,所述静态特征包括代表所述眼睛的虹膜的至少一个第四图形元素和代表所述嘴巴的内部的第五图形元素。
在一些实施例中,操作包括:将顶层叠加在所述动画层上。在一些实施例中,该顶层包括与所述人脸相关的至少一个另一静态特征,以及所述底层、叠加在所述底层上的所述动画层以及叠加在所述动画层上的所述顶层一起组成所述人脸的所述二维图像。
在一些实施例中,操作包括:选择性地动画化对应所述网格布局的所述特定单元的所述人脸的所述特征的至少一部分,同时使得在所述底层的所述静态特征和在所述顶层所述至少一个另一静态特征保持静止。
在一些实施例中,所述第一图形元素至少部分透明并且使得,当代表所述眼睛的所述第一图形元素叠加在代表所述虹膜的所述第四图形元素上时,所述虹膜在所述二维图像中可见。
在一些实施例中,所述操作还包括:提供用户接口(UI)从而使得用户可以将所述人脸的所述特征映射到所述网格布局的相应单元。在一些实施例中,所述操作还包括:利用自动人脸追踪技术,将所述人脸的所述特征映射到所述网格布局的相应单元。
附图说明
图1示出了本申请实施例提供的用于在线游戏动画化的示例性系统架构。
图2示出了本申请实施例提供的展示人脸模板的示意图。
图3示出了本申请实施例提供的多层复合人脸的多个层。
图4示出了本申请实施例提供的动画化人脸的方法的流程示意图。
图5示出了本申请实施例提供的复合人脸。
图6示出了本申请实施例提供的来自于动画层的特征的动画化的动画帧序列。
图7示出了本申请实施例提供的来自于底(下面)层的特征的动画化的动画帧序列。
图8示出了本申请实施例提供的示例性计算设备的示意图。
具体实施方式
在下面的详细描述中,参考了其中一部分的附图。在附图中,除非上下文另有说明,否则相似的符号通常标识相似的组件。在具体实施方式、附图和权利要求中描述的说明性实施例并不意味着是限制性的。在不脱离本文提出的主题的精神或范围的情况下,可以利用其他实施例,并且可以做出其他改变。本公开的各方面,如在此一般描述的和在附图中示出的,可以按照多种不同的配置进行布置、替换、组合、分离和设计,所有这些都属于本公开的范围。
在线游戏平台(也称为“用户生成内容平台”或“用户生成内容系统”)为用户提供了多种交互方式。例如,在线游戏平台的用户可以朝着共同的目标一起工作、共享各种虚拟游戏项目、相互发送电子消息等等。网络游戏平台的用户可以作为虚拟角色加入游戏,扮演游戏特定的角色。例如,虚拟角色可以是团队或多人游戏环境的一部分,其中每个角色都被分配了某个角色并具有与角色对应的相关参数,例如服装、盔甲、武器、技能等。在另一个示例中,虚拟角色可以通过计算机生成的角色加入,例如,当单个玩家是游戏的一部分时。
在线游戏平台还可以允许平台的用户创建和动画化新角色和化身。例如,在线游戏平台的用户可以创建、设计和定制新角色。
在一些实施例中,动画可能包括角色,这些角色移动一个或多个身体部位来模拟运动,例如步行、跑步、跳跃、跳舞、打架、挥舞武器如剑等。在一些实施例中,角色可能会生成面部表情,其中角色的一部分或整个身体会移动。动画可以对应于各种运动,例如优美的、武士风的、芭蕾舞的等,可模仿流行的真实和虚构角色的动作。
为了使用户能够创建角色并为其制作动画,可以提供一种易于学习和使用的动画方法,特别是对于非专业用户。
用户可以通过叠加具有不同人脸特征的多层图像来创建包括眼睛、眉毛、鼻子、嘴巴等的人脸二维图像,并且动画可以通过纹理操作来提供从而使得这些层中仅部分层被调整来生成动画。
图1示出了根据本公开的一些实施例的示例系统架构100。图1和其他附图使用相同的附图标记来标识相同的元件。位于参考数字后的字母,例如“110”,表示该文本特指具有该特定参考数字的元素。文本中后面没有字母跟随的参考数字,例如“110”,是指附图中带有该参考数字的任何或者所有元素(例如,文本中的“110”是指图中的参考数字“110a”、“110b”和/或“110n”)。
系统架构100(这里也称为“系统”)包括在线游戏服务器102、数据存储器120和客户端设备110a、110b和110n(以下通称为“客户端设备110”)。游戏服务器102、数据存储器120和客户端设备110通过网络122耦合。
在线游戏服务器102可以包括游戏引擎104、一个或多个游戏106和图像引擎108等。客户端设备110可以包括游戏应用程序112和输入/输出(I/O)接口114(例如,输入/输出设备)。输入/输出设备可以包括麦克风、扬声器、耳机、显示设备、鼠标、键盘、游戏控制器、触摸屏、虚拟现实控制台等中的一种或多种。
系统架构100仅出于说明性目的。在不同的实施例中,系统架构100可以包括如图1所示的相同或不同方式配置的相同、更少、更多或不同的元素。
在一些实施例中,网络122可以包括公共网络(例如,互联网)、私有网络(例如,局域网(LAN)或广域网络(WAN))、有线网络(例如,以太网网络)、无线网络(例如802.11网络、Wi-Fi网络或无线LAN(WLAN))、蜂窝网络(例如5G网络、长期演进(LTE)网络等)、路由器、集线器、交换机、服务器计算机或它们的组合。
在一些实施例中,数据存储器120可以是非暂时性计算机可读存储器(例如,随机存取存储器)、缓存、驱动器(例如硬盘驱动器)、闪存驱动器、数据库系统、或其他类型的能够存储数据的组件或设备。数据存储器120还可以包括能够跨越多个计算设备(例如多个服务器计算机)的多个存储组件(例如多个驱动器或多个数据库)。
在一些实施例中,在线游戏服务器102可以包括具有一个或多个计算设备的服务器(例如,云计算系统、机架式服务器、服务器计算机、物理服务器集群等)。在一些实施例中,在线游戏服务器102可以是一个独立的系统,可以包括多个服务器,也可以是另一个系统或服务器的一部分。
在一些实施例中,在线游戏服务器102可以包括一个或多个计算设备(例如机架式服务器、路由器计算机、服务器计算机、个人计算机、大型计算机、膝上型计算机、平板电脑、台式计算机等),数据存储器(例如,硬盘、存储器、数据库)、网络、软件组件和/或硬件组件,这些可被用于在线游戏服务器102上执行操作并用于向用户提供对在线游戏服务器102的访问。在线游戏服务器102还可包括网站(例如网页)或应用后端软件,其可用于向用户提供对在线游戏服务器102所提供的内容的访问。例如,用户可以使用客户端设备110上的游戏应用程序112访问在线游戏服务器102。
在一些实施例中,在线游戏服务器102可以是一种在用户之间提供连接的社交网络,或者是一种允许用户(例如,最终用户或消费者)与其他用户于在线游戏服务器102上进行交流的用户生成内容系统,其中通信可以包括语音聊天(例如,同步和/或异步语音通信)、视频聊天(例如,同步和/或异步视频通信)或文本聊天(例如,同步和/或异步的基于文本的通信)。在本公开的一些实施例中,“用户”可以表示为单个个体。然而,本公开的其他实施例包括“用户”(例如,创建用户)是由一组用户或自动化源控制的实体。例如,在用户生成内容系统中联合为社区或群组的一组个人用户可以被视为“用户”。
在一些实施例中,在线游戏服务器102可以是虚拟游戏服务器。例如,游戏服务器可以向用户的社区提供单人或多人游戏,这些用户可以通过网络122来使用客户端设备110访问或与游戏交互。在一些实施例中,游戏(在此也称为“视频游戏”、“在线游戏”或“虚拟游戏”)可以是例如二维(2D)游戏、三维(3D)游戏(例如,3D用户生成游戏)、虚拟现实(VR)游戏或增强现实(AR)游戏。在一些实施例中,用户可能与其他用户一起参与游戏。在一些实施例中,一个游戏可能与该游戏的其他用户实时进行。
在一些实施例中,游戏玩法可能指一个或多个玩家使用客户端设备(例如游戏内的110(如106),或者,客户端设备110的在显示器或其他用户接口(如114))。
在一些实施例中,游戏106可以包括能使用被配置为向实体呈现游戏内容(例如数字媒体项)的软件、固件或硬件来执行或加载的电子文件。在一些实施例中,可以执行游戏应用程序112并且与游戏引擎104相关联地呈现游戏106。在一些实施例中,游戏106可能具有一组共同的规则或共同目标,以及游戏106的环境共享该组共同的规则或共同的目标。在一些实施例中,不同的游戏可能有不同的规则或目标。
在一些实施例中,游戏可能有一个或多个环境(这里也称为“游戏环境”或“虚拟环境”),其中多个环境可以链接在一起。环境的示例可以是三维(3D)环境。游戏106的一个或多个环境在本文中可统称为“世界”或“游戏世界”或“虚拟世界”或“宇宙”。世界的示例可以是游戏106的3D世界。例如,用户可以构建链接到由另一个用户创建的另一个虚拟环境的虚拟环境。虚拟游戏的角色可以越过虚拟边界进入相邻的虚拟环境。
可以注意到,3D环境或3D世界使用图像,该图像提供了代表游戏内容的几何数据的3D表示(或至少呈现游戏内容从而显示为3D内容,无论几何数据的3D表示是否被使用)。2D环境或2D世界使用图像,该图像提供了代表游戏内容的几何数据的2D表示。
在一些实施例中,在线游戏服务器102可以托管一个或多个游戏106,并且可以允许用户使用客户端设备110的游戏应用程序112与游戏106交互。在线游戏服务器102的用户可以玩、创建、进行交互、或构建游戏106、与其他用户通信、和/或创建和构建游戏106的对象(例如,本文中也称为“项目”或“游戏对象”或“虚拟游戏项目”)。例如,在生成用户生成的虚拟物品时,用户可以创建角色、动画化角色、装饰角色、一个或多个交互游戏的虚拟环境、或构建游戏106中使用的结构等。在一些实施例中,用户可以与在线游戏服务器102的其他用户购买、出售或交易游戏中的虚拟游戏对象,例如平台内货币(如虚拟货币)。在一些实施例中,在线游戏服务器102可以将游戏内容传输到游戏应用程序(例如,112)。在一些实施例中,游戏内容(这里也称为“内容”)可以指与在线游戏服务器102或游戏应用程序相关的任何数据或软件指令(例如,游戏对象、游戏、用户信息、视频、图像、命令、媒体项等)。在一些实施例中,游戏对象(例如,本文中也称为“项目”或“游戏对象”或“虚拟游戏项目”)可能是指代位于在线游戏服务器102的游戏应用程序106或客户端设备110的游戏应用程序112中的被使用、创建、共享或者其它方式提及的对象。例如,游戏对象可能包括零件、模型、角色或其组件(如脸、手臂、嘴唇等)、工具、武器、服装、建筑物、车辆、货币、植物群、动物群、上述的部件(例如建筑物的窗户)等。
可以注意到,托管游戏106的在线游戏服务器102是为了说明的目的而提供的。在一些实施例中,在线游戏服务器102可以托管一个或多个媒体项目,这些媒体项目可以包括从一个用户到一个或多个其他用户的通信消息。媒体项目可以包括但不限于数字视频、数字电影、数字照片、数字音乐、音频内容、旋律、网站内容、社交媒体更新、电子书、电子杂志、数字报纸、数字有声读物、电子期刊、网络博客、简易信息聚合(RSS)提要、电子漫画书、软件应用程序等。在一些实施例中,媒体项目可以是电子文件,可以使用配置为将数字媒体项目呈现给实体的软件、固件或硬件来执行或加载。
在一些实施例中,游戏106可以与特定用户或特定用户组相关联(例如私人游戏),或者使在线游戏服务器102的用户广泛可用(例如公共游戏)。在一些实施例中,在线游戏服务器102将一个或多个游戏106与特定用户或用户组相关联,在线游戏服务器102可以通过用户账号信息(例如用户账号标识符如用户名和密码)将特定用户与游戏102相关联。
在一些实施例中,在线游戏服务器102或客户端设备110可能包括游戏引擎104或游戏应用程序112。在一些实施例中,游戏引擎104可能用于游戏106的开发或执行。例如,游戏引擎104可以包括用于2D、3D、VR或AR图形的渲染引擎(“渲染器”)、物理引擎、碰撞检测引擎(和碰撞响应)、声音引擎、脚本功能、动画引擎、人工智能引擎、网络功能、流媒体功能、内存管理功能、线程功能、场景图功能、或对电影的视频支持,以及其他功能。游戏引擎104的组件可以生成帮助计算和渲染游戏的命令(例如渲染命令、碰撞命令、动画命令、物理命令等)。在一些实施例中,客户端设备110的游戏应用程序112分别可以独立工作,也可以与在线游戏服务器102的游戏引擎104协同工作,或者两者结合。
在一些实施例中,在线游戏服务器102和客户端设备110都可以执行游戏引擎(分别为104和112)。使用游戏引擎104的在线游戏服务器102可以执行部分或全部游戏引擎功能(例如生成物理命令、渲染命令等),或者将部分或全部游戏引擎功能卸载到客户端设备110的游戏引擎104。在一些实施例中,每个游戏106对于在线游戏服务器102上执行的游戏引擎功能和客户端设备110上执行的游戏引擎功能之间可能具有不同的比例。例如,在线游戏服务器102的游戏引擎104在至少两个游戏对象之间存在碰撞的情况下可以用于生成物理命令,而附加的游戏引擎功能(例如生成渲染命令)可以卸载到客户端设备110。在一些实施例中,于在线游戏服务器102和客户端设备110上执行的游戏引擎功能的比率可以基于游戏条件而改变(例如动态地)。例如,如果参与特定游戏106的游戏玩法的用户数量超过阈值数量,则在线游戏服务器102可以执行先前由客户端设备110执行的一个或多个游戏引擎功能。
例如,用户可能正在客户端设备110上玩游戏106,并且可以发送控制指令(例如,用户输入,例如右、左、上、下、用户选择或角色位置和速度信息等)到在线游戏服务器102。在线游戏服务器102在接收到客户端设备110的控制指令后,可以基于控制指令发送游戏指令(例如参与群组游戏的角色的位置和速度信息或命令,例如如渲染命令、碰撞命令等)给客户端设备110。例如,在线游戏服务器102可以对控制指令执行一个或多个逻辑操作(例如,使用游戏引擎104)以生成客户端设备110的游戏指令。在其他情况下,在线游戏服务器102可以传递一个或多个或者来自一个客户端设备110到其他参与游戏106的客户端设备(例如,从客户端设备110a到客户端设备110b)的控制指令。客户端设备110可以使用游戏指令并渲染游戏用于客户端设备110的展示。
在一些实施例中,控制指令可以代表指示用户角色在游戏中的动作的指令。例如,控制指令可以包括控制游戏内动作的用户输入,例如右、左、上、下、用户选择、陀螺仪位置和方向数据、力传感器数据等。控制指令可以包括角色位置和速度信息。在一些实施例中,控制指令被直接发送到在线游戏服务器102。在其他实施例中,控制指令可能从一个客户端设备110发送到另一个客户端设备(例如从客户端设备110b发送到客户端设备110n),其中另一个客户端设备使用本地游戏引擎104生成游戏指令。控制指令可以包括在音频设备上(例如,扬声器、耳机等)播放来自另一用户的语音通信消息或其他声音的指令,例如使用此处描述的音频空间化技术生成的语音通信或其他声音。
在一些实施例中,游戏指令可以指允许客户端设备110渲染游戏的游玩的指令,例如多人游戏。游戏指令可以包括用户输入(例如,控制指令)、角色位置和速度信息或命令(例如物理命令、渲染命令、碰撞命令等)中的一个或多个。
在一些实施例中,角色(或一般的游戏对象)由组件构成,其中一个或多个可由用户选择,这些组件自动连接在一起以帮助用户进行编辑。一个或多个角色(在此也称为“化身”或“模型”)可以与用户相关联,其中用户可以控制角色以促进用户与游戏106的交互。在一些实施例中,角色可以包括身体部位(例如头发、手臂、腿等)和配件(例如T恤、眼镜、装饰图像、工具等)等组件。在一些实施例中,可定制的角色身体部位包括头部类型、身体部位类型(手臂、腿部、躯干和手)、面部类型、头发类型和皮肤类型等。在一些实施例中,可定制的配件包括服装(例如衬衫、裤子、帽子、鞋子、眼镜等)、武器或其他工具。在一些实施例中,用户还可以控制角色的比例(例如,高度、宽度或深度)或角色的组成部分的比例。在一些实施例中,用户可以控制角色的组分(例如,块状、解剖等)。需要注意的是,在一些实施例中,角色可能不包含角色游戏对象(例如身体部位等),但用户可以控制角色(不包含角色游戏对象)以方便用户与游戏的交互(例如没有渲染角色游戏对象,但用户仍然控制角色来控制游戏内动作的益智游戏)。
在一些实施例中,一个组件,例如身体部位,可以是原始几何形状,例如块、圆柱、球体等,或者其他一些原始形状,例如楔形、环面、管状、通道等。在一些实施例中,创建者模块可以发布用户的角色供在线游戏服务器102的其他用户查看或使用。在一些实施例中,创建、修改或自定义角色、其他游戏对象、游戏106或游戏环境可以由用户使用I/O接口(例如,开发者接口)并且使用或不使用脚本(或者使用或不使用应用程序编程接口(API))来执行。可以注意到,为了说明的目的,角色被描述为具有人形。还可以注意到,角色可以具有任何形式,例如车辆、动物、无生命物体或其他创造性形式。
在一些实施例中,在线游戏服务器102可以将用户创建的角色存储在数据存储器108中。在一些实施例中,在线游戏服务器102维护可以呈现给用户的角色目录和游戏目录。在一些实施例中,游戏目录包括在线游戏服务器102上存储的游戏图像。此外,用户可以从角色目录中选择一个角色(例如,由用户或其他用户创建的角色)来参与选择的游戏。角色目录包括存储于在线游戏服务器102上的角色图像。在一些实施例中,角色目录中的一个或多个角色可能已经由用户创建或定制。在一些实施例中,所选择的角色可能有角色设置,其定义了角色的一个或多个组件。
在一些实施例中,一个用户的角色可以包含组件的配置,其中组件的配置和外观,更一般地,角色的外观可以通过角色设置来定义。在一些实施例中,用户角色的角色设置至少可以部分由用户选择。在其他实施例中,用户可以选择默认角色设置的角色或其他用户选择的角色设置。例如,用户可以从具有预定义角色设置的角色目录中选择默认角色,并且用户可以通过改变一些角色设置(例如,添加带有自定义标志的衬衫)来进一步自定义默认角色。在线游戏服务器102可以将角色设置与特定角色相关联。
在一些实施例中,客户端设备110可以各自包括计算设备,例如个人计算机(PC)、移动设备(例如,膝上型计算机、移动电话、智能手机、平板计算机或上网本计算机)、联网电视、游戏机等。在一些实施例中,客户端设备110也可以称为“用户设备”。在一些实施例中,一个或多个客户端设备110可以在任何给定时刻连接到在线游戏服务器102。需要说明的是,客户端设备110的数量是作为说明提供的。在一些实施例中,可以使用任意数量的客户端设备110。
在一些实施例中,每个客户端设备110可以分别包括一个游戏应用程序112的实例。在一种实现方式中,游戏应用程序112可以允许用户使用在线游戏服务器102并与之交互,例如控制在线游戏服务器102托管的虚拟游戏中的虚拟角色,或者查看或上传诸如游戏106、图像、视频项目、网页、文档等。在一个示例中,游戏应用程序可以是能访问、检索、呈现或导航内容(例如,虚拟环境中的虚拟角色等)的网络应用程序(例如,与网络浏览器结合运行的应用程序)且由网络服务器提供服务。在另一示例中,游戏应用程序可以是本地应用程序(例如移动应用程序、应用程序或游戏程序),其在客户端设备110本地安装和执行并且允许用户与在线游戏服务器102交互。游戏应用程序可以向用户呈现、显示或呈现内容(例如,网页、媒体查看器)。在一种实现方式中,游戏应用程序还可以包括嵌入在网页中的嵌入式媒体播放器(例如Flash播放器)。
根据本公开的一些方面,游戏应用程序可以是在线游戏服务器应用程序,供用户构建、创建、编辑、上传内容到在线游戏服务器102以及与在线游戏服务器102交互(例如玩在线游戏服务器102托管的游戏106)。这样,游戏应用程序可以由在线游戏服务器102提供给客户端设备110。在另一个示例中,游戏应用程序可以是从服务器下载的应用程序。
在一些实施例中,用户可以通过游戏应用程序登录在线游戏服务器102。用户可以通过提供用户账号信息(例如,用户名和密码)来访问用户账号,其中用户账号与一个或多个可参与在线游戏服务器102的一个或多个游戏106的角色相关联。
一般而言,在一个实施例中描述为由在线游戏服务器102执行的功能也可以由客户端设备110或其他实施例中的服务器执行,如果合适的话。此外,归属于特定组件的功能可以由不同或多个组件一起运行来执行。在线游戏服务器102还可以作为通过适当的应用程序编程接口(API)提供给其他系统或设备的服务来访问,因此不限于在网站中使用。
在一些实施例中,在线游戏服务器102可以包括图像引擎106。在一些实施例中,图像引擎106可以是允许在线游戏服务器102提供图形和动画能力的系统、应用或模块。在一些实施例中,图像引擎106可以执行下面结合图4所示的流程图描述的一个或多个操作。
图2示出了本申请实施例提供的展示人脸模板200的示意图。
在一些实施例中,人脸模板200可以是存储于在线游戏服务器102(例如在数据存储器120中)或客户端设备110中的一个或多个上的图形模板。在一些实施例中,游戏引擎104可以在任何客户端设备110上渲染人脸模板200。在一些实施例中,人脸模板200可以提供给用户,例如通过使用户能够查看和/或设计人脸的不同特征的图形用户接口。在一些实施例中,人脸模板包括多个区域,例如左眉210、右眉220、左眼230、右眼240、嘴巴250。可以提供人脸模板200以作为用户设计图形图像的指南。在一些实施例中,人脸模板200可能包括网格线,这些网格线可用于在人脸模板200内定义网格布局。在一些实施例中,网格布局使得能对一个或多个点(例如共同定义了人脸的特征的点)进行非破坏式的变形和操作。在一些实施例中,人脸模板200可能包括参考坐标,其使得能精确定义人脸模板内的点和区域。
在一些实施例中,人脸模板中可能包含一个或多个附加特征。例如,用于与鸟类相似的脸的人脸模板可以在合适的位置加一个喙,与哺乳动物相似的头的模板中可以包括一个角,类似机器人的人脸可能包含天线和类似特征。其他人脸特征,例如眼睛的数量多或少、鼻子的数量、耳朵的数量或多或少等,也可以使用合适的人脸模板来定义。在一些实施例中,人脸的模板可以通过进一步细分区域来定义更多的区域,如图2所示,例如,左眼230可细分为上眼区和下眼区,嘴巴250可细分为上唇区和下唇区等。在一些实施例中,人脸模板中的特征可能是不对称的特征,例如离轴眼睛,单眼在人脸的一侧而不是如图2所示的两只眼睛,左右脸的大小不同的特征等。
图3示出了本申请实施例提供的多层复合人脸的多个层。在不同的实施例中,可以利用多个层来创建一个复合人脸,该复合人脸可以通过对一个或者多个层进行动画化从而用于动画化。
在一些实施例中,多层复合人脸的多个层可以存储在内存中(例如,在数据存储器120或客户端设备110上)。多层中的每一层可以对应人脸模板200并且可以使用户能够描绘人脸的特定特征。客户端设备110的用户可以被提供能够实现多层设计的用户接口,例如使用游戏应用程序112。
如图3所示,底(下)层310可用于描绘虹膜、嘴巴的内部和其他特征。底层310可以包括相对于人脸模板200定义的不同坐标处的特征。在一些实施例中,额外的自定义动画特征可以被包括在所述底层。
动画层320可用于描绘眉毛、眼睑、鼻子和嘴巴。
非动画化的静态层330可用于所述人脸的静态特征,例如疤痕、纹身、眼罩等。在一些实施例中,非动画化的静态层330可包括头发、头饰、眼镜、或其他配件。所述静态特征使用人脸模板描绘,并与其他层(例如层310和320)中描绘的特征适当对齐。使用人脸模板200可以使特征跨不同层对齐。
在一些实施例中,每一层(例如310、320、330)可以与相应的层深度或级别相关联。例如,底层310可能与深度1关联,动画层320可能与深度2关联,非动画化的静态层330可能与深度3关联。层关联的深度信息可以是用于叠加层以提供人脸的表示,例如人脸340,如图3所示。在一些实施例中,层深度或级别可以存储为元数据或每个层的名称字符串。在一些实施例中,可以为每一层使用指定层深度的层标识符或名称,例如“层1”、“层2”,而不是单独存储层深度或级别。在一些实施例中,可能会对缺失的层应用默认值。
在一些实施例中,可以使用更少或更多数量的层来创建人脸的图形表示。相互叠加的层340的组合用于将人脸描绘为2D图像。进行叠加使得所述底层在底部,随后的层按顺序放置在上面,从而使得连续层的一个或多个特征覆盖在下层的特征上。例如,可以使用层深度或级别信息来执行叠加。
图4示出了本申请实施例提供的动画化人脸的示例方法400的流程示意图。处理开始于块410,其中定义了网格布局。网格布局可以包括多个单元,其对应待动画化的人脸的特征。动画化的特征可以包括代表眼睛、鼻子、嘴巴或人脸的其他元素的图形元素。
在一些实施例中,可以提供用户接口(UI),使用户能够将人脸的特征映射到模板(例如,参考图2描述的模板200)或网格布局。UI可以被配置为能够将所述人脸的所述特征映射到网格布局的对应单元。UI可以经由例如显示器或其他IO接口向用户提供反馈。用户接口可以包括触摸屏界面、语音界面、基于鼠标的界面等中的一个或多个。在用户许可的情况下,用户选择的过去设计的历史可以被存储并用于向用户呈现选项。在一些实施例中,跨游戏网络和/或来自多个用户的流行功能可能会被优先考虑并显示给用户以供选择。块410之后可以是块420。
在块420,作为动画的一部分的人脸的一个或多个特征,例如与上述320中包含的特征类似的特征被放置在动画层中。当动画显示给用户时,放置在动画层中的特征与层中的一个或多个其他特征一起移动。例如,眉毛和嘴唇可能是同一层的一部分。在一些实施例中,同一层中的一个或多个特征可能以协调的方式进行动画化,例如两个瞳孔可能以同步方式移动。
在一些实施例中,特征的一部分可能是动画化的,而特征的另一部分可能是非动画化的。可以混合动画化特征以启用混合表达式。例如,可以将具有皱眉的动画与微笑的动画合并以产生邪恶的笑容。块420之后可以是块430。
在块430,所述动画层覆盖在包括所述人脸的静态特征的底层上。静态特征可能包括诸如上述眼睛的虹膜和所述嘴巴的内部等特征。虹膜在静态层中的位置可以是至少部分透明的并且使得代表来自不同层的虹膜的图形元素在这些层被覆盖时是可见的。在一些实施例中,虹膜可能是完全透明的,或者是有色的。
在一些实施例中,一个或多个层在游戏加载时被组合(合成),并且在检测到动画数据时更新渲染图像。这种加载可以在没有动画数据的情况下实现卓越的性能。
当代表嘴巴的图形元素覆盖在代表所述嘴巴的内部的图形元素上时,所述嘴巴的内部可能在二维图像中可见。块430之后可以是块440。
在块440处,顶层(静态层)可以覆盖在所述动画层上。所述顶层包括与人脸相关的静态特征。块440之后可以是块450。
在块450处,与所述动画层对应的人脸特征被动画化。动画可以通过修改单元的一个或多个坐标来呈现,这些坐标对应于某些所述人脸的所述特征。在一些实施例中,动画可能是利用一系列图像帧来渲染。在一些实施例中,修改可能包括对一系列图像帧中所述人脸的所述特征的转化。在一些实施方式中,修改可以包括改变图像帧系列中所述人脸的所述特征的形状。在一些实施例中,修改可能包括对上述人脸的所述特征进行转化和形状改变。在一些实施例中,特征的形状变化是通过动画层上的网格点的动画来渲染。在一些实施例中,修改了代表人脸特征的像素。在一些实施例中,可以利用像素的修改来创建人脸一个或多个特征的移动的视觉效果。
在一些实施例中,所述底层和所述顶层中的所述静态特征保持静止。所述动画层中的特征的选择性动画化导致所述多层人脸的所述二维图像的动画。
在一些实施例中,动画是通过网格变形实现的,该网格变形对底层网格进行变形从而通过非破坏性方式定义特征。在一些实施例中,特征可能被网格变形均匀缩放。在一些实施例中,变形可能由预定函数定义。
在一些实施例中,变形可以包括预定功能,例如存储于在线游戏服务器102上(例如,在数据存储器120中)并且可以由用户调用。例如,在线游戏服务器102可以向用户提供从可用网格变形函数库中选择一个或多个网格变形函数的选项。
在一些实施例中,用户可以定义和利用自定义变形。在一些实施例中,用户(例如,动画师)可以通过为特定特征提供开始状态和结束状态来配置特征的动画。在一些实施例中,除了开始和结束状态之外,用户还可以为特定特征提供一个或多个中间状态。
由块410至块450表示的操作可以按照与上述不同的顺序执行(或重复)和/或一个或多个操作可以被省略、修改、补充或与其他操作组合。
在一些实施例中,可以提供自动人脸追踪技术,将所述人脸的所述特征映射到网格布局的对应单元。自动人脸追踪技术可以利用相机,从相机拍摄的图像中创建人脸特征。该图像可以是用户的真实人脸图像(经用户许可获得)、绘画、卡通或其他图像。
在一些实施例中,可以通过用户接口提供额外的图形元素,以使用户能够选择要添加到人脸的图形元素。
图5示出了本申请实施例提供的复合人脸。
动画层520覆盖在底层510上。静态层530覆盖在动画层520上。复合人脸540是由不同层合成的并且包括所有层的特征。
在一些实施例中,一些层被渲染成透明的并且使得来自其他较低层的特征可见。例如,在图5所示的例子中,静态层530除了任何特征(例如脸上的标记)外都是透明的,并且当叠加在其他层上时可以显示其他层的特征和动画。
图6示出了本申请实施例提供的来自于动画层的特征的动画化的动画帧序列。
图6示出了由动画层(例如类似于关于图5所描述的动画层520)的动画渲染的复合人脸610(例如类似于关于图5所描述的复合人脸540)的动画。
在该说明性示例中,描绘了嘴巴(630)的动画。该动画是通过用于定义嘴巴的网格(620)的纹理的网格变形来实现的。随着纹理变形的进展(如图6中描绘的帧序列所示),由所述动画层渲染的图像被变换并产生运动的外观。所述动画层的渲染图像的变换还影响从不同层(例如关于图5描述的层510、520和530)合成的渲染复合人脸的图像的转换,并创建运动外观(例如此示例的嘴巴的)在因此而导致的复合人脸。
图7示出了本申请实施例提供的来自于底层的特征的动画化的动画帧序列。
图7示出了复合人脸710(例如类似于关于图5所描述的复合人脸540)的动画,由底层(例如类似于关于图5所描述的动画层510)的动画渲染。
在该说明性示例中,描绘了眼睛(720)的动画。具体来说,复合人脸710的眼球运动外观是通过眼睛的虹膜横向运动产生的。例如,所述底层中的虹膜(730)横向左移在所述复合人脸的图像中创造了横向眼球运动的外观。
在一些实施例中,特征的运动量可以由用户(例如动画师、设计者等)在一个或多个维度中指定(740)。在一些实施例中,特征的运动量可能被指定为像素数。
在当前说明性的例子中,图7示出了描述复合人脸中向左和向右方向的眼球运动的动画帧序列。动画帧序列是利用所述底层中的帧序列创建的,且其他图层在各帧之间保持不变。
在一些实施例中(未示出),可以同时对一个或多个层进行动画处理以创建附加效果(例如,同时移动眼睛和嘴巴)。
图8是可用于实现这里描述的一个或多个特征的示例计算设备800的框图。图1的客户端设备110和/或游戏服务器102可以用图8的计算设备800的形式提供。在一个示例中,设备800可用于实现计算机设备(例如图1的102或110),并执行此处描述的适当方法实施例。计算设备800可以是任何合适的计算机系统、服务器或其他电子或硬件设备。例如,计算设备800可以是大型计算机、台式计算机、工作站、便携式计算机或电子设备(便携式设备、移动设备、手机、智能手机、平板电脑、电视、电视机顶盒、个人数字助理(PDA)、媒体播放器、游戏设备、可穿戴设备等)。在一些实施例中,设备800包括处理器802、存储器808、输入/输出(I/O)接口806和音频/视频输入/输出设备814。
处理器802可以是一个或多个处理器和/或处理电路以执行程序代码和控制设备800的基本操作。“处理器”包括处理数据、信号或其他信息的任何合适的硬件和/或软件系统、机制或组件。处理器可以包括具有通用中央处理单元(CPU)、多个处理单元、用于实现功能的专用电路或其他系统的系统。处理不必限于特定的地理位置,或具有时间限制。例如,处理器可以以“实时”、“离线”、“批处理模式”等方式执行其功能。部分处理可以在不同时间和不同位置由不同(或相同)处理系统执行。计算机可以是与存储器通信的任何处理器。
存储器804通常被提供在设备800中以供处理器802访问,并且可以是任何合适的处理器可读存储介质,例如随机存取存储器(RAM)、只读存储器(ROM)、电可擦除只读存储器(EEPROM)、闪存等,适用于存储由处理器执行的指令并且与处理器802分离和/或与其集成。存储器804可以存储由处理器802在服务器设备800上运行的软件,包括操作系统808、一个或多个应用程序810,例如音频空间化应用程序和应用程序数据812。在一些实施例中,应用程序810可以包括如下指令:使处理器802能够执行这里描述的功能,例如图4的方法的一些或全部。
例如,应用程序810可包括音频空间化模块812,如本文所述,其可在在线游戏服务器(例如,102)内提供音频空间化。存储器804中的任何软件可以替代地存储在任何其他合适的存储位置或计算机可读介质上。此外,存储器804(和/或其他连接的存储设备)可以存储在本文描述的特征中使用的指令和数据。存储器804和任何其他类型的存储(磁盘、光盘、磁带或其他有形介质)可以被认为是“存储器”或“存储设备”。
I/O接口806可以提供使服务器设备800能够与其他系统和设备接口的功能。例如,网络通信设备、存储设备(例如存储器和/或数据存储器108)和输入/输出设备可以通过接口806进行通信。在一些实施例中,I/O接口可以连接到包括输入设备的接口设备(键盘、触点设备、触摸屏、麦克风、相机、扫描仪等)和/或输出设备(显示设备、扬声器设备、打印机、电机等)。
音频/视频输入/输出设备814可包括可用于接收音频消息作为输入的音频输入设备(例如麦克风等)、音频输出设备(例如扬声器、耳机等)和/或显示设备,可用于提供图形和视觉输出。
为了便于说明,图8针对处理器802、存储器804、I/O接口806以及软件块808和810中的每一个示出了一个块。这些块可以代表一个或多个处理器或处理电路、操作系统、存储器、I/O接口、应用程序、和/或软件模块。在其他实施例中,设备800可能不具有所示的所有组件和/或可能具有其他元件,包括其他类型的元件,而不是此处所示的元件,或除了此处所示的元件之外。虽然在线游戏服务器102被描述为执行如本文中的一些实施例中所述的操作,但在线游戏服务器102或类似系统的任何合适的组件或组件的组合,或与此类系统相关联的任何合适的一个或多个处理器,可以执行所描述的操作。
用户设备还可以实现和/或与这里描述的特征一起使用。示例用户设备可以是计算机设备,包括一些与设备800类似的组件,例如处理器802、存储器804和I/O接口806。可以在内存中提供适用于客户端设备的操作系统、软件和应用程序并且可由处理器使用。客户端设备的I/O接口可以连接网络通信设备,也可以连接输入输出设备,例如捕捉声音的麦克风,捕捉图像或视频的摄像头,输出声音的扬声器设备,用于输出图像或视频的显示设备,或其他输出设备。例如,音频/视频输入/输出设备814内的显示设备可以连接到(或包括在)设备800中以显示如本文所述的预处理和后处理的图像,其中这样的显示设备可以包括任何合适的显示设备,例如,LCD、LED或等离子显示屏、CRT、电视、监视器、触摸屏、3D显示屏、投影仪或其他视觉显示设备。一些实施例可以提供一个音频输出设备,例如语音输出或者阅读文字的合成音。
本文描述的一种或多种方法(例如,方法400)可以通过计算机程序指令或代码来实现,其可以在计算机上执行。例如,代码可以由一个或多个数字处理器(例如,微处理器或其他处理电路)实现,并且可以存储在包括非暂时性计算机可读介质(例如,存储介质)的计算机程序产品上,例如磁性、光学、电磁或半导体存储介质,包括半导体或固态存储器、磁带、可移动计算机软盘、随机存取存储器(RAM)、只读存储器(ROM)、闪存、硬磁磁盘、光盘、固态存储驱动器等。程序指令还可以包含在电子信号中并作为电子信号提供,例如以从服务器(例如分布式系统和/或云计算系统)交付的软件即服务(SaaS)的形式。替代地,一种或多种方法可以在硬件(逻辑门等)中或在硬件和软件的组合中实现。示例硬件可以是可编程处理器(例如现场可编程门阵列(FPGA)、复杂可编程逻辑设备)、通用处理器、图形处理器、专用集成电路(ASIC)等。一种或多种方法可以作为在系统上运行的应用程序的一部分或组件来执行,或者作为与其他应用程序和操作系统结合运行的应用程序或软件来执行。
本文描述的一种或多种方法可以在能在任何类型的计算设备上运行的独立程序、在网络浏览器上运行的程序、在移动计算设备(例如,手机、智能手机、平板电脑、可穿戴设备(手表、臂章、珠宝、头饰、护目镜、眼镜等)、笔记本电脑等)上运行的移动应用程序(“应用”)中运行。在一个示例中,可以使用客户端/服务器架构,例如移动计算设备(作为客户端设备)将用户输入数据发送到服务器设备并从服务器接收最终输出数据用于输出(例如,用于显示)。在另一个示例中,所有计算都可以在移动计算设备上的移动应用程序(和/或其他应用程序)内执行。在另一个示例中,计算可以在移动计算设备和一个或多个服务器设备之间拆分。
尽管针对特定实施例进行了描述,但这些特定实施例只是说明性的,而非限制性。这些示例中所描述的概念可以应用于其他示例和实施例。
应当注意的是,如本领域技术人员所知,本公开中描述的功能块、操作、特征、方法、设备和系统可以被集成或划分为系统、设备和功能块的不同组合。可以使用任何合适的编程语言和编程技术来实现特定实施例的例程。可以采用不同的编程技术,例如面向过程的或面向对象的。例程可以在单个处理设备或多个处理器上执行。虽然步骤、操作或计算可能以特定的顺序呈现,但顺序可能会在不同的特定实施例中发生变化。在一些实施例中,本说明书中显示为顺序的多个步骤或操作可能会同时执行。

Claims (20)

1.一种方法,用于动画化人脸的二维(2D)图像,其特征在于,人脸包括眼睛、眉毛、鼻子和嘴巴中的至少一个,该方法包括:
定义包括多个单元的网格布局,其中,所述多个单元的特定单元对应所述人脸的待动画化特征,所述待动画化特征包括代表所述眼睛的至少一个第一图形元素,代表所述鼻子的第二图形元素,以及代表所述嘴巴的第三图形元素;
布置所述人脸的所述待动画化特征在动画层;
将所述动画层叠加在底层上,该底层包括所述人脸的静态特征,其中,所述静态特征包括代表所述眼睛的虹膜的至少一个第四图形元素和代表所述嘴巴的内部的第五图形元素;
将顶层叠加在所述动画层上,其中,该顶层包括与所述人脸相关的至少一个另一静态特征,所述底层、叠加在所述底层上的所述动画层以及叠加在所述动画层上的所述顶层一起组成所述人脸的所述二维图像;和
选择性地动画化对应所述网格布局的所述特定单元的所述人脸的所述特征的至少一部分,同时使得在所述底层的所述静态特征和在所述顶层所述至少一个另一静态特征保持静止。
2.如权利要求1所述的方法,其特征在于,所述第一图形元素至少部分透明并且使得,当代表所述眼睛的所述第一图形元素叠加在代表所述虹膜的所述第四图形元素上时,所述虹膜在所述二维图像中可见。
3.如权利要求1所述的方法,其特征在于,所述第三图形元素至少部分透明并且使得,当代表所述嘴巴的所述第三图形元素叠加在代表所述嘴巴的内部的所述第五图形元素上时,所述嘴巴的内部在所述二维图像中可见。
4.如权利要求1所述的方法,其特征在于,所述底层包括第一底层,所述顶层包括第一顶层,所述人脸包括第一人脸,所述二维图像包括第一二维图像,所述方法还包括:
将所述动画层叠加在与第二人脸的第二二维图像相关的第二底层上;
将第二顶层叠加在所述动画层上,所述动画层叠加在所述第二底层上,其中,所述第二底层、叠加在所述第二底层上的所述动画层以及叠加在所述动画层上所述第二顶层一起组成所述第二人脸的所述第二二维图像;和
选择性地动画化被包括在所述网格布局的所述特定单元的至少一部分从而动画化所述第二人脸的所述第二二维图像。
5.如权利要求1所述的方法,其特征在于,与所述人脸相关的所述至少一个另一静态特征包括以下一个或多个:头发、头饰、眼镜、疤痕或眼罩。
6.如权利要求1所述的方法,其特征在于,选择性地动画化所述人脸的所述特征的所述至少一部分,包括:
根据与所述特征的所述至少一部分对应的至少一个单元的坐标,选择所述特征的所述至少一部分用于动画化;和
程式地修改与所述至少一个单元对应的像素。
7.如权利要求1所述的方法,其特征在于,所述方法还包括:提供用户接口UI从而使得用户可以将所述人脸的所述特征映射到所述网格布局的相应单元。
8.如权利要求1所述的方法,其特征在于,所述方法还包括:利用自动人脸追踪技术,将所述人脸的所述特征映射到所述网格布局的相应单元。
9.如权利要求8所述的方法,其特征在于,所述自动人脸追踪技术包括摄像头。
10.一种系统,用于动画化人脸的二维(2D)图像,其特征在于,人脸包括眼睛、眉毛、鼻子和嘴巴中的至少一个,该系统包括:
存储器;和
与所述存储器耦接的处理设备,其中,所述处理设备被配置为执行或者导致执行的操作包括:
定义包括多个单元的网格布局,其中,所述多个单元的特定单元对应所述人脸的待动画化特征,所述待动画化特征包括代表所述眼睛的至少一个第一图形元素,代表所述鼻子的第二图形元素,以及代表所述嘴巴的第三图形元素;
布置所述人脸的所述待动画化特征在动画层;
将所述动画层叠加在底层上,该底层包括所述人脸的静态特征,其中,所述静态特征包括代表所述眼睛的虹膜的至少一个第四图形元素和代表所述嘴巴的内部的第五图形元素;
将顶层叠加在所述动画层上,其中,该顶层包括与所述人脸相关的至少一个另一静态特征,所述底层、叠加在所述底层上的所述动画层以及叠加在所述动画层上的所述顶层一起组成所述人脸的所述二维图像;和
选择性地动画化对应所述网格布局的所述特定单元的所述人脸的所述特征的至少一部分,同时使得在所述底层的所述静态特征和在所述顶层所述至少一个另一静态特征保持静止。
11.如权利要求10所述的系统,其特征在于,所述第一图形元素至少部分透明并且使得,当代表所述眼睛的所述第一图形元素叠加在代表所述虹膜的所述第四图形元素上时,所述虹膜在所述二维图像中可见。
12.如权利要求10所述的系统,其特征在于,所述第三图形元素至少部分透明并且使得,当代表所述嘴巴的所述第三图形元素叠加在代表所述嘴巴的内部的所述第五图形元素上时,所述嘴巴的内部在所述二维图像中可见。
13.如权利要求10所述的系统,其特征在于,所述底层包括第一底层,所述顶层包括第一顶层,所述人脸包括第一人脸,所述二维图像包括第一二维图像,所述操作还包括:
将所述动画层叠加在与第二人脸的第二二维图像相关的第二底层上;
将第二顶层叠加在所述动画层上,所述动画层叠加在所述第二底层上,其中,所述第二底层、叠加在所述第二底层上的所述动画层以及叠加在所述动画层上所述第二顶层一起组成所述第二人脸的所述第二二维图像;和
选择性地动画化被包括在所述网格布局的所述特定单元的至少一部分从而动画化所述第二人脸的所述第二二维图像。
14.如权利要求10所述的系统,其特征在于,与所述人脸相关的所述至少一个另一静态特征包括以下一个或多个:头发、头饰、眼镜、疤痕或眼罩。
15.如权利要求10所述的系统,其特征在于,所述操作还包括:提供用户接口从而使得用户可以将所述人脸的所述特征映射到所述网格布局的相应单元。
16.一种非暂时性计算机可读介质,其特征在于,该非暂时性计算机可读介质包括指令,该指令响应于被处理设备执行使得该处理设备执行或导致执行的操作包括:
定义包括多个单元的网格布局,其中,所述多个单元的特定单元对应所述人脸的待动画化特征,所述待动画化特征包括代表所述眼睛的至少一个第一图形元素,代表所述鼻子的第二图形元素,以及代表所述嘴巴的第三图形元素;
布置所述人脸的所述待动画化特征在动画层;
将所述动画层叠加在底层上,该底层包括所述人脸的静态特征,其中,所述静态特征包括代表所述眼睛的虹膜的至少一个第四图形元素和代表所述嘴巴的内部的第五图形元素;
将顶层叠加在所述动画层上,其中,该顶层包括与所述人脸相关的至少一个另一静态特征,所述底层、叠加在所述底层上的所述动画层以及叠加在所述动画层上的所述顶层一起组成所述人脸的所述二维图像;和
选择性地动画化对应所述网格布局的所述特定单元的所述人脸的所述特征的至少一部分,同时使得在所述底层的所述静态特征和在所述顶层所述至少一个另一静态特征保持静止。
17.如权利要求16所述的非暂时性计算机可读介质,其特征在于,所述第一图形元素至少部分透明并且使得,当代表所述眼睛的所述第一图形元素叠加在代表所述虹膜的所述第四图形元素上时,所述虹膜在所述二维图像中可见。
18.如权利要求16所述的非暂时性计算机可读介质,其特征在于,所述操作还包括:提供用户接口(UI)从而使得用户可以将所述人脸的所述特征映射到所述网格布局的相应单元。
19.如权利要求16所述的非暂时性计算机可读介质,其特征在于,所述操作还包括:利用自动人脸追踪技术,将所述人脸的所述特征映射到所述网格布局的相应单元。
20.如权利要求19所述的非暂时性计算机可读介质,其特征在于,所述自动人脸追踪技术包括摄像头。
CN201980097629.3A 2019-07-03 2019-09-18 用于动画化人脸的方法、系统、以及计算机可读介质 Active CN114026524B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/502,030 2019-07-03
US16/502,030 US10991143B2 (en) 2019-07-03 2019-07-03 Animated faces using texture manipulation
PCT/US2019/051799 WO2021002882A1 (en) 2019-07-03 2019-09-18 Animated faces using texture manipulation

Publications (2)

Publication Number Publication Date
CN114026524A true CN114026524A (zh) 2022-02-08
CN114026524B CN114026524B (zh) 2024-03-29

Family

ID=74065239

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980097629.3A Active CN114026524B (zh) 2019-07-03 2019-09-18 用于动画化人脸的方法、系统、以及计算机可读介质

Country Status (6)

Country Link
US (3) US10991143B2 (zh)
EP (1) EP3994550A4 (zh)
JP (1) JP7364702B2 (zh)
KR (1) KR102630286B1 (zh)
CN (1) CN114026524B (zh)
WO (1) WO2021002882A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021134462A1 (en) * 2019-12-31 2021-07-08 Qualcomm Incorporated Methods and apparatus to facilitate region of interest tracking for in-motion frames
KR102501411B1 (ko) 2022-05-02 2023-02-21 (주)이브이알스튜디오 비대칭 얼굴 형태를 유지하며 대칭 표정을 생성하는 전자 장치의 제어 방법

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050009504A (ko) * 2003-07-16 2005-01-25 정보통신연구진흥원 사용자 애니메이션 캐릭터 제작 방법 및 사용자애니메이션 캐릭터 제공 서비스 시스템
US20090132371A1 (en) * 2007-11-20 2009-05-21 Big Stage Entertainment, Inc. Systems and methods for interactive advertising using personalized head models
US20110248992A1 (en) * 2010-04-07 2011-10-13 Apple Inc. Avatar editing environment
CN102376100A (zh) * 2010-08-20 2012-03-14 北京盛开互动科技有限公司 基于单张照片的人脸动画方法
CN102934144A (zh) * 2010-06-09 2013-02-13 微软公司 脸部表情的实时动画
CN103198508A (zh) * 2013-04-07 2013-07-10 河北工业大学 人脸表情动画生成方法
CN103473801A (zh) * 2013-09-27 2013-12-25 中国科学院自动化研究所 一种基于单摄像头与运动捕捉数据的人脸表情编辑方法
US20140085293A1 (en) * 2012-09-21 2014-03-27 Luxand, Inc. Method of creating avatar from user submitted image
CN103971394A (zh) * 2014-05-21 2014-08-06 中国科学院苏州纳米技术与纳米仿生研究所 人脸动画合成方法
CN107392984A (zh) * 2017-07-26 2017-11-24 厦门美图之家科技有限公司 一种基于人脸图像生成动画的方法及计算设备

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000155836A (ja) * 1998-11-19 2000-06-06 Design Network:Kk 似顔絵画像形成システム及び形成方法
JP2005018305A (ja) * 2003-06-25 2005-01-20 Oki Electric Ind Co Ltd 画像配信システムおよび画像コミュニケーション機能付情報処理装置
JP4760349B2 (ja) * 2005-12-07 2011-08-31 ソニー株式会社 画像処理装置および画像処理方法、並びに、プログラム
US7567251B2 (en) 2006-01-10 2009-07-28 Sony Corporation Techniques for creating facial animation using a face mesh
JP4543263B2 (ja) * 2006-08-28 2010-09-15 株式会社国際電気通信基礎技術研究所 アニメーションデータ作成装置及びアニメーションデータ作成プログラム
KR100958595B1 (ko) * 2008-06-03 2010-05-18 이현주 영상통신단말기의 영상 합성 장치 및 방법
CA2760289A1 (en) * 2009-04-27 2010-11-11 Sonoma Data Solutions Llc A method and apparatus for character animation
US8345044B2 (en) 2009-06-17 2013-01-01 Disney Enterprises, Inc. Indirect binding with segmented thin layers to provide shape-preserving deformations in computer animation
US9042636B2 (en) 2009-12-31 2015-05-26 Disney Enterprises, Inc. Apparatus and method for indicating depth of one or more pixels of a stereoscopic 3-D image comprised from a plurality of 2-D layers
US20160148411A1 (en) * 2014-08-25 2016-05-26 Right Foot Llc Method of making a personalized animatable mesh

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050009504A (ko) * 2003-07-16 2005-01-25 정보통신연구진흥원 사용자 애니메이션 캐릭터 제작 방법 및 사용자애니메이션 캐릭터 제공 서비스 시스템
US20090132371A1 (en) * 2007-11-20 2009-05-21 Big Stage Entertainment, Inc. Systems and methods for interactive advertising using personalized head models
US20110248992A1 (en) * 2010-04-07 2011-10-13 Apple Inc. Avatar editing environment
CN102934144A (zh) * 2010-06-09 2013-02-13 微软公司 脸部表情的实时动画
CN102376100A (zh) * 2010-08-20 2012-03-14 北京盛开互动科技有限公司 基于单张照片的人脸动画方法
US20140085293A1 (en) * 2012-09-21 2014-03-27 Luxand, Inc. Method of creating avatar from user submitted image
CN103198508A (zh) * 2013-04-07 2013-07-10 河北工业大学 人脸表情动画生成方法
CN103473801A (zh) * 2013-09-27 2013-12-25 中国科学院自动化研究所 一种基于单摄像头与运动捕捉数据的人脸表情编辑方法
CN103971394A (zh) * 2014-05-21 2014-08-06 中国科学院苏州纳米技术与纳米仿生研究所 人脸动画合成方法
CN107392984A (zh) * 2017-07-26 2017-11-24 厦门美图之家科技有限公司 一种基于人脸图像生成动画的方法及计算设备

Also Published As

Publication number Publication date
US10991143B2 (en) 2021-04-27
US20220254086A1 (en) 2022-08-11
EP3994550A4 (en) 2023-04-12
CN114026524B (zh) 2024-03-29
WO2021002882A1 (en) 2021-01-07
EP3994550A1 (en) 2022-05-11
KR20220015469A (ko) 2022-02-08
JP7364702B2 (ja) 2023-10-18
US11645805B2 (en) 2023-05-09
US20210005004A1 (en) 2021-01-07
US20210304481A1 (en) 2021-09-30
KR102630286B1 (ko) 2024-01-29
US11328468B2 (en) 2022-05-10
JP2022539101A (ja) 2022-09-07

Similar Documents

Publication Publication Date Title
US20210390767A1 (en) Computing images of head mounted display wearer
US11238667B2 (en) Modification of animated characters
US11645805B2 (en) Animated faces using texture manipulation
US11514638B2 (en) 3D asset generation from 2D images
JP7425196B2 (ja) ハイブリッドストリーミング
KR20230148239A (ko) 신경망을 사용하는 비디오로부터의 로버스트 얼굴 애니메이션
US20230298297A1 (en) Layered clothing that conforms to an underlying body and/or clothing layer
US20240086050A1 (en) Computer-assisted graphical development tools
US11978152B2 (en) Computer-assisted graphical development tools
KR102396060B1 (ko) 전자 게임에서 카메라 뷰 변경
Khatri The future of automatically generated animation with AI
CN117097919A (zh) 虚拟角色渲染方法、装置、设备、存储介质和程序产品
CN116917957A (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