CVPR'24 Highlight|一个框架可以完成角色动作的生成,精细到手部运动-人工智能

首页 2024-07-12 11:47:08

AIxiv专栏是本网站发布学术技术内容的专栏。在过去的几年里,AIxiv专栏收到了2000多份内容,覆盖了世界各大高校和企业的顶级实验室,有效地促进了学术交流和传播。假如你有一份优秀的工作要分享,欢迎提交或联系报告。投稿邮箱:liyazhou@jiqizhixin.com;zhaoyunfeng@jiqizhixin.com

作者蒋楠是北京大学智能学院二年级博士生,导师朱一新教授,与北京通用人工智能研究院黄思远博士联合开展研究工作。他的研究重点是人物交互理解和数字人的动作生成,并在ICCV、CVPR和ECCV上发表了许多论文。

近年来,人物动作生成的研究取得了显著进展,在计算机视觉、计算机图形学、机器人技术和人机交互等多个领域得到了广泛的关注。然而,大多数现有的工作只关注动作本身,同时以场景和动作类别作为约束的研究仍处于起步阶段。

为了解决这个问题,北京通用人工智能研究所与北京大学和北京理工大学的研究人员提出了一个使用自回归条件扩散模型的动作生成框架,实现真实的、语义的、符合场景的、无长度限制的动作生成。此外,文章还发表了大型人物 - 场景交互数据集 TRUMANS,它包含准确而丰富的人物动作和三维场景标记信息。

  • 论文链接:https://arxiv.org/pdf/2403.08629
  • 项目主页:https://jnnan.github.io/trumans/
  • 代码、数据链接:https://github.com/jnnan/trumans_utils

研究概述

? ? ? ? ? ? ? ? ? ? ? ? ? ?图 1. 人物 - 场景交互作用的生成方法和 TRUMANS 数据集

与场景对象的互动是人们日常活动的重要组成部分,例如坐在椅子上,拿起瓶子或打开抽屉。如今,模拟人体动作已成为计算机视觉、计算机图形学、机器人技术和人机交互等领域的一项重要任务。生成人体动作的核心目标是创造自然、逼真、多样化的动态模式。深度学习技术的兴起使人体动作生成方法迅速发展。人体建模技术的重大突破也使建立庞大的人体动作数据库更加方便。近年来,由数据驱动的人体动作生成技术越来越受到研究界的重视。

目前,在给定交互对象时,大多数动作生成的方法都以语义为控制变量 [1] 和场景 [2] 由于缺乏高质量的人体动作和场景交互数据集,对生成动作的研究仍处于起步阶段。现有的真实场景数据集在人体动作捕捉质量上仍存在不足。尽管通过 VICON 设备录制的动作捕捉数据集可以提高质量,但这些数据集缺乏多样性 3D 人与物体在场景中的交互。最近,由于其成本低、适应性高,使用虚拟仿真技术的合成数据集引起了研究人员的关注。

针对现有方法的不足,本文提出了一个由自回归扩散模型驱动的集成场景和语义信息的动作生成框架,可以在给定动作类别和路径点的条件下生成符合场景约束的人物动作。为了获取场景中的动作数据,本工作发布了一个全新的角色 - 场景交互数据集 TRUMANS,它包含在现实世界中捕捉到的东西 15 小时动作数据并合成到 3D 在虚拟场景中,卧室、餐厅、办公室等 100 场景配置。TRUMANS 全面的日常行为,包括寻路、物体操作、与刚性和铰接物体的交互等。

动作生成框架

? ? ? ? ? ? ? ? ? ? ? ? ? ? ?图 2. 本文提出的动作生成框架采用自回归机制,以场景和动作类别为条件控制动作的生成。

本研究提出的方法是通过自回归逐步生成动作。该段的起始动作起源于上一段的末尾,后续动作由扩散模型产生。为了使生成的动作符合场景约束,作者根据空间占有网格提出了局部场景传感器,编码了每个动作终点附近环境的特征,并将其纳入动作生成模型的条件。为了将逐帧动作标签作为可控条件,动作信息编码器将时间信息集成到动作片段中,使模型能够随时接受指令,并生成符合给定动作标签的运动。

本文提出的方法可以支持路径轨迹约束和关节位置的精确控制。由于本文采用了自回归逐段生成的机制,可以通过为每个动作生成设定子目标来实现路径和关节约束。对于行走动作控制,每个子目标描述了当前段末人物骨盆在水平面上的预设位置。根据当前段开始和结束位置之间的场景信息,模型生成全身动作,包括骨盆运动轨迹。例如,当子的目标位于椅子上时,角色需要坐下。同样的技术也用于控制涉及物体抓取的动作。例如,在生成抓取瓶子或推门的动作时,将手的关节位置设置为子目标,用户将其设置在物体的预期位置。模型将关节上的噪音归零,补充人体其他部位的动作。通过优化手和物体的相对位置,实现进一步的精细接触。

本地场景传感器用于获取本地场景的几何信息,并将其作为运动生成的条件。具体来说,给定一个场景,首先生成一个全球占用网格,每个单元分配一个布尔值来表示它是否可以达到,1 表示可达,0 表示无法到达。本地占用网格是以当前循环的子目标为中心的三维网格,垂直范围内从 0 米到 1.8 在第一帧中,方向与角色骨盆的偏航方向对齐。通过查询全局占用网格获得本地占用网格的值。本文提出使用 Vision Transformer (ViT) 编码体素网格。通过沿 xy 本地占用网格的平面划分, z 以轴视为特征通道构建轴视 Token,并将这些 Token 输入到 ViT 模型中。场景经过 ViT 编码后的输出被用作动作生成模型的条件。

与以往基于单一动作描述生成完整动作序列的方法不同,本文在生成长期动作时逐帧使用动作标签作为条件。在这个模型中,一个特定的动作可能超过一个循环,并在多个循环中继续。因此,模型需要了解动作执行的过程。为了解决这个问题,本研究引入了一个支持逐帧动作类别标签的进度标识符。具体的实现方式是原始的 multi-hot 在动作标签上,为每个完整的交互添加一个 0 到 1 随时间线性增长之间的数量。这种操作使模型能够处理跨多个循环的动作,增强生成动作序列的语义完整性和连续性。

数据集

在数据方面,本文发布了一个新的角色 - 场景交互数据集 TRUMANS,精确复制 3D 在物理环境中,合成场景具有数据质量和规模;包括 15 小时长序列人体动作捕捉,配套 100 室内场景,包括卧室、客厅、办公室等。虽然场景是合成的,但作者通过仔细还原每个合成场景,确保人与物之间的互动自然准确。TRUMANS 动作涵盖了日常人物的行为,包括寻路、抓取、与刚性和铰接物体的交互。为了进一步提高数据的可扩展性,本文应用了一种基于现有数据的数据增强方法,使数据集中的对象能够在一定范围内改变位置和大小,并自动更新角色动作以匹配变化。

? ? ? ? ? ? ? ? ? ? ? ? ? ? 图 3. TRUMANS 动作捕捉数据集

? ? ? ? ? ? ? ? ? ? ? ? ? ? 图 4. 根据变化的物体尺寸自动调整动作,有效扩展数据规模

实验结果

以下是本文提出的动作生成方法的应用场景示例。

(1)基于给定的路径关键点,本文可以在各种场景中产生行走动作,人物对场景中的障碍物有自然反馈。
(2)本文适用于捕获和生成手持小物体的交互动作。例如,走近并抓住放在桌子上的水瓶,并做出饮用水的动作。在完成过程中,需要根据场景布局进行调整。
(3)基于给定手的运动轨迹,生成满足轨迹的全身运动,不与场景中的物体发生冲突。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ?图 5. 动作产生的多样性显示

? ? ? ? ? ? ? ? ? ? ? ? ? ? ?图 6. 给定手部运动轨迹和场景的全身运动

? ? ? ? ? ? ? ? ? ? ? ? ? ? 图 7. 手持小物体的交互作用产生

为量化本文方法的性能,作者根据交互对象是否可移动,构建了两套评价体系。本文对静态交互物体进行了评估,包括坐、躺、在场景中行走。评价指标主要针对运动是否与场景穿模、脚滑动、被试生成质量的主观评价。对于动态交互对象,本文重点关注掌握过程和后续交互动作。评价指标量化了动作是否符合给定类别、动作多样性、穿模程度和主观评价。此外,研究还比较了使用情况 TRUMANS 以及现有的 PROX 和 GRAB 数据集训练获得的动作生成质量。实验结果证实了本文提到的方法的优势和优势 TRUMANS 数据对人物 - 场景交互生成任务带来的全面质量提升。

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 表 1-2. 在不同方法和数据集训练结果的比较中,动态与静态物体的交互作用产生了结果

以上是CVPR'24 Highlight|一个框架可以完成人物动作的生成,详细介绍手部运动的细节。请多关注其他相关文章!


p