CN108876877A - 表情符号人偶化 - Google Patents
表情符号人偶化 Download PDFInfo
- Publication number
- CN108876877A CN108876877A CN201810070546.2A CN201810070546A CN108876877A CN 108876877 A CN108876877 A CN 108876877A CN 201810070546 A CN201810070546 A CN 201810070546A CN 108876877 A CN108876877 A CN 108876877A
- Authority
- CN
- China
- Prior art keywords
- emoticon
- message
- image
- frame
- video
- 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
Links
- 238000000034 method Methods 0.000 claims abstract description 40
- 230000033001 locomotion Effects 0.000 claims abstract description 29
- 230000008921 facial expression Effects 0.000 claims abstract description 24
- 230000014509 gene expression Effects 0.000 claims description 62
- 230000005540 biological transmission Effects 0.000 claims description 30
- 238000003384 imaging method Methods 0.000 claims description 28
- 206010053238 Amimia Diseases 0.000 claims description 16
- 230000001360 synchronised effect Effects 0.000 claims description 14
- 238000012545 processing Methods 0.000 claims description 12
- 230000015654 memory Effects 0.000 claims description 11
- 239000006185 dispersion Substances 0.000 claims description 9
- 230000001815 facial effect Effects 0.000 claims description 5
- 210000003128 head Anatomy 0.000 abstract description 26
- 230000004044 response Effects 0.000 abstract description 22
- 210000004709 eyebrow Anatomy 0.000 abstract description 18
- 210000001508 eye Anatomy 0.000 abstract description 12
- 230000004886 head movement Effects 0.000 abstract description 6
- 210000000214 mouth Anatomy 0.000 abstract description 6
- 210000005069 ears Anatomy 0.000 abstract description 4
- 230000000153 supplemental effect Effects 0.000 abstract 1
- 230000008859 change Effects 0.000 description 15
- 238000004891 communication Methods 0.000 description 15
- 230000006870 function Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 210000004209 hair Anatomy 0.000 description 9
- 238000013519 translation Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 7
- 238000013527 convolutional neural network Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 230000003190 augmentative effect Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 238000001514 detection method Methods 0.000 description 4
- 230000005611 electricity Effects 0.000 description 4
- 229910044991 metal oxide Inorganic materials 0.000 description 4
- 150000004706 metal oxides Chemical class 0.000 description 4
- 239000004065 semiconductor Substances 0.000 description 4
- 240000006409 Acacia auriculiformis Species 0.000 description 3
- 230000004913 activation Effects 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 3
- 210000000744 eyelid Anatomy 0.000 description 3
- 230000003796 beauty Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000008451 emotion Effects 0.000 description 2
- 238000005265 energy consumption Methods 0.000 description 2
- 210000001061 forehead Anatomy 0.000 description 2
- 238000003780 insertion Methods 0.000 description 2
- 230000037431 insertion Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000036651 mood Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 239000000758 substrate Substances 0.000 description 2
- 239000013589 supplement Substances 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- SPBWHPXCWJLQRU-FITJORAGSA-N 4-amino-8-[(2r,3r,4s,5r)-3,4-dihydroxy-5-(hydroxymethyl)oxolan-2-yl]-5-oxopyrido[2,3-d]pyrimidine-6-carboxamide Chemical compound C12=NC=NC(N)=C2C(=O)C(C(=O)N)=CN1[C@@H]1O[C@H](CO)[C@@H](O)[C@H]1O SPBWHPXCWJLQRU-FITJORAGSA-N 0.000 description 1
- 239000004606 Fillers/Extenders Substances 0.000 description 1
- 241000406668 Loxodonta cyclotis Species 0.000 description 1
- 241001465754 Metazoa Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000010009 beating Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000004397 blinking Effects 0.000 description 1
- 239000002801 charged material Substances 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000013481 data capture Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 210000000887 face Anatomy 0.000 description 1
- 230000005621 ferroelectricity Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000009432 framing Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000004064 recycling Methods 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
-
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
-
- 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/205—3D [Three Dimensional] animation driven by audio data
-
- 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
- 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
- G06T17/205—Re-meshing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/161—Detection; Localisation; Normalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/174—Facial expression recognition
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/02—Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
- G11B27/031—Electronic editing of digitised analogue information signals, e.g. audio or video signals
- G11B27/036—Insert-editing
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/04—Real-time or near real-time messaging, e.g. instant messaging [IM]
- H04L51/046—Interoperability with other network applications or services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/06—Message adaptation to terminal or network requirements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/14—Systems for two-way working
- H04N7/141—Systems for two-way working between two video terminals, e.g. videophone
- H04N7/147—Communication arrangements, e.g. identifying the communication as a video-communication, intermediate storage of the signals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/14—Systems for two-way working
- H04N7/141—Systems for two-way working between two video terminals, e.g. videophone
- H04N7/142—Constructional details of the terminal equipment, e.g. arrangements of the camera and the display
- H04N2007/145—Handheld terminals
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Oral & Maxillofacial Surgery (AREA)
- General Health & Medical Sciences (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Graphics (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- User Interface Of Digital Computer (AREA)
- Processing Or Creating Images (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明涉及表情符号(EMOJICON)人偶化。本发明提供了用于生成表情符号的视频的系统和方法,其中已使用来自图像、深度和音频的输入来人偶化该表情符号。该输入可以捕捉用户的面部表情、眼睛、眉毛、嘴和头部动作。用户所作的姿势可以被检测到,并且可以用来生成补充动画。还可以使用与表情符号和所捕捉的移动相关联的物理属性来以动画方式显示表情符号。狗表情符号可以响应于头部的上下移动或摇头而使其耳朵移动。可在消息中将视频发送给一个或多个接收人。发送设备可以根据接收人的计算机设备的硬件和软件能力来呈现人偶化视频。
Description
相关专利申请
本专利申请要求授予Justin D.Stoyles的提交于2017年5月16日的名称为“Emojicon Puppeting”的美国临时专利申请序列号62/507,073(代理人案卷号4860P34362Z)的优先权,以及授予Justin D.Stoyles的提交于2017年9月9日的名称为“Emojicon Puppeting”的美国临时专利申请序列号62/556,368(代理人案卷号4860P343362Z2),其中每个专利申请以与本专利申请相符合的程度以引用方式并入本文。
本申请与以下申请相关:提交于2016年9月23日的名称为“MessagingApplication Interacting with One or More Extension Applications”的美国专利申请序列号15/275,136(代理人案卷号4860P31303)、提交于2017年1月5日的名称为“Conversion of Detected URL in Text Message”的美国专利申请序列号15/399,203(代理人案卷号4860P31595)、提交于2016年6月12日的名称为“Conversion of Detected URLin Text Message”的美国专利申请序列号62/349,108(代理人案卷号4860.P31595Z)、授予Jacob R.Stern的提交于2014年7月28日的名称为“Overlapping Pattern Projector”的美国专利申请序列号14/341,860,其被发布为美国专利公布No.2016/0025993、授予Alexander Shpunt的提交于2010年7月21日的名称为“Optical Pattern Projection”的美国专利申请序列号12/840,312,其被发布为美国专利No.8,384,997、授予Benny Pesach的名称为“Projectors of Structured Light”的美国专利申请No.13/567,095,其被发布为美国专利No.8,749,796、以及授予Alexander Shpunt的提交于2013年1月16日的名称为“Scanning Projectors and Image Capture Modules for 3D Mapping”的美国专利申请序列号13/810,451,其被发布为美国专利No.9,098,931、其中每个专利申请均以与本专利申请相符合的程度以引用方式并入本文。
技术领域
本公开涉及表情符号图像领域。
背景技术
表情符号(emoji)是可以传达表情或情绪的小图形或图标,诸如表达快乐的笑脸或表达喜爱的吻。即时消息系统的用户可以在消息中包括表情符号,从而凭借表情符号来表达情绪。表情符号可具有固定的动画,诸如该表情符号眨眼睛,或飞吻。然而,用户无法改变表情符号的固定动画。
一些动画和增强现实(AR)系统可以将对象添加到图像。例如,AR系统可以将滑稽的鼻子添加到人的照片,或者将一个人(诸如用户)的照片变形为另一个人(诸如着名演员或公众人物)的照片。这些系统通常使用相机输出(例如,RGB数据)来确定人的轮廓,以提供数据来执行变形。仅使用RGB数据来获得深度信息在低光照条件下可能存在问题。
发明内容
公开了用于根据客户端设备的用户的面部表情、头部运动和语音所记录的图像、深度和可选的音频信息,来生成人偶化表情符号的视频的系统和方法。可以经由消息将人偶化表情符号视频传输给一个或多个消息接收人。可以使用所记录的表情、动作以及语音来以动画方式显示人偶化表情符号或对其进行人偶化。
在第一实施方案中,生成用于在消息中发送到一个或多个接收客户端设备的人偶化表情符号视频的方法,可以使用即时消息应用程序的表情符号人偶化应用扩展程序从即时消息应用程序内生成。人偶化表情符号可以看起来像是在模仿客户端设备的用户的面部表情、头部动作、眉毛动作、语音,以及其他表情。该方法可以包括使用深度传感器接收表示对象(诸如人类头部和面部)的多个深度信息帧。对象也可以是例如用户宠物的头部或面部,或其他移动的表现对象。该方法还可包括接收表示该对象的多个图像信息帧。可以根据该多个深度信息帧和图像信息帧,来呈现人偶化表情符号的视频。在一个实施方案中,视频还可以包括从与多个图像信息帧和深度信息帧同时记录的多个音频数据帧中生成的音频。然后,可以经由即时消息服务,将带有人偶化表情符号视频的消息传输给一个或多个消息接收人。消息接收人可以各自具有带不同设备和即时消息能力的计算设备。在一个实施方案中,发送客户端设备上的即时消息应用程序可以从即时消息系统接收对于传输表情符号的视频所用的一个或多个版本或格式的指示,其对应于消息接收人的一个或多个设备的设备和即时消息应用程序能力。在一个实施方案中,可以使用富链接(rich link)或指示表情符号视频的回放参数的元数据标签,在消息中传输表情符号视频。富链接可以指示统一资源定位符(URL),统一资源标识符(URI)或其他访问所呈现的人偶化表情符号的标引。富链接或元数据标签可以包括用于回放人偶化表情符号的参数,诸如回放人偶化表情符号的次数、在重复回放之前的延迟时间、是循环回放人偶化表情符号还是回放人偶化表情符号一次、是否应该在接收人打开含有人偶化表情符号的消息时自动播放人偶化表情符号,还是应该等到点击了人偶化表情符号才播放,以及人偶化表情符号的其他回放参数。在一个实施方案中,客户端发送设备可以存储所呈现的人偶化表情符号视频,并且富链接可以指存储所呈现的视频的位置。该位置可以是发送设备、消息服务器、第三方服务器、云存储或其他存储位置。接收客户端可以通过访问富链接而访问人偶化表情符号视频。另选地,可以将人偶化表情符号视频嵌入到消息中,并以接收设备、消息应用程序或设置参数所指定的默认方式将其传输给接收人进行回放。
在另一个实施方案中,消息系统可以接收来自发送客户端设备对于如下内容的指示:包括人偶化表情符号视频的消息将被发送给多个消息接收人。消息系统可以确定发送客户端设备的设备能力。消息系统还可确定每个消息接收人的客户端设备的设备能力。然后,消息系统可以向发送客户端设备发送用于呈现人偶化表情符号视频的版本或格式列表,使得每个接收客户端设备可以根据客户端设备硬件和软件能力来播放视频。所呈现的人偶化表情符号版本还可考虑发送客户端设备呈现该人偶化表情符号视频的硬件和软件能力。消息系统可以另外地接收发送给每个消息接收人的消息,每个消息包括消息系统所指定的、来自发送客户端设备的人偶化表情符号视频的版本。消息系统可按适用于接收客户端设备的硬件和软件能力的版本,向每个消息接收人传输消息和人偶化表情符号视频。然后消息系统可以通知发送客户端设备,消息已经成功发送到接收人客户端设备。
在又一个实施方案中,接收客户端设备可以从消息系统接收消息,该消息包括人偶化表情符号。在一个实施方案中,接收客户端设备的即时消息应用程序可以解密该消息。可以使用消息接收人的非对称密钥对的私有密钥来解密该消息。在一个实施方案中,消息可以使用对称密钥来解密。消息内的文本可以显示在即时消息应用程序内的转译本窗口中的消息会话内。如果接收客户端设备上安装了表情符号人偶化应用扩展程序,则消息应用程序显示并循环来自消息的人偶化表情符号。响应于用户输入,可以将来自人偶化表情符号的音频打开或静音。如果接收客户端设备不包括表情符号人偶化应用扩展程序,则可以在接收人客户端设备的显示器上将人偶化表情符号显示为视频。在一个实施方案中,视频可以显示在消息应用程序的转译本窗口内。在一个实施方案中,视频可以响应于重放视频的用户输入而被重放。
在一个另外的实施方案中,表情符号人偶化应用扩展程序可以经由一个或多个应用编程接口(API)或框架来调用增强现实(AR)API,音频/视频API、呈现AP、面部跟踪API和表情符号人偶化API,执行表情符号的人偶化。面部跟踪API可以接收图像传感器数据和深度传感器数据,并生成用户头部和/或面部的基网格。图像传感器可以用来检测用户面部的存在情况。在一个实施方案中,可以使用图像传感器和深度传感器中的任一者或两者来检测用户的面部的存在情况。在一个实施方案中,深度传感器可以在检测用户的面部期间断电。在一个实施方案中,可以显示围绕所检测的用户面部的边界框,并且可以生成指示用户面部已经被检测到的硬件信号。在检测到用户的面部之后,可以使用深度传感器来扫描用户的面部,并生成基网格或“轮廓型”面部。在一个实施方案中,深度传感器可以响应于由RGB传感器检测到用户的面部而被开启。在一个实施方案中,如果不再检测到用户的面部,则可以关闭深度传感器。随着用户改变其面部表情,面部跟踪API可以继续接收图像传感器数据和深度传感器数据的帧,并且可以确定基网格与图像传感器数据及深度传感器数据的附加帧之间的差异。该差异可以被表示为3D向量,其中每个向量元素在基网格的每个顶点具有诸如0-255的值。在一个实施方案中,可以跟踪基网格中的不同顶点,诸如用户的嘴巴或眉毛,其中每个顶点可以被称为界标。基网格与图像传感器数据及深度传感器数据的附加帧之间的差异可以表示为,代表用户面部表情变化的一个或多个混合形状值。基网格以及从图像传感器数据及深度传感器数据的帧导出的混合形状的顺序,可以用于映射基网格的混合形状值,以混合表情符号的形状值。在一个实施方案中,对基网格的混合形状值所作的改变(其映射到表情符号的混合形状),可以被用于以动画方式显示表情符号或将表情符号“人偶化”。可以使用呈现API将以动画方式显示的表情符号呈现为一种或多种格式的视频。
在一个实施方案中,非暂态计算机可读介质可以存储可执行指令,该可执行指令在由处理系统执行时,可以执行上述任何功能。
在又一个实施方案中,联接到编程有可执行指令的存储器的处理系统可以在执行该指令时,执行上述任何功能。在一个实施方案中,处理系统包括至少一个硬件处理器。
本文所述的一些实施方案包括环境中的一个或多个应用编程接口(API),其中调用程序代码与通过一个或多个接口而受调用的其他程序代码进行交互。各种功能调用、消息或其他类型的调用还可包括各种参数,这些调用可以经由调用程序和被调用代码之间的APl而传输。此外,API可以给调用程序代码提供使用在API中定义的、并在被调用程序代码中实现的数据类型或类别的能力。
通过附图并且通过详细描述,其他特征和好处将显而易见。
附图说明
本发明的实施方案以举例的方式进行说明,而不仅限于各个附图的图示,在附图中类似的附图标号是指类似的元件。
图1以框图形式示出了根据一些实施方案的用于生成和发送带有人偶化表情符号的消息的系统概况。
图2A以框图形式示出了根据一些实施方案的系统中的示例性客户端发送设备的详细视图,其用于生成人偶化表情符号,以供在消息中向一个或多个消息接收人进行发送。
图2B以框图形式示出了根据一些实施方案的系统中的示例性客户端发送设备部件的详细视图,其用于生成人偶化表情符号,以供在消息中向一个或多个消息接收人进行发送。
图3A示出了根据一些实施方案的图像传感器和深度传感器,其分别从该发送客户端设备的用户的面部、表情、运动和头部收集图像信息和深度信息。
图3B示出了包括人偶化表情符号的消息转译本,该表情符号是在来自该发送客户端设备的消息中接收到的。
图3C示出了人脸和头部、根据图像和深度数据生成的人脸和头部的基网格、基网格上的一个或多个跟踪点,以及具有与一个或多个基网格跟踪点相对应的跟踪点的表情符号。
图4示出了根据一些实施方案的当生成人偶化表情符号并在消息中将表情符号发送到接收客户端设备时,发送客户端设备、消息服务和接收客户端设备之间的握手。
图5A至图5C示出了根据一些实施方案的由发送设备生成人偶化表情符号视频并在消息中将该视频发送到接收设备的方法。
图6示出了根据一些实施方案的由服务器接收具有人偶化表情符号的消息并将该消息发送到一个或多个接收设备的方法。
图7以框图形式示出了根据一些实施方案的由接收客户端设备处理消息的方法,该消息具有人偶化表情符号。
图8示出了可在本发明的一些实施方案中使用的软件栈的示例性实施方案。
图9为计算系统的一个实施方案的框图。
图10示出了图像数据帧与深度数据帧及音频帧的同步。
具体实施方式
在以下对实施方案的详细描述中将引用附图,附图中类似的附图标记表示相似的元素,并且其中以示例方式示出了可实践的具体实施方案。这些实施方案被足够详细地描述以允许本领域的技术人员实践本发明,并且应当理解,可使用其他实施方案,并可在不脱离本公开内容的范围的情况下进行逻辑修改、机械修改、电气修改、功能修改和其他修改。因此,下面的详细描述不应该被理解为限制性的意义,并且本发明的范围仅由所附权利要求书所限定。
图1以框图形式示出了根据一些实施方案的用于生成和发送带有人偶化表情符号的消息的系统100的概况。系统100可以包括一个或多个发送客户端设备110,其经由网络120与一个或多个接收人客户端设备115和消息系统130通信。
发送客户端设备110可以包括即时消息应用程序,该即时消息应用程序使得用户能够编写消息并将消息发送到各自具有接收客户端设备115的多位消息接收人处。消息可以是任何类型的消息,包括文本消息、SMS消息、MIME格式消息、电子邮件或其他消息类型。发送客户端设备110还可包括表情符号人偶化应用扩展程序,其使得用户能够在消息内包括人偶化表情符号。如本文所述,人偶化表情符号是已由用户输入以动画方式显示或控制的表情符号。用户输入可以包括捕捉面部表情、头部运动和/或用户的语音。人偶化表情符号还可以接收特殊的图形特征,其包括可从用户输入推导出的移动。例如,如果表情符号是鹰,并且用户移动她的手臂,则表情符号动画可以包括扇动其翅膀的鹰。如果表情符号是狗,并且用户将头部左右移动,则狗的耳朵和毛发可以响应于用户的头部移动而以动画方式显示为发生移动。
客户端设备110可以包括图像传感器、深度传感器和音频记录硬件。在一个实施方案中,深度传感器可以检测深度和图像数据两者。图像数据可以是颜色数据,诸如但不限于红-绿-蓝(RGB)图像数据。深度数据可以包括距图像传感器的距离。在一个实施方案中,深度传感器可以包括红外激光器。在一个实施方案中,可以使用相机或其他电荷耦合器件(CCD)来获得图像数据。
客户端设备110还可以包括处理系统,该处理系统具有至少一个硬件处理器,该处理器联接到深度传感器、图像传感器和音频硬件。深度、图像和音频数据可以作为数据帧在时间上得到同步。可以使用深度数据和图像数据来生成至少表示用户的面部和/或头部以及用户的其他身体部位(例如颈部、手臂、手等等)的图形网格。表情符号可以具有映射到从图像信息和深度信息生成的网格的一个或多个顶点的顶点或“界标”。可以生成用户的被跟踪面部的一个或多个表情的混合形状值(其映射到一个或多个表情符号混合形状),以根据用户的面部、表情、身体动作和头部动作来以动画方式显示表情符号。获取用户动作并将这些动作转换为表情符号的过程被称为将表情符号“人偶化”。
客户端设备110可以使用任何视频编码标准(诸如但不限于任何MPEG标准、H.264或H.265)来生成人偶化表情符号的视频。根据消息接收人的接收客户端设备115的硬件和软件能力,发送客户端设备110可以生成针对接收客户端设备115能力而优化的适合版本的人偶化表情符号。发送客户端设备110即时消息应用程序280(未示出)可以将消息接收人列表发送到消息系统130。消息系统130可以查找每个消息接收人的接收客户端设备115。消息系统130可以确定每个接收客户端设备115的硬件和软件能力,并且向消息发送人客户端设备110发送带有消息接收人列表以及如下指示的消息:关于应该如何呈现人偶化表情符号,以及应该如何针对每个接收人的接收客户端设备115硬件和软件能力来准备和优化发送消息的指示。在一个实施方案中,消息系统130可以在数据库中查找每个接收人,并确定向接收人注册的接收客户端设备115品牌和型号。确定硬件能力可以包括,确定处理器类型和速度以及显示器规格,包括像素分辨率和用于表示每个像素颜色的每个像素的位数。确定软件功能可以包括,确定接收客户端设备115的操作系统的版本、确定接收客户端设备115是否包括支持人偶化表情符号的软件,以及确定接收客户端设备115上的消息应用程序280的版本。如果接收人没有向消息系统130注册,或者如果接收人的接收客户端设备115的品牌和型号未被找到或者以其他方式是未知的,则消息系统130可以为接收人接收客户端设备115使用一组默认的硬件和软件能力。默认特性可以包括显示器的默认像素分辨率,每个像素的默认颜色信息位数,以及接收客户端设备115未安装有人偶化表情符号应用扩展程序270(未示出)。基于每个消息接收人的接收客户端设备115的硬件和软件能力,消息服务器可以确定用于人偶化表情符号视频的呈现参数,诸如分辨率、帧速率和颜色深度。消息系统130可以准备传输给发送客户端设备110的消息,该消息指示出针对每个消息接收人而言的发送客户端设备110用于呈现人偶化表情符号视频的呈现参数,以及接收人的接收客户端设备115是否安装有人偶化表情符号应用扩展程序。消息系统130可以将该消息发送到发送客户端设备110。发送客户端设备110然后可以根据用于每个消息接收人的呈现参数,为每个消息接收人的接收客户端设备呈现人偶化表情符号视频。对于每个接收人来说,发送客户端设备110可以将可能伴随着人偶化表情符号视频的任何消息文本,连同用于该消息接收人的接收客户端设备的所呈现的人偶化表情符号视频的适当版本打包在消息中。如果接收人的接收客户端设备115已经安装了人偶化表情符号应用扩展程序270,则发送客户端设备110还可包括链接到发给接收人的消息中的人偶化表情符号视频的富链接。在一个实施方案中,客户端发送设备可以存储所呈现的人偶化表情符号视频,并且富链接可以指存储所呈现的视频的位置。该位置可以是发送设备、消息服务器、第三方服务器、云存储或其他存储位置。接收客户端设备115可以通过访问富链接而访问人偶化表情符号视频。在一个实施方案中,发送客户端设备110可以另选地包括伴随人偶化表情符号视频的元数据标签,该标签指示出用于回放人偶化表情符号视频的参数。发送客户端设备110可以可选地使用与接收人相关联的加密密钥来加密该消息。在一个实施方案中,加密密钥可以是非对称密钥对的公共密钥。在一个实施方案中,加密密钥可以是对称密钥。
客户端设备115可以包括与发送客户端设备110相同、相似或不同的软件和硬件能力。发送客户端设备110和接收客户端设备115的硬件和软件之间的相似点和差异可以包括,设备是否具有相同的制造商(例如或设备)、设备是否订阅同一即时消息系统130(例如)、消息系统130是否可以访问发送设备110和接收设备115的硬件和软件设备能力,以及发送设备110和接收设备115是否具有相同或不同的软件能力,包括软件应用程序和版本。发送客户端设备110和接收客户端设备115可以包括便携式电子设备、诸如智能电话、台式计算机(诸如)、平板电脑(诸如)或以下参照图9所述的其他计算设备。
网络120可以是任何类型的网络,诸如以太网、令牌环、火线、USB、蓝牙、光纤通道、WiFi、IEEE 802.11g、802.11n、802.11ac,蜂窝网络诸如LTE、UMTS、WiMAX或其他网络类型。
消息系统130可以是任何类型的消息传送系统,诸如文本消息系统、SMS消息系统、电子邮件消息系统、或 Messenger。消息系统130可以在一个或多个服务器上实现。以下参考图9来描述示例性服务器。消息系统130可以包括身份服务器132和即时消息服务器134。具有即时消息系统130账户的用户可以经由身份服务器132向消息系统130注册。身份服务器132可以存储关于对消息系统130有用的注册用户的信息,诸如注册用户所拥有和使用的特定设备,以及这些设备的硬件和软件能力。消息系统130可以访问身份服务器132,以确定消息系统130中的消息的发送人和接收人的硬件和软件能力。即时消息服务器134可以转发从发送客户端设备110接收到的发往一个或多个接收人设备115的消息。消息系统130可以经由网络120联接到客户端设备110和115。身份服务器132和即时消息服务器134可以通过网络120或其他网络而联接到即时消息系统130。
图2A以框图形式示出了根据一些实施方案的系统100中的示例性客户端发送设备110的详细视图,其用于生成人偶化表情符号,以供在消息中向一个或多个消息接收人进行发送。客户端接收设备115可以具有相同、相似或不同的能力。
客户端设备110的内部部件可以包括硬件210、操作系统220、面部跟踪API 230、音频/视频(A/V)API 240、增强现实(AR)API 250、表情符号API 260、表情符号木偶化应用扩展程序270,以及消息应用程序280。以下参考图8来描述示例性API调用。
硬件210可以包括相机或图像传感器211、深度传感器212、麦克风213、音频处理器214、一个或多个中央处理单元或特殊处理单元215,存储器216、存储装置217和网络接口218。图像传感器211可以包括产生图像数据的电荷耦合器件(CCD)相机或其他传感器。其他传感器类型可以包括互补金属氧化物半导体(CMOS)、N型金属氧化物半导体(NMOS或LiveMOS)技术、或者由结合到CCD成像基板上的CMOS读出集成电路(ROIC)组成的混合CCD/CMOS结构中的有源像素传感器。图像数据可以包括红-绿-蓝(RGB)数据,相机支持的分辨率的像素图,强度和像素颜色信息。图像信息可按其他数据格式得到捕捉,包括以例如一个亮度(Y')和两个色度(UV)分量,或者以YCbCr,Y'CbCr,YPbPr或其他形式表示的亮度(明亮度)和色度(颜色)信号格式。图像传感器211可按具有诸如每秒60帧(fps)的帧速率的帧来产生图像数据。深度传感器212可以包括捕捉深度信息的红外传感器,该深度信息具有像素图,其中每个像素具有某一深度值。深度信息可以具有像素分辨率,诸如如720像素/英寸(720p)。深度信息可以被存储为具有诸如15fps的帧速率的深度信息帧。在一个实施方案中,RGB传感器211捕捉帧速率和深度传感器212捕捉帧速率两者都可以独立地变化。在一个实施方案中,响应于电子设备的温度或高能耗或者作为其函数,RGB捕捉帧速率和/或深度传感器捕捉帧速率中的一个或两个可以被降低。可以独立于RGB传感器211捕捉帧速率和深度传感器212捕捉帧速率,来改变呈现人偶化表情符号的帧速率。在一个实施方案中,深度传感器212还可以包括生成RGB图像数据的图像传感器。麦克风213可以是任何类型的麦克风,诸如具有铁电性带电材料的驻极体(静电磁体)麦克风。音频处理器214可以包括数字信号处理器(DSP)、一个或多个模数转换器、滤波器、放大器,以及接收并处理例如来自麦克风213的声音并且从所接收的声音生成音频数据帧的其他部件。音频处理器214可以根据采样频率(诸如44.1KHz、48KHz或其它采样频率)来产生音频数据。下文参考图9详细描述了CPU215、存储器216、存储装置217和网络接口218。
操作系统220可以是任何类型的操作系统,诸如 Linux、或其他操作系统。操作系统220可以实现将硬件210联系到用户应用程序所需的资源,其中用户应用程序为诸如消息应用程序280(例如表情符号人偶化应用扩展程序270)、操作系统服务以及API,诸如面部跟踪API 230、A/V API 240、AR API 250和表情符号API 260。
面部跟踪API 230可以从例如图像传感器211和深度传感器212接收图像信息和深度信息。面部跟踪API 230能够以帧为单位将图像信息和深度信息在时间上同步。例如,可按60帧/秒(fps)来接收图像信息,并且可按15fps来接收深度信息,如下文参考图9所述。面部跟踪API 230可以将这些帧在时间上对齐到关键帧和交织帧中。关键帧可以包括深度信息和图像信息两者,并且在时间上被一个或多个图像帧交织。在该60fps图像信息和15fps深度信息的示例中,每个关键帧将被三(3)个图像信息帧交织。深度信息帧和图像信息帧可以传递给例如A/V API 240。在一个实施方案中,面部跟踪API 230可以在关键帧之间内插深度信息。
A/V API 240可以生成记录会话241,其中可以获取图像信息、深度信息和/或音频信息并将其用于人偶化表情符号。可以从麦克风213和/或音频处理器214接收音频信息。音频信息可以包括表情符号人偶化会话期间的语音,或其他声音,例如狗吠声。会话241可以响应于来自(例如)表情符号人偶化应用扩展程序270或表情符号API 260的调用而被发起。在一个实施方案中,音频处理器214可以从麦克风213接收音频信号,并且使用音频处理器214的模数转换器(ADC)对麦克风214输出进行采样。ADC可以具有例如48KHz、10KHz或其他采样频率的采样频率。AV API 240会话241可以将深度帧和图像帧传递给面部跟踪API230。面部跟踪API 230可以处理这些帧,然后向AV API 240输出姿势、网格和混合形状元数据,其中它被同步并传递给AR API 250。音频处理器214或A/V API 240可以将采样的音频数据打包成对应于图像信息帧的分块或帧,例如60fps或15fps的深度信息帧。A/V API 240可以使音频帧与深度信息帧和图像信息帧同步。会话241可以将所同步的图像信息、深度信息和音频信息存储到例如存储器216或存储装置217中。A/V API 240可以将图像信息、深度信息和音频信息传递给AR API 250、表情符号API 260或表情符号人偶化应用扩展程序270以供进一步处理。
AR API 250可以使用从A/V API 240或面部跟踪API 230接收到的图像信息和深度信息,来生成“网格”数据结构,其表示被用来使表情符号人偶化的对象的面部、头部或的其他部分的3D深度轮廓。AR API 250可以将网格数据结构传递给表情符号API 260或表情符号人偶化应用扩展程序270。基网格数据结构可以从一个或多个图像传感器信息帧和深度传感器信息帧中生成。随后的图像帧和深度帧可以用来确定在基网格的一个或多个顶点处随帧而发生的变化。在基网格上,诸如眼睛、眉毛、微笑、脸颊、耳朵和额头等感兴趣的区域可随着面部表情而改变。基网格的一个或多个顶点可被分组成表示每个感兴趣的区域。可以将每个感兴趣区域中的顶点映射到表情符号中相应感兴趣区域中的一个或多个顶点。在一个实施方案中,表情符号的3D版本的无表情基网格可以存储在资产261或表情符号API260中。在一个实施方案中,表情符号可以具有多个表情,每个表情具有表示该表情的基网格。表情可以是例如,眨左眼、右耳向上、嘴角向上微笑、眉毛下弯等。每个表情基网格可以被称为混合形状。对于每个表情而言,无表情基网格、用户面部扫描和表情基网格之间的差异可以被称为混合形状值。混合形状值确定了每个混合形状被激活的程度。混合形状值可用于以动画方式显示表情符号。混合形状可以用来确定用户或使表情符号人偶化的其他对象的表情。另一个对象可以是例如狗、鸟、其他宠物或动物。
表情符号API 260具有对如下资产的访问权限:该资产用于生成在用户编写消息时可以循环回放给用户的人偶化表情符号的动画和/或视频。用户可以从资产261中选择另选的表情符号。资产可以包括带有一个或多个表情符号的库261,每个表情符号已经被准备用于将用户的基网格数据结构应用到所选的一个表情符号。表情符号可以具有相关联的“网格”数据结构,其具有大量顶点。可以将顶点分组到感兴趣区域或“界标”中,其将被映射到从用户的图像信息和深度信息所生成的用户基网格数据结构的一个或多个对应顶点。“大量”可以是例如500个表情符号的顶点,并且从图像信息和深度信息产生的网格数据结构可以具有例如1000个或更多个顶点。表情符号API 260可以将用户的基网格顶点映射到表情符号顶点,从而可以根据用于生成网格数据结构的图像数据和深度数据,以动画方式显示表情符号。表情符号API 260还可以生成用户受跟踪的面部的混合形状,每个混合形状捕捉用户面部的表情,并且将用户面部的混合形状映射到表情符号的一个或多个混合形状,以使得表情符号得到人偶化。例如,表情符号可以具有对应于眉毛、微笑、耳朵、鼻子或表情符号的其他特征的多个顶点,并且表情符号API 260可以将网格数据结构的顶点映射到对应的表情符号顶点。在一个实施方案中,表情符号可以具有多个混合形状,每个混合形状代表眉毛、微笑、耳朵、鼻子或表情符号的其他特征的表情,并且表情符号API 260可以将用户面部表情中的变化映射到表情符号的一个或多个混合形状。表情符号API 260还可以添加从图像信息帧和深度信息帧中检测到的运动所导出的物理属性。例如,如果表情符号是狗,则表情符号API 260可以检测到用户头部以上下运动或左右摇头运动来移动,这将导致狗的耳朵以与使用者移动方式相同的狗所采用的方式拍动。然后,表情符号API 260可以添加与所检测的动作相对应的耳朵拍打动作。另外,表情符号API 260还可以从图像信息帧和深度信息帧中检测出用户在一段时间内保持特定的姿势。响应于检测到用户保持该姿势,表情符号API 260可以将补充图形添加到表情符号。例如,表情符号API 260可以检测到用户皱眉达预定的时间段。为了响应于检测到皱眉,表情符号API 260可以将眼泪添加到人偶化表情符号的眼睛上。响应于检测到微笑的姿势,表情符号API 260可以例如将心形添加到狗的眼睛,以指示快乐或很喜爱。表情符号API 260还可以生成人偶化表情符号的动画版本(其不同于人偶化表情符号的完全呈现的视频),以供向用户显示,以使得用户能够了解人偶化表情符号在完全呈现时大致看起来是怎么样的。
可以由消息应用程序280调用表情符号人偶化应用扩展程序(应用扩展)270以生成用于在消息中发送到一个或多个接收人(每个接收人都具有接收客户端设备115)的人偶化表情符号。表情符号人偶化应用扩展270可以调用上述一个或多个API,以启用表情符号人偶化应用扩展270的功能。表情符号人偶化应用扩展270可以接收来自上述API的混合形状、添加的图形特征、表情符号和网格数据结构,并且将人偶化表情符号呈现271为完全呈现的视频。可以根据发送客户端设备110的硬件和软件能力,以及消息接收人的接收客户端设备115的硬件和软件能力,由发送客户端设备110来呈现271人偶化表情符号。消息系统130可以从接收人列表中确定发件人的客户端设备100和每个接收人的接收客户端设备115的设备能力。在一个实施方案中,消息系统130具有对如下详细信息数据库的访问权限:该详细信息是关于安装在每个发送人和接收人客户端设备上的特定硬件和/或软件的详细信息。设备能力可以包括硬件和软件能力,以及接收人的接收客户端设备115是否支持在消息应用中显示人偶化表情符号。消息系统130可以通知发送客户端设备110要呈现的人偶化表情符号的特定版本,以及要接收每个版本的接收人。发送客户端设备110然后可以根据由消息系统130针对将包括人偶化表情符号的消息的相应消息接收人所指示的版本,来呈现人偶化表情符号的一个或多个不同版本。发送客户端设备110可采用将任何视频编码标准(诸如但不限于任何MPEG标准、H.264或H.265)将所呈现的人偶化表情符号编码为视频。
消息应用程序280可以是诸如Apple Messenger、文本消息应用程序、电子邮件应用程序或其他消息应用程序之类的应用程序。用户可以从消息应用程序280内选择表情符号人偶化应用扩展程序270来生成人偶化表情符号。可以在从消息应用程序280发送给一个或多个接收人的消息中包括该人偶化表情符号。
图2B以框图形式示出了根据一些实施方案的系统100中的另一个示例性客户端发送设备110的详细视图,其用于生成人偶化表情符号,以供在消息中向一个或多个消息接收人进行发送。
客户端设备110的内部部件可以包括图像传感器211和深度传感器212。图像传感器211可以生成图像数据,例如1280×720像素和60帧/秒的RGB彩色图像数据。深度传感器212可以生成深度数据,例如具有32位浮点分辨率和15帧/秒的640×360像素的深度数据。图像传感器211和深度传感器212可以将它们各自的传感器数据提供给面部跟踪API 230和AR API 250。在一个实施方案中,深度传感器212可以包括发射器和传感器,其中深度传感器212发射器发射出光束(诸如红外激光束)的扫描图案,其中扫描图案中每个所发射的光束对应于扫描空间中的顶点。深度传感器可以读取由用户面部反射的扫描图案中每个所发射的扫描光束的反射强度。图像传感器211也可以获取用户面部的图像数据。可以在用户面部的记录时间期间以预定扫描速率(例如,每秒15帧)获取并存储深度传感器信息。可以在用户面部的记录时间期间以预定速率(例如,每秒60帧)获取并存储图像传感器信息。面部跟踪API 230可以使用通用接口(GP接口)将所扫描的深度信息和图像信息传递给图像信号处理器(ISP)215,以执行卷积神经网络(CNN)功能,包括用于面部跟踪的深度学习。CNN功能可以为用户的面部生成无表情基网格,并且可以基于扫描图像的一个或多个顶点的变化和用户面部的深度信息,来检测用户面部表情的变化。在一个实施方案中,CNN功能可以针对多个表情的每个表情生成基网格,并且可以估计用户的受跟踪的面部、用户面部的无表情基网格和每个表情网格之间的差异量。在一个实施方案中,CNN功能可以被实现为集成电路,该集成电路可以被训练以接收从RGB传感器211捕捉的RGB值和从深度传感器212捕捉的深度传感器值,并且由CNN实现的训练模型可以输出面部跟踪数据,以允许随着时间的推移而跟踪面部。ISP 215可以包括一个或多个处理器,包括被设计用于图像处理的处理器、数字信号处理器、图形处理器、通用处理器或其他处理器。ISP 215可以使用GP接口将元数据返回到面部跟踪API 230。所返回的元数据可以由ISP 215从接收自面部跟踪API 230的所扫描的深度信息和图像信息导出到ISP 215。
最初,第一多个图案扫描可以用来检测用户面部的存在情况。在一个实施方案中,可以使用图像扫描传感器和深度传感器二者来检测用户的面部的存在情况。在一个实施方案中,可以使用图像传感器或深度传感器中的任一者或两者来检测用户的面部的存在情况。然后,图像扫描和深度扫描可以用来“获取”用户的面部。获取用户的面部可以包括,确定通用面部网格和从用户面部所扫描的深度信息和图像信息生成的用户面部网格之间的差异。表示通用面部的网格可以被称为“身份”面部。所扫描的用户面部深度信息和图像信息可以用于确定代表用户面部的网格。表示用户面部的网格可以被称为基网格或“轮廓”面部。轮廓面部网格可以是用户面部的无表情网格。除了轮廓面部网格之外,可以生成用户面部的多个表情网格。
表情可以包括,向左微笑、向右微笑、眨左眼、眨右眼、下巴张开、下巴向左、下巴向右、左眼睁开、右眼睁开、左侧眉毛向下、左侧眉毛向上、右侧眉毛向下、右侧眉毛向上、左耳向上、左耳向下、右耳向上、右耳向下、左侧嘴角微笑、右侧嘴角微笑等。每个表情网格都可以是针对特定面部表情的从无表情剖面网格发生的估计最大变形。例如,微笑表情网格可以表示面部的一个或多个部分的最大变形,如从无表情剖面网格所测量的那样,从而为用户生成最大估计微笑表情。面部跟踪算法可以针对每个表情网格来估计与无表情轮廓网格和针对某一表情的网格相比较,用户受扫描的面部的差值。每个表情的差值可以是标量值,诸如0-1、0-255、0%-100%或其他标量范围。受扫描的面部,受扫描的面部的无表情轮廓网格和表情基网格之间的估计差异可以被称为混合形状。用于所扫描的面部,无表情基网格和用于某一表情的表情基网格之间的差异量的标量值可以被称为混合形状值。一个或多个混合形状可以映射到表情符号上的一个或多个相应的表情网格。可以根据每个混合形状的混合形状值,将用户的受扫描面部的混合形状值应用于表情符号。
在一个实施方案中,元数据可以表示身份面部和轮廓面部之间的差异,其将轮廓面部表示为身份面部的顶点和轮廓面部的对应顶点之间的差异。差异可以表示为百分比变化,诸如0-100%,或者例如表示身份网格和轮廓网格的对应顶点之间的变化量的8位值0-255。在检测并获取到用户的面部之后,可以将用户面部的后续扫描的元数据表示为用户的基网格(轮廓面部)与用户面部任何特定后续扫描之间的差值。同样,差异可以表示为百分比变化,诸如0-100%,或者表示为具有范围的标量值,诸如0-255(字节值)。可以使用该差值来确定对于用户面部的深度数据和图像数据的每次扫描而言,与用户面部高精度对应的“皮肤”的变化。
面部跟踪API 230可以处理图像传感器数据和深度传感器数据,并将传感器数据打包成帧。AR API 250可以接收并同步深度信息帧和图像信息帧。深度信息帧或图像信息帧可以表示在特定时间点对用户面部的深度信息或图像信息所做的扫描。在一个实施方案中,深度信息可按例如每秒15帧(15fps)受到扫描,而图像信息可按例如每秒60帧(60fps)受到扫描。下文结合图10详细描述了深度数据和图像数据的同步。在一个实施方案中,从代表用于收集深度传感器数据和图像传感器数据的开始时间的时间t0起,对帧进行同步。在一个实施方案中,可将例如以15帧/秒产生的深度数据存储为60帧/秒,以将深度数据与图像数据对齐。在一个实施方案中,可以将例如以15帧/秒接收的深度帧,通过对15帧/秒的任何两帧之间的变化进行平均来从15帧/秒到60帧/秒进行内插。面部跟踪API 230可以从图像传感器数据和深度传感器数据生成表示用户面部和/或头部的基网格。随着另外的图像数据帧和深度数据帧被接收到,面部跟踪API 230可以确定基网格和从所接收的图像帧和深度帧产生的网格之间的差异。可以确定基网格的每个顶点的差异。在一个实施方案中,面部跟踪API 230可以向AR API 250传输作为数据帧和元数据帧的、从所接收的图像传感器帧和深度传感器帧导出的基网格和每个顶点的差异。
增强现实(AR)API 250可以将面部跟踪技术252应用于所接收的帧,以确定基网格的跟踪点中的改变。面部跟踪技术252可以分析用户面部网格的多个顶点处的元数据,以确定网格上的一个或多个激活点。例如,如果对用户面部进行的扫描的元数据指示出,对于与脸颊、嘴唇、眼睑或其他激活区域相对应的一个或多个顶点而言,一个或多个顶点已经以指示表情(抛媚眼、眨眼、接吻动作、眉毛提起、微笑等)的方式发生了值的改变,则人脸跟踪技术252可以在数据结构或“包装”中将表情表示为AR面部数据(ARFaceData)的帧。AR API250可以将AR面部数据传递给会话253。
AR API 250的会话253可以接收包括基网格、每帧元数据以及图像帧数据和深度帧数据的AR面部数据。会话253可以分析从面部跟踪技术252接收到的AR面部数据,以确定是否有任何表情信息映射到表情符号的一个或多个混合形状,以及AR面部数据是否指示了触发激活表情符号的一个或多个混合形状的表情的激活。会话253可以将包括用户面部的扫描网格的AR帧数据(ARFrameData)以及由面部跟踪技术252检测到的任何混合形状打包到AR帧(ARFrame)中。会话253可以将AR帧传递到表情符号API 260的表情符号人偶视图262。在记录图像传感器数据和深度传感器数据期间,表情符号人偶化视图262可以产生与所呈现的人偶化表情符号视频分开的人偶化表情符号的动画,以供在记录时向用户显示。
表情符号API 260可以根据基网格、每帧的元数据以及从会话252接收的图像帧信息和深度帧信息,来呈现人偶化表情符号视频的一个或多个版本。
表情符号人偶化应用扩展程序270可以接收或以其他方式检索所呈现的人偶化表情符号视频的一个或多个版本,以供发送给一个或多个消息接收人。
图3A示出了根据一些实施方案的图像传感器和深度传感器,其分别从该发送客户端设备110的用户的面部、表情、运动和头部收集图像信息和深度信息。
如上所述,发送客户端设备110可以从消息应用程序280内启动表情符号人偶化应用扩展程序270。发送客户端设备110可以包括图像传感器211和深度传感器212,其分别用于在一段时间内捕捉多个图像信息帧和深度信息帧。在一个实施方案中,时间段可以是预定的时间段,诸如10秒。
深度传感器212可以通过扫描用户面部、头部和表情来检测详细的面部表情信息,如由扫描线390所表示。图像传感器211可以检测具有观察区域395的一系列拍摄帧中的用户面部、头部和表情的图像信息。深度传感器212扫描线390可以包括头发305、发际线315、眉毛320、眼睑325、眼镜框架330、微笑线335、酒窝340和下巴线345。深度传感器扫描线390还可包括面部、头部或面部特征结构的运动,诸如左右运动350、点头或上下运动。示例性扫描线是通过举例而非限制的方式给出的。深度传感器212可以捕捉扫描深度信息的精细网格。可以通过例如AR API 250来分析深度信息,以生成一个或多个网格数据结构,其表示用户的面部轮廓、表情以及在预定时间段内的移动。表情符号API 260和/或表情符号人偶化应用扩展程序270的呈现模块271可以将在网格数据结构中捕捉的表情和移动应用于将表情符号人偶化的操作。例如,如图3B所示,可以将用户移动应用于狗表情符号,以将该表情符号人偶化为包括对应于用户眨眼325的眨眼运动325′,以及分别对应于用户移动355、340和350的眉毛移动355′、微笑线340′和头部动作350′。在一个实施方案中,具有长耳朵的狗表情符号也可以被呈现为其耳朵响应于头部运动350′而拍动。在一个实施方案中,表情符号API 260可以检测到用户正在保持某一姿势(例如微笑),并且响应于检测到用户的微笑姿势而生成额外的图形,诸如表情符号眼睛中的心形。
图3B示出了包括人偶化表情符号的消息转译本,该表情符号接收自该发送客户端设备。当用户发送包括人偶化表情符号的消息时,类似于发送客户端设备110和接收客户端设备115之间的消息会话的转译本中可出现的其他文本和图形,该人偶化表情符号可以在消息的转译本中出现。在记录图像传感器211数据和深度传感器212数据期间,可以根据用户的面部表情和/或头部运动,对人偶化表情符号(在这种情况下为狗)进行动画化或“人偶化”。例如,用户的微笑线340可以作为微笑线340′而被人偶化表现在表情符号上。用户的眉毛运动355可以作为眉毛运动355′被人偶化表现在表情符号上。用户的头部运动350也可以被动画化表现在表情符号350′上。在一个实施方案中,可以添加额外的特殊效果,诸如可由真正的狗以与用户一样的方式移动其头部而得到的表情符号耳朵的拍动运动。特殊效果可以包括其他物理因素,例如考虑狗的耳朵上的重力或风。
图3C示出了用户的面部和头部301,从一个或多个图像数据帧和深度数据帧生成的人脸和头部的一般面部302的网格、基网格上的一个或多个跟踪点,其中每个跟踪点包括一般面部的一个或多个网格顶点,以及具有对应于一个或多个基网格302跟踪点的跟踪点的表情符号303。通用基网格302可用于生成用户面部的无表情基网格或“轮廓网格”。在一个实施方案中,可以生成表示特定表情的多个表情基网格。每个表情基网格可以表示无表情基网格针对该表情的最大估计变形,诸如前额线355、眉毛320、耳朵325或脸颊线360。
使用由面部跟踪API 230所接收的轮廓面部以及图像信息和深度信息,面部跟踪API 230可以生成用户面部和头部的高分辨率基网格。当接收到图像信息附加帧和深度信息附加帧时,可以确定基网格与所接收的图像帧和深度帧之间的差异。可以在称为界标的组中跟踪差异。例如,可以将耳朵365的柔性部分周围的一组顶点作为移动的组进行跟踪。类似地,微笑线340、嘴部335、脸颊线360、眉毛320、眼睑325和前额355可以分别作为一组网格顶点或界标而被跟踪。表情符号(例如狗)的基网格可以被存储在表情符号API 260的资产261中。用户基网格的界标可以映射到表情基网格的相应界标。在一个实施方案中,用户的基网格可以具有比表情符号的基网格多得多的顶点。在这种情况下,用户基网格上的界标的多个顶点可以映射到表情符号基网格上的较少的多个顶点或一个顶点。在一个实施方案中,用户的无表情基网格与用于某一表情的表情基网格之间的差异量可以表示为混合形状值。受跟踪的用户的面部的一个或多个混合形状以及相关联的混合形状值可以被映射到表情符号上的一个或多个混合形状,从而有助于以动画方式显示表情符号并且呈现人偶化表情符号视频。
图4示出了根据一个实施方案的当发送客户端设备110生成用于在消息中向接收客户端设备115发送的人偶化表情符号时,发送客户端设备110、消息系统130和接收客户端设备115之间的握手400。数字箭头表示图中实体之间的通信流。
在通信405中,发送客户端设备110的消息应用280可以通知消息系统130关于发送客户端设备110已准备好向一个或多个接收人发送消息。通信405可以包括接收人列表、对于该消息将包括人偶化表情符号的指示,并且可选地包括对发送人的识别。在一个实施方案中,消息系统130可以访问身份服务器132(在图1中示出)来查找与发送人和接收人相关联的硬件,并且确定发送人和每个接收人的硬件和软件能力。
在通信410中,消息系统130可以向发送客户端设备110通知需要呈现的人偶化表情符号的一个或多个版本,以满足接收人客户端设备115的硬件和软件能力。在一个实施方案中,消息系统130可以检测发送客户端设备110是否能够在通信410中产生由消息系统130指示的任何或全部版本。例如,如果一个或多个接收人具有比发送客户端设备110能力更强的硬件或软件,则消息系统130可以在通信410中仅指示发送客户端设备110能够呈现的那些人偶化表情符号的版本。版本可以包括呈现具有音频的视频,该视频包括允许接收人接收并循环回放人偶化表情符号的富链接。版本可以另选地包括呈现具有音频的视频,该视频包括指示用于视频回放的参数的元数据标签。消息中可以包括富链接或元数据标签中的一者,以及人偶化表情符号。富链接可以引用消息中的人偶化表情符号。富链接还可包括确定表情符号将如何由接收人接收客户端设备115回放的参数。富链接或元数据标签可以包括人偶化表情符号视频的长度、循环视频的次数、视频在播放期间是否应该被静音等。在一个实施方案中,客户端发送设备可以存储所呈现的人偶化表情符号视频,标签富链接可以指所呈现的视频的存储位置。该位置可以是发送设备、消息服务器、第三方服务器、云存储或其他存储位置。接收客户端设备115可以通过访问富链接而访问人偶化表情符号视频。版本可以包括嵌入在消息中的视频,当接收到消息时该视频可以由接收人查看。在一个实施方案中,该版本可以包括响应于用户输入而重放视频。版本可以包括由接收人设备115支持的像素分辨率、帧速率或颜色深度。在一个实施方案中,消息410可以包括用于消息的每个接收人的公共加密密钥。消息410还可指示要将哪个版本的所呈现表情符号发送给哪个接收人。
在通信415中,消息应用程序280可以调用表情符号人偶化应用扩展程序270,该扩展包继而可以调用如图2所示的呈现服务271,以呈现由消息系统130通信410所指示的人偶化表情符号的版本。
在通信420中,表情符号人偶化应用扩展程序270可以生成人偶化表情符号的一个或多个所呈现的版本,并使这些版本可用于消息应用程序280。在一个实施方案中,表情符号人偶化应用扩展程序270可以将所呈现的版本返回给消息应用280,以供发送到消息系统130。在一个实施方案中,表情符号人偶化应用扩展程序270可以将链接到人偶化表情符号的所呈现版本的链接或存储器地址返回到消息应用程序280。
在通信425中,消息应用程序280可以生成消息,该消息包括适用于该消息的接收人的人偶化表情符号的所呈现版本,并将该消息发送到消息系统130。如果接收人的接收客户端设备115已经安装了表情符号人偶化应用扩展程序270,则消息应用程序280还可包括链接到人偶化表情符号的富链接或者元数据标签,该元数据标签包括人偶化表情符号视频的回放参数。在一个实施方案中,消息应用程序280可以在将消息发送到消息系统130以供传递给接收人之前,使用由消息系统130返回的每个接收人的公共加密密钥来加密包括人偶化表情符号的消息。消息应用程序280可以针对每个接收人重复该过程。
在通信430中,发送客户端设备110的每个消息可以由消息系统130发送到接收人客户端设备115A、115B、115C。在一个实施方案中,即时消息服务器134执行向每个接收人发送各个消息的操作。
图5A至图5C示出了根据一些实施方案的由发送客户端设备110生成人偶化表情符号视频并在消息中将该视频发送到接收客户端设备115的方法500。图5A描述了开始记录用户的面部表情、运动等从而用于使表情符号人偶化以供包括在消息中的过程。图5B描述了记录图像、深度和音频数据以用于使表情符号人偶化的过程。图5C描述了用于向各自具有接收客户端设备115的一个或多个接收人发送包括人偶化表情符号的消息的过程。
参照图5A,在操作505中,消息应用程序280可以启动表情符号人偶化应用扩展程序270。在一个实施方案中,可以从消息应用程序280内启动表情符号人偶化应用扩展程序270。
在操作510中,可以选择默认表情符号,或者用户可以从显示的表情符号列表中选择表情符号,以用于将表情符号人偶化。在一个实施方案中,默认表情符号可以是出厂默认表情符号或由用户选择的最近一个表情符号。响应于对表情符号的选择,表情符号人偶化应用扩展程序270可以调用表情符号API 260,来从资产261中检索所选择的表情符号。
在操作515中,表情符号人偶化应用扩展程序270可以调用A/V API 240来发起会话241,以记录图像、深度和音频信息,以供用于将选择的表情符号人偶化。在一个实施方案中,A/V API 240可以调用面部跟踪API 230,以初始化硬件和驱动器软件,并为会话241提供图像和深度信息的记录会话。A/V API 240还可进行一个或多个操作系统调用,以初始化音频硬件并提供音频的记录会话。
在操作520中,面部跟踪API 230可以开始获取一个或多个深度信息帧和/或图像信息帧。面部跟踪API 230可以确定深度信息和/或图像信息是否指示用户的面部或其他对象已经被检测到。在一个实施方案中,图像传感器211和/或深度传感器212可以确定用户的面部或其他对象已经被检测到。在一个实施方案中,响应于来自传感器的指示面部已被检测到的硬件信号,确定用户的面部被检测到。在一个实施方案中,使用RGB传感器211检测面部。在一个实施方案中,深度传感器212可以在面部检测期间处于断电状态,并且响应于由RGB传感器211检测到面部的情况而被供电。
在操作525中,可以确定用户的面部、头部或其他对象是否受到跟踪(检测)。如果是,则方法500在操作527处继续,否则方法500在操作520处继续。
在操作527中,面部跟踪API 230可以使用一个或多个图像信息帧和深度信息帧来生成用户面部和/或头部的高分辨率基网格。在一个实施方案中,面部跟踪API 230可以生成用户面部的无表情基网格,并且针对多个表情中的每个表情(诸如微笑、眨眼、耳朵移动等)生成表情基网格。用户的脸被称为是“被采集的”。
在操作530中,可以确定是否开始记录图像、深度和音频数据。在跟踪用户头部、面部或其他对象经过预定时间量之后,即可开始记录。在一个实施方案中,记录可以响应于用户输入而开始。在一个实施方案中,记录可以响应于检测到用户的语音或其他预定的声音(诸如开始记录的口头命令)而开始。如果确定要开始记录,则方法500在参考图5B所述的操作535处继续。否则,方法500在操作530处继续。
在图5B的操作535中,面部跟踪API 230可以接收并同步多个图像信息帧和深度信息帧。同步的多个图像信息帧和数据信息帧可以与会话相关联地返回到A/V API 240。A/VAPI 240可以从麦克风213和/或音频处理器214接收多个音频数据帧。在一个实施方案中,响应于对操作系统220的服务的一个或多个调用,可以从音频处理器214和/或麦克风213检索多个音频数据帧。A/V API 240或AR API 250可以将接收到的数据音频帧与从面部跟踪API 230接收到的多个深度信息帧和图像信息帧同步。会话(诸如但不限于会话241)可以管理、存储并且处理所同步的音频信息帧、图像信息帧和深度信息帧。
在操作540中,可以确定所接收的多个图像信息帧和深度信息帧是否指示用户维持某一姿势长达一阈值时间段。例如,2秒或120帧。如果是,则方法500在操作545处继续,否则方法500在操作547处继续。
在操作545中,可分析图像信息和深度信息,以确定该特定姿势是否被识别为表情符号API 260具有资产261的一个姿势。如果是,则A/V API 240、AR API 250或表情符号API260可以生成与所识别的姿势相关联的特殊图形效果。例如,如果所识别的姿势是微笑,那么特殊图形效果可能是将心形添加到人偶化表情符号的眼睛。还可按动画方式显示该心形,诸如从人偶化表情符号的眼睛中跳动出或涌出心形。执行特殊图形效果的资产可以存储在资产261中。方法500在操作550处继续。
在操作547中,面部跟踪API 230可以生成用户面部和/或头部的基网格与所接收的图像数据帧及深度数据帧之间的差异。在一个实施方案中,该差异可以表示为基网格的每个顶点的变化幅度值,例如0-255。在一个实施方案中,总的来说,可以为每个界标中的顶点确定界标(顶点组)的差异,并且可以为代表界标顶点中变化的界标的混合形状表示一个值。在一个实施方案中,面部跟踪API 230可以生成用户的受跟踪的面部、用户面部的无表情基网格,以及多个表情基网格中的每个基网格之间的差异,以确定用于映射到表情符号的一个或多个相应混合形状的混合形状。
在操作550中,表情符号API 260可按动画方式为用户显示人偶化表情符号的某一版本,以指示完全呈现的版本看起来可以是怎么样的。基于特定表情符号的属性,动画可以包括更多特殊效果。例如,狗表情符号可具有长耳朵。如果深度信息和图像信息指示出例如用户的头部或面部发生上下移动或左右移动,则进一步的动画可以包括特殊的图形效果,以动画方式将狗的耳朵显示为根据所检测用户运动而拍起来或动起来。
在操作555中,可以确定记录是否已经完成。当表情符号人偶化应用程序270从用户接收到停止记录的指示时,可以完成记录。在一个实施方案中,记录在诸如10秒的预定时间段结束。在一个实施方案中,当在预定时间段内没有从图像信息和深度信息和/或音频信息中检测到运动和/或声音时,记录结束。在一个实施方案中,当用户发出停止记录的可听命令时,记录结束。在这种情况下,所记录的音频可以省略停止记录的命令。如果确定记录已经完成,则方法500在操作560处继续,否则方法500在操作535处继续。
在操作560中,表情符号人偶化应用扩展程序或消息应用程序280可以接收这样的指示:包括多个同步的深度信息帧、图像信息帧和音频信息帧的表情符号人偶化信息应当被保存,并且包括人偶化表情符号的消息应当被发送到多个消息接收人。方法500在下文参照图5C所述的操作565处继续,该图描述了用于向一个或多个消息接收人发送带有人偶化表情符号的消息的过程。
在图5C的操作565中,消息应用程序280可以将一个或多个消息接收人的列表和表情符号人偶化信息发送给消息服务器130。在一个实施方案中,表情符号人偶化应用扩展程序270可以呈现用于包括在发往消息系统130的消息中的人偶化表情符号视频的版本。在一个实施方案中,发送到消息系统130的所呈现的版本是针对发送客户端设备110的硬件和软件能力而定制的。在一个实施方案中,发送到消息系统130的人偶化表情符号的所呈现版本具有发送客户端设备110可以产生的最高像素密度、颜色密度和帧速率。在一个实施方案中,所呈现的人偶化表情符号视频具有接收客户端设备115可以重现的最高像素密度、最高帧速率、最高颜色数量。
在操作570中,消息应用程序280可以从消息系统130接收对于要呈现给一个或多个接收人的人偶化表情符号的一个或多个版本的指示。在一个实施方案中,可能的是,消息接收人中的一个或多个正在使用较老版本的软件或较旧的硬件,其将不会对发送客户端设备能够呈现的人偶化表情符号的版本产生良好的用户体验。消息系统130可以确定接收设备115的硬件和软件能力,并确定适用于每个接收人客户端设备115的硬件和软件能力的人偶化表情符号的版本。
在操作575中,发送客户端设备110、表情符号人偶化应用扩展程序270可以呈现271由消息系统130所指示的适用于接收人客户端设备115的人偶化表情符号视频的版本。在一个实施方案中,由发送客户端设备110呈现的每个版本可以单独呈现自根据图像传感器数据帧和深度传感器数据帧所产生的表情符号、基网格和混合形状。在一个实施方案中,可以呈现人偶化表情符号视频的最高像素密度、颜色、密度和帧速率版本,然后可以从最高像素密度、色彩密度和帧速率版本产生出由消息系统130所指示的、由消息的接收人所需的其他版本。
在操作580中,对于每个接收人消息,应用程序280可以向消息系统130传输由消息系统130指示的、对于一个或多个消息接收人的接收客户端设备115而言最佳的消息和人偶化表情符号视频的版本。可选地,消息应用程序280可以在将消息发送到消息系统130以供转发给消息接收人之前,使用接收人的公共密钥来加密包括人偶化表情符号的消息。
图6示出了根据一些实施方案的由消息系统130接收具有人偶化表情符号的消息并将该消息发送到一个或多个接收设备115的方法600。
在操作605中,消息系统130可以从发送客户端设备110接收对于该发送客户端设备110的用户想要向一个或多个消息接收人发送消息的指示,以及对于该消息将包括人偶化表情符号的指示。
在操作610中,消息系统130可以确定发送消息设备110的硬件和软件生成所呈现的人偶化表情符号的能力。
在操作615中,消息系统130可以类似地确定一个或多个接收人中的每个接收人的接收客户端设备115的硬件和软件能力。在一个实施方案中,消息系统130的每个用户(包括发送人和接收人)均向消息系统130注册。消息系统130可以查找硬件和软件制造商、型号、修订级别、制造数据、当前操作系统版本(例如,10、9.1或8.3)、所安装的软件和软件的版本,以及其他识别信息。消息系统130可以访问相关性表或数据库,以确定每个接收人的装置接收并显示人偶化表情符号的能力。
在操作620中,消息系统130可以基于包括人偶化表情符号的消息的接收人的发送客户端设备110和接收客户端设备115的硬件和软件能力,向客户端设备110、消息应用程序280发送要呈现的人偶化表情符号的版本列表。
在操作625中,消息系统130可以从发送客户端设备110针对每个接收人接收发送给该接收人的消息,该消息包括在操作620中由消息系统130指示的所呈现的人偶化表情符号视频的版本。
在操作630中,针对每个接收人,消息系统130可以将消息和所呈现的人偶化表情符号的适当版本传输给接收人。
在操作635中,消息系统130可以向客户端设备110的消息应用程序280传输关于消息和人偶化表情符号被成功发送给每个消息接收人的这一通知。
图7以框图形式示出了根据一些实施方案的由接收客户端设备115处理消息的方法700,该消息具有人偶化表情符号。如上所述,参考图6,消息系统130可以确定每个消息接收人的设备能力(硬件和软件)。消息系统130可以向客户端设备115传输消息格式或版本,以使用由每个接收人的接收设备115支持的消息格式或版本。消息格式可以包括传输消息文本、人偶化表情符号以及接收客户端设备115可以用来显示、循环,静音以及以其他方式与人偶化表情符号进行交互的链接到人偶化表情符号视频的富链接。在一个实施方案中,客户端发送设备可以存储所呈现的人偶化表情符号视频,并且富链接可以指存储所呈现的视频的位置。该位置可以是发送设备、消息服务器、第三方服务器、云存储或其他存储位置。接收客户端可以通过访问富链接而访问人偶化表情符号视频。另选地,消息格式可以包括人偶化表情符号视频,以及包括用于人偶化表情符号视频的回放参数的元数据标签。消息格式还可包括该消息是否在发送到消息服务器之前被加密(端对端加密)。在一个实施方案中,消息格式可以包括将人偶化表情符号视频嵌入要发送给接收人的消息中,而无需采用链接至所嵌入视频的富链接。
在操作705中,接收客户端设备115可以从发送客户端设备110接收来自消息系统130的包括人偶化表情符号视频的消息。
在操作710中,如果接收到的消息被加密,则接收客户端设备115的消息应用程序280可以将该消息解密。在发送客户端设备和接收客户端设备使用端对端加密的实施方案中,发送设备110可以使用接收人的公共密钥对消息进行加密,并且接收设备115可以使用接收人的对应私有密钥对消息进行解密。在一个实施方案中,端对端加密可以使用共享对称密钥或其他安全方案来实现。在发送客户端设备和接收客户端设备不使用端到端加密的实施方案中,在接收人客户端处不执行解密。
在操作715中,接收客户端设备115可以在发送客户端设备和接收客户端设备之间的消息会话的转译本中显示消息文本(如果有的话)。
在操作720中,可以确定接收客户端设备115是否支持对表情符号进行人偶化。支持对表情符号进行人偶化的设备可以具有表情符号人偶化应用扩展程序270,其有利于表情符号人偶化功能。此类设备可以使用富链接或元数据标签来进行支持,其中该元数据标签具有回放参数,以显示人偶化表情符号、循环该表情符号并允许用户将该表情符号静音或取消静音。
如果在操作720中确定接收客户端设备115支持人偶化表情符号,则方法700在操作725处继续,否则方法700在操作735处继续。
在操作725中,可以在消息应用程序280中发送人与接收人之间的消息会话的转译本内的显示区域上播放人偶化表情符号,并且播放与该人偶化表情符号一起记录的任何相关联的音频。在一个实施方案中,人偶化表情符号可以无限地循环。
在操作730中,可响应于用户输入而可选地将人偶化表情符号音频静音。作为响应,用户输入可被输入到表情符号人偶化应用扩展程序270的用户界面中。
在操作735中,其中接收设备不支持表情符号人偶化,可以在接收设备的显示器上回放从消息中检索到的人偶化表情符号的视频。在一个实施方案中,在发送人和接收人之间的消息会话的消息转译本内进行该回放。在一个实施方案中,音频也可以用人偶化表情符号的视频来回放。在一个实施方案中,人偶化表情符号视频仅播放一次。
在操作740中,可响应于用户输入而可选地将人偶化表情符号视频重放。在一个实施方案中,用户输入可被输入到表情符号人偶化应用扩展程序的用户界面中。
在图8(“软件栈”)中,一个示例性实施方案,应用可使用若干服务API调用服务1或2,以及使用若干OS API调用操作系统(OS)。服务1和2可使用若干OS API调用操作系统。面部跟踪API 230、音频/视频(A/V)API 240、增强现实(AR)API 250、表情符号API 260可以根据如下所述的软件堆栈来实现。
请注意,服务2具有两个AP,其中一个(服务2API 1)从应用程序1接收调用并向其返回值,另一个(服务2API 2)从应用程序2接收调用并向其返回值,服务1(其可以是,例如软件库)对OS API 1进行调用并自其接收返回值,服务2(其可以是,例如软件库)对API 1和OS API 2进行调用并自其接收返回值,应用程序2调用API 2并自其接收返回值。
图9为计算系统900的一个实施方案的框图。图9示出的计算机系统旨在表示一系列计算系统(有线或无线的),包括例如台式计算机系统、膝上型计算机系统、平板电脑系统、蜂窝电话、包括支持蜂窝的PDA的个人数字助理(PDA)、机顶盒、娱乐系统或其他消费电子设备。另选的计算系统可以包括更多、更少和/或不同的部件。图9的计算系统可被用于提供计算设备和/或服务器设备。
计算机系统900包括总线905或用于传递信息的其他通信设备,和与总线905联接的可处理信息的处理器910。
虽然计算系统900被图示为具有单个处理器,但是计算系统900可以包括多个处理器和/或协处理器910。计算系统900还可以包括随机存取存储器(RAM)或其他动态存储设备920(称为主存储器),其联接到总线905并且可以存储可由处理器910执行的信息和指令。在由处理器910执行指令期间,主存储器920还可用于存储临时变量或其他中间信息。
计算系统900还可包括只读存储器(ROM)和/或联接到总线905的可存储用于处理器910的静态信息和指令的其他静态存储设备940。数据存储设备940可以联接到总线905以存储信息和指令。数据存储设备940(诸如闪存或磁盘或光盘)以及相应的驱动器可以被联接到计算系统900。
计算系统900还包括联接到总线905的深度传感器945。深度传感器945可以包括每秒可记录15帧(fps)的红外传感器,以及可按每英寸720像素记录60fps红-绿-蓝(RGB)数据的RGB传感器。距离范围可以是20cm到60cm(8到24英寸)。深度传感器945可按60fps产生数据帧,包括以15fps产生关键帧,其在60fps下与RGB帧交织。关键帧可以包括红外深度数据和RGB深度数据两者。
计算系统900还可包括相机975,其以例如60fps捕捉RGB格式的图像数据。另选地,可以使用以例如一个亮度(Y')和两个色度(UV)分量,或者以YCbCr,Y'CbCr,YPbPr或其他形式表示的亮度(明亮度)和色度(颜色)来捕捉图像。相机975可以包括电荷耦合器件(CCD)传感器\互补金属氧化物半导体(CMOS)、N型金属氧化物半导体(NMOS或Live MOS)技术、或者由结合到CCD成像基板上的CMOS读出集成电路(ROIC)组成的混合CCD/CMOS结构中的有源像素传感器。相机975可以补充由深度传感器945捕捉的RGB数据。在一个实施方案中,由相机975RGB数据捕捉的RGB数据可以代替由深度传感器945捕捉的RGB数据而用于确定深度信息和图像信息。
计算系统900还可以经由总线905联接到显示设备950,诸如液晶显示器(LCD)、发光二极管(LED)显示器或触摸屏,以向用户显示信息。计算系统900还可以包括数字字母混合输入设备960,该设备包括数字字母键和其他键,其可以联接到总线905以将信息和命令选项发送到处理器910。数字字母小键盘可以实现为触摸屏显示器上的小键盘图像。另一种用户输入设备是光标控件970,诸如触控板、鼠标、轨迹球触摸屏输入或光标方向键,用于向处理器910传递方向信息和命令选择以及在显示器950上控制光标移动。计算系统900还可以经由一个或多个网络接口980从通信地耦接到计算系统900的远程设备接收用户输入。
计算系统900还可以包括一个或多个网络接口980,以提供对诸如局域网之类的网络的访问。网络接口980可以包括,例如具有天线985的无线网络接口,该天线可以表示一个或多个天线。计算系统900可以包括多个无线网络接口,诸如WiFi和和蜂窝电话接口的组合。网络接口980也可以包括例如有线网络接口,以经由网络电缆987与远程设备通信,该电缆可以是例如,以太网电缆、同轴电缆、光纤电缆、串行电缆或并行电缆。
在一个实施方案中,网络接口980可以例如通过符合IEEE 802.11b和/或IEEE802.11g标准来提供对局域网的接入,并且/或者无线网络接口可以例如通过符合蓝牙标准提供对个人区域网络。其他无线网络接口和/或协议也可得到支持。除了经由无线LAN标准进行通信之外或代替经由无线LAN标准进行通信,网络接口980可以使用例如时分多址(TDMA)协议、全球移动通信系统(GSM)协议、代码分割多址(CDMA)协议,和/或任何其他类型的无线通信协议来提供无线通信。
图10示出了将图像数据帧与深度数据帧及音频数据帧进行同步。在深度传感器帧和图像传感器帧的对齐处,深度传感器数据和图像传感器数据的组合可以包括关键帧。关键帧包括未内插在帧之间的深度传感器数据。在下面的示例中,深度数据帧1001和图像数据帧2001例如包括测量的传感器数据,并且当二者组合时包括关键帧。出于说明对帧进行同步的目的,以下示例使用60帧/秒(fps)的RGB传感器211帧速率和15fps的深度传感器帧速率。在一个实施方案中,RGB传感器211捕捉帧速率和深度传感器212捕捉帧速率两者都可以独立地变化。在一个实施方案中,响应于电子设备的温度或高能耗或者作为其函数,RGB捕捉帧速率和/或深度传感器捕捉帧速率中的一个或两个可以被降低。可以使用与下文在60fps RGB数据和15fps深度数据的示例中所述的相同原理,将RGB传感器数据和深度传感器数据同步到帧中。可以独立于RGB传感器211捕捉帧速率和深度传感器212捕捉帧速率,来改变呈现人偶化表情符号的帧速率。
从时间t0开始,可按例如15帧每秒(fps)接收深度传感器数据1000,其中对于1秒的深度帧数据,帧编号为例如1001-1015。
可按不同的帧速率(例如60fps)接收图像传感器数据2000,并且帧编号为例如2001-2060。
从时间t0开始,深度传感器数据1000可以内插在15fps分区传感器数据的每个帧之间。例如,可以生成数据结构,从而按60fps存储深度传感器1000数据。在t0处的第一帧1001能够按60fps被存储在位置1001处。在1002处,第二个15fps帧1002可以被存储在60fps数据结构中。内插帧1001-1、1001-2和1001-3可以通过例如对帧1001和1002的帧数据之间的差进行平均而生成。在一个实施方案中,对帧1001和1002之间的差进行平均,可以发生在帧1001和1002的帧数据中的每个深度数据顶点处。类似地,帧1002-1、1002-2和1002-3可以根据帧1002和1003之间的平均差来计算。
从时间t0开始,音频数据可由联接到例如麦克风的音频处理器采样。在一个实施方案中,可按48KHz对音频数据进行采样。对于60fps的图像数据帧率,可以将800个音频样本与每个帧相关联地存储,使得60fps的音频数据包括以48KHz采样的1秒音频数据。用于深度、图像和音频数据的具体帧速率仅以举例的方式给出。其他帧速率可以与深度数据或图像数据一起使用,酌情内插在帧之间。
在以上说明书中,结合本发明的特定实施方案已描述了本发明。但显而易见的是,在不脱离本发明的更广泛的实质和范围的情况下,可对这些实施方案进行各种修改和变更。因此,说明书和附图应被视为是例示性的而非限制性的。
Claims (24)
1.一种在包括图像传感器和深度传感器的计算设备上执行的计算机实现的方法,所述方法包括:
使用所述深度传感器接收表示相对于时间而变化的对象的多个深度信息帧;
接收表示所述对象的多个图像信息帧;
根据所述多个深度信息帧和图像信息帧,生成表情符号的视频;以及
在消息中将第一版本的所述表情符号的所述视频传输到一个或多个计算设备。
2.根据权利要求1所述的方法,还包括:
从消息服务接收传输所述表情符号的所述视频的一个或多个版本的指示,所述一个或多个版本对应于所述消息的一个或多个接收方的所述一个或多个计算设备的设备能力。
3.根据权利要求2所述的方法,其中所述第一版本包括:
传输带有元数据标签的所述视频,所述元数据标签使得接收计算设备能够多次循环回放所述表情符号的所述视频。
4.根据权利要求1所述的方法,其中图像信息和深度信息表示人的头部,并捕捉所述人的所述头部的一个或多个面部表情和动作。
5.根据权利要求4所述的方法,还包括,针对所述一个或多个面部表情中的每个面部表情:
使用所述图像信息和深度信息,来确定所述人的所述头部的无表情基网格与所述人的所述头部的面部表情基网格之间的差异量;以及
根据所述差异量来激活所述表情符号的对应面部表情。
6.根据权利要求1所述的方法,其中所述多个深度信息帧和所述多个图像信息帧是同步的,其中所述同步包括使所述多个图像信息帧和深度信息帧在时间上对齐,使得在时间上对齐的一个图像信息帧和一个深度信息帧构成一个关键帧,并且一个或多个关键帧被一个或多个图像信息帧交织。
7.根据权利要求1所述的方法,其中所述表情符号的所述视频通过即时消息系统来传输,所述即时消息系统包括一个或多个身份服务器和一个或多个消息服务器。
8.根据权利要求1所述的方法,还包括:
接收与所述对象相关联的多个音频信息帧;
将所述多个音频信息帧与所述多个图像信息帧及深度信息帧在时间上对齐;以及
呈现所述表情符号的所述视频包括添加基于所述多个音频帧的音频。
9.至少一种非暂态计算机可读介质,所述非暂态计算机可读介质被编程有指令,所述指令在由耦接到图像传感器和深度传感器的处理系统执行时,执行包括以下的操作:
使用所述深度传感器接收表示相对于时间而变化的对象的多个深度信息帧;
接收表示所述对象的多个图像信息帧;
根据所述多个深度信息帧和图像信息帧,生成表情符号的视频;以及
在消息中将第一版本的所述表情符号的所述视频传输到一个或多个计算设备。
10.根据权利要求9所述的介质,所述操作还包括:
从消息服务接收传输所述表情符号的所述视频的一个或多个版本的指示,所述一个或多个版本对应于所述消息的一个或多个接收方的所述一个或多个计算设备的设备能力。
11.根据权利要求10所述的介质,其中所述第一版本包括:
传输带有元数据标签的所述视频,所述元数据标签使得接收计算设备能够多次循环回放所述表情符号的所述视频。
12.根据权利要求9所述的介质,其中图像信息和深度信息表示人的头部,并捕捉所述人的所述头部的一个或多个面部表情和动作。
13.根据权利要求12所述的介质,还包括,针对所述一个或多个面部表情中的每个面部表情:
使用所述图像信息和深度信息,来确定所述人的所述头部的无表情基网格与所述人的所述头部的面部表情基网格之间的差异量;以及
根据所述差异量来激活所述表情符号的对应面部表情。
14.根据权利要求9所述的介质,其中所述多个深度信息帧和所述多个图像信息帧是同步的,其中所述同步包括使所述多个图像信息帧和深度信息帧在时间上对齐,使得在时间上对齐的一个图像信息帧和一个深度信息帧构成一个关键帧,并且一个或多个关键帧被一个或多个图像信息帧交织。
15.根据权利要求9所述的介质,其中所述表情符号的所述视频通过即时消息系统来传输,所述即时消息系统包括一个或多个身份服务器和一个或多个消息服务器。
16.根据权利要求9所述的介质,所述操作还包括:
接收与所述对象相关联的多个音频信息帧;
将所述多个音频信息帧与所述多个图像信息帧及深度信息帧在时间上对齐;以及
呈现所述表情符号的所述视频包括添加基于所述多个音频帧的音频。
17.一种系统,包括:
包括深度传感器和图像传感器的处理系统,所述处理系统耦接到编程有可执行指令的存储器,所述可执行指令在由所述处理系统执行时,执行包括以下的操作:
使用所述深度传感器接收表示相对于时间而变化的对象的多个深度信息帧;
接收表示所述对象的多个图像信息帧;
根据所述多个深度信息帧和图像信息帧,生成表情符号的视频;以及
在消息中将第一版本的所述表情符号的所述视频传输到一个或多个计算设备。
18.根据权利要求17所述的系统,所述操作还包括:
从消息服务接收传输所述表情符号的所述视频的一个或多个版本的指示,所述一个或多个版本对应于所述消息的一个或多个接收方的所述一个或多个计算设备的设备能力。
19.根据权利要求18所述的系统,其中所述第一版本包括:
传输带有元数据标签的所述视频,所述元数据标签使得接收计算设备能够多次循环回放所述表情符号的所述视频。
20.根据权利要求17所述的系统,其中图像信息和深度信息表示人的头部,并捕捉所述人的所述头部的一个或多个面部表情和动作。
21.根据权利要求20所述的系统,还包括,针对所述一个或多个面部表情中的每个面部表情:
使用所述图像信息和深度信息,来确定所述人的所述头部的无表情基网格与所述人的所述头部的面部表情基网格之间的差异量;以及
根据所述差异量来激活所述表情符号的对应面部表情。
22.根据权利要求17所述的系统,其中所述多个深度信息帧和所述多个图像信息帧是同步的,其中所述同步包括使所述多个图像信息帧和深度信息帧在时间上对齐,使得在时间上对齐的一个图像信息帧和一个深度信息帧构成一个关键帧,并且一个或多个关键帧被一个或多个图像信息帧交织。
23.根据权利要求17所述的系统,其中所述表情符号的所述视频通过即时消息系统来传输,所述即时消息系统包括一个或多个身份服务器和一个或多个消息服务器。
24.根据权利要求17所述的系统,所述操作还包括:
接收与所述对象相关联的多个音频信息帧;
将所述多个音频信息帧与所述多个图像信息帧及深度信息帧在时间上对齐;并且其中
呈现所述表情符号的所述视频包括添加基于所述多个音频帧的音频。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310841491.1A CN116797694A (zh) | 2017-05-16 | 2018-01-25 | 表情符号人偶化 |
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762507073P | 2017-05-16 | 2017-05-16 | |
US62/507,073 | 2017-05-16 | ||
US201762556368P | 2017-09-09 | 2017-09-09 | |
US62/556,368 | 2017-09-09 | ||
US15/809,875 | 2017-11-10 | ||
US15/809,875 US10210648B2 (en) | 2017-05-16 | 2017-11-10 | Emojicon puppeting |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310841491.1A Division CN116797694A (zh) | 2017-05-16 | 2018-01-25 | 表情符号人偶化 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108876877A true CN108876877A (zh) | 2018-11-23 |
CN108876877B CN108876877B (zh) | 2023-07-18 |
Family
ID=61002834
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810070546.2A Active CN108876877B (zh) | 2017-05-16 | 2018-01-25 | 表情符号人偶化 |
CN202310841491.1A Pending CN116797694A (zh) | 2017-05-16 | 2018-01-25 | 表情符号人偶化 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310841491.1A Pending CN116797694A (zh) | 2017-05-16 | 2018-01-25 | 表情符号人偶化 |
Country Status (4)
Country | Link |
---|---|
US (2) | US10210648B2 (zh) |
EP (2) | EP4191587A1 (zh) |
KR (1) | KR102143270B1 (zh) |
CN (2) | CN108876877B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109348277A (zh) * | 2018-11-29 | 2019-02-15 | 北京字节跳动网络技术有限公司 | 运动像素视频特效添加方法、装置、终端设备及存储介质 |
CN109885231A (zh) * | 2019-02-27 | 2019-06-14 | 北京市商汤科技开发有限公司 | 显示方法及装置、电子设备及存储介质 |
CN111369645A (zh) * | 2020-02-28 | 2020-07-03 | 北京百度网讯科技有限公司 | 表情信息的展现方法、装置、设备及介质 |
CN113593539A (zh) * | 2020-04-30 | 2021-11-02 | 阿里巴巴集团控股有限公司 | 流式端到端语音识别方法、装置及电子设备 |
CN113646733A (zh) * | 2019-06-27 | 2021-11-12 | 苹果公司 | 辅助表情 |
TWI750613B (zh) * | 2020-03-23 | 2021-12-21 | 中華電信股份有限公司 | 遠距教學成效呈現系統及方法 |
CN115175748A (zh) * | 2020-01-30 | 2022-10-11 | 斯纳普公司 | 用于按需生成媒体内容项的系统 |
CN117523148A (zh) * | 2024-01-02 | 2024-02-06 | 小芒电子商务有限责任公司 | 虚拟ar的互动方法、系统、电子设备及存储介质 |
US11991419B2 (en) | 2020-01-30 | 2024-05-21 | Snap Inc. | Selecting avatars to be included in the video being generated on demand |
US12111863B2 (en) | 2020-01-30 | 2024-10-08 | Snap Inc. | Video generation system to render frames on demand using a fleet of servers |
Families Citing this family (43)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20030017092A (ko) * | 2001-08-21 | 2003-03-03 | 제네티카 주식회사 | 혈당 강하 효과를 갖는 작약 추출물 |
US10242503B2 (en) | 2017-01-09 | 2019-03-26 | Snap Inc. | Surface aware lens |
US11869150B1 (en) | 2017-06-01 | 2024-01-09 | Apple Inc. | Avatar modeling and generation |
US11573679B2 (en) * | 2018-04-30 | 2023-02-07 | The Trustees of the California State University | Integration of user emotions for a smartphone or other communication device environment |
US10713756B2 (en) | 2018-05-01 | 2020-07-14 | Nvidia Corporation | HW-assisted upscaling and multi-sampling using a high resolution depth buffer |
US11012694B2 (en) * | 2018-05-01 | 2021-05-18 | Nvidia Corporation | Dynamically shifting video rendering tasks between a server and a client |
US11030813B2 (en) | 2018-08-30 | 2021-06-08 | Snap Inc. | Video clip object tracking |
US10154364B1 (en) | 2018-09-09 | 2018-12-11 | Philip Scott Lyren | Moving an emoji to move a location of binaural sound |
US10957089B2 (en) * | 2018-09-13 | 2021-03-23 | International Business Machines Corporation | Animation generation |
US11727724B1 (en) * | 2018-09-27 | 2023-08-15 | Apple Inc. | Emotion detection |
US11176737B2 (en) | 2018-11-27 | 2021-11-16 | Snap Inc. | Textured mesh building |
CN113330484A (zh) | 2018-12-20 | 2021-08-31 | 斯纳普公司 | 虚拟表面修改 |
US10499179B1 (en) * | 2019-01-01 | 2019-12-03 | Philip Scott Lyren | Displaying emojis for binaural sound |
CN109934766B (zh) | 2019-03-06 | 2021-11-30 | 北京市商汤科技开发有限公司 | 一种图像处理方法及装置 |
KR102243040B1 (ko) * | 2019-04-10 | 2021-04-21 | 한양대학교 산학협력단 | 전자 장치, 아바타 얼굴 표정 표시 시스템 및 제어 방법 |
US11232633B2 (en) | 2019-05-06 | 2022-01-25 | Vangogh Imaging, Inc. | 3D object capture and object reconstruction using edge cloud computing resources |
US11170552B2 (en) * | 2019-05-06 | 2021-11-09 | Vangogh Imaging, Inc. | Remote visualization of three-dimensional (3D) animation with synchronized voice in real-time |
USD956101S1 (en) | 2019-06-02 | 2022-06-28 | Apple Inc. | Type font and electronic device with graphical user interface |
US11189098B2 (en) | 2019-06-28 | 2021-11-30 | Snap Inc. | 3D object camera customization system |
KR102241153B1 (ko) * | 2019-07-01 | 2021-04-19 | 주식회사 시어스랩 | 2차원 이미지로부터 3차원 아바타를 생성하는 방법, 장치 및 시스템 |
US11830182B1 (en) | 2019-08-20 | 2023-11-28 | Apple Inc. | Machine learning-based blood flow tracking |
US11232646B2 (en) * | 2019-09-06 | 2022-01-25 | Snap Inc. | Context-based virtual object rendering |
US11223855B2 (en) * | 2019-09-18 | 2022-01-11 | Loop Now Technologies Inc. | System and method of real-time video overlaying or superimposing display |
USD964458S1 (en) * | 2019-09-30 | 2022-09-20 | Apple Inc. | Type font |
KR20210041211A (ko) * | 2019-10-07 | 2021-04-15 | 주식회사 플랫팜 | 확장현실에 적용가능한 의사표현 아이템 데이터베이스를 능동적으로 구축하는 메시지 서비스 제공 장치 및 그 방법 |
KR102251460B1 (ko) * | 2019-11-15 | 2021-05-12 | 한밭대학교 산학협력단 | 합성곱 신경망을 이용한 프레임 동기 방법 |
US11263817B1 (en) | 2019-12-19 | 2022-03-01 | Snap Inc. | 3D captions with face tracking |
US11227442B1 (en) | 2019-12-19 | 2022-01-18 | Snap Inc. | 3D captions with semantic graphical elements |
US11967018B2 (en) | 2019-12-20 | 2024-04-23 | Apple Inc. | Inferred shading |
US11620779B2 (en) * | 2020-01-03 | 2023-04-04 | Vangogh Imaging, Inc. | Remote visualization of real-time three-dimensional (3D) facial animation with synchronized voice |
US11335063B2 (en) | 2020-01-03 | 2022-05-17 | Vangogh Imaging, Inc. | Multiple maps for 3D object scanning and reconstruction |
US11356720B2 (en) | 2020-01-30 | 2022-06-07 | Snap Inc. | Video generation system to render frames on demand |
US11284144B2 (en) | 2020-01-30 | 2022-03-22 | Snap Inc. | Video generation system to render frames on demand using a fleet of GPUs |
CN111369428B (zh) | 2020-03-09 | 2023-07-21 | 北京百度网讯科技有限公司 | 虚拟头像生成方法和装置 |
CN113747113A (zh) * | 2020-05-29 | 2021-12-03 | 北京小米移动软件有限公司 | 图像显示方法及装置、电子设备、计算机可读存储介质 |
WO2022026630A1 (en) * | 2020-07-28 | 2022-02-03 | Radix Motion Inc. | Methods and systems for communication and interaction using 3d human movement data |
US11806162B2 (en) | 2020-07-28 | 2023-11-07 | Radix Motion Inc. | Methods and systems for the use of 3D human movement data |
US11756251B2 (en) * | 2020-09-03 | 2023-09-12 | Sony Interactive Entertainment Inc. | Facial animation control by automatic generation of facial action units using text and speech |
CN116348838A (zh) * | 2020-10-22 | 2023-06-27 | 杰弗里·杰伊·科利尔 | 文本向动态视频的转换 |
US11676317B2 (en) | 2021-04-27 | 2023-06-13 | International Business Machines Corporation | Generation of custom composite emoji images based on user-selected input feed types associated with Internet of Things (IoT) device input feeds |
CN113361419A (zh) * | 2021-06-10 | 2021-09-07 | 百果园技术(新加坡)有限公司 | 一种图像处理方法、装置、设备及介质 |
CN113453034B (zh) * | 2021-06-29 | 2023-07-25 | 上海商汤智能科技有限公司 | 数据展示方法、装置、电子设备以及计算机可读存储介质 |
US20230231723A1 (en) * | 2022-01-18 | 2023-07-20 | Emoji ID, LLC | Fan emoji identifications |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101739438A (zh) * | 2008-11-04 | 2010-06-16 | 三星电子株式会社 | 检测脸部表情的系统和方法 |
US20110037767A1 (en) * | 2009-08-13 | 2011-02-17 | Xavier Casanova | Video in e-mail |
US20130147788A1 (en) * | 2011-12-12 | 2013-06-13 | Thibaut WEISE | Method for facial animation |
US20130278607A1 (en) * | 2012-04-20 | 2013-10-24 | A Thinking Ape Technologies | Systems and Methods for Displaying Animations on a Mobile Device |
CN105190699A (zh) * | 2013-06-05 | 2015-12-23 | 英特尔公司 | 基于面部运动数据的卡拉ok化身动画 |
US20170098122A1 (en) * | 2010-06-07 | 2017-04-06 | Affectiva, Inc. | Analysis of image content with associated manipulation of expression presentation |
Family Cites Families (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US15399A (en) | 1856-07-22 | Machine foe | ||
DE60237834D1 (de) * | 2001-08-15 | 2010-11-11 | Koninkl Philips Electronics Nv | 3d videokonferenzsystem |
AU2004216758A1 (en) * | 2003-03-03 | 2004-09-16 | America Online, Inc. | Using avatars to communicate |
US8384997B2 (en) | 2008-01-21 | 2013-02-26 | Primesense Ltd | Optical pattern projection |
US8744121B2 (en) * | 2009-05-29 | 2014-06-03 | Microsoft Corporation | Device for identifying and tracking multiple humans over time |
US8614714B1 (en) * | 2009-12-21 | 2013-12-24 | Lucasfilm Entertainment Company Ltd. | Combining shapes for animation |
US11232290B2 (en) * | 2010-06-07 | 2022-01-25 | Affectiva, Inc. | Image analysis using sub-sectional component evaluation to augment classifier usage |
US20110304629A1 (en) * | 2010-06-09 | 2011-12-15 | Microsoft Corporation | Real-time animation of facial expressions |
US9098931B2 (en) | 2010-08-11 | 2015-08-04 | Apple Inc. | Scanning projectors and image capture modules for 3D mapping |
US20160025993A1 (en) | 2014-07-28 | 2016-01-28 | Apple Inc. | Overlapping pattern projector |
US8749796B2 (en) | 2011-08-09 | 2014-06-10 | Primesense Ltd. | Projectors of structured light |
US9747495B2 (en) * | 2012-03-06 | 2017-08-29 | Adobe Systems Incorporated | Systems and methods for creating and distributing modifiable animated video messages |
US9600711B2 (en) * | 2012-08-29 | 2017-03-21 | Conduent Business Services, Llc | Method and system for automatically recognizing facial expressions via algorithmic periocular localization |
US20140078144A1 (en) * | 2012-09-14 | 2014-03-20 | Squee, Inc. | Systems and methods for avatar creation |
US9552668B2 (en) * | 2012-12-12 | 2017-01-24 | Microsoft Technology Licensing, Llc | Generation of a three-dimensional representation of a user |
US9094576B1 (en) * | 2013-03-12 | 2015-07-28 | Amazon Technologies, Inc. | Rendered audiovisual communication |
US9288435B2 (en) * | 2013-03-27 | 2016-03-15 | Google Inc. | Speaker switching delay for video conferencing |
CN109842613B (zh) * | 2013-07-12 | 2021-11-19 | 佳能株式会社 | 用于提供和接收媒体数据的方法和装置以及存储介质 |
WO2015007795A1 (en) * | 2013-07-16 | 2015-01-22 | Bitmovin Gmbh | Apparatus and method for cloud assisted adaptive streaming |
US9317954B2 (en) * | 2013-09-23 | 2016-04-19 | Lucasfilm Entertainment Company Ltd. | Real-time performance capture with on-the-fly correctives |
US9397972B2 (en) * | 2014-01-24 | 2016-07-19 | Mitii, Inc. | Animated delivery of electronic messages |
US10203762B2 (en) * | 2014-03-11 | 2019-02-12 | Magic Leap, Inc. | Methods and systems for creating virtual and augmented reality |
US9626803B2 (en) * | 2014-12-12 | 2017-04-18 | Qualcomm Incorporated | Method and apparatus for image processing in augmented reality systems |
US20170069124A1 (en) * | 2015-04-07 | 2017-03-09 | Intel Corporation | Avatar generation and animations |
US10165949B2 (en) * | 2015-06-14 | 2019-01-01 | Facense Ltd. | Estimating posture using head-mounted cameras |
US10993069B2 (en) * | 2015-07-16 | 2021-04-27 | Snap Inc. | Dynamically adaptive media content delivery |
KR102136241B1 (ko) * | 2015-09-29 | 2020-07-22 | 바이너리브이알, 인크. | 표정 검출 성능을 갖는 머리-장착형 디스플레이 |
US20170213269A1 (en) * | 2016-01-24 | 2017-07-27 | Neil Bhargav Setlur | Consumer-vendor interactions in a commerce messaging medium |
US20180005015A1 (en) * | 2016-07-01 | 2018-01-04 | Vangogh Imaging, Inc. | Sparse simultaneous localization and matching with unified tracking |
US10855632B2 (en) * | 2016-07-19 | 2020-12-01 | Snap Inc. | Displaying customized electronic messaging graphics |
US20180047200A1 (en) * | 2016-08-11 | 2018-02-15 | Jibjab Media Inc. | Combining user images and computer-generated illustrations to produce personalized animated digital avatars |
WO2018128996A1 (en) * | 2017-01-03 | 2018-07-12 | Clipo, Inc. | System and method for facilitating dynamic avatar based on real-time facial expression detection |
-
2017
- 2017-11-10 US US15/809,875 patent/US10210648B2/en active Active
-
2018
- 2018-01-10 EP EP22214668.0A patent/EP4191587A1/en active Pending
- 2018-01-10 EP EP18151014.0A patent/EP3404659A1/en not_active Ceased
- 2018-01-24 KR KR1020180008598A patent/KR102143270B1/ko active IP Right Grant
- 2018-01-25 CN CN201810070546.2A patent/CN108876877B/zh active Active
- 2018-01-25 CN CN202310841491.1A patent/CN116797694A/zh active Pending
-
2019
- 2019-02-14 US US16/276,535 patent/US11120600B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101739438A (zh) * | 2008-11-04 | 2010-06-16 | 三星电子株式会社 | 检测脸部表情的系统和方法 |
US20110037767A1 (en) * | 2009-08-13 | 2011-02-17 | Xavier Casanova | Video in e-mail |
US20170098122A1 (en) * | 2010-06-07 | 2017-04-06 | Affectiva, Inc. | Analysis of image content with associated manipulation of expression presentation |
US20130147788A1 (en) * | 2011-12-12 | 2013-06-13 | Thibaut WEISE | Method for facial animation |
US20130278607A1 (en) * | 2012-04-20 | 2013-10-24 | A Thinking Ape Technologies | Systems and Methods for Displaying Animations on a Mobile Device |
CN105190699A (zh) * | 2013-06-05 | 2015-12-23 | 英特尔公司 | 基于面部运动数据的卡拉ok化身动画 |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109348277A (zh) * | 2018-11-29 | 2019-02-15 | 北京字节跳动网络技术有限公司 | 运动像素视频特效添加方法、装置、终端设备及存储介质 |
CN109885231A (zh) * | 2019-02-27 | 2019-06-14 | 北京市商汤科技开发有限公司 | 显示方法及装置、电子设备及存储介质 |
US11687209B2 (en) | 2019-02-27 | 2023-06-27 | Beijing Sensetime Technology Development Co., Ltd. | Display method and apparatus for displaying display effects |
CN113646733A (zh) * | 2019-06-27 | 2021-11-12 | 苹果公司 | 辅助表情 |
US11991419B2 (en) | 2020-01-30 | 2024-05-21 | Snap Inc. | Selecting avatars to be included in the video being generated on demand |
CN115175748A (zh) * | 2020-01-30 | 2022-10-11 | 斯纳普公司 | 用于按需生成媒体内容项的系统 |
US12111863B2 (en) | 2020-01-30 | 2024-10-08 | Snap Inc. | Video generation system to render frames on demand using a fleet of servers |
CN111369645A (zh) * | 2020-02-28 | 2020-07-03 | 北京百度网讯科技有限公司 | 表情信息的展现方法、装置、设备及介质 |
CN111369645B (zh) * | 2020-02-28 | 2023-12-05 | 北京百度网讯科技有限公司 | 表情信息的展现方法、装置、设备及介质 |
TWI750613B (zh) * | 2020-03-23 | 2021-12-21 | 中華電信股份有限公司 | 遠距教學成效呈現系統及方法 |
CN113593539A (zh) * | 2020-04-30 | 2021-11-02 | 阿里巴巴集团控股有限公司 | 流式端到端语音识别方法、装置及电子设备 |
CN117523148B (zh) * | 2024-01-02 | 2024-03-08 | 小芒电子商务有限责任公司 | 虚拟ar的互动方法、系统、电子设备及存储介质 |
CN117523148A (zh) * | 2024-01-02 | 2024-02-06 | 小芒电子商务有限责任公司 | 虚拟ar的互动方法、系统、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US20180336714A1 (en) | 2018-11-22 |
KR20180125870A (ko) | 2018-11-26 |
CN108876877B (zh) | 2023-07-18 |
EP4191587A1 (en) | 2023-06-07 |
US10210648B2 (en) | 2019-02-19 |
EP3404659A1 (en) | 2018-11-21 |
US20190251728A1 (en) | 2019-08-15 |
US11120600B2 (en) | 2021-09-14 |
CN116797694A (zh) | 2023-09-22 |
KR102143270B1 (ko) | 2020-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108876877A (zh) | 表情符号人偶化 | |
JP6662876B2 (ja) | アバター選択機構 | |
US11570404B2 (en) | Predicting behavior changes of a participant of a 3D video conference | |
WO2021229415A1 (en) | Method and system for virtual 3d communications | |
JP2019145108A (ja) | 顔に対応する3次元アバターを用いて顔の動きが反映された3dアバターを含むイメージを生成する電子装置 | |
US9210372B2 (en) | Communication method and device for video simulation image | |
US20160134840A1 (en) | Avatar-Mediated Telepresence Systems with Enhanced Filtering | |
CN109691054A (zh) | 动画用户标识符 | |
CN111583355B (zh) | 面部形象生成方法、装置、电子设备及可读存储介质 | |
US10176798B2 (en) | Facilitating dynamic and intelligent conversion of text into real user speech | |
WO2024169314A1 (zh) | 一种可形变神经辐射场网络的构建方法和装置 | |
US11394888B2 (en) | Personalized videos | |
US12081897B2 (en) | Personalized videos featuring multiple persons | |
CN116229311B (zh) | 视频处理方法、装置及存储介质 | |
CN113689530A (zh) | 一种驱动数字人的方法、装置及电子设备 | |
KR102058190B1 (ko) | 캐릭터 서비스 시스템에서의 캐릭터 서비스를 제공하기 위한 장치 | |
KR100686076B1 (ko) | 피사체의 감정 상태에 대응하는 메시지 출력 기능을 갖는무선 통신 단말기 및 이를 이용한 메시지 출력 방법 | |
KR20120119244A (ko) | 컨텐츠 제작 방법, 이를 위한 시스템 및 이를 위한 단말기 | |
US20240364839A1 (en) | Personalized videos featuring multiple persons | |
WO2023172332A1 (en) | Video stream refinement for dynamic scenes | |
KR20140008687A (ko) | 캐릭터 서비스 시스템, 그 시스템에서의 캐릭터 서비스를 제공하기 위한 방법 및 장치 | |
CN118012270A (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 | ||
TG01 | Patent term adjustment | ||
TG01 | Patent term adjustment |