长期以来,三维重建一直以网格模型为主流表达,但受限于固定的拓扑结构和离散的形状表达。神经隐式函数因其灵活的拓扑结构和连续的表达空间在形状重建领域受到追捧。
在人体形体的重建和驱动领域,近期方法普遍将网格模型替换成神经隐式函数作为形状表达,并沿用在网格模型中普遍运用的线性蒙皮算法(LBS)进行人体驱动。但这一做法忽视了将 LBS 应用在神经隐式函数上的种种问题,比如,需要另外学习一个蒙皮权重函数来定义连续空间中任意一点的蒙皮权重。而在逆向蒙皮过程中,蒙皮权重函数需要随着人体姿势的变化而改变,表现出十分有限的动作泛化能力。
相比于上述整体建模的方式,分部件重建的方法尚缺乏探索。这类方法为人体的每个部分学习一个独立的全连接网络(MLP),将每个网络表达的形状绑定在各个骨骼上,能够更好地保持形体的局部刚性。但是,分部件重建的方法往往需要部件划分的标注数据,在应用场景上受限;同时,部件之间的融合很困难,不可避免地出现部件的重叠或断裂,在动作泛化能力上始终劣于整体重建的方法。
为此,上海科技大学和 ZMO.AI 的研究者提出了一套分部件人体重建和驱动的方法 UNIF,借助简洁有效的初始化和正则化手段,使分部件重建方法摆脱对部件划分标签的依赖。通过显式地建模部件之间的相互作用,显著提升了分部件重建方法对人体姿态的泛化能力。ZMO.AI 是国内头部内容生成初创公司,专注于 AI 文字生成内容 Yuan初 创作平台的搭建。该论文已被 ECCV 2022 接收,并公开了代码。
- 论文链接:https://arxiv.org/abs/2207.09835
- 代码链接:https://github.com/ShenhanQian/UNIF
- 项目主页:https://shenhanqian.com/unif
- Yuan初 创作平台:https://yuan.zmoai.cn/
背景知识
给定人体点云数据和对应的人体骨架,该方法用独立的神经网络学习人体的各个部件的有符号距离函数(SDF),并通过求并操作(Union)组合起来实现完整人体的重建。
在推理阶段,通过操纵骨架,即可进行对人体的驱动。
核心方法
Partition-from-Motion
文章提出 Partition-from-Motion,即一套网络初始化和正则化的策略,使无监督的部件划分成为可能。
以骨骼为中心的初始化:该方法将各个部件初始化为位于骨骼中点的半径极小(r=0.01)的球体。这样,部件之间就不存在重叠,同时每个部件的 SDF 近似等于任意点到骨骼中心的距离。由于 SDF 是由求最小值操作组合起来的,上述特性就能确保在模型训练之初能够将每个点分配给离他最近的骨骼。
骨骼边界损失和截面法向损失:当两个部件在训练动作中几乎没有相对运动时,它们之间存在重叠的情况就无法避免。当我用新动作驱动模型时,就很容易出现暴露出原本重叠的部件,造成视觉瑕疵。作为正则项,我们提出一项骨骼边界损失旨在促使每个部件的表面穿过与它相连的关节,以及一项截面法向损失用于保证相接的部件的截面法向一致。这两项损失均是为了避免部件之间出现重叠或空缺。
邻接部件缝合(APS)
通过上述方法,该方法已经能够在训练动作下保证部件的正确划分和紧密相接。但在推广至新动作时,仍存在下图所示的断裂和重叠的问题。
因此文章提出 Adjacent Part Seaming,即通过显式地建模相邻部件之间的相互作用来维持部件之间的稳定连接,显著提升了分部件重建方法对新动作的泛化能力。
基于局部旋转的邻接部件缝合
邻接部件缝合的核心是通过对相邻部件的运动进行加权对部件末端施加形变,保证部件接面的对齐。具体而言,是通过叠加偏移量使局部空间扭曲,实现非刚性形变。
通过混合多个偏移量,该方法同样适用于三个或更多部件相连的情况。
由 “部件竞争” 定义的混合权重
上述方法描述了邻接部件缝合的基本原理,但并未涉及混合权重 ω 的定义。为了增强方法的灵活性,文章进一步提出了一种参数化的混合权重定义方法,即“部件竞争”。
其中,Q 点将连接线 AB 按照 AO 和 BO 比例将划分为两部分。基于上式的定义,点 x 离骨骼越近,则刚度越大。α 和 β 是可优化的参数,用于建模各部件的刚度特性。
最终,该方法的流程如下图所示:
实验验证
作者在 CAPE 和 ClothSeq 数据集上进行了实验。
在动作内插实验中,该方法展示出与基线方法相当的表达能力和对动作估计误差的更强的鲁棒性。
在动作外插实验中,该方法能够更好地保持形体的局部刚性,表现出更强的动作泛化能力和稳定性。
数值结果与上述观察一致。
通过消融,作者进一步验证了方法各部分的必要性。
在下图这组对比中,邻接部件缝合算法显著改善了分部件重建方法在新动作下出现重叠和断裂的问题。