一种虚拟预演中虚拟角色交互控制的系统的制作方法

文档序号:19896171发布日期:2020-02-11 13:17阅读:270来源:国知局
一种虚拟预演中虚拟角色交互控制的系统的制作方法

本发明涉及一种虚拟预演中虚拟角色交互控制的系统,属于电影虚拟制作及虚拟预演控制技术领域。



背景技术:

如今随着电影制作中特效成分的比重越来越大,电影制作的成本逐渐提高,电影的虚拟化制作进入了广大电影工作者的视野。早期虚拟预演,通过在三维软件中对场景进行重建之后,用低维模型或简单的动画角色替代真实角色,采用动画师人工添加关键帧的方式,给角色添加动画,示意出演员在场景里的位置调度等,以供剧组导演、摄影、演员等演职人员进行拍摄参考。随着计算机技术的发展,这种简单的虚拟预演技术已经不能满足行业发展的需求。在当前的虚拟化制作中,需要在虚拟预演环节体现虚拟角色丰富的运动信息,甚至于角色表情与肢体运动风格等。

在现有的研究以及产业应用中,虚拟角色的交互控制主要有以下几种:基于关键帧动画的虚拟角色运动合成,动画师在预演软件中手工调节关键帧信息,插值生成虚拟角色的全身运动;基于物理的角色运动生成方法,根据角色的运动规律,结合角色骨骼信息,计算出符合生物力学原理的角色运动;使用动作捕捉系统捕获演员的真实表演,实时驱动虚拟角色的运动。

基于电影虚拟化制作的实际需求,我们致力于研究电影工作人员与虚拟角色之间交互的控制系统,一方面获取低维控制信号,使用低维控制信号生成虚拟角色的运动,另一方面,在虚拟场景中交互控制虚拟角色运动,并完成虚拟角色的交互控制预演。



技术实现要素:

本发明的目的在于针对现有虚拟化电影制作过程中,存在对虚拟角色控制方式单一、对外接口封闭、需要前期制作角色运动数据库、预演制作人员可操作性差以及实用性差的技术缺陷,提出了一种虚拟预演中虚拟角色交互控制的系统。

所述虚拟预演中虚拟角色交互控制的系统包括信息采集模块、数据处理模块、交互控制模块以及可视化模块;

其中,信息采集模块包括传统交互设备、手势识别单元、动作捕捉单元、外部接口单元以及信息获取优先级切换单元;数据处理模块包括升维映射单元;交互控制模块包括切换单元、直接控制单元以及映射控制单元;可视化模块包括视觉优化单元;

所述虚拟预演中虚拟角色交互控制的系统中各组成模块及单元的连接关系如下:

信息采集模块与数据处理模块相连;信息采集模块以及数据处理模块分别与交互控制模块相连;交互控制模块与可视化模块相连;

具体为:传统交互设备、手势识别单元、动作捕捉单元、外部接口单元分别与直接控制单元、升维映射单元以及信息获取优先级切换单元相连;升维映射单元与映射控制单元相连;直接控制单元与映射控制单元分别与切换单元相连;直接控制单元与映射控制单元分别与视觉优化单元相连;

所述虚拟预演中虚拟角色交互控制的系统中各组成模块的功能如下:

信息采集模块采集并获取低维控制数据信息;数据处理模块基于信息采集模块采集到的低维控制数据,产生高维角色关节运动数据;交互控制模块的功能是生成虚拟预演系统中的虚拟角色运动数据;可视化模块的功能是虚拟角色的预演展示。

所述虚拟预演中虚拟角色交互控制的系统的工作过程,包括如下步骤:

步骤1、信息采集模块采集低维的控制数据信息;

其中,低维的控制数据信息来源于信息采集模块中的传统交互设备、手势识别单元、动作捕捉单元以及外部接口单元;

步骤2、获取交互控制低维数据后,将低维数据映射为高维数据,即将获取的控制信息映射生成虚拟角色的全身骨骼运动及全身运动;

其中,映射生成虚拟角色的全身骨骼运动及全身运动具体在升维映射单元中实现;且所述低维数据到高维数据的映射在每个时间步长都需要进行操作;

其中,全身运动是基于映射虚拟角色的全身骨骼运动进行实时优化得到全身关节数据,进而生成虚拟角色的全身运动;且全身运动的生成受映射控制单元控制;

步骤3、虚拟角色的交互控制及可视化呈现;

其中,交互控制是指对虚拟角色的控制,在交互控制模块中实现,将信息采集模块采集到的控制数据,通过切换单元分配到不同的控制单元,再在控制单元中生成映射到角色全身的运动数据;

可视化呈现是指在计算机上绘制渲染虚拟角色,向使用者呈现出虚拟角色,这在可视化模块中实现,需要交互控制模块中生成的运动数据传递给视觉优化单元,利用视觉优化单元对运动数据进行进一步编辑,编辑后的数据传递给虚拟引擎进行绘制,生成虚拟角色图像。

有益效果

所述虚拟预演中虚拟角色交互控制的系统,与现有虚拟预演交互控制系统相比,具有如下有益效果:

1.所述交互控制系统使用简单的设备来交互控制虚拟角色的运动,方便电影创作者使用具有模型简单、使用方便、处理快捷且无需使用角色运动数据库;

2.所述交互控制系统具有友好及开放性高的优势,基于获取的低维控制信息进行人机交互控制虚拟角色运动;

3.所述交互控制系统具有低成本、体积小、控制方式多样及可移植性好的优势;

4.所述系统应用灵活,基于选择特定模块与功能,不仅能在中小型剧组进行实际应用,还能扩展应用到大型剧组中。

附图说明

图1是本发明一种虚拟预演中虚拟角色交互控制的系统的组成示意图;

图2电影虚拟预演平台现场实时工作流及离线工作流程;

图3虚拟角色交互控制的预演全流程。

具体实施方式

下面结合附图及具体实施例对本发明一种虚拟预演中虚拟角色交互控制的系统的具体实施进行详细阐述。

实施例1

本实施例阐述了将本发明所述的虚拟角色交互控制系统应用于虚拟预演场景。

所述虚拟预演依托的虚拟角色交互控制系统如图1所示。图1中,传统交互设备、手势识别单元、动作捕捉单元、外部接口单元分别与直接控制单元、升维映射单元以及信息获取优先级切换单元相连;升维映射单元与映射控制单元相连;直接控制单元与映射控制单元分别与切换单元相连;直接控制单元与映射控制单元分别与视觉优化单元相连。

信息采集模块,除了利用普通的键鼠输入,还利用optitrack进行光学运动捕获和采用leapmotion手势识别的方式,采集并获取低维控制数据信息:基于optitrack的光学运动捕获,采用多刚体组合的方式进行空间定位。每个刚体使用4-12个空间捕捉标记点,单个刚体内不超过20个捕捉标记点,且对刚体的标记点进行不对称放置以避免干扰冲突,保证刚体的唯一性。通过这种方式,每一个刚体采集数据包含位置、姿态角等空间捕捉信息,作为控制数据。采用leapmotion手势识别的方式,利用体感控制器,可得到每个手指、手腕的信息,包含25个关节/手的数据,单个关节内可提取出空间位置、状态、方向、向量、深度等多个独立数据作为控制信息;数据处理模块基于信息采集模块采集到的低维控制数据,基于二阶倒立摆模型,将角色的运动状态映射为一个二阶倒立摆模型。然后根据步态控制参数与环境约束,对二阶倒立摆进行运动规划。基于二阶倒立摆的运动,根据运动规律与创作者的需求,优化计算关节力矩,合成角色全身运动。其中可以通过设置不同的参数,如步幅步频等,能够实时控制角色运动,生成物理真实的全身运动,产生高维角色关节运动数据。再根据其他约束信息,对部分关节数据进行二次优化,来驱动虚拟角色模型。此外,还可以采用一些运动编辑的方式[5],控制角色进行转弯,降低前进速度,停止前进等操作;交互控制模块的功能是生成虚拟预演系统中的虚拟角色运动数据;可视化模块的功能是虚拟角色的预演展示。

解决方案实现的全流程如图2所示。图2中,在预处理阶段,能够利用三维建模软件,如maya、c4d,制作角色资源与场景资源。在三维建模软件中制作带骨骼绑定的角色模型,导出成fbx文件,生成角色资源。在三维建模软件中对在虚拟场景搭建中需要用到的建筑模型,物品模型进行建模与贴图工作,导出obj文件,生成虚拟场景中的模型资源。通过如动作捕捉或者动画师制作关键帧的方式,制作出角色运动,也能够调用开源的运动数据库,制作出角色运动数据库。在完成资源制作的工作后,将制作出来的资源放入虚拟资产数据库,以便后续工作的使用。结合虚拟引擎,将虚拟资产数据库中的场景模型资源放入虚拟场景中,能够构建出未来虚拟预演中的场景,将该场景放入虚拟资产数据库中,即可在虚拟预演交互控制阶段时调用。

在虚拟预演交互控制阶段,信息采集模块除了鼠标键盘为代表的传统交互控制单元,我们能够使用两种简单友好方式来得到低维控制信息:光学运动捕获获取刚体系统位置姿态作为控制参数的动作捕捉单元以及基于手势识别获取手势姿态信息作为控制参数的手势识别单元。采集低维的控制数据信息后,利用低维数据驱动一个角色模型来生成角色行走运动。根据角色运动信息,实时驱动引擎中的角色,并通过数据处理模块映射,利用腿部动作去驱动手部动作,同时能够使用角色的运动库数据,丰富角色运动细节,使得生成的运动更加自然逼真。同时,本方案可以配合外部拓展插件,如影视摄影的半实物仿真系统,进行虚拟控制。

在虚拟预演阶段,使用影视摄影的半实物仿真系统,通过半实物模型操控虚拟摄影机位置姿态,进行虚拟角色的交互预演。在虚拟预演的后处理阶段,使用非线性编辑软件剪辑预演的视频素材,然后使用合成软件生成预演样片,供现场拍摄参考。

需要强调的是,对于本领域技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进,这些也应视为属于本发明的保护范围。

针对虚拟角色的交互预演系统中,分为现场实时业务模块和离线业务模块,如图3所示。

离线业务模块在资产创建软件中,创建虚拟角色及虚拟场景资产,形成虚拟资产数据库。在需要使用该系统时,调用虚拟资产数据库中的数据,如场景模型及骨骼动画。

现场实时业务模块中,动作捕捉单元、手势识别单元和外部接口单元以及传统控制设备单元采集控制数据。将采集到的数据进行升维映射处理,生成结果作为初步骨骼数据,并结合由模式切换单元所指定的映射控制单元或直接控制单元的控制数据,在视觉优化单元进行进一步优化。同时,能够结合离线业务所调用的虚拟资产数据,配合外部拓展插件,如影视摄影半实物仿真系统,在引擎中呈现可视化预演界面。

信息采集模块主要实现了对控制数据的采集获取。在虚拟预演中,创作者控制虚拟角色的交互方式需要满足方便、快捷、易操作的特点。在本实施例所述系统中,具体模块单元包含如下:

除了以基本的鼠标键盘为代表的传统控制设备之外,我们还使用了多种数据采集方式,如动作捕捉单元和手势识别单元以及外部接口单元,随着未来采集样式多样化,本处采集方式仍可扩展增加。

动作捕捉单元,使用光学运动捕获进行空间定位。通过这种方式采集数据包含位置、姿态角等空间捕捉信息,作为低维度控制数据。

手势识别单元,利用体感控制器得到每个手指、手腕的信息,提取出空间位置、状态、方向、向量、深度等多个独立数据作为控制信息。

除此之外,还能够使用多种,外部接口单元进行低维数据采集,如:传感器、手柄、船台。

数据处理模块核心处理完成低维数据驱动虚拟角色运动。使用采集到的低维控制数据,驱动虚拟角色全身运动是虚拟角色交互控制的重点。其过程是在采集到低维度的控制数据后,根据步态控制参数与环境约束,进行运动规划。根据运动规律与创作者的需求,优化计算关节力矩,合成角色全身运动。其中能够通过设置不同的参数,如步幅步频等,能够实时控制角色运动,生成物理真实的全身运动。

最后,将生成的数据进行重映射处理,根据其他约束信息,对部分关节数据进行二次优化,来驱动虚拟角色模型。

交互控制模块及可视化模块实现了对虚拟角色运动的可视化呈现。虚拟角色运动的可视化,在虚拟预演中是一个非常重要的环节,为了能够达到实时预演的效果,一般在虚拟引擎中来进行渲染。

由于角色模型一般都不相同,使用生成的关节数据直接驱动角色模型将会导致虚拟角色的运动不够自然真实,视觉优化单元在使用数据前对关节数据进行运动重定向。

由于时间复杂度限制,实时计算生成的角色关节数量较少,而实际预演中的虚拟角色模型较为复杂。为了控制虚拟角色生成自然的全身运动,我们结合运动数据库中的已有数据,在视觉优化单元中丰富了虚拟角色模型的运动细节。基于计算所得的关节运动数据,驱动其他关节,进行一些艺术表现上的处理,从而生成所需的虚拟角色运动。

虚拟角色的交互控制模块中,反馈很大程度上影响着控制者对虚拟角色的操控,虚拟预演系统必须要对角色的状态给出反应。反馈的方式有许多,能够利用触觉反馈技术、声音反馈技术,通过震动、语音等方式让控制者能直观且迅速知道虚拟角色在虚拟场景中的状态,并及时调整对角色的控制,提高制作效率。

除了虚拟角色对控制者的反馈,虚拟角色对虚拟场景中物体的反馈也很重要,如虚拟角色拿起一个物体。为达到这种交互效果,我们需要使用额外的数据来记录虚拟角色正在进行的动作类型。利用物理引擎,我们能够让虚拟场景的物体进行物理模拟,与虚拟角色进行交互,减少电影创作者的工作量,提高虚拟预演效率。

为了完成虚拟角色的交互预演,我们需要在引擎中添加虚拟摄像机,模拟拍摄过程,渲染出摄像机中的画面并导出成视频文件。为此,我们建立一个关于摄像机的交互系统,能够实时精确地操作虚拟摄像机。基于影视摄影的半实物仿真系统,我们能够实时操控引擎中的摄像机,进行虚拟角色的交互预演。

以上所述的具体描述,对发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1