CN112673400A - 化身动画 - Google Patents
化身动画 Download PDFInfo
- Publication number
- CN112673400A CN112673400A CN201880095333.3A CN201880095333A CN112673400A CN 112673400 A CN112673400 A CN 112673400A CN 201880095333 A CN201880095333 A CN 201880095333A CN 112673400 A CN112673400 A CN 112673400A
- Authority
- CN
- China
- Prior art keywords
- avatar
- control data
- time
- animating
- bones
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 claims abstract description 117
- 238000012545 processing Methods 0.000 claims abstract description 58
- 238000009877 rendering Methods 0.000 claims abstract description 7
- 210000000988 bone and bone Anatomy 0.000 claims description 58
- 230000033001 locomotion Effects 0.000 claims description 45
- 238000003860 storage Methods 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 10
- 230000008859 change Effects 0.000 claims description 7
- 230000003362 replicative effect Effects 0.000 claims description 2
- 230000005236 sound signal Effects 0.000 claims description 2
- 238000004364 calculation method Methods 0.000 claims 1
- 230000003287 optical effect Effects 0.000 description 6
- 238000001514 detection method Methods 0.000 description 5
- 238000012549 training Methods 0.000 description 5
- VYZAMTAEIAYCRO-UHFFFAOYSA-N Chromium Chemical compound [Cr] VYZAMTAEIAYCRO-UHFFFAOYSA-N 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 230000008921 facial expression Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000001815 facial effect Effects 0.000 description 2
- 239000011521 glass Substances 0.000 description 2
- 230000001976 improved effect Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- MFRCZYUUKMFJQJ-UHFFFAOYSA-N 1,4-dioxane-2,5-dione;1,3-dioxan-2-one Chemical compound O=C1OCCCO1.O=C1COC(=O)CO1 MFRCZYUUKMFJQJ-UHFFFAOYSA-N 0.000 description 1
- IMQLKJBTEOYOSI-UHFFFAOYSA-N Diphosphoinositol tetrakisphosphate Chemical compound OP(O)(=O)OC1C(OP(O)(O)=O)C(OP(O)(O)=O)C(OP(O)(O)=O)C(OP(O)(O)=O)C1OP(O)(O)=O IMQLKJBTEOYOSI-UHFFFAOYSA-N 0.000 description 1
- 241000405217 Viola <butterfly> Species 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000005452 bending Methods 0.000 description 1
- 238000009223 counseling Methods 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- WHWDWIHXSPCOKZ-UHFFFAOYSA-N hexahydrofarnesyl acetone Natural products CC(C)CCCC(C)CCCC(C)CCCC(C)=O WHWDWIHXSPCOKZ-UHFFFAOYSA-N 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
- G06T13/40—3D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/80—2D [Two Dimensional] animation, e.g. using sprites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/003—Navigation within 3D models or images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
-
- 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/20—Special algorithmic details
- G06T2207/20036—Morphological image processing
- G06T2207/20044—Skeletonization; Medial axis transform
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Architecture (AREA)
- Processing Or Creating Images (AREA)
Abstract
一种用于利用数据处理设备对化身制作动画的计算机实现的方法,包括以下步骤:a)提供图形单元,所述图形单元被设计为对二维和/或三维对象制作动画并且具有接口,经由所述接口能够将用于对所述二维和/或三维对象制作动画的控制数据传送到所述图形单元;b)在可由所述图形单元调用的存储区域中加载和保持化身;c)提供接收单元,用于接收用于对所述化身制作动画的控制数据;d)将接收的控制数据连续和顺序地传送到所述图形单元;e)在所述图形单元中通过基于分别当前传送的控制数据连续地重新计算经过更新的化身并随后渲染所述化身来对所述化身制作动画;f)在输出设备上连续显示经过更新的化身。
Description
技术领域
本发明涉及一种利用数据处理设备对化身制作动画的计算机实现的方法,以及一种检测用于对化身制作动画的控制数据的方法。本发明还涉及一种用于数据处理的系统,所述系统包括用于执行所述方法的装置以及计算机程序。本发明的主题同样是具有计算机程序的计算机可读存储介质。
背景技术
由于数字化的迅速发展,在许多领域越来越多地通过虚拟角色或虚拟化身来表示真实人物。在此,化身典型地是在虚拟世界中分配给真实人物的人造人物或人造图形。
例如,化身能够以静态图像的形式存在,所述静态图像在互联网论坛中分配给用户并分别显示在讨论内容旁边以进行识别。同样已知可以移动和/或可以有针对性地改变其外观的动态或可动画的化身。在此,复杂的化身能够逼真地再现真实人物的运动和面部表情。
化身已经广泛用于计算机游戏中。在此,用户可以有针对性地通过可动画的虚拟角色来加以表示并在虚拟游戏世界中运动。此外,化身特别是用于电影工业、用于在线支持、用作虚拟助手、用于视听通信(例如,用于化身视频聊天)或用于培训目的。
US 2013/0235045 A1例如描述了一种计算机系统,该计算机系统包括摄像机、网络接口、包含动画软件的存储单元以及3D角色或化身的模型。该软件被配置为,使得可以在真实人物的视频图像中识别出面部运动,并将所述面部运动转换为运动数据。然后将所述运动数据用于为化身制作动画。动画化的化身被渲染为经过编码的视频消息,所述经过编码的视频消息经由所述网络接口发送到远程设备以及在那里被接收。
然而,这种系统的缺点是必须使用经过编码的视频消息工作,所述经过编码的视频消息对应地生成大数据量。实时动画,特别是在远程设备上的实时动画,在此由于经由互联网和网络连接的传输速率有限而几乎不可能或只能以有限的质量实现。
化身也已经在培训领域中使用,其中化身可以在视频动画中扮演真实老师的角色,或者可以有针对性地说明复杂的事实。这种视频动画典型地预先通过3D动画程序制作,并可以作为视频剪辑或视频影片提供。在所述制作中,将化身或对象与动画数据关联,在所述3D动画程序中直接在背景之前进行渲染,并作为视频文件中的单元提供。因此导致定义长度的完成渲染的视频文件,其具有规定的或不可改变的动画序列和背景。
但是,可以用于对化身制作动画和进行显示的当今可用的3D动画程序大多操作起来非常复杂,并且因此只能由专家操作。另外,加载时间通常非常长,因为只能加载和显示完成渲染的化身。
因此,一如既往地需要用于对化身制作动画和进行显示的改进且更灵活的解决方案。
发明内容
本发明的任务是提供一种属于开始时提到的技术领域并且有所改进的用于对化身制作动画的方法。特别地,该方法应当能够实现化身的实时动画,并且优选地以尽可能少的数据量灵活地提供高质量的动画。
该任务的解决方案通过权利要求1的特征限定。根据本发明,一种利用数据处理设备对化身制作动画的计算机实现的方法包括以下步骤:
a)提供图形单元,所述图形单元被设计为对二维和/或三维对象制作动画并且具有接口,经由所述接口可以将用于对二维和/或三维对象制作动画的控制数据传送到所述图形单元;
b)在可由所述图形单元调用的存储区域中加载和保持化身;
c)提供接收单元,用于接收用于对所述化身制作动画的控制数据;
d)将接收的控制数据连续和顺序地传送到所述图形单元;
e)通过在所述图形单元中基于分别当前传送的控制数据连续地重新计算经过更新的化身并随后渲染经过更新的化身来对所述化身制作动画;
f)在输出设备上连续显示经过更新和渲染的化身。
因此根据本发明,所述化身在实际制作动画之前被加载并保持在可以由所述图形单元调用的存储区域中。特别地,在步骤d)至f)期间,所述化身无处不在地在所述存储区域中可供使用。
然后,可以经由所述接收单元连续接收用于对化身制作动画的控制数据,并将其传送到所述图形单元。然后,在所述图形单元中基于分别当前传送的控制数据连续地重新计算先前加载的化身,并进行渲染。将通过这种方式更新和渲染的化身显示在输出设备上。
该方法具有大的优点,即,与所述控制数据无关地加载和保持所述化身本身或所述化身所基于的模型。优选地,时间上在所述控制数据之前完全加载所述化身。为了对准备好的化身制作动画,只需接收所述控制数据并利用所述控制数据进行更新即可。这显著减少了数据量,并且即使在有限的传输带宽情况下也可以实现高质量的实时应用。利用根据本发明的方案,对应地可以毫无问题地实时地实现用户交互。
由于所述化身在所述加载之后原则上在无限制的时间内可用,因此可以随时并且任意长时间地利用控制数据来对所述化身制作动画。还应该强调的是,所述控制数据可以来自不同的来源,从而可以在制作动画时达到高度的灵活性。例如,在运行化身的动画期间可以毫无问题地更换控制数据来源。还可以通过产生附加控制数据的附加用户输入来有针对性地影响基于特定控制数据来源运行的动画。
由于连续地显示经过更新的化身,因此原则上可以在输出设备(例如屏幕)上的任何位置上无框架和/或无背景地显示和/或释放所述经过更新的化身。
因此,根据本发明的方案与基于视频的化身动画形成鲜明对比,在基于视频的化身动画情况下,在显示所述化身之前对具有背景和/或预给定框架的完整动画序列进行完整的视频渲染。
根据特别优选的实施方式,在运行在所述数据处理设施上的Web浏览器中执行根据本发明的方法。对于用户而言,这具有特别的优点:除了通常存在的标准软件(例如Web浏览器)之外不需要其他程序,并且可以将在通过计算机执行时促使所述计算机执行根据本发明的方法的计算机程序作为网页提供。换句话说,在通过计算机执行时促使所述计算机执行根据本发明的方法的计算机程序可以作为网络应用存在。
在当前情况下,Web浏览器特别是应被理解为一种计算机程序,其被设计为在万维网中显示电子超文本文档或网页。Web浏览器特别是被构造为使得可以解释和显示基于HTML的文档(HTML=超文本标记语言)和/或基于CSS的文档(CSS=级联样式表)。附加地,所述Web浏览器优选地具有用于程序的运行时环境,特别是Java运行时环境。
此外,所述Web浏览器优选地具有编程接口,利用所述编程接口可以在所述Web浏览器中显示2D和/或3D图形。在此优选地,所述编程接口被设计为,使得可以通过硬件来加速所述显示,例如利用图形处理器或图形卡来加速,并且特别是无需附加扩展。
例如,具有WebGL编程接口的Web浏览器是合适的。可以免费获得对应的Web浏览器,尤其是Chrome(Google)、Firefox(Mozilla)、Safari(Apple)、Opera(Opera软件)、Internet Explorer(Microsoft)或Edge(Microsoft)。
根据本发明的方法的步骤d)-f)可以例如通过以下子步骤来实现:
(i)将接收到的第一控制数据组传送到所述图形单元;
(ii)在所述图形单元中,基于传送的控制数据组计算经过更新的化身,并渲染所述化身;
(iii)在输出设备上显示所述经过更新的化身;
(iv)将接收到的下一个控制数据组传送到所述图形单元;
(v)重复步骤(ii)至(iv),特别是一直重复,直到满足预定义的中断条件为止。
在此,这些子步骤特别是按说明的顺序进行。
在这种情况下,所述控制数据优选地包括一个或多个控制数据组,其中每个控制数据组定义在特定时间点的化身。由此特别是意味着,所述一个或多个控制数据组规定了所述化身在给定时间点的状态。特别地,所述一个或多个控制数据组直接或间接地规定所述化身的可运动控制元素(例如骨头和/或关节)在特定时间点的位置。间接的定义或规定可以例如如更下面借助于关键图像进一步解释的那样进行。
根据特别优选的实施方式,步骤d)至f)和/或子步骤(i)至(iv)实时地进行。由此可以实现逼真的动画和直接的用户交互。但是,对于特殊应用而言,步骤d)至f)和/或部分步骤(i)至(iv)也可以运行得更快或更慢。
步骤d)至f)和/或子步骤(i)至(iv)中相应过程的重复率特别是至少10Hz,特别是至少15Hz,优选至少30Hz或至少50Hz。优选地,步骤d)至f)或子步骤(i)至(iv)中的相应过程同步地运行。由此可以实现特别逼真的实时动画。但是,在特殊情况下较低的重复率也是可能的。
此外优选的是,所述控制数据具有时间编码并且与所述时间编码同步地处理步骤d)至f)和/或子步骤(i)至(iv)。这使得可以实现时间分辨的化身动画,进而有利于接近现实。
在本发明中,“化身”理解为真实身体或对象(例如生物)的人造模型。特别地,术语“化身”理解为可以在虚拟世界中分配给真实人物的人造人物或图形。在此,所述化身可以完全或仅部分地显示生物,例如仅显示人物的头部。
所述化身特别是被定义为身体的二维或三维虚拟模型。特别地,所述模型可以在二维或三维空间中运动和/或具有控制元素,利用所述控制元素可以按照定义的方式改变所述虚拟模型的形状。
特别地,所述化身基于骨架模型。但是,原则上同样可以使用其他模型。
特别优选地,所述化身通过一组分层连接的骨头和/或关节形式的骨架以及与所述骨架耦合的由顶点组成的网格来定义。
所述顶点的位置典型地由二维或三维向量形式的位置说明预先给定。除了所述位置说明之外,还可以向所述顶点分配其他参数,例如颜色值、纹理和/或分配的骨头或关节。特别地,所述顶点定义了所述化身的可见模型。
骨头和/或关节的位置特别是通过二维或三维坐标来定义。
骨头和/或关节优选地被定义为,使得所述骨头和/或关节允许预定义的运动。例如,可以将选定的骨头和/或选定的关节定义为所谓的根,所述根既可以在空间中位移,又可以执行旋转。然后可以将所有其他骨头和/或关节限制为旋转运动。在几何上,在此每个关节和/或每个骨头都可以代表局部坐标系,其中一个关节和/或骨头的变换也影响所有相关关节和/或骨头或它们的坐标系。
对应的化身可以在市场上从各种供应商那里获得,例如从Daz 3D公司(盐湖城,美国)或High Fidelity公司(旧金山,美国)。但是原则上,化身也可以由自己制作,例如使用特殊软件,例如Autodesk的Maya或3dsMax、Maxon的Cinema4D或开源解决方案Blender。
化身的优选数据格式为JSON、glTF2、FBX和/或COLLADA。这些数据格式尤其是与WebGL兼容。
此外优选的是,将化身的关键图像(关键帧)(例如10-90个关键图像)与所述化身一起加载到所述存储区域中并加以提供。关键图像对应于所述化身在预给定状态下的虚拟模型。如果所述化身代表人体,则一幅关键图像可以例如表示张着嘴的化身,而另一幅关键图像则表示闭着嘴的化身。然后可以通过所谓的关键图像动画来实现张开嘴的运动,这将在下面进行详细解释。
但是原则上可以不使用关键图像。例如在传输带宽足够或化身的复杂性受到限制的情况下就是如此。
特别地,所述控制数据包括一个或多个控制数据组,其中控制数据组定义在特定时间点的化身。
特别地,控制数据组包含n个骨头和/或关节的坐标,而所述化身包括多于n个的骨头和/或关节。换句话说,控制数据组分别仅包括所述化身的有限选择的骨头和/或关节的坐标。在此,特别是向包含在控制数据组中的n个骨头中的每个骨头分配所述化身的多于n个骨头和/或关节中的一个骨头和/或关节。
根据特别优选的实施方式,在计算所述经过更新的化身时,通过对至少两个关键图像进行插值来产生中间图像。在此,可以从关键图像开始按时间间隔插入一个或多个中间图像,由此获得完整且流畅的运动流程,而无需为每个单独的中间图像提供每个骨头和/或每个关节的控制数据。取而代之的是,促使所述化身执行特定运动的控制数据就足够了。在此可以预给定所述运动的强度和速度。返回上述示例,例如可以通过对应的控制数据来促使所述化身张开嘴。在此可以预给定张开程度以及张开速度。
通过使用关键图像,可以显著减少数据量,而在此不会明显降低动画质量。
优选地,将所述控制数据或来自步骤e)中的控制数据组的骨头和/或关节的位置和/或坐标分配给所述化身的一个或多个骨头和/或关节,和/或分配给所述化身的一个或多个关键图像。
为此,在步骤e)中特别是将至少一个、特别是多个关键图像与所述控制数据的选定骨头和/或关节逻辑关联,或者将至少一个、特别是多个关键图像与所述控制数据的选定骨头和/或关节的位置和/或坐标逻辑关联。在此,可以将所述控制数据的选定骨头和/或关节的位置分配给中间图像,所述中间图像是使用至少一个逻辑关联的关键图像通过插值而获得的。
在此,选定骨头和/或关节的位置与预定义参考值的偏差特别是定义了在所述插值时至少一个逻辑关联的关键图像的影响强度。
各个控制数据向所述化身的骨头和/或关节的分配和/或向所述关键图像的分配有利地根据预定义的协议进行,其中所述协议优选地与所述化身一起加载到所述存储区域中并加以提供。由此所述化身和分配的协议都可以无限期或无处不在地可供使用。因此,与所述控制数据有关的数据速率可以减小到最小值。
在所使用的协议中,优选将来自所述控制数据或控制数据组的骨头和/或关节的坐标分配给所述化身的一个或多个骨头和/或关节和/或分配给所述化身的一个或多个关键图像。
所述控制数据特别是以BVH数据格式(BVH=Biovision Hierarchy,Biovision层次结构)存在。这是一种本身已知的数据格式,其专门用于动画目的并且包含骨架结构以及运动数据。
根据优选的实施方式,根据本发明的方法的步骤a)至f)完全在本地数据处理设施上执行。在此,所述本地数据处理设施可以是例如个人计算机、便携式计算机(特别是膝上型电脑或平板计算机)或移动设备(例如具有计算机功能的移动电话(智能电话))。使用这种方案可以减少数据流量,因为除了可能传送控制数据和/或待加载的化身之外,在数据处理设施之间无需进行额外的数据交换。
然而,对于特殊应用可以在不同的数据处理设施上执行根据本发明的方法的各个步骤中的一个或多个步骤。
特别地,所述控制数据、待加载的化身和/或所述协议至少部分地,特别是完全地存在于远程数据处理设施上,特别是存在于服务器上,并且经由网络连接,特别是互联网连接从所述远程数据处理设施接收,特别是在以下本地数据处理设施上进行接收,在这些本地数据处理设施上执行根据本发明的方法。
特别是,所述控制数据以及待加载的化身和可能的协议都存在于远程数据处理设施上。
利用这种方案,原则上用户可以随时访问访问控制数据和/或化身,而与当前正好可供用户使用的数据处理设施无关。
但是原则上所述控制数据和/或待加载的化身也可以存在于以下本地数据处理设施上,在所述本地数据处理设施上执行根据本发明的方法。
特别优选地,可以或将使用操作元件预先选择待加载的化身和/或待接收的控制数据。所述操作元件例如是按钮、选择区、文本输入和/或语音控制单元。所述操作元件可以经由所述数据处理设施的图形用户界面以本身已知的方式提供。
利用这种操作元件,用户可以有针对性地选择利用分别感兴趣的控制数据制作动画的化身。
特别地,存在其他操作元件,利用它们可以控制所述化身的动画。例如,可以利用所述其他操作元件来开始、暂停和/或停止所述动画。优选地,所述其他操作元件同样可以在所述数据处理设施的图形用户界面中予以提供。
特别地,所述控制元素和其他控制元素是HTML控制元素和/或CSS控制元素。
特别优选地,所述化身与其他对象一起被渲染并显示在场景中。由此可以创建逼真的动画。所述其他对象例如可以是背景、地板、房间等。基于根据本发明的方法,即使在动画已经运行的情况下也可以随时将其他对象集成到场景中。
根据一个优选的实施方式,同时将两个或更多个化身彼此独立地加载和保持,并且优选地,利用单独分配的控制数据对所述两个或更多个化身彼此独立地制作动画。这可以用根据本发明的方法毫无问题地实现。从而例如可以以非常灵活的方式来实现多个用户之间的用户交互或视听通信。
原则上,可以在任何输出设备上显示经过更新的化身。例如,所述输出设备可以是屏幕、视频投影仪、全息投影仪和/或要戴在头上的输出设备(Head Mounted Display,头戴式显示器),例如视频眼镜或数据眼镜。
本发明的另一方面涉及一种利用数据处理设备检测用于对化身制作动画的控制数据的方法,其中所述控制数据特别是被设计为在如上所述的方法中使用,所述方法包括以下步骤:
a)提供身体的二维或三维虚拟模型,所述身体可以在二维或三维空间中运动,并且其中所述模型具有控制元素,利用所述控制元素可以以定义的方式改变所述虚拟模型;
b)时间分辨地检测真实身体的运动和/或变化;
c)通过时间分辨地确定所述虚拟模型的控制元素的坐标来在虚拟模型中复制所述真实身体的运动和/或变化,所述坐标对应于所述真实身体在给定时间点的状态;
d)提供所述控制元素的所确定的时间分辨的坐标作为控制数据。
利用根据本发明的用于检测控制数据的方法,可以以灵活的方式产生控制数据,然后可以将所述控制数据用在上述用于对化身制作动画的方法中。
所述方法优选地在运行在所述数据处理设施上的Web浏览器中执行。在此,所述Web浏览器特别是被如上所述地设计,并且特别是具有上述功能性和界面。对于用户而言,这又具有以下优点:除了通常存在的标准软件(例如Web浏览器)之外不需要其他程序,并且在由计算机执行时促使所述计算机执行根据本发明的方法的计算机程序可以作为Web应用存在。对应地,可以纯粹基于Web浏览器产生用于对化身制作动画的控制数据。
所述Web浏览器优选具有通信协议和/或编程接口,其使得可以经由计算机-计算机连接进行实时通信。例如,满足WebRTC标准的Web浏览器是合适的,例如Chrome(Google)、Firefox(Mozilla)、Safari(Apple)、Opera(Opera软件)或Edge(Microsoft)。
在步骤b)中,原则上可以使用任何装置来检测身体的运动和/或变化,利用所述装置可以跟踪真实身体的运动和/或变化。例如,这种准备可以是相机和/或传感器。
2D相机和/或3D相机适合用作相机。2D摄像机和/或3D摄像机是优选的。在当前情况下,3D相机理解为允许图像显示与对象的距离的相机。特别地,3D相机在此是立体相机、三角测量系统、渡越时间测量相机(TOF相机)或光场相机。对应地,2D相机理解为能够实现对象的纯二维表示的相机。2D相机例如可以是单眼相机。
作为传感器可以使用弯曲传感器、拉伸传感器、加速度传感器、姿态传感器、位置传感器和/或陀螺仪传感器。特别地,传感器是机械传感器、热电传感器、电阻传感器、压电传感器、电容传感器、电感传感器、光学传感器和/或磁传感器。光学传感器和/或磁性传感器(例如霍尔传感器)特别适合于面部识别。可以将所述光学传感器和/或磁性传感器固定和/或佩戴在真实身体上的定义位置处,从而记录并转发所述身体的运动和/或变化。例如,传感器可以集成到应当被检测运动和/或变化的人所穿的衣物中。对应的系统可以在市场上获得。
特别优选地,在步骤b)中使用相机,特别是2D相机,这特别是用于检测真人的面部。优选地,在此使用摄像机。此外可能有利的是,除了步骤b)中的相机之外还使用一个或多个传感器来检测真实身体的运动和/或变化。这例如在应当为人的全身动画产生控制数据的情况下是有利的,因为可以利用传感器(例如以传感器套装的形式)良好地检测头部下方的身体部位。
步骤b)至d)优选实时进行。由此可以产生使得能够实现化身的逼真和自然动画的控制数据。
特别地,所有控制元素在定义时间点的坐标形成数据组,该数据组完全定义了在所述定义时间点的模型。
特别地,用于检测控制数据的方法的虚拟模型比用于对化身制作动画的方法中所述化身的上述虚拟模型包括更少的控制元素。由此可以减少所述控制数据的数据量。
所述虚拟模型优选地通过骨架模型定义。但是原则上其他模型也是可能的。
所述虚拟模型优选地通过一组分层连接的骨头和/或关节形式的骨架以及与所述骨架耦合的由顶点形成的网格来定义,其中特别是所述骨头和/或关节表示所述控制元素。在这种情况下,用于检测控制数据的方法的虚拟模型比用于对化身制作动画的方法中所述化身的上述虚拟模型包括更少的骨头、关节和顶点。
用于检测控制数据的方法的虚拟模型特别是被设计为,该虚拟模型具有与在上述用于对化身制作动画的方法中可以接收或将接收的控制数据组中的骨头和/或关节的坐标数相同的骨头和/或关节数。
特别地,所述虚拟模型代表人体,特别是人的头部。
在步骤b)中,在此优选地检测真实人体、特别是真实人的头部的运动和/或变化。
优选地,在步骤b)中探测运动和/或变化的真实身体的各个界标的运动。例如在US2013/0235045 A1中,特别是在0061-0064段中也描述了这种方案。
界标例如可以在诸如面部的真实身体上被预先标记,例如通过将光学标记放置在身体上的定义位置处。于是每个光学标记都可以用作界标。如果用摄像机跟踪所述真实身体的运动,则可以按照本身已知的方式在摄像机图像中探测所述光学标记的运动,并且可以确定它们相对于参考点的位置。
在当前的上下文中,发现特别优选的是,通过自动图像识别,特别是通过预定义对象的识别在摄像机图像中规定所述界标,然后优选地将所述界标叠加在摄像机图像上。在此有利地使用模式识别或面部识别算法,所述模式识别或面部识别算法识别摄像机图像中的显著位置,并基于此将界标叠加在所述摄像机图像上,例如通过Viola-Jones方法。对应的方案例如在Viola和Jones的IJCV 2001的出版物“Robust Real-time Object Detection(鲁棒的实时对象探测)”中进行了描述。
但是,也可以使用其他用于探测界标的方法。
当在Web浏览器中执行该方法时,优选在执行之前将对应的程序代码翻译成本地机器语言,以用于探测界标。这可以使用诸如Emscripten的提前编译器(AOT编译器)来进行。由此可以大大加速界标探测。例如,用于探测界标的程序代码可以使用OpenCV和/或OpenVX程序库以C、C++、Phyton或JavaScript存在。
也可以灵活地使用其他图像识别或面部识别技术,因为可以通过所述AOT编译器以模块化的方式翻译和封装对应的源代码。因此执行所述方法的实际程序可以保持不变,但可以随时适配使用所述AOT编译器翻译的源代码。
特别地,将所述界标分配给所述虚拟模型的网格的各个顶点和/或将各个界标直接和/或间接地分配给所述模型的各个控制元素。例如,可以通过将所述控制元素与所述顶点逻辑关联,将所述界标间接分配给所述模型的各个控制元素。
因此,可以将所述界标的几何数据变换为所述顶点和/或所述控制元素的对应位置。
如果所述虚拟模型通过一组分层连接的骨头和/或关节形式的骨架以及与所述骨架耦合的由顶点形成的网格定义,则在步骤b)中优选通过探测运动和/或变化的真实身体的各个界标的运动来确定所述骨头和/或关节的相应位置。
有利地,在步骤b)中除了真实身体的运动和/或变化之外,还时间分辨地检测声学信号,特别是声音信号。这例如可以通过麦克风来进行。因此,例如可以检测语音信息并将其与所述控制数据同步。
优选以时间编码的方式记录和/或存储在步骤d)中提供的控制数据,特别是所述模型的骨头和/或关节的时间分辨的坐标,特别是使得可以利用数据库来调用所述控制数据。由此可以在需要时访问所述控制数据,例如在如上所述的用于对化身制作动画的方法中。
如果一起检测了声学信号,则优选与所述声学信号并行地以时间编码的方式记录和/或存储所述控制数据。因此,特别是同时地,但分开地记录和/或存储所述声学信号和所述控制数据。
特别地,用于产生控制数据的方法中的步骤a)至d)完全在本地数据处理设施上执行。在此,将步骤d)中提供的控制数据必要时与所述声学信号一起优选存储和/或记录在远程数据处理设施上。
特别是按照以下方式执行用于产生控制数据的方法,即,在步骤d)中提供的控制数据可以用作上述用于对化身制作动画的方法的控制数据。
在另一方面,本发明涉及一种方法,所述方法包括以下步骤:(i)使用上述方法产生用于对化身制作动画的控制数据,以及(ii)使用上述方法来对化身制作动画。在此,特别是在步骤(ii)中接收在步骤(i)中产生的控制数据作为控制数据。
在有利的实施方式中,连续地在步骤(ii)中接收在步骤(i)中提供的控制数据作为控制数据,并将所述控制数据用于对化身制作动画,并且优选地同时记录和/或存储所述控制数据。
优选地,在此将在步骤(ii)中接收的控制数据在考虑上述协议的条件下分配给所述化身的关键图像、骨头和/或关节。
特别地,在此步骤(i)和(ii)并行进行,使得步骤(ii)中动画化的化身基本上同时跟随步骤(i)中检测的真实身体的运动和/或变化。
优选地,步骤(i)和(ii)在同一个本地数据处理设施上进行。由此,用户特别是可以直接检查是否足够精确地检测了所述控制数据以及所述动画是否令人满意。
此外,本发明还涉及一种用于数据处理的系统,该系统包括用于执行如上所述的用于对化身制作动画的方法的装置和/或用于执行如上所述的用于检测对化身制作动画的控制数据的方法的装置。
用于数据处理的系统特别是包括中央计算单元(CPU)、存储器、用于显示图像信息的输出单元以及用于输入数据的输入单元。优选地,用于数据处理的系统还具有图形处理器(GPU),所述图形处理器优选地具有自己的存储器。
此外,所述系统优选地包含用于检测真实身体的运动和/或变化的装置,特别是如上所述相机和/或传感器。特别地,所述系统还具有至少一个麦克风,用于检测声学信号,特别是说出的语音。
同样,本发明的主题是一种计算机程序,所述计算机程序包括指令,所述指令在由计算机执行所述程序时促使所述计算机执行如上所述的用于对化身制作动画的方法和/或如上所述的用于检测对化身制作动画的控制数据的方法。
最后,本发明涉及一种计算机可读存储介质,其上存储有上述计算机程序。
如已经发现的,根据本发明的方案和方法特别有利于为销售人员创建和传达学习内容。
例如,培训员可以通过摄像机记录其销售论据的呈现,并使用根据本发明的方法来产生用于对化身制作动画的控制数据。在此,通过培训员可以展示并一起检测在销售谈话时特别相关的面部表情和手势。这可以通过具有用户友好和直观的图形用户界面的Web应用完全无需特殊软件地纯粹基于Web来进行。
所述控制数据例如可以代表培训序列,所述培训序列作为固定分配和结构化的学习内容存储在可通过互联网访问的服务器上并且可以随时播放。在此,任何数量的学生可以在不同时间访问所述控制数据,并由此对个人可自由选择的化身制作动画。这又可以通过具有同样用户友好和直观的图形用户界面的Web应用纯粹基于Web来实现。因此,学生也不需要任何附加软件。另外,可以任意频繁地重复所述学习内容。
例如,学生还可以自己再现不同销售状况,用摄像机记录下来,所述摄像机例如可以是集成到膝上型电脑中的Web相机,并使用根据本发明的方法来产生用于对化身制作动画的控制数据,所述控制数据可以本地地存储在学生的计算机上,然后学生可以从所述计算机通过Web演示器方便地再次选择、加载和播放所述动画。在此,学生可以使用所述控制数据来例如对反映销售状况的化身制作动画。基于该动画,学生可以在其出现时识别可能的薄弱环节并加以改善。
还可以想到,由学生再现的销售状况通过其他人(例如培训员)评估,以便给学生提供反馈。
本发明的其他有利的实施方式和特征组合从下面的详细描述和权利要求的整体中得出。
附图说明
用于解释实施例的附图示出:
图1示出了流程图,该流程图展示了根据本发明的利用数据处理设备对化身制作动画的方法;
图2示出了用于对化身制作动画的基于Web的程序的图形用户界面,该程序基于图1中展示的方法;
图3示出了流程图,该流程图示出了根据本发明的利用数据处理设备检测对化身制作动画的控制数据的方法;
图4示出了用于检测对化身制作动画的控制数据的基于Web的程序的图形用户界面,该程序基于图3中展示的方法;
图5示出了包括经由网络连接进行通信的三个数据处理设施的装置的示意图,该装置被设计为执行图1-4中展示的方法或程序;
图6示出了图2中的用于对化身制作动画的基于Web的程序的变型,该变型被设计用于培训或教育;
图7示出了图2中的Web演示器或用户界面的变型,该变型被设计用于具有触敏屏幕的移动设备。
原则上,图中相同的部件配备有相同的附图标记。
具体实施方式
图1示出了流程图1,其示例性地展示了根据本发明的利用数据处理设备对化身制作动画的方法。
在第一步骤11中,通过在Web浏览器中调用网页来启动用于对化身制作动画的程序,该程序作为Web服务器上的Web应用提供。在此使用的是具有WebGL支持的Web浏览器,例如Chrome(Google)。
在下一步骤12中,打开WebGL,并借助于JavaScript在网页上设置容器,使得该容器的内容与所述网页的其余部分区分开。产生定义的区域,在该区域内现在可以分开地运行程序。现在,在该区域(屏幕部分)中集成WebGL的不同元素,例如,作为基本元素的3D场景,此外还有相机透视图、不同灯光和渲染引擎。如果创建了基本元素,则可以将不同附加元素加载到该场景中并进行定位。这通过提供和支持WebGL或其框架的一系列加载器来实现。
加载器是将对应的技术标准翻译为WebGL的作用方式并以可由WebGL解释、显示和使用的方式集成到WebGL的作用方式中的程序。在当前情况下,所述加载器基于来自three.js的JavaScript程序库ImageLoader、JSONLoader、AudioLoader和AnimationLoader(2018年2月14日的版本r90),这些JavaScript程序库经过专门扩展,使得可以加载、解释特殊的BVH控制数据并在引入分配协议的条件下将所述特殊的BVH控制数据与化身关联。
因此,可以在步骤12中初始化例如头部形式的角色或化身。在此,所述化身通过虚拟模型定义并加载到可由所述程序的图形单元调用的存储区域中,所述虚拟模型具有一组分层连接的骨头(例如数量为250个)构成的三维骨架以及与所述三维骨架耦合的由顶点构成的网格的形式。所述化身可以按照JSON、glTF2或COLLADA格式存在,并且与所述化身的关键图像(例如87个关键图像)一起被加载。
此外,在步骤12中将协议加载到所述存储区域中,利用所述协议可以将经由所述程序的接收单元到达的控制数据分配给所述化身的一个或多个骨头和/或关键图像。
由此提供了无所不在的化身13,所述化身与所述协议一起在所述程序的整个运行时期间都可供使用,并且可以显示在屏幕上的画布或容器21中(参见图2)。在该起始姿态下,所述化身可以随时经由所述程序的接收单元接收控制数据。
现在,经由用于对化身制作动画的所述程序所提供的常规的用户界面,可以在步骤14中从远程Web服务器上存在的数据库15中选择控制数据,并经由互联网传输。
在此,所述控制数据包括多个控制数据组,其中每个控制数据组定义了特定时间点的化身。控制数据组包含例如40个骨头的时间编码的三维坐标,这小于加载在所述存储区域中的化身所包括的250个骨头的数量。所述控制数据特别是以BVH数据格式存在,该数据格式包含骨头层次以及坐标形式的运动数据。在此,每行运动数据定义在定义的时间点的化身。
经由用于对化身制作动画的所述程序所提供的常见的HTML5或CSS控制元素22、24(参见图2),可以在步骤16中触发和控制控制数据的任何促使所述化身运动的数据流。由此可以构造所有可想到的流程。这些数据流也可以包含控制数据18、19,例如用于开始(Play)、停止(Stop)、暂停(Pause)、重置(Reset)、选择选项的数据。所述控制数据也可以从文本输入(文本到语音)或语音(声音到语音)加以生成。
一旦控制数据到达,就将所述控制数据经由用于对化身制作动画的程序的接收单元传送到所述图形单元,该图形单元基于分别当前传送的控制数据连续重新计算经过更新的化身,随后渲染经过更新的化身并将所述经过更新的化身以动画化的化身17的形式显示在屏幕上的Web浏览器中。这以如下方式进行:
(i)将接收到的第一控制数据组传送到所述图形单元;
(ii)在考虑所述协议的条件下在所述图形单元中基于传送的控制数据组计算经过更新的化身,并渲染所述化身。在此,将所述控制数据中选定骨头的坐标有针对性地分配给关键图像或一个或多个骨头。在考虑所述关键图像的条件下通过插值计算出对应的中间图像;
(iii)在屏幕上的Web浏览器中显示经过更新的化身;
(iv)将下一个接收到的控制数据组传送到所述图形单元;
(v)重复步骤(ii)至(iv)。
这一直持续下去,直到用户结束用于对化身制作动画的程序为止。子步骤(i)至(iv)与时间编码的控制数据同步运行,使得产生了实时动画。子步骤(i)至(iv)的重复率例如约为30Hz。
由于数据量少,因此可以在诸如智能手机或平板电脑的移动设备上毫无问题地对化身制作动画,其间经由互联网连接从远程Web服务器获取所述控制数据。
图2示出了结合图1中描述的用于对化身制作动画的程序的图形用户界面20,该程序在Web浏览器中执行。在此,在Web浏览器中的画布21中在背景前显示化身23。在此,化身23对应于无所不在的化身13的表示,在控制数据到达时,所述无所不在的化身13如上所述成为动画化的化身17。为了控制,图形用户界面20具有按钮和选择区形式的HTML5或CSS控制元素22、24。
因此,结合图1和图2描述的方法表示一种Web演示器,该Web演示器可以被实现为纯Web应用或以网页的形式实现,并且可以在加载过程之后完全在本地数据处理设施上执行。
例如,用户可以将这样的Web演示器如下所示地集成到其自己的网页中:为此,该用户在定义的网页上下载其内容管理系统(CMS)的软件模块(插件),并将该软件模块封装到其后端中。
此后,用户可以确定所述Web演示器的设计在用户方(前端)看起来如何,以及控制元素应当放置在何处、应当放置哪些控制元素以及应当放置多少控制元素。此外,用户可以定义应当为哪些控制单元配备哪些动态文本,并创建这些动态文本。最后,用户使用先前生成的控制数据(例如BVH和音频)的存储位置对所述控制单元(例如按钮)进行编址。一旦操作该按钮,就使用到达的控制数据为利用打开网页而加载的先前定义和/或选定的化身制作动画。在此,例如字幕、文本和图像可以单独并且时间控制地任意插入。
如图2所示,图形用户界面20特别适合于产品或服务的直接销售或适合于执行在线测试。可以直接由化身向顾客或测试对象提出问题,所述顾客或测试对象可以经由选择区形式的控制元素24回答所述问题。
在做出选择或回答之后,所述顾客按下控制元素22的“下一步”按钮,并且所述化身提出下一个问题,以此类推。可以对应于所述顾客的意愿或对应于所述测试对象的回答单独评估所有回答,使得由此可以例如以报价或测试评估的形式创建文本文档。
在此,可以任意扩展所述控制元素,并对应于用户或服务供应商的意愿链接所述控制元素。
图3示出了第二流程图2,其示例性地展示了根据本发明的利用数据处理设备检测对化身制作动画的控制数据的方法。
在第一步骤31中,通过在Web浏览器中调用网页来启动用于检测对化身制作动画的控制数据的程序,该程序作为Web应用在Web服务器上提供。在此,特别是使用具有WebGL和WebRTC支持的Web浏览器,例如Chrome(Google)。
在下一步骤32中,打开WebGL,并借助于JavaScript在网页上设置画布,使得该画布的内容与所述网页的其余部分区分开。
然后在步骤33中选择并初始化例如头部形式的角色或化身。在此,所述化身如以上结合图1所描述地那样被定义,并且与所述化身的所属的关键图像(例如87个关键图像)一起被加载到可由所述程序的图形单元调用的存储区域中。对应地,所述化身作为三维骨架以及与所述三维骨架耦合的由顶点构成的网格的形式的虚拟模型存在于所述存储区域中,所述三维骨架具有例如250个分层连接的骨头。此外,将协议加载到所述存储区域中,利用该协议可以将经由所述程序的接收单元到达的控制数据分配给所述化身的一个或多个骨头和/或关键图像。
然后在步骤34中,在所述网页上的画布中输出所述化身。
以这种方式提供的化身现在可以在接下来的步骤35中接收先前产生的坐标或控制数据形式的控制数据。一旦控制数据到达,就如图1所描述的那样将所述控制数据经由用于对化身制作动画的程序的接收单元传送到所述图形单元,所述图形单元基于分别当前传送的控制数据连续地重新计算经过更新的化身,随后渲染经过更新的化身并将经过渲染的化身以动画化的化身36的形式显示在屏幕上的Web浏览器中。
因此,提供了无处不在的化身,该化身与所述协议一起在所述程序的整个运行时期间都可用并且可以显示在屏幕上的画布中(参见图4,画布61)。在该起始姿态中,所述化身可以实时跟随真人的运动,所述运动在并行运行的过程中加以检测并转换为控制数据(参见以下描述)。也可以利用存储在数据库中的先前存储的控制数据对无处不在的可用化身制作动画。
与步骤32并行地,在步骤37中搜索和初始化可能的相机连接。在此,例如可以使用使得能够与Web浏览器建立在线连接的相机。Web相机或Web摄像机特别适合。另外,在步骤38中搜索和初始化可能的音频输入信道。
在步骤39中,使用OpenCV通过Emscripten或其他提前编译器对以C++存在的用于界标探测的程序代码进行编译,将所述程序代码作为asm.js中间代码提供并启动。由此可以大大加快用于界标探测的程序代码的速度。用于界标探测的程序代码可以例如基于Viola-Jones方法。
在步骤40中将相机和音频数据传送到WebRTC并进行封装。关联的输出在步骤41中显示在Web浏览器中的屏幕上的画布中(参见图4,画布62)。结果是具有大量定义界标的实时视频流。所述定义界标跟随由相机检测的真人的每一个运动。
在步骤42中,相对于定义的零点或参考点计算在空间中变化的界标的所有坐标,并在背景中作为动态值输出。在此,将所述界标分配给所述真人的虚拟模型的网格的各个顶点。由此通过将所述顶点与各个控制元素逻辑关联,将所述界标分配给所述虚拟模型的控制元素的坐标。
与化身类似,所述真人的虚拟模型也通过一组分层连接的骨头和/或关节形式的骨架以及与所述骨架耦合的由顶点构成的网格定义。但是,该虚拟模型的控制元素少于所述化身的虚拟模型的控制元素。例如,所述真人的虚拟模型仅包含40个骨头,而所述化身的虚拟模型包含250个骨头。在此,如上所述,通过使用协议可以有针对性地将所述真人的虚拟模型的控制元素分配给所述化身的控制元素和关键图像。
在步骤43中将动态的控制数据或坐标传送到所述化身,对应地为该化身制作动画(参见上面的步骤35和36)。由此,所述化身实时跟随所述真人的运动。这用于检查所述真人的运动是否被正确检测并转换为对应的控制数据。
与此并行地,可以在步骤44中输出所产生的控制数据以用于进一步处理或存储。
为了存储所述控制数据,在步骤44中输出的控制数据被输送到集成的记录器单元50。在此可以在步骤5中开始记录。在所述记录期间,在步骤52a中为所有流入的运动数据或控制数据或坐标(坐标流)配备时间参考,并与时间线(Timeline)同步。此外对数据量计数。
同时,在步骤52b中也为音频数据(音频流)配备时间参考并且与所述时间线同步。
现在在步骤53a中,以任意格式直接传输所有运动数据,特别是BVH控制数据。同时,在步骤53b中以任意音频格式传输所有音频数据。优选的是在高质量的同时产生相对较低数据量的格式,例如MP3格式。
所提供的数据可以在步骤54中以可见的方式输出。这使得可以进行控制并用于可能的适配。
然后在步骤55中例如使用数据库56将数据共同存储,使得可以随时调用所述数据。在此,所存储的数据包含以下格式的控制数据,该格式使得可以在根据图1和图2的用于对化身制作动画的方法中使用所述控制数据。可以例如通过在图形界面上供用户使用的特殊控制元素(参见图4)来控制所述存储。
结合图3和图4描述的方法被实现为纯Web应用。
步骤31-54优选地在本地数据处理设施上运行,所述本地数据处理设施例如是用户的具有Web相机的台式计算机,而步骤55或所述存储在远程数据处理设施上进行,所述远程数据处理设施例如是Web服务器。
包含音频数据的数据的存储量平均为每动画分钟约20MB,这非常低。相比较而言:典型地在目前广泛使用的高分辨率视频(HD,720p)情况下存储量约为100MB/min。
图4示出了结合图3中描述的用于产生控制数据的程序的图形用户界面60,所述程序在Web浏览器中执行。在左侧,在Web浏览器中的第一画布61中显示在步骤36(图3)中动画化的化身。在图4中的右侧,显示在步骤41(图3)中输出的实时视频流,所述实时视频流具有大量定义的界标。
在下面的区域中,在另一画布63中显示在步骤54(图3)中输出的控制数据或坐标和音频数据。在画布63下方布置有控制元素64,利用控制元素64可以控制用于产生控制数据的方法。在此例如可以提供记录按钮、停止按钮和删除按钮。
结合图3和图4描述的方法表示Web记录器,该Web记录器被实现为纯Web应用或以网页的形式实现,并且该Web记录器在加载过程之后除了存储所述控制数据之外可以基本上完全在本地数据处理设施上执行。
具体地,从用户的角度来看,Web记录器的使用例如如下所示:用户在其本地计算机上打开Web浏览器,然后输入提供所述Web记录器的网页的URL(Uniform ResourceLocator,统一资源定位器)。
在可选的登录之后,在屏幕左侧的画布61中显现出带有先前选择的经过渲染的化身的图形用户界面60。通过激活计算机上的Web相机和麦克风,例如在屏幕右侧的画布62中显示出带有强加的界标点的用户面部,这些界标点跟随面部的每次运动。这些运动直接传输到所述化身,使得所述化身自动跟随用户面部的每次运动。
如果用户对结果满意,则其在控制元素64的区域中按下记录按钮,随即开始记录。如果该用户此后按下停止按钮,则在选择存储位置并指定文件名之后存储音频数据和产生的控制数据。如果该用户现在按下删除按钮,则Web记录器准备好进行下一次记录。
因此,可以将所述Web记录器作为纯Web应用提供和操作。无需安装附加软件。
例如,可以通过平台在对应计费以收取许可费的情况下将所述Web记录器在线提供,使得例如Web设计人员或游戏开发人员可以自己记录其控制数据。
这事对于Web设计人员来说特别感兴趣,因为演示器可以以CMS插件的形式集成、自由设计和连接到任何网页中,使得可以快速实现无限数量的极不同应用。然后可以从平台简单下载这些插件和大量不同的化身。
图5示意性地示出了包括第一数据处理设施71(例如台式计算机)的装置70,第一数据处理设施71具有处理器71a、主存储器71b和具有图形处理器和图形存储器的图形卡71c。摄像机(Web摄像机)72、麦克风73以及带有集成扬声器的屏幕连接到所述第一数据处理设施上。
此外,数据处理设施71具有接口,利用所述接口数据处理设施71可以从第二且远程数据处理设施75获取数据并将所述数据发送到第三且远程数据处理设施76。第二数据处理设施75可以是例如Web服务器,其上以可调用的方式存储有包括所属的关键图像和分配协议的化身。第三数据处理设施76同样可以是Web服务器,其上存储有产生的控制数据和/或从该Web服务器再次调用所述控制数据。
图6示出了图2中的Web演示器或用户界面的变型。图6中的Web演示器的用户界面20a特别是被设计为用于培训或教育的变型。在此,在Web浏览器中的画布21a中,在背景前面再次显示化身23a。化身23a同样对应于无所不在的化身13的表示,无处不在的化身13在控制数据到达时如上所述地成为动画化的化身17。为了控制,图形用户界面20a具有按钮形式的HTML5或CSS控制元素22a,24a,25a。
在使用时,学生例如导航到“以销售对话的方式开始对话”的主题,在这里向该学生提供五个专业示例论点,可以通过控制元素24a选择这些示例论点,然后可以通过控制元素22a播放这些示例论点。然后,动画化的化身23a向该学生展示他可以如何在销售对话中开始对话。总共可以存在数百个示例论点,这些示例论点涵盖所有相关主题。由此该学生获得了他自己必须掌握什么的印象。用户界面的设计可以任意进行。
在动画期间,学生可以创建笔记并提炼自己的论点。然后,该学生可以出于锻炼目的呈现这些论点,并使用带有如上所述的Web记录器的Web相机和麦克风来自己记录和存储控制数据。该学生可以将产生的控制数据由所述Web记录器本地地保存在任何目录中。
然后,可以通过控制元素25a从Web演示器中选择这些自己产生的控制数据,并可以随时加载所述控制数据。通过学生播放自己产生的控制数据,该学生可以通过化身23a的面部表情和语言内容来获得他自己或他的作品的写实图像。在此,该学生可以在预给定的教育内容和自己的作品之间任意切换,这附加地提高了学习效果。
学生还可以通过电子邮件或其他途径将所述控制数据发送给培训员,所述培训员可以随时利用Web演示器来加载和查看所述控制数据。
由于学生在其自己的记录期间必须注视相机或至少注视屏幕,因此原则上需要该学生记住所学的内容。因此,如果学生无需阅读就可以再现材料,该学生才可以进行良好地记录。这导致该学生也可以将自己所学的内容更好地应用到实践中,例如应用到顾客身上。
图7示出了图2中的Web演示器或用户界面的另一变型。图7中的Web演示器的用户界面20b被设计用于具有触敏屏幕的移动设备。在此,在Web浏览器或特殊应用中的画布21b中,再次在背景前显示化身23b。化身23b同样对应于无所不在的化身13的表示,无处不在的化身13在控制数据到达时如上所述地成为动画化的化身17。为了控制,图形用户界面20b具有键盘形式的HTML5或CSS控制元素22b,24b。作用方式对应于图2中的用户界面或Web演示器。
上面描述的实施例决不应以任何方式理解为限制性的,并且可以在本发明的范围内任意应用。
从而例如可能的是,将使得能够执行结合图1至图4描述的方法的程序不作为Web应用而是本地存储在数据处理设施上并在本地启动。
还可能的是,在图1-2中描述的方法的情况下从本地数据库接收所述控制数据,所述本地数据库位于也执行所述方法的同一数据处理设施上。
同样,在图3-4中描述的方法的情况下可以将所述控制数据存储在本地数据库中,所述本地数据库位于也执行所述方法的同一数据处理设施上。
关于结合图3-4描述的方法,原则上也可以在不需要直接检查所述控制数据的情况下省略步骤32-36和43。在这种情况下,也可以去掉图4中用户界面60中的画布61。
在图5中的装置70的情况下,代替屏幕74可以替代地或附加地例如使用其他输出设备,例如投影仪(beamer)或全息摄影机。
此外可能的是,在图5中的装置的情况下作为第一数据处理设施使用具有对应功能的移动设备,例如膝上型电脑、平板电脑或移动电话。
总而言之,可以确定已经提供了新颖且特别有利的方法和程序,利用所述方法和程序可以有效地产生用于化身的控制数据并且可以对化身制作动画。所述方法中使用的控制数据在此仅具有少量数据量,使得可以将所述控制数据从服务器非常快速地传输到客户端,而不必对网络造成负担。因此,可以传输附加内容,例如用于背景的其他动画等,这得到了其他应用可能性。
特别地,可以利用所述控制数据将虚拟助手形式的2D或3D化身用于教育、销售、咨询、游戏等。
由此动画的制作时间大大减少,并且可以由外行执行,因为不需要特殊的专业知识。不必安装任何程序。
Claims (34)
1.一种用于利用数据处理设备对化身制作动画的计算机实现的方法,包括以下步骤:
a)提供图形单元,所述图形单元被设计为对二维和/或三维对象制作动画并且具有接口,经由所述接口能够将用于对所述二维和/或三维对象制作动画的控制数据传送到所述图形单元;
b)在可由所述图形单元调用的存储区域中加载和保持化身;
c)提供接收单元,用于接收用于对所述化身制作动画的控制数据;
d)将接收的控制数据连续和顺序地传送到所述图形单元;
e)在所述图形单元中通过基于分别当前传送的控制数据连续地重新计算经过更新的化身并随后渲染所述化身来对所述化身制作动画;
f)在输出设备上连续显示经过更新的化身。
2.根据权利要求1所述的方法,其特征在于,在运行在所述数据处理设施上的Web浏览器中执行所述方法。
3.根据权利要求1-2中的至少一项所述的方法,其特征在于,在步骤d)至f)期间,所述化身无处不在地在所述存储区域中可供使用。
4.根据权利要求1-3中的至少一项所述的方法,其特征在于,步骤d)至f)实时进行。
5.根据权利要求1-4中的至少一项所述的方法,其特征在于,所述控制数据具有时间编码,并且优选地与所述时间编码同步地处理步骤d)至f)。
6.根据权利要求1-5中的至少一项所述的方法,其特征在于,所述化身通过一组分层连接的骨头和/或关节形式的骨架以及与所述骨架耦合的由顶点组成的网格来定义。
7.根据权利要求1-6中的至少一项所述的方法,其特征在于,将所述化身的关键图像,例如10-90个关键图像,与所述化身一起加载到所述存储区域中并加以提供。
8.根据权利要求1-7中的至少一项所述的方法,其特征在于,所述控制数据代表所述骨头和/或关节的坐标。
9.根据权利要求1至8中的至少一项所述的方法,其中,所述控制数据包括一个或多个控制数据组,其中控制数据组定义在特定时间点的化身。
10.根据权利要求9所述的方法,其特征在于,控制数据组包含n个骨头和/或关节的坐标,而所述化身包括多于n个的骨头和/或关节,其中向包含在控制数据组中的n个骨头中的每个骨头分配所述化身的多于n个的骨头和/或关节中的一个骨头和/或关节。
11.根据权利要求7-10中的至少一项所述的方法,其特征在于,在计算所述经过更新的化身时,通过对至少两个关键图像进行插值来产生中间图像。
12.根据权利要求7-11中的至少一项所述的方法,其特征在于,在步骤e)中将至少一个、特别是多个关键图像与所述控制数据的选定骨头和/或关节逻辑关联。
13.根据权利要求7-12中的至少一项所述的方法,其特征在于,将所述控制数据的选定骨头和/或关节的位置分配给中间图像,所述中间图像是使用至少一个逻辑关联的关键图像通过插值而获得的。
14.根据权利要求7-13中的至少一项所述的方法,其特征在于,选定骨头的位置与预定义参考值的偏差定义了在所述插值时至少一个逻辑关联的关键图像的影响强度。
15.根据权利要求7-14中的至少一项所述的方法,其特征在于,各个控制数据向所述化身的骨头和/或关节的分配和/或向所述关键图像的分配根据预定义的协议进行,其中所述协议优选地与所述化身一起加载到所述存储区域中并加以提供。
16.根据权利要求1-15中的至少一项所述的方法,其特征在于,所述控制数据存在于远程数据处理设施上,特别是存在于服务器上,并且经由网络连接、特别是经由互联网连接从所述远程数据处理设施接收。
17.根据权利要求1-16中的至少一项所述的方法,其特征在于,同时将两个或更多个化身彼此独立地加载和保持,并且优选地利用单独分配的控制数据对所述两个或更多个化身彼此独立地制作动画。
18.一种用于利用数据处理设备检测对化身制作动画的控制数据的方法,其中所述控制数据特别是被设计用于根据权利要求1至17中任一项所述的方法,所述方法包括以下步骤:
a)提供身体的二维或三维虚拟模型,所述身体能够在二维或三维空间中运动,并且其中所述模型具有控制元素,利用所述控制元素能够以定义的方式改变所述虚拟模型;
b)时间分辨地检测真实身体的运动和/或变化;
c)通过时间分辨地确定所述虚拟模型的控制元素的坐标来在虚拟模型中复制所述真实身体的运动和/或变化,所述坐标对应于所述真实身体在给定时间点的状态;
d)提供所述控制元素的所确定的时间分辨的坐标作为控制数据。
19.根据权利要求18所述的方法,其特征在于,所述方法在运行在所述数据处理设施上的Web浏览器中执行。
20.根据权利要求18-19中的至少一项所述的方法,其特征在于,步骤b)至d)实时进行。
21.根据权利要求18-20中的至少一项所述的方法,其特征在于,所有控制元素在定义时间点的坐标形成数据组,所述数据组完全定义了在所述定义时间点的模型。
22.根据权利要求18至21中的至少一项所述的方法,其特征在于,所述虚拟模型通过一组分层连接的骨头和/或关节形式的骨架以及与所述骨架耦合的由顶点形成的网格来定义,其中特别是所述骨头和/或关节表示所述控制元素。
23.根据权利要求18-22中的至少一项所述的方法,其特征在于,所述虚拟模型代表人体,特别是人的头部,以及在步骤b)中检测人体、特别是人的头部的运动和/或变化。
24.根据权利要求18-23中的至少一项所述的方法,其特征在于,在步骤b)中探测运动和/或变化的真实身体的各个界标的运动。
25.根据权利要求24所述的方法,其特征在于,将所述界标分配给所述模型的网格的各个顶点。
26.根据权利要求18-25中的至少一项所述的方法,其特征在于,在步骤b)中在检测所述身体的运动和/或变化时使用2D摄像机。
27.根据权利要求18-26中的至少一项所述的方法,其特征在于,在步骤b)中除了所述真实身体的运动和/或变化之外,还时间分辨地检测声学信号,特别是声音信号。
28.根据权利要求18-27中的至少一项所述的方法,其特征在于,以时间编码的方式记录和/或存储在步骤d)中提供的控制数据,特别是所述模型的骨头和/或关节的时间分辨的坐标,特别是使得能够利用数据库来调用所述控制数据。
29.根据权利要求28所述的方法,其特征在于,与所述声学信号并行地以时间编码的方式记录和/或存储所述控制数据。
30.根据权利要求18-29中任一项所述的方法,其特征在于,权利要求18中的步骤a)至d)完全在本地数据处理设施上执行,并且将步骤d)中提供的控制数据存储在远程数据处理设施上。
31.一种方法,包括以下步骤:(i)使用根据权利要求18-30中任一项所述的方法产生用于对化身制作动画的控制数据,以及(ii)使用根据权利要求1-17中任一项所述的方法来对化身制作动画,其中特别是在步骤(ii)中连续地接收在步骤(i)中提供的控制数据作为控制数据并且将其用于对化身制作动画。
32.一种用于数据处理的系统,包括用于执行根据权利要求1-17中任一项所述的方法的装置和/或包括用于执行根据权利要求18-31中任一项所述的方法的装置。
33.一种计算机程序,包括指令,所述指令在由计算机执行程序时促使所述计算机执行根据权利要求1-17中任一项和/或根据权利要求18-31中任一项所述的方法。
34.一种计算机可读存储介质,其上存储有根据权利要求33所述的计算机程序。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/EP2018/068136 WO2019105600A1 (de) | 2018-07-04 | 2018-07-04 | Avataranimation |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112673400A true CN112673400A (zh) | 2021-04-16 |
Family
ID=62909496
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880095333.3A Pending CN112673400A (zh) | 2018-07-04 | 2018-07-04 | 化身动画 |
Country Status (7)
Country | Link |
---|---|
US (1) | US20210166461A1 (zh) |
EP (1) | EP3718086A1 (zh) |
JP (1) | JP2022500795A (zh) |
KR (1) | KR20210028198A (zh) |
CN (1) | CN112673400A (zh) |
DE (1) | DE212018000371U1 (zh) |
WO (1) | WO2019105600A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115268757A (zh) * | 2022-07-19 | 2022-11-01 | 武汉乐庭软件技术有限公司 | 一种基于触摸屏的画面系统上的手势交互识别系统 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220039702A (ko) * | 2019-06-06 | 2022-03-29 | 아티, 인코포레이티드 | 동적으로 반응하는 가상 캐릭터를 위한 다중 모드 모델 |
US11620779B2 (en) * | 2020-01-03 | 2023-04-04 | Vangogh Imaging, Inc. | Remote visualization of real-time three-dimensional (3D) facial animation with synchronized voice |
KR102600757B1 (ko) * | 2021-03-02 | 2023-11-13 | 한국전자통신연구원 | 대화 기반의 몽타주 생성 방법 및 이를 이용한 장치 |
US11978143B2 (en) * | 2022-05-23 | 2024-05-07 | Lemon Inc. | Creation of videos using virtual characters |
US20240013464A1 (en) * | 2022-07-11 | 2024-01-11 | Samsung Electronics Co., Ltd. | Multimodal disentanglement for generating virtual human avatars |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100203968A1 (en) * | 2007-07-06 | 2010-08-12 | Sony Computer Entertainment Europe Limited | Apparatus And Method Of Avatar Customisation |
CN102221886A (zh) * | 2010-06-11 | 2011-10-19 | 微软公司 | 通过化身与用户界面交互 |
CN102473320A (zh) * | 2009-07-13 | 2012-05-23 | 微软公司 | 通过学习到的来自用户的输入使视觉表示生动化 |
US20130235045A1 (en) * | 2012-03-06 | 2013-09-12 | Mixamo, Inc. | Systems and methods for creating and distributing modifiable animated video messages |
CN106251396A (zh) * | 2016-07-29 | 2016-12-21 | 迈吉客科技(北京)有限公司 | 三维模型的实时控制方法和系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100302253A1 (en) * | 2009-05-29 | 2010-12-02 | Microsoft Corporation | Real time retargeting of skeletal data to game avatar |
US20120130717A1 (en) * | 2010-11-19 | 2012-05-24 | Microsoft Corporation | Real-time Animation for an Expressive Avatar |
KR101643573B1 (ko) * | 2014-11-21 | 2016-07-29 | 한국과학기술연구원 | 얼굴 표정 정규화를 통한 얼굴 인식 방법, 이를 수행하기 위한 기록 매체 및 장치 |
-
2018
- 2018-07-04 EP EP18740533.7A patent/EP3718086A1/de not_active Ceased
- 2018-07-04 US US17/257,712 patent/US20210166461A1/en not_active Abandoned
- 2018-07-04 DE DE212018000371.8U patent/DE212018000371U1/de active Active
- 2018-07-04 CN CN201880095333.3A patent/CN112673400A/zh active Pending
- 2018-07-04 WO PCT/EP2018/068136 patent/WO2019105600A1/de unknown
- 2018-07-04 KR KR1020217001476A patent/KR20210028198A/ko not_active Application Discontinuation
- 2018-07-04 JP JP2021521884A patent/JP2022500795A/ja active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100203968A1 (en) * | 2007-07-06 | 2010-08-12 | Sony Computer Entertainment Europe Limited | Apparatus And Method Of Avatar Customisation |
CN102473320A (zh) * | 2009-07-13 | 2012-05-23 | 微软公司 | 通过学习到的来自用户的输入使视觉表示生动化 |
CN102221886A (zh) * | 2010-06-11 | 2011-10-19 | 微软公司 | 通过化身与用户界面交互 |
US20130235045A1 (en) * | 2012-03-06 | 2013-09-12 | Mixamo, Inc. | Systems and methods for creating and distributing modifiable animated video messages |
CN106251396A (zh) * | 2016-07-29 | 2016-12-21 | 迈吉客科技(北京)有限公司 | 三维模型的实时控制方法和系统 |
Non-Patent Citations (1)
Title |
---|
ALEXANDRU EUGEN ICHIM等: "Dynamic 3D avatar creation from hand-held video input", 《ACM JOURNALS》, vol. 34, no. 4, pages 1 - 8 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115268757A (zh) * | 2022-07-19 | 2022-11-01 | 武汉乐庭软件技术有限公司 | 一种基于触摸屏的画面系统上的手势交互识别系统 |
Also Published As
Publication number | Publication date |
---|---|
US20210166461A1 (en) | 2021-06-03 |
KR20210028198A (ko) | 2021-03-11 |
JP2022500795A (ja) | 2022-01-04 |
WO2019105600A1 (de) | 2019-06-06 |
DE212018000371U1 (de) | 2020-08-31 |
EP3718086A1 (de) | 2020-10-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102503413B1 (ko) | 애니메이션 인터랙션 방법, 장치, 기기 및 저장 매체 | |
CN112673400A (zh) | 化身动画 | |
Craig | Understanding augmented reality: Concepts and applications | |
KR101306221B1 (ko) | 3차원 사용자 아바타를 이용한 동영상 제작장치 및 방법 | |
KR102491140B1 (ko) | 가상 아바타 생성 방법 및 장치 | |
JP2022531057A (ja) | インタラクティブ対象の駆動方法、装置、デバイス、及び記録媒体 | |
JP2023501832A (ja) | レンズ分割の実現方法、装置および関連製品 | |
JP6683864B1 (ja) | コンテンツ制御システム、コンテンツ制御方法、およびコンテンツ制御プログラム | |
JP7381581B2 (ja) | マシン相互作用 | |
US20240104870A1 (en) | AR Interactions and Experiences | |
KR20090003445A (ko) | 가상현실 기법을 이용한 온라인 아동 학습 서비스 장치 및그 서비스 방법 | |
Dürschmid et al. | ProsumerFX: Mobile Design of Image Stylization Components | |
WO2023091564A1 (en) | System and method for provision of personalized multimedia avatars that provide studying companionship | |
Schäfer | Improving essential interactions for immersive virtual environments with novel hand gesture authoring tools | |
Jin et al. | Volumivive: An authoring system for adding interactivity to volumetric video | |
CN116431001A (zh) | 一种在虚拟空间中实现ai交互的方法 | |
JP6892478B2 (ja) | コンテンツ制御システム、コンテンツ制御方法、およびコンテンツ制御プログラム | |
JP2021009351A (ja) | コンテンツ制御システム、コンテンツ制御方法、およびコンテンツ制御プログラム | |
KR100965622B1 (ko) | 감성형 캐릭터 및 애니메이션 생성 방법 및 장치 | |
Tistel | Projecting Art into Virtual Reality. Creating artistic scenes through parametrization utilizing a modern game-engine | |
CN116977030A (zh) | 一种基于人工智能的虚拟现实人体模型生成及交互方法 | |
Xu et al. | MotionCanvas: Generative Motion-Driven Interactive Art Experience | |
CN119322567A (zh) | 一种mr体验场景的互动方法及系统 | |
NL2014682B1 (en) | Method of simulating conversation between a person and an object, a related computer program, computer system and memory means. | |
CN119342246A (zh) | 视频生成方法、装置、电子设备及可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40046203 Country of ref document: HK |
|
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20210416 |