作者:Yao Feng等论文题目:ChatPose: Chatting about 3D Human Pose 来源:CVPR 2024 论文链接:https://arxiv.org/abs/2311.18836 内容整理:王怡闻 ChatPose是一个利用大规模语言模型(LLMs)来理解和推理3D人体姿态的框架,该框架可以从图像或文本描述中获取信息。传统的人体姿态估计和生成方法通常是独立操作的,缺乏语义理解和推理能力。ChatPose通过将SMPL姿态嵌入到多模态LLM中作为独特的信号标记,使其能够直接从文本和视觉输入中生成3D身体姿态。借助多模态LLM的强大能力,ChatPose统一了传统的3D人体姿态生成和估计任务,同时提供了用户交互功能。此外,ChatPose使LLMs能够运用其广泛的世界知识来推理人体姿态,从而实现两个高级任务:推测性姿态生成和姿态估计推理。我们的结果表明,ChatPose在这些新提出的任务上表现优于现有的多模态LLM和特定任务方法。此外,ChatPose基于复杂推理理解和生成3D人体姿态的能力为人体姿态分析开辟了新的方向。
图1
现有的3D姿态估计和生成系统被限制在狭窄的任务中。这与LLMs所展示的通用推理能力形成了对比。现有的多模态LLMs能够感知和解释图像中的信息,并基于丰富的世界知识进行推理,特别擅长描述场景,包括人物的外貌、活动和高级行为。如果LLM能将这种通用知识与3D人体姿态和运动联系起来,它将拥有超越现有解决方案的强大推理能力。
为探讨这个问题,我们引入了ChatPose,一种微调多模态大规模语言模型以预测人体姿态的方法,姿态以SMPL参数表示。我们的方法将SMPL姿态嵌入为一个独特的标记,提示LLM在被问及SMPL姿态相关问题时输出这些标记。我们从这个标记中提取语言嵌入,并使用多层感知器(MLP)直接预测SMPL姿态参数。
我们在各种多样化任务上评估了ChatPose,包括从单张图像进行3D人体姿态估计和根据文本描述生成姿态的传统任务。一旦LLMs能够理解SMPL姿态,它们就可以利用其固有的世界知识来关联和推理人体姿态,而无需大量额外数据或训练。这一能力引发了两个关于人体姿态的新任务:(1)推测性姿态生成(SPG):与根据文本生成姿态的方法不同,我们要求LLM推测,例如,“如果这个人感到疲倦,他们的姿态会如何变化?”这需要理解疲倦对身体的影响以及如何转换为3D姿态。(2)基于推理的姿态估计(RPE):我们的方法不向多模态LLM提供包围个体的裁剪边界框,而是让模型接触整个场景,从而提出关于个体及其姿态的查询。例如,“戴眼镜的所有人的姿态是什么?”这需要将场景理解与3D人体姿态结合起来。
我们的主要贡献如下:
图2
如上图所示,ChatPose的架构包括以下组件:
处理流程
1. 输入处理
2. 文本生成
3. 姿态嵌入提取
4. 姿态参数预测
5. 人体网格生成
在ChatPose的训练过程中,我们将视觉编码器和视觉投影层保持冻结状态,仅训练 SMPL 姿态投影层 。此外,我们使用LoRA微调LLM,其参数记为 。最终的可优化参数集为 。使用提供的真实文本输出 和 SMPL 姿态参数 ,我们使用以下目标函数优化模型:
其中,第一个项是交叉熵损失,第二项是姿态损失,即真实和估计姿态参数之间的L1差。 和 分别作为相应损失项的权重。
为了训练我们的多模态LLM模型,我们利用现有的特定任务数据集构建数据。
从文本生成姿态
从详细的文本描述中生成3D人体姿态。数据对在这种情况下是SMPL姿态参数和详细的文本描述标签 。为了将这些数据格式化为问答形式,我们使用模板,如:
用户:{描述},你能给出这个人的SMPL姿态吗?
助手:当然,可以。这是 <POSE>。
其中 包含数据集中姿态描述 。
人体姿态估计
传统的3D人体姿态估计方法通常涉及使用裁剪图像来回归SMPL身体形状和姿态参数。同样,我们使用裁剪图像和SMPL姿态参数的配对 。为了将这些数据适当地格式化为视觉问答形式,我们使用如下模板:
用户:<IMAGE> 你能提供这个图像中心人物的SMPL姿态吗?
助手:当然,可以。这个人的SMPL姿态是 <POSE>。
其中 是输入图像标记的占位符。对应的真实SMPL姿态参数 用于计算姿态损失。在训练过程中,我们还使用其他模板生成问答数据以确保多样性,详情请参见补充材料。
多模态指令跟随
为了保持多模态LLM在多轮对话中的固有能力,我们在训练过程中使用多模态指令跟随数据集。根据LLaVA-V1.5,我们使用通过GPT-4查询创建的LLaVA-V1.5-MIX665K2数据集。
经过训练后,我们的模型能够从单张图像估计SMPL姿态,根据详细描述生成姿态,并促进问答对话。值得注意的是,即使在多轮对话中未整合SMPL姿态或将复杂短语与SMPL姿态关联起来,我们的模型也展示了零样本推理人体姿态的能力。这表明模型能够将推理和世界知识与SMPL姿态表示相结合。因此,除了传统的人体姿态估计和生成任务的评估方法外,我们还引入了两个需要推理技能的新任务:推测性姿态生成和基于推理的姿态估计。这些新任务利用了模型在人体姿态分析背景下应用推理的能力。
推测性姿态生成 (SPG)
在这个任务中,用户不是使用来自文本到姿态生成数据集的显式姿态描述,而是提出关于一个人状态的间接问题,要求LLM推断并生成适当的姿态。例如,用户可能会问:
用户:{描述隐含},你能给出这个人的SMPL姿态吗?
助手:当然,可以。这是 <POSE>。
这里,{描述隐含} 代表推测性查询,例如“这个人正在求婚,他可能会处于什么姿态?”。这种询问需要理解全球概念(如“婚礼”),并且具有逻辑推断个体姿态的能力,然后生成SMPL姿态参数。为了创建评估数据集,我们使用PoseScript数据集中的姿态描述作为来源,然后查询GPT-4将这些描述重新表述为关于每个姿态相关活动的问题,总共生成了20,000个响应,其中780个示例用于评估。这些响应随后会被人工审核并根据需要进行修正。
基于推理的姿态估计 (RPE)
标准人体姿态估计方法通常首先运行一个人检测器,然后只处理围绕该人的裁剪图像。这忽略了场景上下文,而这些上下文在推理人体姿态时可能是有用的。相比之下,RPE让用户可以在请求某个人的姿态细节之前对图像进行询问。具体来说,我们将RPE定义为:
用户:<IMAGE> {描述人物},你能给出这个人的SMPL姿态吗?
助手:当然,可以。这是 <POSE>。
在这种情况下,{描述人物} 可以是关于特定个体的查询,例如“黑发的男人”或“靠近楼梯的女人”。模型需要解释场景上下文,并生成符合描述的个体的SMPL姿态参数。为了评估这个任务,我们从标准姿态估计评估数据集中获取图像到SMPL姿态的配对。然后,我们使用GPT-4V生成这些图像中个体的描述。这些生成的描述随后会被人工精炼。具体来说,我们从3DPW [51]测试集中抽取了50张包含多人的图像。对于每个个体,我们收集覆盖行为、服装、姿态、形状和摘要(总结所有其他属性)的描述。这个过程共收集了250个用于评估的问答对。这些问题和答案对的收集管道的详细信息。
我们设计了一系列评估任务来测试ChatPose在不同场景下的性能:
文本到姿态生成
我们使用PoseScript 的测试集进行评估,测量ChatPose在生成3D姿态上的准确性。我们通过比较生成的SMPL姿态参数与真实标签之间的L1距离来计算误差。
人体姿态估计
我们使用Human3.6M和MPI-INF-3DHP的测试集来评估模型在估计3D人体姿态上的性能。评估标准同样是通过L1距离来衡量估计的姿态参数与真实参数之间的差异。
推测性姿态生成 (SPG)
在这个任务中,我们使用重新表述的PoseScript描述,评估模型在回答推测性问题时生成的姿态的合理性和准确性。我们手动检查生成的姿态是否符合推测性描述的预期。
基于推理的姿态估计 (RPE)
我们使用3DPW的测试集,通过给模型提供图像和描述,评估模型在推理场景上下文并估计特定人物姿态的能力。评估标准包括生成的姿态与真实标签之间的L1距离以及手动评估的场景理解能力。
通过这些评估任务,我们能够全面测试ChatPose在各种任务中的表现,从而验证其在人体姿态理解和生成方面的有效性和推理能力。
我们在经典任务和新的推测性姿态生成(SPG)任务上评估了ChatPose的姿态生成能力。
图3
在涉及推理的复杂场景中,表现优于PoseScript。虽然ChatPose和DALL·E产生的输出模态不同(3D姿态 vs 图像),但它们都能“理解”概念。
表1
ChatPose在经典任务(详细姿态描述)上的表现与PoseScript相当,并在推测性姿态生成上表现更优。
图4
表2
ChatPose优于其他多模态LLM,但并未达到专门设计和训练用于估计3D人体姿态的方法的性能。在基于推理的人体姿态估计中,ChatPose优于任务特定和多模态LLM方法。
图5
表3
值得注意的是,MPJPE受全局方向的影响很大,而PA-MPJPE减轻了这种影响,更真实地反映了身体姿态的准确性。ChatPose在估计人的全局方向时遇到了困难;这可能通过额外的训练来解决。
我们还发现,ChatPose在强遮挡情况下表现良好,即使在训练期间没有进行任何数据增强。这表明它能够利用其关于遮挡的一般视觉知识来解决人体姿态估计问题。有关示例,请参见补充材料。
在训练ChatPose理解3D姿态时,确保它不遗忘其一般知识至关重要。为了评估这一点,我们遵循LLaVA的方法,使用GPT4辅助评估。
表4
ChatPose略落后于LLaVA,这表明ChatPose成功地将3D姿态能力与其视觉和语言理解相结合。
ChatPose代表了将3D人体姿态估计与多模态大型语言模型(LLMs)广泛推理能力整合的初步尝试。以下为几个关键贡献:
针对3D人体姿态推理的微调
多模态LLMs可以有效地进行微调,从图像中推断3D人体姿态,包括人体部位的实值旋转。这标志着一个重大进步,因为它展示了LLMs直接解决这一特定任务的能力。
将3D人体姿态与语言连接
该模型成功地将3D人体姿态估计与自然语言桥接起来。这种整合至关重要,因为它为实际应用和创新的培训方法开辟了许多可能性。
人体姿态交互中的新应用案例
ChatPose引入了新的使用案例,用户可以使用文本描述和图像与语言模型交互讨论3D人体姿态。这种交互为探索各种应用场景奠定了基础,并扩展了LLMs在理解人体姿态方面的应用方式。
ChatPose的方法为探索一个丰富的领域奠定了基础,多模态LLMs可以在其中为理解和利用3D人体姿态数据的进展做出贡献。