论文状态:已完成

Interactive Design of Stylized Walking Gaits for Robotic Characters

发表:2024/07/19
原文链接
价格:0.100000
已有 2 人读过
本分析由 AI 生成,可能不完全准确,请以原文为准。

TL;DR 精炼摘要

本文提出了一种交互式设计系统,用于为机器人角色创建风格化的双足步行步态。该系统结合了艺术家导向的编辑工具和基于模型的控制栈,实时生成符合物理约束的运动,并通过相位空间融合策略扩展步态的速度范围。

摘要

Abstract information is missing from the provided text.

思维导图

论文精读

中文精读

1. 论文基本信息

1.1. 标题

交互式设计机器人角色的风格化步行步态 (Interactive Design of Stylized Walking Gaits for Robotic Characters)

1.2. 作者

  • MICHAEL A. HOPKINS, The Walt Disney Company, Burbank, CA, United States / Disney Research, USA

  • GEORG WIEDEBACH, The Walt Disney Company, Burbank, CA, United States / Disney Research, USA

  • KYLE CESARE, The Walt Disney Company, Burbank, CA, United States / Walt Disney Imagineering R&D, USA

  • JARED BISHOP, The Walt Disney Company, Burbank, CA, United States / Walt Disney Imagineering R&D, USA

  • ESPEN KNOOP, The Walt Disney Company, Burbank, CA, United States / Disney Research, Switzerland

  • MORITZ BACHER, The Walt Disney Company, Burbank, CA, United States / Disney Research, Switzerland

    所有作者均隶属于华特迪士尼公司旗下研究部门,包括 Disney Research 和 Walt Disney Imagineering R&D,表明这项工作可能在娱乐机器人领域具有实际应用潜力。

1.3. 发表期刊/会议

ACM Transactions on Graphics (ACM Trans. Graph. 43, 4, Article 137), 2024年7月。 ACM Transactions on Graphics (TOG) 是计算机图形学领域顶级的期刊之一,享有极高的声誉和影响力,发表的论文通常代表了该领域的重大进展和创新。

1.4. 发表年份

2024年

1.5. 摘要

(原文未提供摘要信息,将根据论文内容进行总结。) 本文提出了一种为机器人角色交互式设计风格化双足步行步态的系统。尽管在虚拟角色动画中,程序化动画 (procedural animation) 已广泛用于设计富有表现力的步态,但现有技术通常未考虑物理机器人固有的运动学 (kinematic) 和动力学 (dynamic) 约束。为了解决这一问题,作者开发了一个艺术家导向的交互式编辑工具,该工具能够利用基于模型的控制栈 (model-based control stack),在物理或模拟机器人上实时生成所需的角色运动。每个步行风格都被编码为一组样本参数 (sample parameters),通过所提出的程序化动画技术转换为全身参考轨迹 (whole-body reference trajectories)。为了将风格化步态推广到连续的速度范围,本文采用了一种相位空间融合策略 (phase-space blending strategy),该策略在保留接触约束 (contact constraints) 的同时,内插 (interpolates) 一组由动画师创作的示例步行周期 (walk cycles)。通过在一个定制的自由行走机器人角色上动画化步态,并展示了在两个额外的模拟示例中,该程序化动画技术如何推广到具有不同自由度 (degrees of freedom)、比例和质量分布的双足机器人。

1.6. 原文链接

/files/papers/6948b4bb3e1288a634f1bde3/paper.pdf (该链接为内部文件路径,非公开可访问的URL。论文的正式DOI为 https://doi.org/10.1145/3658227)

2. 整体概括

2.1. 研究背景与动机

核心问题: 尽管人形机器人领域在稳定行走方面取得了显著进展,但为物理机器人设计具有表现力的、风格化的步行步态仍然是一个重大挑战。 重要性与现有研究的挑战:

  • 缺乏艺术家工具: 现有工具无法为艺术家提供对机器人运动的精细控制,同时又尊重物理系统的固有局限性(如执行器限制和模型复杂性)。
  • 物理约束: 步行步态必须满足全身运动固有的运动学和动力学约束。在物理机器人上执行的运动需要对环境变化(如不平地面、摩擦变化)和不完善的状态估计具有鲁棒性,并尊重机器人的物理限制(如执行器速度和扭矩曲线)。
  • 步态泛化: 步态会随着角色速度的变化而变化,一种风格必须能泛化到连续的速度范围,包括前进、后退、转向、侧移等。
  • 传统动画与物理: 计算机动画领域的许多技术(如程序化动画)在虚拟角色中表现出色,但直接应用于物理机器人时,通常不考虑物理约束,导致动画在物理上不可行或与艺术意图产生显著偏差。
  • 学习方法局限: 近年来基于学习的方法(如强化学习)在生成运动方面取得了令人印象深刻的结果,但其主要关注点是技能而非风格,且不允许艺术家直接创作内容。此外,这些方法通常需要离线训练时间,无法提供即时反馈,不适合交互式工作流程。

切入点与创新思路: 本文旨在提供一个易于使用的步态编辑器,将可实现的设计空间限制在满足关键可行性约束的运动范围内,同时暴露一组高度表达性的动画参数,允许艺术家设计各种周期性步态,包括不对称步行周期(例如,受伤角色的风格化跛行)。核心思路是结合程序化动画和人形机器人技术,实现实时、交互式的风格化步态创作,并直接应用于物理机器人。

2.2. 核心贡献/主要发现

  • 交互式创作工作流: 提出了一个紧密集成步态编辑器 (gait editor)、程序化动画 (procedural animation) 和控制策略的交互式创作工作流。该系统是完全实时的,无需离线轨迹优化或训练步骤,可以直接在机器人上创作内容,实现目标步行风格的交互式迭代。
  • 富表达性步态参数化: 设计了一套丰富的步态参数(包括时间间隔、属性和函数曲线),使得艺术家可以精细控制步态细节,如步态时序、上半身运动、脚跟/脚趾行为等,同时防止违反某些运动学约束。
  • 相位空间融合策略: 采用定制的约束感知插值方案(相位空间融合策略),能从少量创作的步行周期样本中生成连续速度范围内的全方向步行风格,并保留接触约束。
  • 通用性展示: 通过三个不同自由度、比例和质量分布的机器人角色(小型恐龙、成人尺寸人形机器人、Groot主题机器人)在模拟和硬件上演示了该方法的通用性和有效性。
  • 实时反馈与硬件部署: 利用实时模拟和控制在设计阶段提供即时反馈,并证明了设计的步态能够可靠地转移到物理硬件平台,对未建模的服装和干扰也具有鲁棒性。

3. 预备知识与相关工作

3.1. 基础概念

  • 程序化动画 (Procedural Animation): 一种计算机动画技术,通过算法和规则而不是手动关键帧来生成运动。它允许动画师定义高层级的参数和逻辑,系统根据这些参数自动计算出详细的动画,常用于生成复杂的、可变异的或物理上合理的运动。
  • 运动学约束 (Kinematic Constraints): 描述机器人关节和连杆之间几何关系的限制。例如,关节的最大旋转角度、连杆的长度、脚不能穿透地面等。
  • 动力学约束 (Dynamic Constraints): 描述机器人运动时所受力、质量、加速度之间关系的限制。例如,执行器的最大扭矩、机器人的质心 (Center of Mass, CoM) 必须保持在支撑多边形 (support polygon) 内部以维持平衡、摩擦力限制等。
  • 全身控制栈 (Whole-Body Control Stack): 一种分层控制架构,用于协调机器人所有关节的运动,以实现复杂的全身任务,如行走、平衡和姿态控制。通常包括高层级的任务规划、中层级的轨迹生成和低层级的关节力矩控制。
  • 相位空间融合策略 (Phase-Space Blending Strategy): 一种用于平滑过渡不同动画周期或运动风格的技术。它通过将不同步态周期映射到一个通用的“相位”参数,然后在这个相位空间中进行插值,从而确保运动在时间上和接触事件上保持一致性,即使原始周期具有不同的时序特征。
  • 双足机器人 (Bipedal Robot): 具有两条腿的机器人,旨在模仿人类或其他两足动物的行走方式。
  • 自由度 (Degrees of Freedom, DoF): 描述机器人或其某个部分在空间中独立运动的能力数量。例如,一个旋转关节通常有一个自由度。
  • 模型预测控制器 (Model Predictive Controller, MPC): 一种先进的控制策略,它在一个有限的预测时间窗口内,根据机器人的动态模型和目标,在线优化控制输入序列。在每个时间步,MPC都会重新计算并应用优化后的第一个控制输入,然后继续预测和优化。它在处理约束和实现动态行为方面非常有效,常用于稳定机器人的质心轨迹。
  • 质心 (Center of Mass, CoM): 描述物体质量分布的平均位置。在机器人控制中,CoM的轨迹对于维持平衡至关重要。
  • 支撑点 (Center of Pressure, CoP): 地面反作用力合力的作用点。在稳定行走中,CoP必须始终保持在机器人的支撑足底面内部(或由两个支撑足形成的多边形内部),以防止倾倒。
  • 逆动力学 (Inverse Dynamics): 一种计算机器人关节力矩或接触力的方法。给定机器人的运动(位置、速度、加速度),逆动力学计算产生这些运动所需的力矩和力。这与正动力学(给定力矩和力计算运动)相反。
  • 二次规划 (Quadratic Program, QP): 一种数学优化问题,其目标函数是二次的,而约束条件是线性的。在机器人控制中,QP常用于实时解决多任务、有约束的优化问题,例如计算满足运动学和动力学约束的关节加速度和接触力。
  • 扩展卡尔曼滤波器 (Extended Kalman Filter, EKF): 一种非线性滤波器,用于估计非线性系统的状态。它通过线性化当前状态附近的系统模型来近似卡尔曼滤波器。在机器人中,它常用于融合来自不同传感器(如编码器、IMU)的数据,以估计机器人的姿态、速度和位置。
  • 惯性测量单元 (Inertial Measurement Unit, IMU): 一种电子设备,通常包含加速度计和陀螺仪(有时还有磁力计),用于测量物体的线加速度、角速度和磁场方向,从而估计其姿态和运动。
  • 质心动量矩阵 (Centroidal Momentum Matrix, CMM): 一个将全身关节速度映射到机器人整体线动量和角动量(相对于质心)的矩阵。它在基于动量的全身控制中非常有用。
  • 三次样条 (Cubic Splines) / 三次Hermite样条 (Cubic Hermite Splines): 一种插值方法,使用分段的三次多项式来拟合数据点。三次Hermite样条不仅匹配数据点的位置,还匹配每个点的导数(切线),从而产生更平滑的曲线。在动画中,它们常用于定义平滑的轨迹。
  • 球面线性插值 (Spherical Linear Interpolation, Slerp): 一种在单位球体上对两个四元数 (quaternions) 进行插值的方法,确保插值路径沿着大圆弧,产生平滑且最短的旋转路径。
  • 摩擦锥 (Friction Cone): 在接触力学中,摩擦锥是一个概念,表示一个物体在给定接触点上可以承受的所有可能接触力的集合,而不会发生滑动。通常由静摩擦系数决定,形成一个以法线方向为轴的圆锥体。

3.2. 前人工作

本文将相关工作分为四个主要领域:计算机动画 (Computer Animation)、基于物理的角色 (Physics-based Characters)、机器人动画 (Animation in Robotics) 和图形化步态编辑 (Graphical Gait Editing)。

  • 计算机动画:

    • 传统方法: 骨骼动画 (Skeletal animation)、关键帧动画 (keyframing) 和程序化动画是常用的艺术运动创作技术 [Multon et al. 1999]。
    • 数据驱动方法: 利用运动捕捉数据生成风格化运动,例如根据功能目标和风格参考生成运动 [Grochow et al. 2004]。
    • 程序化步态混合: 现有研究表明,可以混合具有不同时序和步行路径的步态参考 [Holden et al. 2017; Kovar and Gleicher 2003]。本文的方法也采用了类似的概念来混合不同步行周期,例如将时间映射到单调递增的参数。
    • 与本文的区别: 标准的程序化动画方法不直接适用于机器人领域,因为它们不考虑机器人的物理特性。
  • 基于物理的角色:

    • 目标: 使角色执行遵守物理定律的富有表现力的动作。
    • 模型驱动方法: 早期工作侧重于模型驱动方法,为行走等任务设计定制控制器 [Coros et al. 2010; Hodgins et al. 1995; Lee et al. 2010]。
    • 程序化运动生成: Karim et al. [2013] 展示了在模拟环境中为腿式生物生成风格化程序化运动的流程。Zhao et al. [2005] 开发了一个用于原型设计体育动画的交互式用户界面。
    • 学习方法: 近期强化学习 (Reinforcement Learning, RL) 方法占据主导地位,通过训练策略来模仿所需动作 [Lee et al. 2021; Peng et al. 2017; Won et al. 2022]。结合 RL 和对抗性方法可以从非结构化运动数据中提取技能 [Peng et al. 2022; Yao et al. 2022a]。
    • 与本文的区别: 基于物理的角色动画主要面向虚拟环境,通常不考虑物理机器人固有的执行器限制和模型复杂性,且学习方法通常不直接允许艺术家创作内容,且需要训练时间,不适合交互式工作流。
  • 机器人动画:

    • 挑战: 物理机器人动画对建模假设和从仿真到现实 (sim-to-real) 的差距非常敏感。运动必须对环境变化、传感器噪声和机器人物理限制具有鲁棒性。
    • 鲁棒性: 通常通过闭环模型预测控制 [Neunert et al. 2016; Wieber 2006] 或高层反馈(如步态时序和落脚点调整 [Griffin et al. 2017; Kryczka et al. 2015])实现。
    • 功能性行走: 大多数腿式机器人研究专注于功能性运动,步态风格为效率和鲁棒性手工制作 [Apgar et al. 2018; Nishiwaki et al. 2002; Xi and Remy 2014; Zhou et al. 2022]。
    • 模仿人类行走: 有些工作试图使用基于模型的控制从运动捕捉数据中模仿人类行走 [Ames 2014; Dariush et al. 2008]。
    • 学习方法: RL 方法已被用于为腿式机器人生成富有表现力和功能性的行走运动,通过领域随机化 (domain randomization) 实现对建模不确定性的鲁棒性 [Siekmann et al. 2021],并允许在线调整步态参数 [Margolis and Agrawal 2022]。这些方法也可以从运动捕捉或视频中推断行走风格 [Bohez et al. 2022; Nakaoka et al. 2007; Peng et al. 2020; Sok et al. 2007; Yao et al. 2022b]。
    • 与本文的区别: 现有的机器人动画方法侧重于功能性或模仿真实运动,但缺乏艺术家直接控制风格的能力,且学习方法通常需要训练时间,无法提供即时反馈。本文的目标是提供艺术控制,以实现风格化而非纯粹功能性的步态。
  • 图形化步态编辑 (Graphical Gait Editing):

    • Yin et al. [2007] 展示了通过自定义 GUI 或运动捕捉提取控制参数的模拟风格化步态。
    • Boston Dynamics 的“Choreographer”软件允许编排舞蹈序列,但其具体方法未公开 [Ackerman 2021]。
    • Nakaoka et al. [2010] 开发了一个双足运动设计工具,输入期望任务,输出物理机器人动态可行的参考轨迹,支持风格化踏步行为,但每一步都是单独关键帧。
    • 与本文的区别: 本文专注于程序化生成、周期性且在连续速度范围内平滑变化的步行步态,而非逐步关键帧。本文是实时编辑,而许多现有方法需要离线处理。

3.3. 技术演进

该领域的技术演进经历了从传统关键帧动画到数据驱动方法,再到基于物理模拟,以及近年来的学习型控制策略。在虚拟角色动画中,程序化方法已被广泛接受,但在物理机器人领域,由于对物理可行性、鲁棒性和实时性的严格要求,其应用仍面临挑战。本文的工作正是填补了这一空白,将虚拟角色动画中成熟的程序化动画和交互式编辑理念,通过结合机器人控制领域的模型预测控制和逆动力学,扩展到了物理机器人。尤其是在步态泛化方面,通过相位空间混合策略,解决了传统方法难以在连续速度范围内保持风格一致性的问题。

3.4. 差异化分析

本文方法与相关工作的主要区别和创新点在于:

  1. 实时交互性与硬件部署: 与大多数需要离线优化或训练时间的学习方法和一些传统方法不同,本文系统实现完全实时,并可以直接在物理机器人上进行交互式编辑和迭代,提供即时反馈。这是现有方法中前所未有的细节水平,支持多样化的步态时序、上半身运动、脚跟/脚趾行为和连续速度范围内的风格变化。
  2. 艺术导向的物理约束: 本文提供了一个丰富的、艺术家可直接控制的参数集,同时通过巧妙的参数化和内部约束设计,确保生成的运动在运动学和动力学上对物理机器人是可行的,避免了动画师手动处理复杂的物理限制。
  3. 相位空间融合实现步态泛化: 通过定制的相位空间混合策略,解决了步态在连续速度范围内泛化的问题,确保了风格的平滑过渡和接触约束的保持,而不是简单地混合运动帧。这种方法比传统的注册曲线方法更专注于步态的接触事件。
  4. 模型-控制器-编辑器的紧密集成: 首次将交互式步态编辑器、程序化动画技术和基于模型的机器人控制栈紧密集成,实现了从高层级艺术意图到低层级机器人执行的无缝转换。

4. 方法论

本文提出了一种交互式、程序化的动画技术,该技术直接与基于模型的控制栈 (model-based control stack) 接口,从而使模拟和物理机器人硬件能够进行富有表现力的行走。

4.1. 方法原理

该系统的核心思想是提供一个艺术家导向的步态编辑器,允许艺术家在关键行走速度下设计目标步态周期 (gait cycles)。然后,一个步态采样器 (Gait Sampler) 利用相位空间融合策略 (phase-space blending strategy) 对这些“样本”进行插值,从而在连续的输入速度范围内产生目标风格的平滑变化。生成的步态参数被输入到步态规划器 (Gait Planner) 中,由其生成全身参考轨迹 (whole-body reference trajectories)。最后,一个基于模型的控制器 (Model-Based Controller) 负责跟踪这些参考轨迹,使机器人能够实际执行风格化行走。整个过程是实时的,确保了交互式设计和即时反馈。

下图(原文 Fig. 2)展示了所提出的程序化动画技术的高层级框图:

该图像是插图,展示了机器人行走姿态的互动设计。左侧为视觉化工具与样式浏览器,中心为样本编辑器,右侧为行走反馈与模型控制器的关系图,展示了如何根据输入的行走速度 \(v\) 和反馈 \(r\) 计算机器人状态与运动样式。 该图像是插图,展示了机器人行走姿态的互动设计。左侧为视觉化工具与样式浏览器,中心为样本编辑器,右侧为行走反馈与模型控制器的关系图,展示了如何根据输入的行走速度 vv 和反馈 rr 计算机器人状态与运动样式。

图示中,用户通过 Visualizer(视觉化工具)和 Style Browser(样式浏览器)与 Gait Editor(步态编辑器)交互。在 Gait Editor 中,艺术家通过 Sample Editor(样本编辑器)定义步态样本 SS,每个样本 SS 包含一组参数 ΠS\Pi_S 和对应的速度 vS\mathbf{v}_SGait Sampler(步态采样器)接收当前期望的速度命令 v\mathbf{v},并根据已定义的步态样本通过插值生成当前的步态参数 Π\Pi。这些参数 Π\Pi 和速度 v\mathbf{v} 一同输入到 Gait Planner(步态规划器)中。Gait Planner 结合机器人当前的估计状态 s\mathbf{s},生成时间变化的参考运动 r(t)\mathbf{r}(t)。这些参考运动再由 Model-Based Controller(基于模型的控制器)跟踪。State Estimator(状态估计器)负责从传感器测量中估计机器人的状态 s\mathbf{s}。整个控制回路在仿真器或物理机器人上实时运行,为艺术家提供即时反馈。

4.2. 核心方法详解 (逐层深入)

4.2.1. 步态规划器 (Gait Planner)

步态规划器 gg 的目标是将随时间变化的平面输入速度 v(t)\mathbf{v}(t) 映射到一系列笛卡尔空间和关节空间参考轨迹 r(t)\mathbf{r}(t),使目标机器人能够进行全方向行走。 该规划器的输入/输出行为可以通过以下映射函数形式化: r(t)=g(v,s,Π,t) \mathbf{r}(t) = g(\mathbf{v}, \mathbf{s}, \Pi, t) 其中:

  • r(t)\mathbf{r}(t): 规划器在时间 tt 输出的参考轨迹向量。

  • gg: 步态规划函数。

  • v\mathbf{v}: 当前期望的速度命令,通常为 [前进速度, 侧移速度, 角速度]

  • s\mathbf{s}: 机器人当前的估计状态,包括关节位置和速度。

  • Π\Pi: 动画参数向量,编码了期望的姿态、步态时序、摆动脚运动、脚跟/脚趾行为、手臂运动等风格特征。

  • tt: 当前时间。

    在所提出的系统中,规划器输出向量 r(t)\mathbf{r}(t) 包括期望的骨盆 (pelvis) 高度、骨盆旋转、左右脚姿态 (pose) 和上半身关节坐标(例如手臂、颈部、脊柱、尾部角度)。具体形式为: r(t)=[zpelvisθpelvispfoot,lpfoot,rqupper] \mathbf{r}(t) = \left[ z_{\mathrm{pelvis}} \quad \theta_{\mathrm{pelvis}}^{\top} \quad \mathbf{p}_{\mathrm{foot,l}}^{\top} \quad \mathbf{p}_{\mathrm{foot,r}}^{\top} \quad \mathbf{q}_{\mathrm{upper}}^{\top} \right]^{\top} 其中:

  • zpelvisz_{\mathrm{pelvis}}: 骨盆沿 ZZ 轴的期望平移(高度)。

  • θpelvis\theta_{\mathrm{pelvis}}: 骨盆的期望四元数 (quaternion) 旋转。

  • pfoot,l\mathbf{p}_{\mathrm{foot,l}}: 左脚的期望6自由度 (6-DoF) 姿态向量,包括平移 xR3\mathbf{x} \in \mathbb{R}^3 和旋转 θR3\pmb{\theta} \in \mathbb{R}^3

  • pfoot,r\mathbf{p}_{\mathrm{foot,r}}: 右脚的期望6自由度姿态向量。

  • qupper\mathbf{q}_{\mathrm{upper}}: 上半身关节坐标(如手臂、颈部、脊柱、尾部)的期望角度向量。

约定 (Conventions)

  • 步行周期 (Walk Cycle): 一个双足步行步态通常由交替的步子和双支撑阶段(两只脚同时接触地面)定义。本文的步行周期从左脚抬起 (Left Liftoff, LLO) 事件开始,接着是左脚着地 (Left Touchdown, LTD)、右脚抬起 (Right Liftoff, RLO) 和右脚着地 (Right Touchdown, RTD)。当以恒定速度行走时,步态被认为是周期性的,周期结束于下一个LLO事件。

    下图(原文 Fig. 3)展示了两步步行周期:

    Fig. 3. Two-step walk cycle. The gait transitions through four contact events during each cycle: left liftoff `( L L O )` , left touchdown `( L T D )` , right liftoff (RLO), and right touchdown `( R T D )` . For the purposes of this paper, the two-step cycle is defined such that it starts and ends at `L L O` . 该图像是示意图,展示了两步走周期的运动过程。该周期包含四个接触事件:左侧起步(LLO)、左侧着地(LTD)、右侧起步(RLO)和右侧着地(RTD)。图中标注了各个阶段的运动状态,并显示了两步走周期(CY)的完整过渡,起始和结束均为左侧起步(LLO)。

  • 路径框架 (Path Frame): 命令的速度向量 v=[x˙y˙θ˙]\mathbf{v} = [\dot{x} \dot{y} \dot{\theta}]^\top 以体坐标表示,其中 x˙\dot{x}y˙\dot{y}θ˙\dot{\theta} 分别代表在水平面上的期望前进、横向和角速度。输入速度的积分代表双足机器人期望的行走路径,从而定义了一个路径框架 (path frame)。

    下图(原文 Fig. 4)展示了具有采样落脚点的示例行走路径:

    Fig. 4. Example walking paths with sampled footholds. The path frame, \(\\mathcal { P }\) , with \(\\mathbf { x } \\cdot \\mathbf { \\partial }\) axis in red and y-axis in blue, is defined as the integral of the gait velocity. The path frame history (solid line) illustrates the past walking path relative to the inertial origin frame, \(o\) , while the extrapolated trajectory (dotted line) defines the predicted walking path. The planner derives the upcoming footholds (white) by sampling the predicted path frame at the midpoint of each upcoming foot contact interval. The achieved footholds (black) are fixed in place following each step at the corresponding touchdown event.

    运动规划 (Motion Planning) 规划器将计算出的轨迹分解为两个组成部分:

  • 标称运动 (Nominal Component of Motion): 源自期望输入速度 v\mathbf{v},满足行走任务相关的基本运动学和时序约束。

  • 风格化运动 (Stylized Component of Motion): 源自动画参数向量 Π\Pi,编码步态的表达。

    对参考状态 r(t)\mathbf{r}(t) 进行分解,得到: zpelvis=zpelvisv+zpelvisΠθpelvis=θpelvisvθpelvisΠpfoot,μ=pfoot,μvpfoot,μΠ :μ{l,r}qupper=qupperv+qupperΠ \begin{array}{r l} & z_{\mathrm{pelvis}} = z_{\mathrm{pelvis}}^{\mathbf{v}} + z_{\mathrm{pelvis}}^{\Pi} \\ & \theta_{\mathrm{pelvis}} = \theta_{\mathrm{pelvis}}^{\mathbf{v}} \theta_{\mathrm{pelvis}}^{\Pi} \\ & \mathbf{p}_{\mathrm{foot}, \mu} = \mathbf{p}_{\mathrm{foot}, \mu}^{\mathbf{v}} \oplus \mathbf{p}_{\mathrm{foot}, \mu}^{\Pi} \ : \forall \mu \in \{l, r\} \\ & \mathbf{q}_{\mathrm{upper}} = \mathbf{q}_{\mathrm{upper}}^{\mathbf{v}} + \mathbf{q}_{\mathrm{upper}}^{\Pi} \end{array} 其中:

  • 上标 v\mathbf{v}Π\Pi 分别表示标称运动和风格化运动组件。

  • \oplus 是姿态合成运算符,定义为刚体变换 pApB=[xA+θAxBθAθB]T\mathbf{p}_A \oplus \mathbf{p}_B = [\mathbf{x}_A + \pmb{\theta}_A \mathbf{x}_B \quad \theta_A \theta_B]^T。这相当于在标称脚坐标处定义的移动参考系中表达风格化脚姿态。

  • 足迹规划 (Footstep Plan): 规划器使用有限状态机处理双支撑和摆动阶段之间的转换。

    • 通过对预测行走路径进行外推,规划器为每个连续的两步周期 kk 生成一对即将到来的足迹 pfoothold,lk\mathbf{p}_{\mathrm{foothold,l}}^kpfoothold,rk\mathbf{p}_{\mathrm{foothold,r}}^k。这些足迹通过在每个即将到来的脚接触间隔的中点对路径姿态进行采样来计算: pfoothold,lk=pv(tfoothold,lk)pstance,lpfoothold,rk=pv(tfoothold,rk)pstance,r \begin{array}{r l} & \mathbf{p}_{\mathrm{foothold,l}}^k = \mathbf{p}^{\mathbf{v}}\left( t_{\mathrm{foothold,l}}^k \right) \oplus \mathbf{p}_{\mathrm{stance,l}} \\ & \mathbf{p}_{\mathrm{foothold,r}}^k = \mathbf{p}^{\mathbf{v}}\left( t_{\mathrm{foothold,r}}^k \right) \oplus \mathbf{p}_{\mathrm{stance,r}} \end{array} 其中:
    • pfoothold,lk\mathbf{p}_{\mathrm{foothold,l}}^k, pfoothold,rk\mathbf{p}_{\mathrm{foothold,r}}^k: 第 kk 个周期中左右脚的期望足迹姿态。
    • pv(t)\mathbf{p}^{\mathbf{v}}(t): 在时间 tt 沿行走路径的路径框架姿态。
    • pstance,l\mathbf{p}_{\mathrm{stance,l}}, pstance,r\mathbf{p}_{\mathrm{stance,r}}: 在行走路径框架中表达的常数平面姿态,代表每个脚在支撑阶段的标称平移和旋转。这些由动画参数决定。
    • tfoothold,lkt_{\mathrm{foothold,l}}^k, tfoothold,rkt_{\mathrm{foothold,r}}^k: 采样路径姿态的相应时间点,例如,左脚着陆时刻 tLTDkt_{\mathrm{LTD}}^k 和右脚抬起时刻 tRLOkt_{\mathrm{RLO}}^k 之间的中点。
    • 当足迹与当前支撑脚重叠时,目标位置会投影到安全踩踏区域。
  • 标称支撑/摆动脚轨迹 (Nominal Support/Swing Foot Trajectories):

    • 在支撑阶段,脚的参考姿态被锁定在上次着地时计算的足迹姿态上。
    • 在摆动阶段,摆动脚的轨迹从锁定足迹插值到即将到来的足迹。对于左脚的例子,线性分量和角分量分别为: xfoot,lv(t)=(1α(t))xfoothold,lk1+α(t)xfoothold,lkθfoot,lv(t)=SLERP(θfoothold,lk1,θfoothold,lk,α(t)) \begin{array}{r l} & \mathbf{x}_{\mathrm{foot,l}}^{\mathbf{v}}(t) = \left( 1 - \alpha(t) \right) \mathbf{x}_{\mathrm{foothold,l}}^{k-1} + \alpha(t) \mathbf{x}_{\mathrm{foothold,l}}^k \\ & \pmb{\theta}_{\mathrm{foot,l}}^{\mathbf{v}}(t) = \mathrm{SLERP}\left( \pmb{\theta}_{\mathrm{foothold,l}}^{k-1} , \pmb{\theta}_{\mathrm{foothold,l}}^k , \alpha(t) \right) \end{array} 其中:
    • xfoot,lv(t)\mathbf{x}_{\mathrm{foot,l}}^{\mathbf{v}}(t): 左脚在时间 tt 的标称平移轨迹。
    • θfoot,lv(t)\pmb{\theta}_{\mathrm{foot,l}}^{\mathbf{v}}(t): 左脚在时间 tt 的标称旋转轨迹。
    • xfoothold,lk1\mathbf{x}_{\mathrm{foothold,l}}^{k-1}: 上一个周期左脚着地时的足迹平移。
    • xfoothold,lk\mathbf{x}_{\mathrm{foothold,l}}^k: 当前周期左脚即将着地时的足迹平移。
    • SLERP\mathrm{SLERP}: 球面线性插值函数,用于平滑插值四元数旋转。
    • α(t)\alpha(t): 一个三次插值参数,在摆动间隔期间从0增加到1,初始和最终速度为零。
    • 标称摆动脚轨迹的垂直高度为零,垂直摆动轨迹完全由动画参数决定。
  • 标称骨盆和上半身轨迹 (Nominal Pelvis and Upper-Body Trajectories):

    • 标称骨盆旋转 θpelvisv\theta_{\mathrm{pelvis}}^{\mathbf{v}} 定义为使骨盆 ZZ 轴保持垂直,同时水平轴与当前路径框架旋转对齐,从而在转向时产生平滑的骨盆偏航 (yaw)。
    • 骨盆高度 zpelvisv=0z_{\mathrm{pelvis}}^{\mathbf{v}} = 0 和上半身关节轨迹 qupperv=0\mathbf{q}_{\mathrm{upper}}^{\mathbf{v}} = \mathbf{0} 直接由动画参数指定。

4.2.2. 动画参数 (Animation Parameters)

本文提出了一种富有表现力的步态参数化,旨在辅助快速设计机器人角色的可行步行周期。参数化包括三种可在设计阶段编辑的数据类型:时间间隔 (time intervals)、属性 (attributes) 和函数曲线 (function curves)。

时间间隔 (Time Intervals) 时间间隔由相对于步行周期开始的最小值和最大值定义。 以下是步态样本的时间间隔列表:

Name Description (Min, Max)
CY 两步周期间隔 (The two-step cycle interval) (0, TST_S)
LS 左摆动间隔 (The left swing interval) (tLLOt_{LLO}, tLTDt_{LTD})
RS 右摆动间隔 (The right swing interval) (tRLOt_{RLO}, tRTDt_{RTD})
  • CY的最小值和LS的最小值被限制为0。
  • 同时,约束限制以满足图3所示的事件顺序:tLLO<tLTD<tRLO<tRTD<tLLO+TSt_{LLO} < t_{LTD} < t_{RLO} < t_{RTD} < t_{LLO} + T_S
  • 强制限制每个事件时间之间的距离,基于单支撑和双支撑阶段的最小允许持续时间。这有效地将可表达步态的范围严格限制在步行范围内。

函数曲线 (Function Curves) 函数曲线是参数化动画步行周期风格化参考状态的时间变量轨迹,即 zpelvisΠz_{\mathrm{pelvis}}^{\Pi}pfoot,lΠ\mathbf{p}_{\mathrm{foot,l}}^{\Pi}pfoot,rΠ\mathbf{p}_{\mathrm{foot,r}}^{\Pi}qupperΠ\mathbf{q}_{\mathrm{upper}}^{\Pi}。 以下是用于动画风格化步态的核心函数列表:

Interval: Name Description
LS: Foot x, y, z 左脚摆动平移 (Left foot swing translation)
LS: Foot θ, ψheel, ψtoe, γ 左脚摆动旋转角度 (Left foot swing rotation angles)
RS: Foot x, y, z 右脚摆动平移 (Right foot swing translation)
RS: Foot θ, ψheel, ψtoe, γ 右脚摆动旋转角度 (Right foot swing rotation angles)
CY: Pelvis z 骨盆 z 轴平移 (Pelvis z translation)
CY: Pelvis θ, ψ, Φ 骨盆旋转角度 (Pelvis rotation angles)
CY: Upper body qi 上半身关节角度 (Upper body joint angles (e.g. arms))
  • 每条曲线都在特定时间间隔上定义,例如周期性 CY 间隔或离散摆动间隔 LSRS。这些函数被参数化为三次样条,以实现传统的曲线编辑。

  • 左右脚平移和旋转曲线: 定义在每个摆动间隔,允许艺术家在步进过程中塑造摆动轨迹。这些参数定义了相对于标称脚坐标 pfootv\mathbf{p}_{\mathrm{foot}}^{\mathbf{v}} 的时间变化参考位移。

    • 脚的风格化平移 xfootΠ\mathbf{x}_{\mathrm{foot}}^{\Pi} 形式为: xfootΠ=xswingΠ+xheeltoeΠ \begin{array}{r} \mathbf{x}_{\mathrm{foot}}^{\Pi} = \mathbf{x}_{\mathrm{swing}}^{\Pi} + \mathbf{x}_{\mathrm{heel-toe}}^{\Pi} \end{array} 其中:
      • xswingΠ\mathbf{x}_{\mathrm{swing}}^{\Pi}: 定义了动画摆动轨迹,由跨越从抬起到着地时间间隔的 x, y, z 曲线参数化。摆动间隔函数曲线的初始和最终值被钳制为零,以确保摆动脚轨迹以标称抬起和着地姿态开始和结束,假设脚是平坦的。
      • xheeltoeΠ\mathbf{x}_{\mathrm{heel-toe}}^{\Pi}: 确保脚跟-脚趾行走期间的接触约束得到满足。
    • 风格化脚旋转 θfootΠ\theta_{\mathrm{foot}}^{\Pi} 由四个动画角度 (θ,ψheel,ψtoe,γ)(\theta, \psi_{\mathrm{heel}}, \psi_{\mathrm{toe}}, \gamma) 参数化,它们代表按列出顺序围绕 z, y, x 轴应用的固有旋转。
      • θ\thetaγ\gamma 决定脚相对于标称摆动运动的偏航 (yaw) 和滚转 (roll),并在摆动边界处钳制为零。

      • ψheel\psi_{\mathrm{heel}}ψtoe\psi_{\mathrm{toe}} 分别代表围绕脚跟和脚趾应用的俯仰 (pitch) 旋转。

      • 通过将 π2ψheel0- \frac{\pi}{2} \leq \psi_{\mathrm{heel}} \leq 00ψtoeπ20 \leq \psi_{\mathrm{toe}} \leq \frac{\pi}{2} 结合,可以确保脚的最低点始终保持在地面平面之上或与其齐平。

      • 在接触切换事件中,两个俯仰参数中只有一个允许非零,对应于脚趾或脚跟接触。

      • 在支撑阶段,到标称平坦足迹姿态的过渡是自动化的。

        下图(原文 Fig. 5)展示了用于风格化摆动轨迹的脚跟-脚趾旋转参数:

        Fig. 5. Heel-toe rotation parameters for stylized swing trajectories. Inspired by common character animation rigs, the foot is animated using two pitch rotations, \(\\psi _ { \\mathrm { h e e l } }\) and \(\\psi _ { \\mathrm { t o e } }\) , applied first about the nominal heel position, then about the resulting toe position. One of the pitch angles must be constrained to zero at each contact switch event, allowing for either toe or heel contact. 该图像是示意图,展示了用于机器人角色风格化摆动轨迹的脚部旋转参数。图中可见三种不同的脚部接触状态,分别标注了脚踝的旋转角度 ψtoe\psi_{\mathrm{toe}}ψheel\psi_{\mathrm{heel}},以及脚部位置 PfootP_{\mathrm{foot}} 和垂直位置 zz。这两种旋转角度在每次接触切换事件中必须有一个被约束为零,以实现脚趾或脚跟的接触。

  • 风格化骨盆高度 (zpelvisΠz_{\mathrm{pelvis}}^{\Pi} ) 和路径框架相对旋转 (θpelvisΠ\theta_{\mathrm{pelvis}}^{\Pi} ): 骨盆高度直接参数化,而旋转由一组欧拉ZYX角度(对应偏航、俯仰、滚转)指定。这些骨盆曲线定义在完整的两步周期间隔上。

  • 上半身关节轨迹 (qupperΠ\mathbf{q}_{\mathrm{upper}}^{\Pi} ): 一组关节空间函数曲线直接映射到上半身关节轨迹,包括手臂、颈部、脊柱和/或尾部的曲线,实现丰富的上半身运动。对这些函数强制执行周期性边界约束,以确保在步行周期循环时插值轨迹是C1连续的。

    下图(原文 Fig. 6)展示了骨盆 zz、左脚 zz 和右脚 zz 函数曲线的示例:

    Fig. 6. Function curves. Example Pelvis `_ z` , Left Foot `z _ { i }` , and Right Foot `_ z` function curves for a two-step cycle. Pelvis functions are defined on the full two-step cycle, while left and right foot functions are defined on the left and right swing intervals, respectively.

    属性 (Attributes) 属性是可配置的常量,影响步行周期的某些方面。

  • 姿态外展 (stance splay)、宽度 (width) 和 X轴偏置 (X-bias): 这些属性决定了左右足迹相对于行走路径的平均角、横向和前进偏移。

    下图(原文 Fig. 7)展示了在静止路径框架 P\mathcal{P} 下,每个属性对标称姿态 pstance\mathbf{p}_{\mathrm{stance}} 的影响:

    Fig. 7. Stance attributes. The left and right stance poses are shown for a stationary path frame, \(\\mathcal { P }\) (standing or stepping with zero gait velocity). 该图像是示意图,展示了与步态设计相关的几个关键属性。图中包含两个矩形(分别标记为“Splay”和“Xbias”)以及一个坐标系,坐标轴包括xxyy,并标识了路径框架P\mathcal{P}。此外,标注了“Width”用于表示宽度。这些元素概述了行走姿态的特征和调整参数。

  • 脚跟/脚趾过渡持续时间: 艺术家提供了两个参数 ΔtψLO\Delta t_{\psi_{LO}}ΔtψTD\Delta t_{\psi_{TD}},分别决定了脚在抬起前和着地后,脚跟/脚趾过渡到平脚配置的持续时间。这些参数控制脚在脚趾/脚跟离地和脚跟/脚趾着地时被抬起和放下的速度。每个参数的最大值限制为总足迹持续时间的50%。规划器在此过渡过程中将脚跟或脚趾的俯仰角线性插值到零。

4.2.3. 步态采样器 (Gait Sampler)

步态采样器负责通过插值已创作的步态样本来计算输入步态规划器的步态参数 Π\Pi

相位图 (Phase Map)

  • 相位图是一个可逆函数,它将一个通用的步态相位 ϕ\phi 映射到每个步行周期特定的步态时间 tt

  • 映射的定义使得周期事件时间 tLLO,tLTD,tRLO,tRTDt_{LLO}, t_{LTD}, t_{RLO}, t_{RTD}tLLO+TSt_{LLO} + T_S 分别对应相位值 0,ϕLTD,ϕRLO,ϕRTD0, \phi_{LTD}, \phi_{RLO}, \phi_{RTD}1

  • 中间相位值 ϕLTD,ϕRLO,ϕRTD\phi_{LTD}, \phi_{RLO}, \phi_{RTD} 可以任意选择,但需满足 0<ϕLTD<ϕRLO<ϕRTD<10 < \phi_{LTD} < \phi_{RLO} < \phi_{RTD} < 1。本文选择了 0.1, 0.5, 0.6

  • 平滑相位图 Ω(ϕ)\Omega(\phi) 通过将单调三次样条拟合到相应的相位/时间航点来推导。

    下图(原文 Fig. 8)展示了两个步态周期 A 和 B 以及混合周期 AB 的相位图:

    Fig. 8. Phase maps. Example phase maps for two gait cycles, \(A\) and \(B\) , along with the blended cycle, `A B` , for \(\\alpha = 0 . 5\) . 该图像是图表,展示了两个步态周期(周期 A 和周期 B)及其混合周期(周期 AB)的相位图。图中以不同颜色和线型标示步态相位与时间关系,横轴为步态相位,纵轴为所需时间(单位为秒)。具体而言,tLLOt_{LLO}tLTDt_{LTD}tRLOt_{RLO} 等时间标度在不同步态相位下的变化被清晰展现。

  • 当需要将周期 A 的特定步态时间 tAt_A 与周期 B 的“等效”步态时间 tBt_B 相关联时,解决方案由 tB=ΩB(ΩA1(tA))t_B = \Omega_B(\Omega_A^{-1}(t_A)) 给出。此方法保证接触事件时间将始终映射到另一个周期中的等效事件时间,从而在映射步态信号时保留基于接触事件的时序约束。

混合两个样本 (Blending Two Samples) 给定两个样本 A 和 B,可以通过根据期望的混合比 α(0,1)\alpha \in (0, 1) 混合各自的属性、时间间隔和函数曲线来计算插值参数集 ΠAB\Pi_{AB}

  • 属性混合: 属性(如姿态宽度)使用简单的 α\alpha 混合进行插值: r=(1α)rA+αrB r = (1 - \alpha) r_A + \alpha r_B 其中 rAr_ArBr_B 是相关的样本值。
  • 时间间隔混合: 插值后的时间间隔通过独立混合最小值和最大值来计算。由于混合操作是凸组合,因此强加在样本事件时间上的顺序约束会由混合输出保留。
  • 函数曲线混合:
    1. 计算插值步行周期的相位图 ΩAB(ϕ)\Omega_{AB}(\phi),基于混合后的时间间隔。
    2. 计算样本 A 的等效步态时间 t_A = \Omega_A(\phi)
    3. 计算样本 B 的等效步态时间 t_B = \Omega_B(\phi)
    4. tAt_A 处评估函数曲线 A。
    5. tBt_B 处评估函数曲线 B。
    6. 使用公式 (7) 插值结果值。
  • 这种相位空间混合方法与 [Kovar and Gleicher 2003] 中提出的时间扭曲注册曲线 (time warp registration curves) 有相似之处,但本文方法基于每个步行周期的接触约束时序进行步态特定关联,而不是通过动态时间规整 (Dynamic Time Warping, DTW) 比较动画帧。

基于速度的样本插值 (Velocity-Based Sample Interpolation) 通过编辑模式,步行风格通过动画化9个独立的步态样本来创作,对应于以下关键步行速度:

x y θ
Forward Fast max 0 0
Forward Slow xslow 0 0
Step In Place 0 0 0
Reverse Slow -xslow 0 0
Reverse Fast -xmax 0 0
Left Strafe 0 ymax 0
Right Strafe 0 -ymax 0
Left Turn 0 0 θmax
Right Turn 0 0 max

给定任意输入速度 v=[x˙y˙θ˙]T\mathbf{v} = [\dot{x} \dot{y} \dot{\theta}]^T,样本参数通过一个三步过程进行插值:

  • 步骤 1:前进/后退样本插值。 根据 x˙\dot{x} 的值混合两个最近邻样本。

    • 混合比计算如下: αx˙=fsoft(x˙x˙Ax˙Bx˙A) \alpha_{\dot{x}} = f_{\mathrm{soft}}\left( \frac{\dot{x} - \dot{x}_A}{\dot{x}_B - \dot{x}_A} \right) 其中 fsoft(α)=2α3+3α2f_{\mathrm{soft}}(\alpha) = -2\alpha^3 + 3\alpha^2 是一个三次多项式,将单位域映射到单位范围,并在两个极限处具有零一阶导数,确保在输入速度跨越新区域时,混合样本参数的一阶导数没有不连续性。
  • 步骤 2:转向/侧移样本插值。 根据 θ˙\dot{\theta}y˙\dot{y} 的值插值。

    1. 速度归一化:θ˙n=θ˙/θ˙max\dot{\theta}_n = \dot{\theta} / \dot{\theta}_{\mathrm{max}}y˙n=y˙/y˙max\dot{y}_n = \dot{y} / \dot{y}_{\mathrm{max}}
    2. 计算等效极坐标:β=atan2(y˙n,θ˙n)\beta = \mathrm{atan2}(\dot{y}_n, \dot{\theta}_n)ρn=min(y˙n2+θ˙n2,1)\rho_n = \mathrm{min}(\sqrt{\dot{y}_n^2 + \dot{\theta}_n^2}, 1),剪裁到单位圆。
    3. 计算两个最近邻的转向/侧移样本,并使用以下比率进行混合: αβ=fsoft(ββAβBβA) \alpha_{\beta} = f_{\mathrm{soft}}\left( \frac{\beta - \beta_A}{\beta_B - \beta_A} \right) 其中 βA\beta_AβB\beta_B 是样本对应的极角。
  • 步骤 3:混合中间结果。 混合步骤 1 和步骤 2 产生的混合前进/后退样本和混合转向/侧移样本,基于 x˙n=x˙/x˙max\dot{x}_n = \dot{x} / \dot{x}_{\mathrm{max}}ρn\rho_n 的相对范数。

    • 最终混合比由下式给出: αturnstrafe=fsoft(ρn(1ηfsoft(x˙n))) \alpha_{\mathrm{turn-strafe}} = f_{\mathrm{soft}} \Big( \rho_n \cdot \big( 1 - \eta f_{\mathrm{soft}} \big( |\dot{x}_n| \big) \big) \Big) 其中 η(0,1)\eta \in (0, 1) 是一个可调增益,通常设置为 0.5。当 x˙\dot{x} 为零时,乘积中的第一项完全决定了转向-侧移样本混合到最终结果中的比率。当 x˙\dot{x} 接近最大前进/后退速度时,乘积中的第二项有效地将比率缩放 (1η)(1 - \eta) 以减小转向-侧移样本的影响。

    下图(原文 Fig. 9)展示了全方向样本插值的三步过程:

    Fig. 9. Sample interpolation. Three step process for omnidirectional sample interpolation. In each step the white diamond represents the input velocity while each black circle represents a different sample velocity mapped to the relevant blend space. In 1) and 2) we blend the nearest forward/reverse and turn/strafe samples, respectively. In step 3) we blend the intermediate results to produce the final interpolated parameter set. 该图像是示意图,展示了三步过程的全方向样本插值。在每一步中,白色菱形表示输入速度,而每个黑色圆圈则表示映射到相关混合空间的不同样本速度。在步骤1)和2)中,分别混合最近的前进/后退样本和转向/横向样本。在步骤3)中,混合中间结果以产生最终插值参数集。

4.2.4. 交互式步态编辑器 (Interactive Gait Editor)

步态编辑器提供一个自定义图形用户界面 (GUI),允许艺术家设计风格化步态。它包含机器人视觉化工具、样式浏览器、输入编辑器和样本编辑器。

  • 编辑模式 (Edit Mode): 用户可以选择所需样本并编辑其参数。3D窗口实时显示角色以相应样本速度行走的实时视图,动画实时更新以反映参数变化。视觉化工具还会通过将子链条染成红色来提供关节接近限制的反馈。

  • 测试模式 (Test Mode): 用户可以使用操纵杆控制角色行走速度,以检查步态周期在连续输入速度范围内变化时的风格。

    下图(原文 Fig. 10)展示了时间间隔和函数曲线编辑,以及动画引擎检测到双支撑持续时间低于最小阈值时的错误警告:

    Fig. 10. Time interval and function curve editing. Before (top) and after (bottom) editing the left and right swing intervals. Here the user is alerted to an error when the animation engine detects that double support duration is below a minimum threshold after adjusting the intervals. 该图像是图表,展示了在编辑左右摆动间隔前后,动画引擎检测到双支撑持续时间低于最小阈值的错误警告。上方为编辑前的状态,下方为编辑后的效果。

4.2.5. 基于模型的控制器和估计器 (Model-Based Controller and Estimator)

为了在硬件上实现风格化步行步态,本文采用一个基于模型的控制器来跟踪步态规划器计算的时间变化参考运动 r\mathbf{r}

基于模型的控制器 (Model-Based Controller)

  • 质心规划器 (Center of Mass Planner): 使用一个模型预测控制器 (MPC) 来规划机器人水平质心 (CoM) 的轨迹。MPC 公式在附录A中详细说明,它是一个稀疏二次规划 (QP),共同优化水平 CoM 和压力中心 (CoP) 轨迹。MPC 在每次步态规划器更新时(125 Hz)评估,使用 T=2sT = 2s 的预览窗口。

    下图(原文 Fig. 11)展示了优化的 CoM 和 CoP 轨迹:

    Fig. 11. Optimized CoM and CoP. The desired reference trajectories are computed by the model predictive controller given desired footstep sequence and gait timings. 该图像是一个示意图,展示了优化的质心(CoM)和支撑点(CoP)之间的关系。图中所示的参考轨迹由模型预测控制器计算,基于期望的足步序列和步态时间进行优化。

  • 全身控制器 (Whole-Body Controller): 步态规划器和 CoM 规划器输出的运动学和动力学参考由一个基于优化的全身控制器跟踪,该控制器以 500 Hz 的速率闭合状态反馈回路。它依赖于关节空间和笛卡尔空间反馈控制来计算期望的加速度和动量变化率目标,这些目标通过附录B中描述的基于任务空间的逆动力学求解器来解决。求解器是一个全身 QP,通过优化指令关节加速度和地面反作用力来解决一系列任务空间目标,同时受运动学和动力学约束,包括库仑摩擦和加速度限制。

  • 步态反馈 (Gait Feedback): 如果控制器无法充分跟踪 CoM 参考,可能需要修改机器人的步态以保持稳定性。

    • 速度调整 (Velocity Adjustment): 目标行走速度是速度命令和线性速度偏移之和,即 v=v+[Δvel0]\mathbf{v}^* = \mathbf{v} + [\Delta_{\mathrm{vel}}^\top \quad 0]^\top。偏移量 ΔvelR2\Delta_{\mathrm{vel}} \in \mathbb{R}^2 是 CoM 位置和速度误差向量的线性组合,通过一个死区函数和低通滤波器(截止频率为 0.15 Hz)。
    • 步长调整 (Step Adjustment): 即将到来的足迹位置是标称足迹位置和水平步长调整之和,即 xfoothold,lk=xfoothold,lk+[Δstep0]\mathbf{x}_{\mathrm{foothold,l}}^{k^*} = \mathbf{x}_{\mathrm{foothold,l}}^k + [\Delta_{\mathrm{step}}^\top \quad 0]^\top。通过在 CoM 误差方向上调整足迹位置,旨在将未来的 CoP 放置在更有利的接触区域,以减少下一个支撑阶段的误差。
    • 时间缩放 (Time Scaling): 计算一个时间缩放率 κtime(0,)\kappa_{\mathrm{time}} \in (0, \infty),其中 κtime>1\kappa_{\mathrm{time}} > 1 加速参考,而 κtime<1\kappa_{\mathrm{time}} < 1 减慢参考。时间缩放率计算为 κtime=e(kPϵ+kdϵ˙)\kappa_{\mathrm{time}} = e^{(k_P \epsilon + k_d \dot{\epsilon})},其中 ϵ\epsilonϵ˙\dot{\epsilon} 是 CoM 位置和速度误差在从当前足迹到下一个足迹轴上的投影, kpk_pkdk_d 是实验调整的正反馈增益。

估计器 (Estimator) 机器人状态向量 s\mathbf{s} 由一个全身状态估计器估计,该估计器以 1kHz 的频率融合机器人传感器测量值。传感器测量包括执行器编码器位置和来自骨盆(根部)连杆的 IMU 惯性数据。基于 [Solà 2015] 的扩展卡尔曼滤波器用于估计机器人的根部姿态。当脚与地面接触时,利用腿部运动学和零速度观测来估计骨盆平移。

4.2.6. 附录A:模型预测控制器 (MPC) 公式

质心位置 xcom=[xcomycom]\mathbf{x}_{\mathrm{com}} = [x_{\mathrm{com}} \quad y_{\mathrm{com}}]^\top 的水平分量演化方程为: x¨com=1zcom((z¨com+g)(xcomxcop)τym)y¨com=1zcom((z¨com+g)(ycomycop)+τxm) \begin{array}{l l l} \ddot{x}_{\mathrm{com}} = \displaystyle \frac{1}{z_{\mathrm{com}}} \left( (\ddot{z}_{\mathrm{com}} + g) (x_{\mathrm{com}} - x_{\mathrm{cop}}) - \frac{\tau_y}{m} \right) \\ \ddot{y}_{\mathrm{com}} = \displaystyle \frac{1}{z_{\mathrm{com}}} \left( (\ddot{z}_{\mathrm{com}} + g) (y_{\mathrm{com}} - y_{\mathrm{cop}}) + \frac{\tau_x}{m} \right) \end{array} 其中:

  • xcop=[xcopycop]\mathbf{x}_{\mathrm{cop}} = [x_{\mathrm{cop}} \quad y_{\mathrm{cop}}]^\top: 压力中心 (CoP) 在地面上的位置。

  • zcomz_{\mathrm{com}}: 质心 (CoM) 高度。

  • gg: 重力常数。

  • τx,τy\tau_x, \tau_y: 由机器人角动量变化引起的施加在 CoM 上的扭矩。

  • mm: 机器人质量。

    MPC 的目标是优化 CoP 航点 z\mathbf{z} 和预览窗口结束时的最终水平 CoM 位置和速度 ξT\boldsymbol{\xi}_Tz=[xcop,0ycop,0xcop,1ycop,1xcop,Nycop,N] \mathbf{z} = \left[ x_{\mathrm{cop},0} \quad y_{\mathrm{cop},0} \quad x_{\mathrm{cop},1} \quad y_{\mathrm{cop},1} \quad \dots \quad x_{\mathrm{cop},N} \quad y_{\mathrm{cop},N} \right]^\top ξT=[xcom,Tx˙com,T] \boldsymbol{\xi}_T = \left[ \mathbf{x}_{\mathrm{com},T}^\top \quad \dot{\mathbf{x}}_{\mathrm{com},T}^\top \right]^\top 它被表述为一个二次规划问题: minz,ξT(ATξTcT)WT(ATξTcT)+(zc)Wc(zc)+(Fz)Wv(Fz)s.t.xcop,0=xcopixcom,T+Apz+bp=xcomix˙com,T+Avz+bv=x˙comixcop,nCnn[0,N1] \begin{array}{r l} \underset{\mathbf{z}, \boldsymbol{\xi}_T}{\mathrm{min}} & \left( \mathbf{A}_T \boldsymbol{\xi}_T - \mathbf{c}_T \right)^\top \mathbf{W}_T \left( \mathbf{A}_T \boldsymbol{\xi}_T - \mathbf{c}_T \right) \\ & + \left( \mathbf{z} - \mathbf{c} \right)^\top \mathbf{W}_{\mathbf{c}} ( \mathbf{z} - \mathbf{c} ) + ( \mathbf{F} \mathbf{z} )^\top \mathbf{W}_v ( \mathbf{F} \mathbf{z} ) \\ \mathrm{s.t.} & \mathbf{x}_{\mathrm{cop},0} = \mathbf{x}_{\mathrm{cop}}^{i} \\ & \mathbf{x}_{\mathrm{com},T} + \mathbf{A}_p \mathbf{z} + \mathbf{b}_p = \mathbf{x}_{\mathrm{com}}^{i} \\ & \dot{\mathbf{x}}_{\mathrm{com},T} + \mathbf{A}_v \mathbf{z} + \mathbf{b}_v = \dot{\mathbf{x}}_{\mathrm{com}}^{i} \\ & \mathbf{x}_{\mathrm{cop},n} \in C_n \quad \forall n \in [0, N-1] \end{array} 其中:

  • AT\mathbf{A}_T: 选择用于使 ATξT\mathbf{A}_T \boldsymbol{\xi}_T 成为预览窗口结束时的最终捕获点 (Capture Point, CP)。

  • cT\mathbf{c}_T: 最后一个支撑多边形的质心。

  • z\mathbf{z}: CoP 航点向量。

  • c\mathbf{c}: 质心位置向量。

  • F\mathbf{F}: 有限差分矩阵。

  • WT,Wc,Wv\mathbf{W}_T, \mathbf{W}_{\mathbf{c}}, \mathbf{W}_v: 相应的目标权重矩阵。

  • xcop,0\mathbf{x}_{\mathrm{cop},0}: 初始 CoP 位置。

  • xcom,T,x˙com,T\mathbf{x}_{\mathrm{com},T}, \dot{\mathbf{x}}_{\mathrm{com},T}: 预览窗口结束时的 CoM 位置和速度。

  • xcomi,x˙comi\mathbf{x}_{\mathrm{com}}^{i}, \dot{\mathbf{x}}_{\mathrm{com}}^{i}: 初始 CoM 位置和速度。

  • Ap,Av,bp,bv\mathbf{A}_p, \mathbf{A}_v, \mathbf{b}_p, \mathbf{b}_v: CoM 的离散逆时间积分矩阵。

  • CnC_n: 每个 CoP 航点所在的凸约束多边形。

4.2.7. 附录B:任务空间逆动力学 (ID) 求解器

动力学约束 (Dynamic Constraints) 机器人被建模为一个关节式刚体系统,其动力学方程为: [τ]=H(q)q¨+C(q,q˙)cJcfc { \bigg [ } \boldsymbol{\tau} { \bigg ] } = \mathbf{H}(\mathbf{q}) \ddot{\mathbf{q}} + \mathbf{C}(\mathbf{q}, \dot{\mathbf{q}}) - \sum_c \mathbf{J}_c^\top \mathbf{f}_c 其中:

  • τRN\boldsymbol{\tau} \in \mathbb{R}^N: 关节扭矩向量。

  • H(q)\mathbf{H}(\mathbf{q}): 关节空间惯性矩阵。

  • C(q,q˙)\mathbf{C}(\mathbf{q}, \dot{\mathbf{q}}): 离心力、科里奥利力 (Coriolis) 和重力扭矩向量。

  • fc\mathbf{f}_c: 外部接触力。

  • Jc\mathbf{J}_c: 相应的接触雅可比 (Jacobian) 矩阵。

    质心动力学由牛顿-欧拉约束描述: h˙=c[r×c]fc+[0mg] \dot{\mathbf{h}} = \sum_c \left[ \mathbf{r}_{\times_c} \right] \mathbf{f}_c + \left[ \begin{array}{c} \mathbf{0} \\ -m\mathbf{g} \end{array} \right] 其中:

  • h˙=[L˙K˙]R6\dot{\mathbf{h}} = [\dot{\mathbf{L}}^\top \quad \dot{\mathbf{K}}^\top]^\top \in \mathbb{R}^6: 线动量和角动量变化率向量。

  • r×c\mathbf{r}_{\times_c}: 从 CoM 到每个接触点的向量计算出的叉积矩阵。

  • mg-m\mathbf{g}: 重力。

接触模型 (Contact Model) 采用多边形摩擦锥近似来优化每个接触点处的力,同时受库仑摩擦约束。摩擦锥由四个基向量 βc,iR3\boldsymbol{\beta}_{c,i} \in \mathbb{R}^3 近似,这些向量张成锥体的凸子集。有效接触力被编码为非负权重向量 ρcR4\pmb{\rho}_c \in \mathbb{R}^4,使用映射: fc=[βc,1βc,2βc,3βc,4]ρc \mathbf{f}_c = \left[ \boldsymbol{\beta}_{c,1} \quad \boldsymbol{\beta}_{c,2} \quad \boldsymbol{\beta}_{c,3} \quad \boldsymbol{\beta}_{c,4} \right] \pmb{\rho}_c 下图(原文 Fig. 15)展示了接触模型:

Fig. 15. Contact model. Contact forces acting at points on the convex hull of the foot are expressed as a non-negative, weighted sum of basis vectors, \(\\beta _ { c , i }\) , that lie within the friction cone.

任务空间目标 (Task-Space Objectives) 期望的关节空间和空间加速度目标 ut\mathbf{u}_t 可以表示为关节加速度向量的线性函数: ut=J˙tq˙+Jtq¨ \mathbf{u}_t = \dot{\mathbf{J}}_t \dot{\mathbf{q}} + \mathbf{J}_t \ddot{\mathbf{q}} 其中 Jt\mathbf{J}_t 是与配置相关的任务雅可比矩阵。 同样,质心动量变化率可以表示为: h˙=A˙hq˙+Ahq¨ \dot{\mathbf{h}} = \dot{\mathbf{A}}_h \dot{\mathbf{q}} + \mathbf{A}_h \ddot{\mathbf{q}} 其中 Ah\mathbf{A}_h 是与配置相关的质心动量矩阵 (Centroidal Momentum Matrix, CMM) [Orin and Goswami 2008]。

任务空间逆动力学优化 (Task-Space Inverse Dynamics Optimization) 所提出的逆动力学求解器通过以下二次规划 (QP) 公式优化关节加速度向量 q¨\ddot{\mathbf{q}} 和接触力 fc\mathbf{f}_c(通过 ρc\pmb{\rho}_c 表示): minq¨,ρ(uJ˙q˙Jq¨)Wt(uJ˙q˙Jq¨)+λq¨q¨q¨+λρρρ+λττˉτˉs.t.A˙hq˙+Ahq¨=c[r×c]fc+[0mg]kl(qminq)blq˙q¨kl(qmaxq)blq˙q¨0ρcfcfmax \begin{array}{r l} \underset{\ddot{\mathbf{q}}, \pmb{\rho}}{\mathrm{min}} & \left( \mathbf{u} - \dot{\mathbf{J}} \dot{\mathbf{q}} - \mathbf{J} \ddot{\mathbf{q}} \right)^\top \mathbf{W}_t \left( \mathbf{u} - \dot{\mathbf{J}} \dot{\mathbf{q}} - \mathbf{J} \ddot{\mathbf{q}} \right) \\ & + \lambda_{\ddot{\mathbf{q}}} \ddot{\mathbf{q}}^\top \ddot{\mathbf{q}} + \lambda_{\pmb{\rho}} \pmb{\rho}^\top \pmb{\rho} + \lambda_{\boldsymbol{\tau}} \bar{\boldsymbol{\tau}}^\top \bar{\boldsymbol{\tau}} \\ \mathrm{s.t.} & \dot{\mathbf{A}}_h \dot{\mathbf{q}} + \mathbf{A}_h \ddot{\mathbf{q}} = \sum_c \left[ \mathbf{r}_{\times_c} \right] \mathbf{f}_c + \left[ \begin{array}{c} \mathbf{0} \\ -m\mathbf{g} \end{array} \right] \\ & k_l (\mathbf{q}_{\mathrm{min}} - \mathbf{q}) - b_l \dot{\mathbf{q}} \leq \ddot{\mathbf{q}} \\ & k_l (\mathbf{q}_{\mathrm{max}} - \mathbf{q}) - b_l \dot{\mathbf{q}} \geq \ddot{\mathbf{q}} \\ & \mathbf{0} \leq \pmb{\rho} \\ & \forall_c \mathbf{f}_c \leq \mathbf{f}_{\mathrm{max}} \end{array} 其中:

  • u\mathbf{u}: 期望任务空间加速度和动量变化率目标的堆叠向量。

  • J\mathbf{J}: 相应的雅可比矩阵。

  • ρ\pmb{\rho}: 每个接触点的 ρc\pmb{\rho}_c 权重向量。

  • Wt\mathbf{W}_t: 目标权重矩阵。

  • λρ,λq¨,λτˉ\lambda_{\pmb{\rho}}, \lambda_{\ddot{\mathbf{q}}}, \lambda_{\bar{\boldsymbol{\tau}}}: 正则化权重。

  • τˉ:=cJcTfc\bar{\boldsymbol{\tau}} := - \sum_c \mathbf{J}_c^T \mathbf{f}_c: 由接触力引起的扭矩分量。正则化 τˉ\bar{\boldsymbol{\tau}} 可以减少不必要的内部力。

  • 约束 (21) 强制执行质心动力学约束。

  • 约束 (22) 和 (23) 强制执行具有刚度 klk_l 和阻尼 blb_l 增益的二阶动力学的软位置限制。

  • 约束 (24) 强制执行所采用接触力模型的非负约束。

  • 约束 (25) 将非活动接触的最大接触力限制为 0。

    从优化后的 q¨\ddot{\mathbf{q}}ρ\pmb{\rho} 值,利用公式 (17) 和 (15) 推导出最终的接触力和关节扭矩解。

5. 实验设置

本文在三个不同的机器人上展示了其建模的实用性:一个小型恐龙风格双足机器人、一个成人大小的人形机器人以及一个以Groot为主题的儿童尺寸机器人。这些机器人被选择用于展示该方法对具有不同比例、质量分布和运动学特征的双足机器人进行步态动画的通用性。

5.1. 数据集

本文没有使用传统意义上的“数据集”,而是使用了作者自己开发的三个机器人模型进行模拟和物理实验。这些模型代表了不同的机器人配置,以验证方法的泛化能力。

  • 机器人模型:
    • Groot: 儿童尺寸的人形机器人,具有5自由度 (DoF) 的腿部(带线接触脚)、6自由度手臂(带耸肩功能)和3自由度颈部。它使用电执行器控制关节。

    • Groot Lower Body: Groot 机器人的下半身版本,具有10个执行器,身高650毫米,体重19.3公斤。

    • Humanoid: 成人尺寸的人形机器人,基于 [Rodriguez et al. 2019] 的设计,具有6自由度腿部、2自由度脊柱、4自由度手臂和3自由度颈部。

    • Dino: 小型恐龙风格双足机器人,具有6自由度腿部(带反向膝关节)、4自由度颈部(带鸟类运动学特征)和4自由度分段尾部(带交替的偏航和俯仰关节)。

      以下是不同机器人的关键统计数据:

      #Act height (mm) weight (kg)
      Groot 25 1155 18.5
      Groot Lower Body 10 650 19.3
      Humanoid 25 1640 74.5
      Dino 20 615 16.9

#Act: 执行器数量。

  • 模拟环境: 所有模拟实验均使用 MuJoCo [Todorov et al. 2012] 进行。每个机器人均使用物理上合理的执行器尺寸进行建模。
  • 硬件部署: Groot 机器人及其下半身版本在物理硬件上进行了验证,而成人尺寸人形机器人和恐龙机器人则在模拟中进行了演示。
  • 计算资源: 模拟和硬件实验均在 Intel i7 计算机上实时进行。

5.2. 评估指标

本文没有使用标准定量评估指标,如精度、召回率或F1分数等。相反,其评估主要侧重于以下几个方面:

  1. 步态风格的艺术表现力 (Artistic Expressiveness of Gait Style):

    • 概念定义: 评估所设计步态能否准确传达艺术家期望的风格(例如,快乐的、鬼鬼祟祟的、受伤的、放松的)。这是一种主观评估,通过视频演示和用户研究来体现。
    • 评估方式: 动画师通过交互式编辑器设计不同风格的步态,并在模拟器或物理机器人上实时观察其表现。用户研究中,参与者也根据自己的概念设计步态,并评估其与初始概念的符合程度。
  2. 步态在连续速度范围内的泛化能力 (Generalization over Continuous Velocity Range):

    • 概念定义: 评估所设计的步态风格是否能在机器人从静止到快速行走、转向和侧移等连续速度变化过程中保持其风格特征,并平滑过渡。
    • 评估方式: 在测试模式下,用户通过操纵杆控制机器人速度,观察步态在不同速度下的表现是否一致且平滑。
  3. 物理可行性与稳定性 (Physical Feasibility and Stability):

    • 概念定义: 评估生成的步态是否符合机器人的运动学和动力学约束,是否能在实际环境中稳定行走,并对外部干扰(如推力)具有鲁棒性。
    • 评估方式:
      • 运动学可行性: 编辑器提供关节限制接近警告,帮助艺术家设计可行步态。
      • 动力学可行性: 通过基于模型的控制器和步态反馈机制(速度调整、步长调整、时间缩放)确保CoM在支撑区内,维持平衡。
      • 稳定性实验: 对恐龙机器人进行推力恢复实验,观察机器人受到外部扰动后的恢复能力。
      • 模拟到现实的差距 (Sim-to-Real Gap) 分析: 比较模拟机器人和物理机器人(包括穿戴服装)的步态函数跟踪误差。
        • 概念定义: 跟踪误差通常衡量机器人的实际运动与期望参考轨迹之间的差异。对于关节角度或姿态分量,其误差可以定义为参考值与实际测量值之间的差值。
        • 数学公式(示例,若论文未给出具体公式,此为常见定义): 均方误差 (Mean Squared Error, MSE) 或 均方根误差 (Root Mean Squared Error, RMSE) 对于某个特定时间步 tt,某个状态量 yy 的跟踪误差 e(t)=yref(t)yactual(t)e(t) = y_{\mathrm{ref}}(t) - y_{\mathrm{actual}}(t)。 在一段时间 TT 内的平均跟踪误差通常可以用均方误差来表示: MSE=1Ni=1N(yref,iyactual,i)2 \mathrm{MSE} = \frac{1}{N} \sum_{i=1}^{N} (y_{\mathrm{ref},i} - y_{\mathrm{actual},i})^2 或者均方根误差: RMSE=1Ni=1N(yref,iyactual,i)2 \mathrm{RMSE} = \sqrt{\frac{1}{N} \sum_{i=1}^{N} (y_{\mathrm{ref},i} - y_{\mathrm{actual},i})^2}
        • 符号解释:
          • NN: 样本点或时间步的总数。
          • yref,iy_{\mathrm{ref},i}: 第 ii 个时间步的参考状态量(例如,骨盆偏航角度、高度、肘部弯曲角度)。
          • yactual,iy_{\mathrm{actual},i}: 第 ii 个时间步的实际测量状态量。
        • 本文中的使用: 在图14中,本文展示了跟踪误差的标准差 (standard deviation),这表明作者关注的是误差的波动性,而不仅仅是平均值。
  4. 易用性与设计效率 (Ease of Use and Design Efficiency):

    • 概念定义: 评估艺术家(包括非机器人专家)使用该工具设计风格化步态的难易程度和所需时间。
    • 评估方式: 记录不同步态的创作时间,并进行小规模用户研究,收集用户对工具易用性、交互体验和与传统动画工具对比的反馈。

5.3. 对比基线

本文没有直接与特定的、可量化的基线模型进行性能指标上的对比。这主要是因为论文的核心贡献在于提供一个实时、交互式、物理可行且风格可控的步态设计工作流,而现有方法通常在这些方面存在局限(例如,需要离线训练、缺乏艺术家控制、不考虑物理约束或仅限于虚拟环境)。

相反,论文通过以下方式间接“对比”或“展示了超越现有方法的优势”:

  • 与传统计算机动画方法的对比: 强调了传统程序化动画不考虑机器人物理约束的局限性,从而突出了本文方法的物理可行性优势。

  • 与基于学习的机器人控制方法的对比: 指出基于学习的方法通常侧重于功能而非风格,且需要训练时间,无法提供交互式反馈,从而凸显了本文方法在艺术家控制和实时性方面的优势。

  • 与现有图形化步态编辑工具的对比: 强调了现有工具可能仅限于模拟、需要逐步关键帧或方法未公开的局限性,从而突出了本文方法在连续步态泛化和实时硬件编辑方面的创新。

    因此,本文的“对比”更多地体现在工作流、功能和适用性上,而不是直接的量化指标对比。实验部分主要通过在多种机器人上的演示、稳定性测试和模拟到现实的差距分析来验证自身方法的有效性和通用性。

6. 实验结果与分析

本文在三种机器人上验证了其方法的实用性:一个小型恐龙风格双足机器人、一个成人大小的人形机器人和Groot机器人。这些机器人具有不同的比例、质量分布和运动学特性。所有模拟均使用MuJoCo物理引擎,并在Intel i7计算机上实时进行。

6.1. 核心结果分析

6.1.1. 小型恐龙模拟 (Small-Scale Dinosaur Simulation)

本文使用所提出的方法为小型恐龙模型设计了两种不同的动态步态:“恐龙步态 (dino gait)”和不对称的“受伤步态 (injured gait)”。这个角色有6自由度腿部、4自由度颈部和4自由度分段尾部。

恐龙步态 (Dino Gait):

  • 周期持续时间在“原地”、“慢速前进”和“快速前进”样本之间差异显著,当角色从0加速到0.4米/秒时,步进频率增加一倍以上。这种时序变化在高速时减少了所需的步长,同时在慢速时保持了休闲的步进频率。
  • 所有样本都具有对称的摆动间隔。
  • 颈部和尾部运动是该角色的显著特征,作者花费了大部分创作时间来为每个样本动画化相应的周期性关节轨迹。颈部动画模仿典型的鸟类行走,尾部动画灵感来源于模拟兽脚类恐龙步态的视频。

受伤步态 (Injured Gait):

  • 在“原地”和“慢速前进”样本中具有不对称的摆动间隔。结合正向姿态X轴偏置,较短的左摆动阶段旨在表现为右腿受伤。

  • 对于“快速前进”样本,使用与恐龙步态相同的参数,允许角色在高速时混合回对称步态。

    下图(原文 Fig. 12)展示了恐龙步态时序,彩色区域表示左右摆动阶段所花费的时间,圆的半径表示周期持续时间:

    Fig. 12. Dinosaur gait timing. The colored regions indicate the time spent in the left and right swing phase. The radius of each circle represents the cycle duration. Top: the Dino Gait features symmetric swing intervals with a decreasing cycle time as the gait velocity increases. Bottom: the Injured Gait is asymmetric at slow speeds and symmetric at the Forward Fast speed. 该图像是图表,展示了恐龙行走步态的时间分配。图中分别展示了“Dino Gait”(上方)和“Injured Gait”(下方)在不同移动速度下的摆动相位时间分布。圆形区域中的颜色表示左侧(LS)和右侧(RS)摆动相位所花费的时间,圈的半径代表周期时长。随着速度的增加,Dino Gait显示出对称的摆动时间,而Injured Gait在慢速时则为不对称。

  • Dino Push Recovery Experiment (恐龙推力恢复实验):

    • 在机器人以慢速前进时,对机器人的骨盆施加25N、持续1秒的推力,以演示模型预测规划和控制栈的稳定性。

    • 时间缩放 (Time Scaling): 在推力施加前,时间缩放机制就已经活跃,这对于动态步态(特别是考虑到角色窄脚宽和快速CoM动态)是预期的。

    • 推力响应: 推力开始后不久,时间缩放率达到最大单支撑和双支撑限制,试图增加步进频率。同时,步长调整开始增加,最高达到约0.1米。接近推力结束时,速度调整开始增加,最高达到约0.4米/秒。

    • 直觉解释: 时间缩放机制对小误差响应迅速;步长调整对可通过足部放置纠正的较大误差响应;速度调整则在前两种策略失败时,对持续误差进行响应。

    • 样本激活: 当速度调整上升和下降时,步态采样器激活了“快速前进”样本。除了确保行为与创作风格保持一致外,样本混合在这种情况下通过增加步进频率来辅助恢复。

      下图(原文 Fig. 13)展示了恐龙推力实验中机器人的恢复情况:

      Fig. 13. Dino push experiment. The shaded area indicates the push interval. The top plot shows the sample activation as the robot adjusts it's velocity. The bottom plots show the response of the gait adjustment mechanisms used for recovery. 该图像是图表,展示了Dino推实验中的数据。上部展示了机器人调整速度时的样本激活,底部图表展示了步伐和速度调整的响应机制,以及相应的时间标度变化。推的区间以阴影部分表示。

6.1.2. 成人尺寸人形机器人模拟 (Adult-Sized Humanoid Simulation)

  • 本文为成人尺寸人形机器人设计了几种步行步态,该机器人具有6自由度腿部、2自由度脊柱、4自由度手臂和3自由度颈部。
  • 默认风格: 展示了步态规划器计算的标称参考。
  • 风格化行走: 模拟了一种放松的人类步态。较慢的周期持续时间(原地1.5秒)和开放姿态有助于建立休闲风格,骨盆和脊柱的偏航动画模拟了摆动阶段臀部和肩部的自然反向旋转。
  • 多样化步态: 还展示了另外三种具有不同上半身运动和脚跟/脚趾接触的步态,包括鬼鬼祟祟的行走、双弹跳行走以及带脚跟落地和脚趾离地的中性行走。

6.1.3. Groot 硬件平台 (Groot Hardware Platform)

  • 本文为Groot主题硬件平台设计并评估了几种风格化步态。该儿童尺寸人形机器人具有5自由度腿部(带线接触脚)、6自由度手臂和3自由度颈部。

  • 模拟到现实的差距 (Sim-to-Real Gap) 分析:

    • 为了比较模拟和硬件结果,作者进行了前进行走实验,将相同的创作风格部署到三种配置:模拟机器人、物理机器人和穿戴完整服装的物理机器人。

    • 结果: 模拟到现实的差距相对较小。模拟机器人和物理机器人之间的平均跟踪误差相似,但在模拟中标准差更小,表明性能更可重复。尽管跟踪误差的波动性较高,但风格很好地转移到了硬件平台,并且控制器在期望的速度范围内可靠地跟踪了所需的步态。步行步态对未建模的服装也具有鲁棒性,并能处理分层上半身运动(如边走边挥手)带来的干扰。

      下图(原文 Fig. 14)展示了Groot角色的动画跟踪误差:

      Fig. 14. Animation tracking for the Groot character. Early Concept Exploration, Only. We compare the pelvis yaw, pelvis height, and elbow bend tracking for three configurations: the simulated robot, the physical robot, and the physical character with full costume. The highlighted regions show the standard deviation of the errors over several walk cycles as a function of gait phase. 该图像是图表,展示了Groot角色的动画跟踪。上部比较了模拟机器人、无服装和全服装角色的胯部偏航、胯部高度及肘部弯曲跟踪。下部显示了不同步态阶段的标准差误差,图中使用不同颜色线条表示各配置的跟踪结果。

  • 其他风格: 视频演示了其他步行风格,包括懒散的行走、手臂伸展的顽皮行走以及带显著手臂摆动的双弹跳行走。这些风格突出了所提出的步态参数化可实现的一些变体,包括不同的步态时序、姿态和上半身运动。

  • 下半身机器人: 在相同设计的下半身机器人上演示了另一种动态步态。尽管线接触脚和缺乏踝关节滚转带来了动画挑战(例如无法跟踪长摆动间隔或动画脚的完整6自由度姿态),但所提出的方法仍然能够相对容易地在该受限硬件上创作动态步态。

6.1.4. 步态设计 (Gait Design)

  • 创作时间: 使用所提出系统动画化步态所需的时间取决于风格的复杂性和目标角色。
    • 下半身Groot机器人:在几分钟内直接在硬件平台上编辑参数,设计了一个富有表现力的弹跳步态。
    • Groot机器人:一些风格直接在硬件上创作,另一些在模拟中创作后部署到硬件。
    • 成人尺寸人形机器人:步态改编自使用传统动画工具创作的现有动画曲线。
    • 恐龙步态:由于需要独特的尾部和颈部运动,从头开始创作大约需要1-2小时。

6.1.5. 用户研究 (User Study)

  • 参与者: 4名不熟悉该工具的参与者。其中2名有Maya动画经验,2名无动画经验但有机器人工作经验。
  • 任务: 在对工具进行简要介绍后,每位参与者被要求为成人尺寸人形机器人设计一个基于其初步概念的步态样本。
  • 结果: 参与者花费25到45分钟编辑步态。
    • 与概念的比较: 用户普遍满意其设计步态的能力,但在发现步态时序和运动范围的限制时做出了妥协。
    • 交互式编辑体验的影响: 用户认为编辑器的交互性帮助他们快速迭代并鼓励实验。一位不熟悉传统动画的用户表示,该过程帮助他们可视化每个参数如何影响步态的个性。
    • 与传统动画工具的比较: 一位有Maya经验的用户表示,缺少在时间轴上定义关键帧的能力。另一位用户报告说,尽管缺少一些功能,但该工具更容易上手并带来更快的结果。
    • 困难与容易之处: 所有用户都对用户界面功能(例如,颜色编码的样条曲线;慢动作回放)提出了改进建议。几位用户表示动画曲线编辑器易于使用。

6.2. 数据呈现 (表格)

本文的实验结果主要通过文字描述、图像(如图12、13、14)和视频演示来呈现,并没有包含需转录的量化结果表格。前面表格(Table 1, 2, 3, 4)属于方法论和实验设置的描述部分。

7. 总结与思考

7.1. 结论总结

本文成功提出了一种用于机器人角色风格化步行步态的交互式创作系统。该系统通过以下几个核心创新点实现了这一目标:

  • 通用性: 证明了其建模方法适用于不同尺寸、比例、自由度和质量分布的双足机器人。
  • 易用性与直观性: 动画师,即使没有机器人经验,也能快速直观地设计风格化步行步态,其用户界面暴露了丰富的动画参数,同时隐藏了物理系统的复杂性。
  • 交互式工作流: 实现了直接在硬件上进行交互式编辑的工作流,这得益于所提出的步态参数化、相位空间样本混合以及在保持创作风格的同时能应对干扰的步态调整策略。
  • 鲁棒性: 所设计的步态对外部干扰具有自然响应,如在恐龙角色上的推力恢复实验所示。

7.2. 局限性与未来工作

论文作者也指出了当前方法的几个局限性并提出了未来的研究方向:

  • 安全性保证: 尽管工具可以在硬件上直接创作,并设置了多重安全措施防止机器人跌倒,但无法保证动画师的编辑不会超出控制器的能力范围。未来的工作可以探索提供安全保证的在线创作工具。
  • 自动内容移植: 手动曲线编辑并非适用于所有用例。未来计划研究将关键帧动画内容和运动捕捉数据自动移植到该系统中的方法。
  • 更复杂的步态: 当前创作限于步行周期。未来可以扩展到更具挑战性的步态,如跑步、跳跃,以及适合程序化创作工具的循环杂技动作。
  • 学习型控制: 基于模型的控制栈构建和调整困难,且仿真到现实的差距难以识别和解决。学习型控制(尤其是模仿学习)是一个有前景的替代方案,其鲁棒性通过训练获得。未来计划探索使用本文技术构建密集、无伪影的步态库来训练强化学习 (Reinforcement Learning, RL) 策略,并结合基于学习的参考跟踪控制器以维持交互式动画工作流。

7.3. 个人启发与批判

7.3.1. 个人启发

这篇论文提供了一个非常重要的启发,即在机器人控制领域,艺术性和功能性并非总是互斥的。通过巧妙的系统设计,可以将复杂的物理约束和控制逻辑封装起来,为艺术家提供一个直观、富有表现力的创作界面。这对于未来的服务机器人、娱乐机器人和人机交互领域具有巨大潜力,能够让机器人不仅能够完成任务,还能以更具“个性”和“生命力”的方式与人类互动。

  • 跨学科融合的价值: 本文是计算机图形学(程序化动画、用户界面设计)和机器人学(模型预测控制、逆动力学、状态估计)深度融合的典范。这种跨学科的结合是解决复杂工程问题的有效途径。
  • 实时反馈的重要性: 交互式设计中的实时反馈机制对于提高用户体验和设计效率至关重要。这不仅适用于动画创作,也适用于其他需要人类专业知识进行优化的机器人任务。
  • 参数化设计的威力: 通过精心设计的参数化,能够以少数高层级参数控制复杂的低层级运动,同时内化物理约束,这是一种高效且强大的设计范式。

7.3.2. 批判与潜在改进

  • 通用性挑战: 尽管论文在三类机器人上进行了演示,但机器人形态和自由度差异仍然有限。对于更复杂、多关节、或具有非对称结构(例如,四足机器人或多臂机器人)的机器人,当前的参数化和相位空间混合策略是否能同样有效地泛化,还需要进一步验证。
  • “艺术性”的主观评估: “风格化”和“富有表现力”的评估在很大程度上是主观的。虽然用户研究提供了一些定性反馈,但缺乏更严格的、跨文化或跨背景的感知研究来量化不同步态风格的“艺术效果”或“情感传达”。
  • 模型准确性与仿真到现实的挑战: 论文提到“sim-to-real gap fairly small”,但这通常高度依赖于机器人模型的准确性和环境的建模。对于更复杂、不确定性更高的物理世界,这种差距可能更大。未来的工作可能需要更强大的自适应控制或更鲁棒的领域随机化 (domain randomization) 技术来进一步缩小这一差距。
  • 参数优化的难度: 尽管参数化是抽象的,但对于初次使用的动画师来说,找到最佳参数组合以实现特定风格仍可能是一个试错过程,尤其是在需要精细调整多个函数曲线和属性时。引入一些基于示例学习或优化建议的辅助功能可能会进一步提高设计效率。
  • 步态调整策略的限制: 步态反馈机制(速度、步长、时间缩放)是启发式的,在极端干扰或复杂地形下,其性能可能受到限制。更高级的、基于学习或混合控制的适应策略可能提供更好的鲁棒性。

相似论文推荐

基于向量语义检索推荐的相关论文。

暂时没有找到相似论文。