用于化身生成、渲染和动画的系统和方法

文档序号:6498330阅读:152来源:国知局
用于化身生成、渲染和动画的系统和方法
【专利摘要】一种用于将参与用户的实际活动图像替换为动画化身的视频通信系统。系统允许生成、渲染和以动画表现用户的面部的二维(2D)化身。2D化身表示用户的基本面部形状和关键面部特点,包括但不限于眼睛、鼻子、嘴和面部轮廓的位置和形状。系统还允许为显示进行自适应渲染,从而允许在用户装置的相关联不同大小的显示器上显示不同比例的2D化身。
【专利说明】用于化身生成、渲染和动画的系统和方法

【技术领域】
[0001 ] 本公开内容涉及视频通信和交互,并且更具体地说,涉及用于化身(avatar )生成、动画和渲染以便在视频通信和交互中使用的系统和方法。

【背景技术】
[0002]移动装置中日益增长的可用的功能性使得用户除简单的呼叫外还希望经视频进行通信。例如,用户可启动“视频呼叫”、“视频会议”等,其中,装置中的照相机和麦克风将用户的音频和实时视频传送到一个或更多个接收者,如其它移动装置、台式计算机、视频会议系统等。实时视频的通信可涉及传送大量的数据(例如,取决于照相机的技术、用于处理实时图像信息的特定视频编解码器等)。在现有2G/3G无线技术的带宽限制和新兴4G无线技术的还有限的可用性条件下,许多装置用户进行同时视频呼叫的提议对现有无线通信基础设施中的带宽造成了很大负担,这可不利地影响视频呼叫的质量。

【专利附图】

【附图说明】
[0003]随着以下【具体实施方式】进行,并参照类似的标号示出类似部分的附图时,所述主题的各种实施例的特征和优点将变得显而易见,并且其中:
图1A示出与本公开内容的各种实施例一致的示例装置到装置系统;
图1B示出与本公开内容的各种实施例一致的示例虚拟空间系统;
图2示出与本公开内容的各种实施例一致的示例装置;
图3示出与本公开内容的各种实施例一致的示例面部检测模块;
图4A-4C示出与本公开内容的至少一个实施例一致的化身的示例面部标记参数和生成;
图5示出与本公开内容的各种实施例一致的示例化身控制模块和选择模块;
图6示出与本公开内容的至少一个实施例一致的示例系统实现;以及图7是与本公开内容的至少一个实施例一致的示例操作的流程图。
[0004]虽然以下【具体实施方式】将参照说明性实施例进行,但其许多备选、修改和变化将对于本领域技术人员显而易见。

【具体实施方式】
[0005]一些系统和方法允许在用户之间进行通信和交互,其中,用户可选择特定化身表示自己。化身模型和此类化身模型的动画可对通信期间的用户体验至关重要。具体而言,最好是具有用户的面部与面部表情的较快动画响应(实时或近实时)和准确和/或生动表示。
[0006]一些系统和/或方法允许生成和渲染三维(3-D)化身模型以便在通信期间使用。例如,一些已知方法包括激光扫描、基于模型的照片拟合、图形设计人员或艺术家进行的手动生成等等。然而,已知3D化身生成系统和方法可具有缺陷。具体而言,为使模型动画在通信期间保持较顺畅,3-D化身模型可通常包括成千上万个顶点和三角点,并且3-D化身模型的渲染可要求相当大的计算输入和功率。另外,3-D化身的生成也可要求手动修正以改进在通过和交互期间使用时的视觉效果,并且普通用户可难以自行创建较鲁棒的3-D化身模型。
[0007]许多用户可利用诸如智能电话的移动计算装置与化身进行通信和交互。然而,移动计算装置可具有有限的计算资源和/或存储,因此,可能不能为用户,特别是使用3-D化身的用户充分提供令人满意的化身通信和交互。
[0008]通过概述,本公开内容一般涉及用于使用交互式化身进行通信和交互的系统和方法。与本公开内容一致的系统和方法通常提供化身生成和渲染,以便在相关联本地与远程用户装置上的本地与远程用户之间的视频通信和交互中使用。更具体地说,系统允许生成、渲染和以动画表现用户的面部的二维(2D)化身,其中,2D化身表示用户的基本面部形状和关键面部特点,包括但不限于眼睛、鼻子、嘴和面部轮廓的位置和形状。系统还配置成至少在一定程度上基于在活动通信和交互期间实时或近实时检测到的用户的关键面部特点,提供化身动画。系统和方法还提供自适应渲染,以便在活动通信和交互期间在用户装置的显示器上显示各种比例的2D化身。更具体地说,系统和方法可配置成识别对应于用户装置的不同大小的显示器的2D化身的比例因子,由此防止在用户装置的多种显示器上显示时2D化身的失真。
[0009]在一个实施例中,在耦合到照相机的装置中激活应用。应用可配置成允许用户基于用户的面部和面部特点生成2D化身以便在远程装置上,在虚拟空间等中显示。照相机可配置成开始捕捉图像,并且然后在捕捉的图像上进行面部检测,以及确定面部特点。然后,执行化身选择,其中,用户可基于用户的面部特点在预定义的2D化身与2D化身的生成之间选择。然后,将包括用户的一个或更多个面部特点(包括但不限于眼睛、鼻子和嘴)的移动的任何检测到的面/头部移动和/或面部特征的更改转换成可用于在至少另一装置上,在虚拟空间内等以动画表现化身的参数。
[0010]然后,装置可配置成启动与至少另一装置、虚拟空间等的通信。例如,可通过2G、3G、4G蜂窝连接建立通信。备选地,可经WiFi连接通过因特网建立通信。在通信建立后,确定比例因子以便允许在装置之间的通信和交互期间在至少另一装置上适当显示选择的2D化身。然后,可传送化身选择、化身参数和比例因子中的至少一个。在一个实施例中,接收远程化身选择或远程化身参数中的至少一个。远程化身选择可促使装置显示化身,而远程化身参数可促使装置以动画表现显示的化身。音频通信经已知方法伴随化身动画。
[0011]与本公开内容一致的系统和方法可为经例如智能电话的移动计算装置与其它用户进行通信和交互的用户提供改进的体验。具体而言,与已知3D化身系统和方法相比,本系统提供了利用更简单的2D化身模型生成和渲染方法的优点,该方法要求更少得多的计算输入和功率。另外,本系统提供2D化身的实时或近实时动画。
[0012]图1A示出与本公开内容的各种实施例一致的装置到装置系统100。系统100 —般可包括经网络122进行通信的装置102和112。装置102包括至少照相机104、麦克风106和显示器108。装置112包括至少照相机114、麦克风116和显示器118。网络122包括至少一个服务器124。
[0013]装置102和112可包括能够进行有线和/或无线通信的各种硬件平台。例如,装置102和112可包括但不限于视频会议系统、台式计算机、膝上型计算机、平板计算机、智能电话(例如,iPhones?、基于Android?的电话、Blackberries?、基于Symbian?的电话、基于Palm?的电话等)、蜂窝手持机等。
[0014]照相机104和114包括用于捕捉表示包括一个或更多个人的环境的数字图像的任何装置,并且可具有适当的分辨率以进行如本文中所述在环境中一个或更多个人的面部分析。例如,照相机104和114可包括静态照相机(例如,配置成捕捉静态照片的照相机)或视频照相机(例如,配置成捕捉包括多个帧的移动图像的照相机)。照相机104和114可配置成使用在可见光谱中的光线操作或者通过不限于红外光谱、紫外光谱等电磁光谱的其它部分操作。照相机104和114可分别包含在装置102和112内,或者可以是配置成经有线或无线通信与装置102和112进行通信的单独装置。照相机104和114的具体示例可包括如可与计算机、视频监视器等相关联的有线(例如,通用串行总线(USB)、以太网、火线等)或无线(例如,WiF1、蓝牙等)web照相机、移动装置照相机(例如,集成在例如前面讨论的示例装置中的蜂窝电话或智能电话照相机)、集成膝上型计算机照相机、集成平板计算机照相机(例如,iPad?、Galaxy Tab?及诸如此类)等。
[0015]装置102和112可还包括麦克风106和116。麦克风106和116包括配置成感测声音的任何装置。麦克风106和116可分别集成在装置102和112内,或者可经诸如在关于照相机104和114的上面示例中所述的有线或无线通信,与装置102、112进行交互。显示器108和118包括配置成显示文本、静态图像、移动图像(例如,视频)、用户接口、图形等的任何装置。显示器108和118可分别集成在装置102和112内,或者可经诸如在关于照相机104和114的上面示例中所述的有线或无线通信与装置进行交互。
[0016]在一个实施例中,显示器108和118分别配置成显示化身110和120。在本文中引用时,化身定义为二维(2-D)或三维(3-D)的用户的图形表示。化身不必类似用户的外貌,因此,虽然化身能够是逼真表示,但它们也能够采用图画、卡通、草图等形式。如图所示,装置102可显示表示装置112的用户(例如,远程用户)的化身110,并且同样地,装置112可显示表示装置102的用户的化身120。因此,用户可查看其它用户的表示而不必交换一般涉及采用活动图像的装置到装置通信的大量信息。
[0017]网络122可包括各种第二代(2G)、第三代(3G)、第四代(4G)基于蜂窝的数据通信技术、W1-Fi无线数据通信技术等。网络122包括配置成在使用这些技术时建立和保持通信连接的至少一个服务器124。例如,服务器124可配置成支持因特网有关的通信协议,如用于修改和终止双方(单播)和多方(多播)会话的会话启动协议(SIP),用于呈现允许在字节流连接顶部建立的框架的交互式连接建立协议(ICE)、用于允许通过NAT操作的应用发现其它NAT的存在、为应用的用户数据报协议(UDP)连接分配以连接到远程主机的IP地址和端口的网络接入转换器或NAT的会话遍历实用(STUN)协议、用于允许在NAT或防火墙后的元素通过传送控制协议(TCP)或UDP连接接收数据的使用NAT周围中继遍历(TURN)等。
[0018]图1B示出与本公开内容的各种实施例一致的虚拟空间系统126。系统126可包括装置102、112和服务器124。装置102、112和服务器124可继续以类似于图1A所示方式进行通信,但用户交互可在虚拟空间128中而不是以装置到装置格式进行。在本文中引用时,虚拟空间可定义为物理位置的数字模拟。例如,虚拟空间128可类似如城市、道路、人行道、野外、森林、岛屿等外部位置或如办公室、房屋、学校、商场、商店等内部位置。
[0019]由化身表示的用户可显得如在现实世界中一样与虚拟空间128进行交互。虚拟空间128可在耦合到因特网的一个或更多个服务器上存在,并且可由第三方维护。虚拟空间的示例包括虚拟办公室、虚拟会议室、如Second Life?的虚拟世界、如World of War craft?的大型多人在线角色扮演游戏(MMORPG) ^BThe Sims Online?的大型多人在线现实生活游戏(MMORLG)。在系统126中,虚拟空间128可包含对应于不同用户的多个化身。显示器108和118可显示压缩(例如,更小)版本的虚拟空间(VS) 128,而不是显示化身。例如,显示器108可显示对应于装置102的用户的化身在虚拟空间128中“看到”的内容的透视图。类似地,显示器118可显示对应于装置112的用户的化身在虚拟空间128中“看到”的内容的透视图。化身在虚拟空间128中可能看到的内容的示例可包括但不限于虚拟结构(例如,建筑物)、虚拟车辆、虚拟对象、虚拟动物、其它化身等等。
[0020]图2示出根据本公开内容的各种实施例的示例装置102。虽然只描述装置102,但装置112 (例如,远程装置)可包括配置成提供相同或类似功能的资源。如前面所述,装置102示为包括照相机104、麦克风106和显示器108。照相机104和麦克风106可提供输入到照相机和音频框架模块200。照相机和音频框架模块200可包括通常定义明确并且可操作以控制至少照相机104和麦克风106的定制、专有、已知和/或以后开发的音频和视频处理代码(或指令集)。例如,照相机和音频框架模块200可包括照相机104和麦克风106以记录图像和/或声音,可处理图像和/或声音,可促使图像和/或声音再现等。取决于装置102,并且更具体地说,在装置102中运行的操作系统(OS),照相机和音频框架模块200可有所不同。不例操作系统包括 1S?、Android?、Blackberry? OS、Symbian?、Palm? OS 等。扬声器202可接收来自照相机和音频框架模块200的音频信息,并且可配置成再现本地声音(例如,提供用户话音的音频反馈)和远程声音(例如,参与虚拟位置中电话、视频呼叫或交互的其它方的声音)。
[0021]装置102可还包括配置成识别和跟踪照相机104提供的图像内的头部、面部和/或面部区域,并且确定用户的一个或更多个面部特点(即,面部特点206)的面部检测模块204。例如,面部检测模块204可包括通常定义明确并且可操作以接收标准格式图像(例如但不限于RGB彩色图像)并且至少在一定程度上识别图像中的面部的定制、专有、已知和/或以后开发的面部检测代码代码(或指令集)、硬件和/或固件。
[0022]面部检测模块204也可配置成通过一系列图像(例如,每秒24帧的视频帧)跟踪检测到的面部,并且基于检测到的面部及用户的面部特点(例如,面部特点206)的更改(例如,移动),确定头部位置。可由面部检测模块204采用的已知跟踪系统可包括粒子滤波、均值移位、Kalman滤波等,它们每个可利用边缘分析、方差和分析、特征点分析、直方图分析、肤色分析等。
[0023]面部检测模块204也可包括通常定义明确并且可操作以接收标准格式图像(例如但不限于RGB彩色图像)并且至少在一定程度上识别图像中的一个或更多个面部特点206的定制、专有、已知和/或以后开发的面部特点代码(或指令集)。此类已知面部特点系统包括但不限于可在公共开放源计算机视觉(OpenCV?)包中找到的由科罗拉多州立大学开发的CSU面部识别评估系统、标准V1la-Jones升高级联(boosting cascade)框架。
[0024]如本文中更详细讨论的,面部特点206可包括面部的特征,包括但不限于诸如眼睛、鼻子、嘴、面部轮廓等面部标志(landmark)的位置和/或形状及此类标志的移动。在一个实施例中,化身动画可基于感测的面部动作(例如,面部特点206的更改)。化身的面部上对应特征点可跟随或模仿现实人脸的移动,这称为“表情克隆”或“行为驱动的面部动画”。
[0025]面部检测模块204也可配置成识别与检测到的特征相关联的表情(例如,识别以前检测到的面部是否为高兴,伤心,微笑,皱眉,惊讶,激动等)。因此,面部检测模块204可还包括通常定义明确并且可操作以检测和/或识别面部中的表情的定制、专有、已知和/或以后开发的面部表情检测和/或识别代码(或指令集)。例如,面部检测模块204可确定面部特征(例如,眼睛、鼻子、嘴等)的大小和/或位置,并且可比较这些面部特征和包括具有对应面部特征分类(例如,微笑,皱眉,激动,伤心等)的多个样本面部特征的面部特征数据库。
[0026]装置102可还包括配置成允许装置102的用户选择在远程装置上显示的化身的化身选择模块208。化身选择模块208可包括通常定义明确并且可操作以向用户显示不同化身以便用户可选择化身之一的定制、专有、已知和/或以后开发的用户接口构建代码(或指令集)。
[0027]在一个实施例中,化身选择模块208可配置成允许装置102的用户选择在装置102内存储的一个或更多个预定义化身,或者选择基于用户的检测到面部特点206生成化身的选项。预定义化身和生成的化身均可以是二维(2D)化身,其中,如本文中更详细描述的,预定义的化身是基于模型,并且生成的2D化身是基于草图。
[0028]预定义的化身可允许所有装置具有相同化身,并且在交互期间仅化身的选择(例如,预定义化身的识别)需要传递到远程装置或虚拟空间,这降低了需要交换的信息量。生成的化身可存储在装置102内以便在将来通信期间使用。可在建立通信之前选择化身,但也可在活动通信的过程期间更改化身。因此,可能可在通信期间的任何时间点发送或接收化身选择,并且接收装置可能根据收到的化身选择更改显示的化身。
[0029]装置102可还包括配置成响应于从化身选择模块208的选择输入,生成化身的化身控制模块210。化身控制模块210可包括通常定义明确并且可操作以基于面部检测模块204检测到的面/头部位置和/或面部特点206,生成2D化身的定制、专有、已知和/或以后开发的化身生成处理代码(或指令集)。
[0030]化身控制模块210可还配置成生成用于以动画表现化身的参数。在本文中引用时,动画可定义为改变图像/模型的外观。单个动画可更改2D静态图像的外观,或者多个动画可连续发生以模拟图像中的运动(例如,转头,点头,交谈,皱眉,微笑,大笑等)。检测到的面部和/或面部特点206的位置更改可转换成促使化身的特征类似用户面部的特征。
[0031]在一个实施例中,检测到的面部的一般表情可转换成促使化身展示相同表情的一个或更多个参数。也可夸大化身的表情以强调表情。在化身参数通常可应用到所有预定义化身时,可不需要选择的化身的知识。然而,在一个实施例中,化身参数可对选择的化身是特定的,因此,如果选择另一化身,则可改变。例如,人化身可要求与动物化身、卡通化身等不同参数设置(例如,不同化身特征可改变)以演示如高兴,伤心,生气,惊讶等情绪。
[0032]化身控制模块210可包括通常定义明确并且可操作以生成参数以便基于面部检测模块204检测到的面/头部位置和/或面部特点206,以动画表现化身选择模块208选择的化身的定制、专有、已知和/或以后开发的图形处理代码(或指令集)。对于基于面部特征的动画方法,2D化身动画可例如通过图像扭曲(image warping)或图像渐变(imagemorphing)进行。Oddcast是可用于2D化身动画的软件资源的示例。
[0033]另外,在系统100中,化身控制模块210可接收可用于显示和以动画表现对应于在远程装置的用户的化身的远程化身选择和远程化身参数。化身控制模块210可促使显示模块212以在显示器108上显示化身110。显示模块212可包括通常定义明确并且可操作以根据示例装置到装置实施例在显示器108上显示和以动画表现化身的定制、专有、已知和/或以后开发的图形处理代码(或指令集)。
[0034]例如,化身控制模块210可接收远程化身选择,并且可解释远程化身选择以对应于预确定的化身。显示模块212然后可在显示器108上显示化身110。另外,在化身控制模块210中收到的远程化身参数可被解释,并且命令可提供到显示模块212以动画表现化身110。
[0035]化身控制模块210可还配置成基于远程化身参数提供远程化身选择的自适应渲染。更具体地说,化身控制模块210可包括通常定义明确并且可操作以适应性渲染化身110以便适当地适合显示器108并且预防化身110在向用户显示时的失真的定制、专有、已知和/或以后开发的图形处理代码(或指令集)。
[0036]在一个实施例中,不止两个用户可参与视频呼叫。在不止两个用户在视频呼叫中交互时,可将显示器108划分或分段以允许同时显示对应于远程用户的不止一个化身。备选地,在系统126中,化身控制模块210可接收促使显示模块212显示对应于装置102的用户的化身在虚拟空间128 “看到”的内容(例如,从化身的视觉角度)的信息。例如,显示器108可显示在虚拟空间128中表示的建筑物、对象、动物、其它化身等。在一个实施例中,化身控制模块210可配置成促使显示模块212显示“反馈”化身214。反馈化身214表示选择的化身如何在远程装置上,在虚拟空间中等显示。具体而言,反馈化身214显示为用户选择的化身,并且可使用化身控制模块210生成的相同参数以动画表现。这样,用户可确认远程用户在其交互期间看到的内容。
[0037]装置102可还包括配置成传送和接收用于选择化身、显示化身、以动画表现化身、显示虚拟位置透视图等的信息的通信模块216。通信模块216可包括通常定义明确并且可操作以传送化身选择、化身参数,并且接收远程化身选择和远程化身参数的定制、专有、已知和/或以后开发的通信处理代码(或指令集)。通信模块216也可传送和接收对应于基于化身的交互的音频信息。通信模块216可如前面所述经网络122传送和接收上述信息。
[0038]装置102可还包括配置成执行与装置102和其中包括的一个或更多个模块相关联的操作的一个或更多个处理器218。
[0039]图3示出与本公开内容的各种实施例一致的示例面部检测模块204a。面部检测模块204a可配置成经照相机104和音频框架模块200接收来自照相机的一个或更多个图像,并且至少在一定程度上识别图像中的面部(或可选地多个面部)。面部检测模块204a也可配置成在一定程度上识别和确定图像中的一个或更多个面部特点206。如本文中所述,面部特点206可基于由面部检测模块204a识别的一个或更多个面部参数生成。面部特点206可包括面部的特征,包括但不限于诸如眼睛、鼻子、嘴、面部轮廓等面部标志的位置和/或形状。
[0040]在所示实施例中,面部检测模块204a可包括面部检测/跟踪模块300、面部归一化模块302、标志检测模块304、面部模式模块306、面部参数模块308、面部姿态模块310及面部表情检测模块312。面部检测/跟踪模块300可包括通常定义明确并且可操作以至少在一定程度上检测和识别从照相机104收到的静态图像或视频流中人脸的大小和位置的定制、专有、已知和/或以后开发的面部跟踪代码(或指令集)。此类已知面部检测/跟踪系统例如包括发布为 Paul V1la and Michael Jones, Rapid Object Detect1n using aBoosted Cascade of Simple Features, Accepted Conference on Computer Vis1n andPattern Recognit1n, 2001的V1la和Jones的技术。这些技术通过在图像上详尽扫描窗口,使用自适应升高(Adaptive Boosting (AdaBoost))分类器的级联来检测面部。面部检测/跟踪模块300也可跨多个图像跟踪面部或面部区域。
[0041]面部归一化模块302可包括通常定义明确并且可操作以归一化图像中识别的面部的定制、专有、已知和/或以后开发的面部归一化代码(或指令集)。例如,面部归一化模块302可配置成旋转图像以对齐眼睛(如果眼睛的坐标已知)、鼻子、嘴等,裁剪图像到通常对应于面部的大小的更小大小,缩放图像以使眼睛、鼻子和/或嘴之间的距离恒定,应用掩码以零化不在包含典型面部的椭圆形中的像素,直方图均衡化图像以平滑处理用于非屏蔽像素的灰度值的分布和/或归一化图像使得非屏蔽像素具有均值O和标准偏差I。
[0042]关键点检测模块304可包括通常定义明确并且可操作以至少在一定程度上检测和识别图像中面部的各种面部特征的定制、专有、已知和/或以后开发的标志检测代码(或指令集)。标志检测中隐含的是至少在一定程度上已经检测到面部。可选地,一定程度的定位可(例如,由面部归一化模块302)已经执行以识别/聚焦在其中可能能够找到标志的图像的地带/区域。例如,标志检测模块304可基于启发式分析,并且可配置成识别和/或分析前额、眼睛(和/或眼角)、鼻子(例如,鼻尖)、下巴(例如,下巴尖)、眉毛、颊骨和下颌及面部轮廓的相对位置、大小和/或形状。使用基于V1la-Jones的分类器,也可检测到眼角和嘴角。
[0043]面部模式模块306可包括通常定义明确并且可操作以基于图像中识别的面部关键点识别和/或生成面部模式的定制、专有、已知和/或以后开发的面部模式代码(或指令集)。如可领会的,面部模式模块306可视为面部检测/跟踪模块300的一部分。
[0044]面部模式模块306可包括配置成至少部分基于图像中识别的面部标志生成用户的面部的面部参数的面部参数模块308。面部模式模块306可包括通常定义明确并且可操作以基于图像中识别的面部标志识别和/或生成关键点和连接至少一些关键点的相关联边缘的定制、专有、已知和/或以后开发的面部模式和参数代码(或指令集)。
[0045]如本文中更详细所述,由化身控制模块210进行的2D化身的生成可至少部分基于面部参数模块308生成的面部参数,包括关键点和在关键点之间定义的相关联连接边缘。类似地,由化身控制模块210进行的选择的化身(包括预定义的化身和生成的化身)的动画和渲染可至少部分基于面部参数模块308生成的面部参数。
[0046]面部姿态模块310可包括通常定义明确并且可操作以至少在一定程度上检测和识别图像中面部的姿态的定制、专有、已知和/或以后开发的面部朝向检测代码(或指令集)。例如,面部姿态模块310可配置成相对于装置102的显示器108,确立图像中面部的姿态。更具体地说,面部姿态模块310可配置成确定用户的面部是否朝向装置102的显示器108,由此指示用户是否在观察在显示器108上显示的内容。
[0047]面部表情检测模块312可包括通常定义明确并且可操作以检测和/或识别图像中用户的面部表情的定制、专有、已知和/或以后开发的面部表情检测和/或识别代码(或指令集)。例如,面部表情检测模块312可确定面部特征(例如,前额、下巴、眼睛、鼻子、嘴、脸颊、牙齿等)的大小和/或位置,并且比较面部特征和包括具有对应面部特征分类的多个样本面部特征的面部特征数据库。
[0048]图4A-4C示出与本公开内容的至少一个实施例一致的化身的示例面部标记参数和生成。如图4A所示,执行用户的图像400的面部检测和跟踪。如前面所述,面部检测模块204 (包括面部检测/跟踪模块300、面部归一化模块302和/或标志检测模块304等)可配置成检测和识别用户的面部的大小和位置,归一化识别的面部和/或至少在某个程度上检测和识别图像中面部的各种面部特征。更具体地说,可识别和/或分析前额、眼睛(和/或眼角)、鼻子(例如,鼻尖)、下巴(例如,下巴尖)、眉毛、颊骨、下颌及面部轮廓的相对位置、大小和/或形状。
[0049]如图4B所示,在图像402中可识别包括面部参数的用户的面部的面部模式。更具体地说,面部参数模块308可配置成至少部分基于图像中识别的面部标志生成用户的面部的面部参数。如图所示,面部参数可包括一个或更多个关键点404和相互连接一个或更多个关键点404的相关联边缘406。例如,在所示实施例中,边缘406(1)可将相邻关键点404(1),404(2)相互连接。关键点404和相关联边缘406基于识别的面部标志形成用户的总面部模式。
[0050]在一个实施例中,面部参数模块308可包括通常定义明确并且可操作以根据在诸如前额的一个识别的面部标志与诸如眼睛的至少另一识别的面部标志之间的统计几何关系,基于识别的面部标志(例如,前额、眼睛、鼻子、嘴、下巴、面部轮廓等)生成关键点404和连接边缘406的定制、专有、已知和/或以后开发的面部参数代码(或指令集)。
[0051]例如,在一个实施例中,可在二维笛卡尔坐标系统(化身是2D)中定义关键点404和相关联边缘406。更具体地说,可将关键点404定义(例如,编码)为{point, id, x, y},其中,“point”表示节点名称,“id”表示索引,以及“x”和“y”是坐标。可将边缘406定义(例如,编码)为{edge, id, n, pi, p2, pn},其中,“edge”表示节点名称,“id”表示边缘索引,“n”表示由边缘406包含(例如,连接)的关键点的数量,以及pl-pn表示边缘406的点索引。例如,可将代码集{edge,O, 5,O, 2,I, 3,O)理解为表示边缘-O包括(连接)5个关键点,其中,关键点的连接顺序是关键点O到关键点2到关键点I到关键点3到关键点O。
[0052]图4C示出基于包括关键点404和边缘406的识别的面部标志和面部参数生成的示例2D化身408。如图所示,2D化身408可包括通常标出用户的面部的形状的草图线及诸如眼睛、鼻子、嘴、眉毛及面部轮廓的关键面部特点。
[0053]图5示出与本公开内容的各种实施例一致的示例化身控制模块210a和化身选择模块208a。化身选择模块208a可配置成允许装置102的用户选择在远程装置上显示的化身。化身选择模块208可包括通常定义明确并且可操作以向用户显示不同化身以便用户可选择化身之一的定制、专有、已知和/或以后开发的用户接口构建代码(或指令集)。在一个实施例中,化身选择模块208a可配置成允许装置102的用户选择在化身数据库500内存储的一个或更多个2D预定义的化身。如通常参照图4A-4C所示和所述,化身选择模块208a可还配置成允许用户选择生成2D化身。已生成的2D化身可称为基于草图的2D化身,其中,与具有预定义的关键点不同,从用户的面部生成关键点和边缘。相反,预定义的2D化身可称为基于模型的2D化身,其中,关键点被预定义,并且2D化身不是特定用户的面部“定制”的。
[0054]如图所示,化身控制模块210a可包括配置成响应于指示化身从化身选择模块208a的生成的用户选择,生成2D化身的化身生成模块502。化身生成模块502可包括通常定义明确并且可操作以基于面部检测模块204检测到的面部特点206,生成2D化身的定制、专有、已知和/或以后开发的化身生成处理代码(或指令集)。更具体地说,化身生成模块502可基于包括关键点404和边缘406的识别的面部标志和面部参数,生成2D化身408(在图4C中示出)。在2D化身生成时,化身控制模块210a可还配置成将生成的2D化身的副本传送到化身选择模块208a以便存储在化身数据库500中。
[0055]如通常所理解的,化身生成模块502可配置成基于远程化身参数接收和生成远程化身选择。例如,远程化身参数可包括面部特点,包括远程用户的面部的面部参数(例如,关键点),其中,化身生成模块502可配置成生成基于草图的化身模型。更具体地说,化身生成模块502可配置成至少部分基于关键点和连接一个或更多个关键点与边缘,生成远程用户的化身。然后,可在装置102上显示生成的远程用户的化身。
[0056]化身控制模块210a可还包括配置成基于远程化身参数提供远程化身选择的自适应渲染的化身渲染模块504。更具体地说,化身控制模块210可包括通常定义明确并且可操作以适应性渲染化身110以便适当地适合显示器108并且预防化身110在向用户显示时的失真的定制、专有、已知和/或以后开发的图形处理代码(或指令集)。
[0057]在一个实施例中,化身渲染模块504可配置成接收远程化身选择和相关联远程化身参数。远程化身参数可包括远程化身选择的面部特点,包括面部参数。化身渲染模块504可配置成至少部分基于远程化身参数,识别远程化身选择的显示参数。显示参数可定义远程化身选择的边界框,其中,边界框可被理解为指远程化身110的默认显示大小。化身渲染模块504可还配置成识别远程化身110要在其上显示的装置102的显示器108或显示窗口的显示参数(例如,高度和宽度)。化身渲染模块504可还配置成基于远程化身选择的识别的显示参数和显示器108的识别的显示参数,确定化身比例因子。化身比例因子可允许远程化身110在显示器108上以适当比例(B卩,无失真或很少失真)和位置(B卩,远程化身110可居中在显示器108上)显示。
[0058]如通常所理解的,如果显示器108的显示参数更改(即,用户操纵装置102以便从纵向到横向更改视图方向或者更改显示器108的大小),则化身渲染模块504可配置成基于显示器108的新显示参数确定新比例因子,显示模块212可配置成至少部分基于新比例因子在显示器108上显示远程化身110。类似地,如果远程用户在通信期间交换化身,则化身渲染模块504可配置成基于新远程化身选择的新显示参数确定新比例因子,显示模块212可配置成至少部分基于新比例因子在显示器108上显示远程化身110。
[0059]图6示出根据至少一个实施例的示例系统实现。装置102’配置成经WiFi连接600(例如,工作中)以无线方式进行通信,服务器124’配置成经因特网602协商在装置102’与112’之间的连接,以及设备112’配置成经另一 WiFi连接604 (例如,在家中)以无线方式进行通信。在一个实施例中,在设备102’中激活装置到装置基于化身的视频呼叫应用。在化身选择后,应用可允许选择至少一个远程装置(例如,装置112’)。然后,应用可促使装置102’启动与装置112’的通信。通过装置102’经企业接入点(AP) 606传送连接建立请求到装置112’,可启动通信。企业AP 606可以是在商业环境中可使用的AP,并且因此可比家庭AP 614支持更高数据吞吐量和更多同时无线客户端。企业AP 606可接收来自装置102’的无线信号,并且可继续经网关608通过各种商业网络传送连接建立请求。然后,连接建立请求可通过防火墙610,防火墙610可配置成控制流入和流出WiFi网络600的信息。
[0060]然后,可由服务器124’处理装置102’的连接建立请求。服务器124’可配置用于注册IP地址,对目的地地址和NAT遍历进行鉴权以便可将连接建立请求引导到因特网602上正确的目的地。例如,服务器124’可从收到的来自装置102’的连接建立请求中的信息解析预期目的地(例如,远程装置112’),并且可相应地将信号路由通过正确的NAT、端口并且到该目的地IP地址。取决于网络配置,这些操作可只在连接建立期间必须执行。
[0061]在一些情况下,在视频呼叫期间可重复操作,以便提供通知到NAT以保持连接持续可用。在连接已建立后,媒体和信号路径612可携带视频(例如,化身选择和/或化身参数)和音频信息引导到家庭AP 614。装置112’然后可接收连接建立请求,并且可配置成确定是否接受请求。确定是否接受请求例如可包括向装置112’的用户显示视觉叙述,询问关于是否接受来自装置102’的连接请求。如果装置112’的用户接受连接(例如,接受视频呼叫),则连接可得以建立。照相机104’和114’然后可配置成开始分别捕捉装置102’和112’的相应用户的图像以便用于以动画表现每个用户选择的化身。然后,麦克风106’和116’可配置成开始记录来自每个用户的音频。在装置102’与112’之间的信息交换开始时,显示器108’和118’可显示并且以动画表现对应于装置102’和112’的用户的化身。
[0062]图7是根据至少一个实施例的示例操作的流程图。在操作702中,可在装置中激活应用(例如,基于化身的话音呼叫应用)。应用的激活之后可以是化身704的选择。化身的选择可包括由应用向用户显示的接口,接口允许用户浏览化身数据库中存储的预定义的化身文件并从中选择。接口可还允许用户选择生成化身。用户是否决定生成化身可在操作706确定。如果确定用户选择生成化身,则与选择预定义的化身不同,装置中的照相机然后可在操作708中开始捕捉图像。图像可以是静态图像或直播视频(例如,连续捕捉的多个图像)。在操作710中,可从图像中面/头部的检测/跟踪开始,进行图像分析。然后,可分析检测到的面部以便提取面部特点(例如,面部标志、面部参数、面部表情等)。在操作712中,至少部分基于检测到的面/头部位置和/或面部特点,生成化身。
[0063]在化身选择后,可在操作714中配置通信。通信配置包括用于参与视频呼叫的至少一个远程装置或虚拟空间的标识。例如,用户可从应用内存储,与装置中另一系统关联存储(例如,智能电话、蜂窝电话中的联系人列表),诸如在因特网上(例如,在如Facebook、Linkedln、Yahoo、Google+、MSN等社交媒体网站中)远程存储的远程用户/装置列表中选择。备选地,用户可选择在如Second Life的虚拟空间中进入在线。
[0064]在操作716中,可在装置与至少一个远程装置或虚拟空间之间启动通信。例如,可将连接建立请求传送到远程装置或虚拟空间。为了本文中的解释,假设远程装置或虚拟空间接受连接建立请求。然后,在操作718中,装置中的照相机开始捕捉图像。图像可以是静态图像或直播视频(例如,连续捕捉的多个图像)。在操作720中,可从图像中面/头部的检测/跟踪开始,进行图像分析。然后,可分析检测到的面部以便提取面部特点(例如,面部标志、面部参数、面部表情等)。在操作722中,将检测到的面/头部位置和/或面部特点转换成化身参数。化身参数用于在远程装置上或者在虚拟空间中以动画表现和渲染选择的化身。在操作724中,可传送化身选择或化身参数中的至少一个。
[0065]在操作726中,可显示并且以动画表现化身。在装置到装置通信的实例(例如,系统100)中,可从远程装置接收远程化身选择或远程化身参数中的至少一个。然后,可基于收到的远程化身选择显示,并且可基于收到的远程化身参数以动画表现和/或渲染对应于远程用户的化身。在虚拟空间交互的实例(例如,系统126)中,可接收允许装置显示对应于装置用户的化身看到的内容的信息。
[0066]然后,在操作728中可确定当前通信是否完成。如果在操作728中确定通信未完成,则操作718-726可重复进行以便继续基于用户的面部的分析,在远程设备上显示并且以动画表现化身。否则,在操作730中,可终止通信。如果不要进行其它视频呼叫,则也可终止视频呼叫应用。
[0067]虽然图7示出根据实施例的各种操作,但要理解的是,对于其它实施例,图7所示所有操作并非是必需的。实际上,本文中完全考虑了在本公开内容的其它实施例中,图7所示操作和/或本文中描述的其它操作可以用附图中的任何一个中未明确示出的方式组合,但仍与本公开内容完全一致。因此,指向在一个附图中未确切示出的特征和/或操作的权利要求被认为是在本公开内容的范围和内容内。
[0068]已在本文中描述各种特征、方面和实施例。如本领域技术人员将理解的,特征、方面和实施例易于实现相互的组合及变化和修改。因此,本公开内容应视为涵盖此类组合、变化和修改。因此,本发明的广度和范围不应受任何上述示范实施例所限制,而是只应根据随附的权利要求及其等同物定义。
[0069]在本文中任何实施例中使用时,术语“模块”可指配置成执行任何上面提及的操作的软件、固件和/或电路。软件可实施为记录在非暂时性计算机可读存储媒体上的软件包、代码、指令、指令集和/或数据。固件可实施为在存储器装置中硬编码(例如,非易失性)的代码、指令或指令集和/或数据。“电路”在本文中任何实施例中使用时可例如单独或以任何组合方式包括硬连线电路、诸如包括一个或更多个单独指令处理核的计算机处理器的可编程电路、状态机器电路和/或存储可编程电路执行的指令的固件。模块可全体或单独实施为形成更大系统的一部分的电路,例如,集成电路(1C)、系统芯片(SOC)、台式计算机、膝上型计算机、平板计算机、服务器、智能电话等。
[0070]本文中所述操作中的任何一个可在包括一个或多个存储媒体的系统中实现,所述存储媒体上单独或组合地存储在由一个或多个处理器执行时执行方法的指令。此处,处理器例如可包括服务器CPU、移动装置CPU和/或其它可编程电路。因此,预期本文中所述操作可跨诸如在不止一个不同物理位置的处理结构的多个物理装置分布。存储媒体可包括任何类型的有形媒体,例如任何类型的磁盘,包括硬盘、软盘、光盘、压缩盘只读存储器(CD-ROM)、可重写压缩盘(CD-RW)及磁光盘、半导体装置诸如只读存储器(ROM)、诸如动态和静态RAM的随机存取存储器(RAM)、可擦除编程只读存储器(EPROM)、电擦除可编程只读存储器(EEPROM)、闪存、固态磁盘(SSD)、磁卡或光学卡或适用于存储电子指令的任何类型的媒体。其它实施例可实现为由可编程控制装置执行的软件模块。存储媒体可以为非暂时性。
[0071]本文中已采用的术语和表述用作描述的语言而不是限制,并且在此类术语和表述中,无意排除所示和所述的特征(或其部分)的任何等同物,以及可认识到各种修改在权利要求的范围内是可能的。相应地,权利要求覆盖包括所有此类等同物。各种特征、方面和实施例已在本文中描述。如本领域技术人员将理解的,特征、方面和实施例易于实现相互的组合及变化和修改。因此,本公开内容应视为涵盖此类组合、变化和修改。
[0072]如本文中所述,各种实施例可使用硬件元素、软件元素或其任何组合实现。硬件元素的示例可包括处理器、微处理器、电路、电路元素(例如,晶体管、电阻器、电容器、电感器等等)、集成电路、专用集成电路(ASIC)、可编程逻辑器件(PLD),、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、逻辑门、寄存器、半导体装置、芯片、微芯片、芯片集等等。
[0073]此说明书通篇对“一个实施例”或“一实施例”的引用指结合该实施例描述的特定特征、结构或特性包括在至少一个实施例中。因此,在此说明书通篇各个位置出现的“在一个实施例”或“在一实施例中”短语不一定全部指同一实施例。此外,特定的特征、结构或特性可在一个或多个实施例中以任何适合的方式组合。
[0074]根据一方面,提供了一种用于在第一用户装置与远程用户装置之间的通信期间的生成、渲染和动画的系统。系统包括配置成捕捉图像的照相机、配置成在第一与远程用户装置之间启动并建立通信,并且在第一与远程用户装置之间传送和接收信息的通信模块及一个或更多个存储媒体,存储媒体上单独或组合地存储在由一个或更多个处理器执行时产生一个或更多个操作的指令。操作包括选择基于模型的二维(2D)化身和基于草图的2D化身中的至少一个以便在通信期间使用,启动通信,捕捉图像,检测图像中的面部,从面部确定面部特点,将面部特点转换成化身参数,以及传送化身选择和化身参数中的至少一个。
[0075]另一示例系统包括前面所述组件,并且从面部确定面部特点包括检测和识别面部中的面部标志。面部标志包括图像中面部的前额、下巴、眼睛、鼻子、嘴和面部轮廓中的至少一个。从面部确定面部特点还包括至少部分基于识别的面部标志生成面部参数。面部参数包括一个或更多个关键点和在一个或更多关键点的至少两个关键点之间形成连接的边缘。
[0076]另一示例系统包括前面所述组件,并且化身选择和化身参数用于在远程装置上生成化身,化身是基于面部特点。
[0077]另一示例系统包括前面所述组件,并且化身选择和化身参数用于在虚拟空间中生成化身,化身是基于面部特点。
[0078]另一示例系统包括前面所述组件和指令,指令在由一个或更多个处理器执行时的产生以下另外的接收远程化身选择和远程化身参数中的至少一个的操作。
[0079]另一示例系统包括前面所述组件,并且还包括显示器,其中,指令在由一个或更多个处理器执行时产生以下另外的操作:基于远程化身参数渲染远程化身选择以允许无失真或很少失真地显示基于远程化身选择的化身,以及基于渲染的远程化身选择显示化身。
[0080]另一示例系统包括前面所述组件和指令,指令在由一个或更多个处理器执行时产生以下另外的基于远程化身参数以动画表现显示的化身的操作。
[0081]根据一方面,提供了一种用于在第一用户装置与远程用户装置之间的通信期间的化身生成、渲染和动画的设备。设备包括:通信模块,配置成在第一与远程用户装置之间启动并建立通信,并且在第一与远程用户装置之间传送和接收信息;化身选择模块,配置成允许用户选择基于模型的二维(2D)化身和基于草图的2D化身中的至少一个以便在通信期间使用;面部检测模块,配置成检测用户的图像中的面部区域,并且检测和识别面部的一个或更多个面部特点;以及化身控制模块,配置成将面部特点转换成化身参数。通信模块配置成传送化身选择和化身参数中的至少一个。
[0082]另一示例设备包括前面所述组件,并且面部检测模块包括配置成识别图像中面部区域的面部标志的标志检测模块,面部标志包括面部的前额、下巴、眼睛、鼻子、嘴和面部轮廓中的至少一个。面部检测模块还包括配置成至少部分基于识别的面部标志生成面部参数的面部参数模块,面部参数包括一个或更多个关键点和在一个或更多个关键点的至少两个关键点之间形成连接的边缘。
[0083]另一示例设备包括前面所述组件,并且化身控制模块配置成至少部分基于面部参数生成基于草图的2D化身。
[0084]另一示例设备包括前面所述组件,并且化身选择和化身参数用于在远程装置上生成化身,化身是基于面部特点。
[0085]另一示例设备包括前面所述组件,并且通信模块配置成接收远程化身选择和远程化身参数中的至少一个。
[0086]另一示例设备包括前面所述组件,并且还包括配置成基于远程化身选择显示化身的显不器。
[0087]另一示例设备包括前面所述组件,并且还包括配置成基于远程化身参数渲染远程化身选择以允许无失真或很少失真地显示基于远程化身选择的化身的化身渲染模块。
[0088]另一示例设备包括前面所述组件,并且化身控制模块配置成基于远程化身参数以动画表现显示的化身。
[0089]根据另一方面,提供了一种用于化身生成,渲染和动画的方法。方法包括选择基于模型的二维(2D)化身和基于草图的2D化身中的至少一个以便在通信期间使用,启动通信,捕捉图像,检测图像中的面部,从面部确定面部特点,将面部特点转换成化身参数,以及传送化身选择和化身参数中的至少一个。
[0090]另一示例方法包括前面所述操作,并且从面部确定面部特点包括检测和识别面部中的面部标志。面部标志包括图像中面部的前额、下巴、眼睛、鼻子、嘴和面部轮廓中的至少一个。从面部确定面部特点还包括至少部分基于识别的面部标志生成面部参数。面部参数包括一个或更多个关键点和在一个或更多关键点的至少两个关键点之间形成连接的边缘。
[0091]另一示例方法包括前面所述操作,并且化身选择和化身参数用于在远程装置上生成化身,化身是基于面部特点。
[0092]另一示例方法包括前面所述操作,并且化身选择和化身参数用于在虚拟空间中生成化身,化身是基于面部特点。
[0093]另一示例方法包括前面所述操作和指令,指令在由一个或更多个处理器执行时的产生以下另外的接收远程化身选择和远程化身参数中的至少一个的操作。
[0094]另一示例方法包括前面所述操作,并且还包括显示器,其中,指令在由一个或更多个处理器执行时产生以下另外的操作:基于远程化身参数渲染远程化身选择以允许无失真或很少失真地显示基于远程化身选择的化身,以及基于渲染的远程化身选择显示化身。
[0095]另一示例方法包括前面所述操作和指令,指令在由一个或更多个处理器执行时产生以下另外的基于远程化身参数以动画表现显示的化身的操作。
[0096]根据另一方面,提供了至少一种存储指令的计算机可访问媒体。在由一个或更多个处理器执行时,指令可促使计算机系统执行用于化身生成,渲染和动画的操作。操作包括选择基于模型的二维(2D)化身和基于草图的2D化身中的至少一个以便在通信期间使用,启动通信,捕捉图像,检测图像中的面部,从面部确定面部特点,将面部特点转换成化身参数,以及传送化身选择和化身参数中的至少一个。
[0097]另一示例计算机可访问媒体包括前面所述操作,并且从面部确定面部特点包括检测和识别面部中的面部标志。面部标志包括图像中面部的前额、下巴、眼睛、鼻子、嘴和面部轮廓中的至少一个。从面部确定面部特点还包括至少部分基于识别的面部标志生成面部参数。面部参数包括一个或更多个关键点和在一个或更多关键点的至少两个关键点之间形成连接的边缘。
[0098]另一示例计算机可访问媒体包括前面所述操作,并且化身选择和化身参数用于在远程装置上生成化身,化身是基于面部特点。
[0099]另一示例计算机可访问媒体包括前面所述操作,并且化身选择和化身参数用于在虚拟空间中生成化身,化身是基于面部特点。
[0100]另一示例计算机可访问媒体包括前面所述操作和指令,指令在由一个或更多个处理器执行时的产生以下另外的接收远程化身选择和远程化身参数中的至少一个的操作。
[0101]另一示例计算机可访问媒体包括前面所述操作,并且还包括显示器,其中,指令在由一个或更多个处理器执行时产生以下另外的操作:基于远程化身参数渲染远程化身选择以允许无失真或很少失真地显示基于远程化身选择的化身,以及基于渲染的远程化身选择显示化身。
[0102]另一示例计算机可访问媒体包括前面所述操作和指令,指令在由一个或更多个处理器执行时产生以下另外的基于远程化身参数以动画表现显示的化身的操作。
[0103]本文中已采用的术语和表述用作描述的语言而不是限制,并且在此类术语和表述中,无意排除所示和所述的特征(或其部分)的任何等同物,以及可认识到各种修改在权利要求的范围内是可能的。相应地,权利要求旨在覆盖所有此类等同物。
【权利要求】
1.一种用于在第一用户装置与远程用户装置之间的通信期间的化身生成、渲染和动画的系统,所述系统包括: 照相机,配置成捕捉图像; 通信模块,配置成在所述第一与所述远程用户装置之间启动并建立通信,并且在所述第一与所述远程用户装置之间传送和接收信息;以及 一个或更多个存储媒体,所述存储媒体上单独或组合地存储指令,所述指令在由一个或更多个处理器执行时产生以下操作,包括: 选择基于模型的二维(2D)化身和基于草图的2D化身中的至少一个以便在通信期间使用; 启动通信; 捕捉图像; 检测所述图像中的面部; 从所述面部确定面部特点; 将所述面部特点转换成化身参数; 传送所述化身选择和化身参数中的至少一个。
2.如权利要求1所述的系统,其中从所述面部确定面部特点包括: 检测和识别所述面部中的面部标志,所述面部标志包括所述图像中所述面部的前额、下巴、眼睛、鼻子、嘴和面部轮廓中的至少一个;以及 至少部分基于所述识别的面部标志生成面部参数,所述面部参数包括一个或更多个关键点和在所述一个或更多个关键点的至少两个关键点之间形成连接的边缘。
3.如权利要求1所述的系统,其中所述化身选择和化身参数用于在远程装置上生成化身,所述化身是基于所述面部特点。
4.如权利要求1所述的系统,其中所述化身选择和化身参数用于在虚拟空间中生成化身,所述化身是基于所述面部特点。
5.如权利要求1所述的系统,其中所述指令在由一个或更多个处理器执行时产生以下另外的操作: 接收远程化身选择和远程化身参数中的至少一个。
6.如权利要求6所述的系统,还包括显示器,其中所述指令在由一个或更多个处理器执行时产生以下另外的操作: 基于所述远程化身参数渲染所述远程化身选择以允许无失真或很少失真地显示基于所述远程化身选择的化身;以及 基于所述渲染的远程化身选择来显示所述化身。
7.如权利要求7所述的系统,其中所述指令在由一个或更多个处理器执行时产生以下另外的操作: 基于所述远程化身选择以动画表现所述显示的化身。
8.一种用于在第一用户装置与远程用户装置之间的通信期间的化身生成、渲染和动画的设备,所述设备包括: 通信模块,配置成在所述第一与所述远程用户装置之间启动和建立通信; 化身选择模块,配置成允许用户选择基于模型的二维(2D)化身和基于草图的2D化身中的至少一个以便在通信期间使用; 面部检测模块,配置成检测所述用户的图像中的面部区域,并且检测和识别所述面部的一个或更多个面部特点;以及 化身控制模块,配置成将所述面部特点转换成化身参数; 其中所述通信模块配置成传送所述化身选择和化身参数中的至少一个。
9.如权利要求8所述的设备,其中所述面部检测模块包括: 标志检测模块,配置成识别所述图像中所述面部区域的面部标志,所述面部标志包括所述面部的前额、下巴、眼睛、鼻子、嘴和面部轮廓中的至少一个;以及 面部参数模块,配置成至少部分基于所述识别的面部标志生成面部参数,所述面部参数包括一个或更多个关键点和在所述一个或更多个关键点的至少两个关键点之间形成连接的边缘。
10.如权利要求9所述的设备,其中所述化身控制模块配置成至少部分基于所述面部参数,生成所述基于草图的2D化身。
11.如权利要求8所述的设备,其中所述化身选择和化身参数用于在所述远程装置上生成化身,所述化身是基于所述面部特点。
12.如权利要求8所述的设备,其中所述通信模块配置成接收远程化身选择和远程化身参数中的至少一个。
13.如权利要求12所述的设备,还包括配置成基于所述远程化身选择来显示化身的显示器。
14.如权利要求12所述的设备,还包括配置成基于所述远程化身参数渲染所述远程化身选择以允许无失真或很少失真地显示基于所述远程化身选择的所述化身的化身渲染模块。
15.如权利要求13所述的设备,其中所述化身控制模块配置成基于所述远程化身参数以动画表现所述显示的化身。
16.一种用于化身生成、渲染和动画的方法,所述方法包括: 选择基于模型的二维(2D)化身和基于草图的2D化身中的至少一个以便在通信期间使用; 启动通信; 捕捉图像; 检测所述图像中的面部; 从所述面部确定面部特点; 将所述面部特点转换成化身参数; 传送所述化身选择和化身参数中的至少一个。
17.如权利要求16所述的方法,其中从所述面部确定面部特点包括: 检测和识别所述面部中的面部标志,所述面部标志包括所述图像中所述面部的前额、下巴、眼睛、鼻子、嘴和面部轮廓中的至少一个;以及 至少部分基于所述识别的面部标志生成面部参数,所述面部参数包括关键点和在一个或更多个关键点之间形成连接的边缘。
18.如权利要求16所述的方法,其中所述化身选择和化身参数用于在远程装置上生成化身,所述化身是基于所述面部特点。
19.如权利要求16所述的方法,其中所述化身选择和化身参数用于在虚拟空间中生成化身,所述化身是基于所述面部特点。
20.如权利要求16所述的方法,还包括接收远程化身选择和远程化身参数中的至少一个。
21.如权利要求20所述的方法,还包括: 基于所述远程化身参数渲染所述远程化身选择以允许无失真或很少失真地显示基于所述远程化身选择的化身;以及 基于所述渲染的远程化身选择显示所述化身。
22.如权利要求21所述的方法,还包括基于所述远程化身参数以动画表现所述显示的化身。
23.至少一种存储指令的计算机可访问媒体,所述指令在由机器执行时,促使所述机器执行如权利要求16到22任一项所述的方法。
【文档编号】G06T13/80GK104205171SQ201280071879
【公开日】2014年12月10日 申请日期:2012年4月9日 优先权日:2012年4月9日
【发明者】X.童, 李文龙, 杜杨洲, W.胡, Y.张, J.李 申请人:英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1