节点文献

数据和模型混合驱动的虚拟人运动生成与控制技术研究

Hybrid Data- and Model-driven Techniques for Virtual Character Motion Generation and Control

【作者】 李石磊

【导师】 梁加红;

【作者基本信息】 国防科学技术大学 , 控制科学与工程, 2009, 博士

【摘要】 针对当前虚拟人特定动作生成所面临的工作繁杂、可控性和适应性差等难题,本文采用数据和模型混合驱动的策略,分别从人体运动系统的建模仿真方法、考虑全身姿态变化的虚拟人抓取、操作类动作快速生成、虚拟人关键帧姿态的自动交互生成以及虚拟人全身运动的多优先级编辑合成与交互控制等方面对虚拟人的运动生成与控制技术进行了深入研究,提出了相应的控制策略和模型,并对传统的算法做了改进,主要研究内容概括如下:(1)论文首先在第一章对虚拟人运动生成与控制技术的国内外研究现状进行了概述,对不同方法的优缺点进行了分析、比较,提出采用数据和模型混合驱动的策略进行虚拟人的运动生成与控制技术研究,以期在虚拟人动作的逼真性、可控性和灵活性之间取得最佳地折衷。然后,在第二章对人体运动系统的建模仿真方法进行了深入研究,为后续工作建立数学基础。(2)对于考虑虚拟人全身姿态变化的抓取、操作类动作姿态快速生成问题,本文提出将姿态样本库和解析逆向运动学算法相结合,上肢姿态由解析逆向运动学算法在线实时求解,全身的其余关节姿态直接由事先离线构建的姿态样本生成,保证了算法的实时交互性。对于7自由度的上肢关节链肘圆问题,提出了腕关节旋转量最小的优化指标,将优化求解和定向搜索相结合实现了上肢关节姿态的快速计算生成,并在求解过程中融合了碰撞检测及关节旋转角度的生理范围约束判断,确保动作姿态的物理逼真。在姿态样本库的离线设计实现时,提出基于肩关节的高度变化进行姿态样本的间隔采样与设计生成,给定目标点信息后,利用姿态库中各姿态样本的肩关节高度信息实现了对应所需姿态样本的快速搜索匹配。整个抓取、操作类动作姿态生成过程最显著的优点为实时性高,可以方便地应用于游戏、操作训练等交互应用领域。(3)对于虚拟人关键帧姿态的自动交互生成问题,提出了将姿态样本库和带优先级的逆向运动学(PIK,Prioritized Inverse Kinematics)算法相结合,首先根据任务约束由姿态样本库生成最终理想姿态的估计值并用作PIK算法所需的初始参考姿态,然后利用PIK算法对所有任务约束按优先级顺序进行逆向运动学(IK,Inverse Kinematics)迭代求解,实现全身姿态的进一步优化生成。既克服了传统基于数据样本的IK算法只能生成与原有姿态样本差别不大的姿态的限制,又可适度保证最终姿态结果的逼真自然性。提出了参数化姿态拼接技术用于虚拟人全身姿态的估计生成,先根据不同的任务约束对全身关节进行分组,然后通过最近邻参数化插值方法实现了不同关节组的姿态求解,保证拼接合成的全身姿态与最终理想的全身姿态具有全局相似性。随后以姿态估计值为初始参考姿态,利用PIK算法实现全身姿态的进一步优化求解。为了保证最终姿态结果的静态平衡,在PIK算法的迭代计算过程中,提出了一种新的平衡约束迭代求解策略,将静态平衡约束和其它任务约束分层单独求解,解决了平衡任务约束的优先级设置问题,并可确保最终姿态结果的静态平衡性。将基于姿态样本库的参数化姿态拼接技术和PIK算法相结合,一方面克服了传统参数化插值方法要求所有动作姿态样本具有相同任务约束的限制,姿态样本不需要与各种任务约束进行精确匹配,并可大幅减少所需姿态样本的数量;另一方面解决了PIK算法的初值选取问题,相应地减少了PIK算法所需的迭代求解次数,提高了求解计算效率,为虚拟人全身姿态的自动交互生成提供了一种实用、高效的算法思路。(4)为了使运动捕捉数据驱动的虚拟人能够根据用户的各种交互控制输入及外界不可预料的小幅动态物理交互,自动生成各种逼真的反应性动作,提出了一种基于各种任务约束的冗余空间,在加速度层次上的、具有任意多个优先级的虚拟人全身运动编辑合成与交互控制算法。给定某一参考动作序列后,算法可根据用户的各种交互控制输入及其相互之间的优先级顺序,生成期望的关节加速度信息,并通过调整期望关节加速度的方式对运动改编结果进行了在线的动态平衡修正。在对原有动作数据进行多优先级运动改编过程中,引入了选择矩阵的概念,使本文所提出的运动数据编辑合成与交互控制算法可以对笛卡尔任务空间和关节空间中的高层任务约束进行统一处理。当虚拟人受到外界的小幅动态交互作用后,由于多优先级运动改编算法在加速度层次上实现,可以方便地基于期望的关节加速度信息,利用考虑虚拟人与外界交互作用力的逆向动力学算法进行动力学跟踪控制器的构建,从而通过动力学仿真实现反应跟随性动作生成。在动力学仿真过程中,提出将交互作用力的优化求解方法和近似估算方法相结合,既提高了动力学仿真的计算效率,又可保证动力学跟踪控制器的精度。当动态物理交互作用消除后,为提高求解计算效率,系统需重新转入单纯的运动学改编,提出了一种简便的运动学改编与动力学仿真之间的过渡处理方法。加速度层次上的多优先级运动编辑合成与交互控制算法实现了运动学约束处理和动力学仿真的无缝衔接,为虚拟人的运动控制提供了一个统一的算法框架。(5)最后进行了虚拟人运动生成与控制仿真集成软件环境原型系统开发,以现有的虚拟人应用开发软件为基础,根据其优缺点进行了集成开发,整个软件环境划分为前台界面层、中间数据层和后台的仿真计算层,以广泛应用的商业软件Poser和DI_Guy软件平台分别作为交互界面和可视化渲染输出,方便了相关应用系统开发。随后以某导弹武器装备模拟操作训练系统为应用实例,进行了虚拟人应用模块的开发,对本文所提出的模型算法和集成软件环境原型系统进行了实例验证。

【Abstract】 Currently the motion generation of virtual characters is encumbered by the difficulties such as tedious and time-consuming labor, poor controllability, bad adaptability etc.Based on the hybrid data-and model-driven strategy, this thesis studies the motion generation and control techniques of virtual characters deeply by focusing on the human motion system modeling, quick generation of grasping or operating motions with changes of the whole body posture considered, automatic and interactive whole body postures generation and motion editing and interactive control of virtual characters with multi-priorities. In the dissertation, corresponding control strategies and models are proposed and the traditional algorithms are improved at the same time. The main contents of the dissertation can be summarized as follows:(1)Firstly, in chapter one, the actual research states of the virtual character motion generation and control technology are summarized and the advantages and disadvantages of different methods are compared. In order to get the best trade-off between the lifelikeness, the controllability and the adaptability, the hybrid data-and model-driven strategy is adopted to start the research. Afterwards, in chapter two, the modeling methods of the human motion system are studied deeply so that the mathematical foundation of further researches can be established.(2) On the quick generation of grasping or operating motion with changes of the whole body posture considered, the combination of posture samples and the analytical inverse kinematics algorithm is proposed to ensure the real-time interactivity of the whole algorithm. The upper limb joint angles are solved using the analytical inverse kinematics algorithm on-line and the remaining joint angles are directly generated by posture samples which are constructed off-line. For the redundancy problem in the 7 DoFs (Degree of Freedoms) upper limb, a new objective function to minimize the wrist joint angles is presented and the optimized swivel angel is calculated efficiently by combining the optimization with the directed searching method. Furthermore, the collision detection and joint limit constraints are considered in the calculation to ensure the physical correctness of the upper limb posture. In the off-line design of the posture library, a new posture sampling and design principle based on the vertical height of the shoulder joint is proposed. Once the reaching target is given, the corresponding posture sample can be determined efficiently from the posture library according to the shoulder joint height values of different posture samples.The main advantage of the whole process is its high speed and therefore suitable for interactive applications such as games, operation trainings and so on.(3) On the automatic and interactive whole-body key posture generation, the combination of posture samples and the PIK (Prioritized Inverse Kinematics) algorithm is proposed. Firstly, the guess of the final desired body posture is generated by posture samples according to constraints specified by the user and used as the initial starting posture needed by the PIK algorithm.Then, starting from this initial guess and with all constraints considered at different priority levels, the PIK algorithm can be initialized with a bias defined by this particularly initial guess and iterated step by step to get a final refined posture. In this way, the limitation of traditional example-based IK (Inverse Kinematics) methods that they can only generate postures similar with examples can be overcome and simultaneously the naturalness of final posture results can be ensured to a certain extent. The parametric posture splicing technique is proposed to generate the guess of the desired whole body posture. In the first step, according to the set of the high level constraints, the whole body is divided into some partial joint groups, whose postures are then generated from the same posture database by using the parametric interpolation of the nearest neighbors and consequently the spliced whole body posture has a certain global similarity with the finally desired posture.Afterwards, starting from this initial guess,the PIK algorithm is used to refine the body posture step by step.To ensure the static balance of the final posture result, during the iterative loop of the PIK algorithm, a new balance calculation strategy that solves the static balance constraint and other task constraints individually rather than in the same priority loop is proposed. By this way, the problem in the determination of the priority level of the static balance constraint is solved and the balance requirement of the final posture result is satisfied simultaneously. The combination of the parametric posture splicing and the PIK algorithm can not only overcome the restriction that all posture samples must have the same kind of constraints in parametric interpolation methods and reduce the required number of posture samples but also can solve the initial posture selection problem in the PIK algorithm and thus improve the running efficiency of the PIK algorithm by reducing the number of needed iterative steps.In the summary, a pragmatic and efficient algorithmic framework is presented for the automatic and interactive generation of the whole body posture.(4) In order to make virtual characters driven by motion capture data response adaptively and lifelikely to different interactive control inputs from users or unpredicted small-scale dynamic disturbances from external environments,an interactive motion editing and control algorithm with multi-priority is presented under the acceleration level within the redundancy space of different task constraints.After a single motion sequence is given, the desired joint accelerations can be generated according to control inputs and their relative priorities set by the user and simultaneously the dynamic balance of motion adaption results can be corrected on-line by directly adjusting the desired joint accelerations.During the process of the multi-priority motion adaption of the original reference motion, the definition of the selection matrix is proposed so that the task-level constraints defined no matter in the Cartesian space or joint space can be processed in a unified way. When small-scale dynamic interactions are detected, the system is switched to the dynamic simulation immediately to generate reactive motions. Using desired joint accelerations generated by the multi-priority motion adaption algorithm, the dynamic tracking controller required for the forward dynamic simulation can be constructed conveniently by the model-based inverse dynamics with contact constraints considered. During the dynamic simulation, the combination of the optimization and the approximation method of contact forces are proposed to compute active control torques. In this way, the running efficiency of the dynamic simulation can be improved and the accuracy of the dynamic controller can be ensured simultaneously. When the dynamic perturbations are removed, a convenient transition method is proposed so that the system can switch back to the kinematics motion editing process to improve the running efficiency. Under the acceleration level, a seamless transition between the kinematics and dynamic motion editing is realized and thus a unified motion control algorithm is provided.(5) At the end of the dissertation, based on the currently available virtual character software, the prototype of the integrated software platform for the virtual character motion generation and control is established according to their corresponding advantages and disadvantages.The prototype of the whole software platform can be divided into the foreground interface layer, the middle data layer and the background calculation layer. Particularly, the commonly-used commercial software Poser and DI_Guy are used respectively as the interactive interface and the rendering engine and thus the development of corresponding applications can be facilitated. Finally, the module of virtual characters in the training simulator of a certain kind of missile equipment is developed to evaluate different motion generation and control algorithms and the prototype of the integrated software-environment proposed in the dissertation.

节点文献中: