视频中,左边为 3D 场景和预测结果(红色人体表示真实序列,蓝色人体表示预测结果)中间为运动序列最有可能和场景发生交互的点云,右边为每一个人体 pose 最有可能和场景发生交互的点云(红交互可能性大,蓝色交互可能性小)
SIF3D(Sense-Informed Forcasting of 3D human motion)
,即场景感知运动预测技术,由小红书创作发布团队提出,目前已被计算机视觉顶会 CVPR2024 收录。
SIF3D 的先进之处在于其多模态感知能力。它结合人过去的动作序列、真实 3D 场景信息以及人的视线三个方面,预测未来的人体运动。
人体动作预测(Human Motion Forecasting)
,即根据观测到的人体运动序列预测其将来的动作,这是机器智能(MI)、自动驾驶汽车(AD)和人机协作(HRI)等领域的关键技术。在现实生活中,人类的动作是与周围环境紧密相连的,比如我们会因为障碍物而改变行走路径。然而在现有的运动预测研究中,场景信息却常常被忽略,大大制约了技术在真实 3D 场景下的应用。
在机器人技术中,场景信息通常被表达为 3D 点云。现有的场景感知运动预测的方法,通常会将整个 3D 点云进行编码,而后通过全局嵌入或索引、插值等手段将其作为条件引入至运动预测任务当中。尽管该方法可行,但我们注意到:并非点云中的所有信息都与运动预测任务同等相关,相反,往往只有小部分的场景点云会对我们当前序列的运动预测起到作用,我们称其为
显著点云(salient point clouds)
。
此外,人眼的凝视点(与场景的交汇点)也是一种能够体现人的运动意图的表现。我们期望通过联合分析 3D 场景和人眼凝视点,可以捕捉人类向特定位置的运动行为,从而更准确地预测其运动序列。
3D 场景(左),传统运动预测(中)与本文提出的场景感知预测(右)的对比
为了解决上述挑战,我们提出了一种全新的多模态场景感知的运动预测方法
SIF3D(Multimodal Sense-Informed Forecasting of 3D Human Motions)
。SIF3D 主要包含以下两个核心组件:
a. 运动特征编码与聚合:
短期内,人的意图在运动序列中具有唯一性且不会随着运动的持续进行而发生变化,因此我们首先对运动特征进行进一步编码,并将整个序列的运动特征聚合为一个向量:
b. 全局显著性点云识别:
将聚合得到的运动特征与场景特征进行跨模态注意力分析,寻找出场景中那些响应当前观测序列的点云,作为全局显著点云,我们仅会利用全局显著点云用于提取跨模态意图特征,并用于辅助轨迹预测:
c. 人眼凝视点特征融合:
由于人们在运动过程中往往会习惯性地看向想去的地方,因此人眼凝视点(被定义为人眼视线发出的射线与 3D 场景的交点)也是一种能够反映人的运动意图的重要信息。我们首先通过索引得到凝视点的场景特征,将其用观测序列的最后一帧补全至长度为
后,经由凝视编码器得到凝视点提供的特征,进一步完善人体意图分析:
d. 全局特征特征融合:
通过三元多模态感知,我们试图从多个维度来分析人的运动意图,最后我们通过标准的多层感知机(MLP)来融合这些全局特征,作为 TIA 的输出:
2.3 场景语义一致性感知注意力机制(SCA)
不同于 TIA 关注全局特征与人的运动意图,场景语义一致性感知注意力机制(SCA)则更加关注每一帧的局部显著性场景细节,用来更好地指导每一帧局部姿态的预测:
a. 局部点云显著度:
我们首先对运动特征进一步编码,得到每一帧的姿态特征,并将它们分别与场景特征进行跨模态注意力分析,来找到场景中响应每一帧运动姿态的局部显著性点云。
b. 空间显著度偏置:
由于 SCA 会更关注场景中的一些可能影响人体姿态的细粒度信息,且正对着人的朝向且距离更近的场景点往往更可能会影响人体姿态,我们基于每个场景点相对于每一帧中人体的距离与方向额外对于局部点云显著性引入了一项空间显著度偏置 :
c. 局部特征特征融合:
结合了局部点云显著度与空间显著度偏置,我们同样只利用局部显著性点云来辅助姿态预测:
而后利用多层感知机(MLP)来融合局部特征,作为 SCA 的输出:
2.4 运动序列解码与生成
预测未来的运动序列需要同时考虑轨迹和姿势。TIA 通过识别全局显著点云分析了人的意图,而 SCA 则识别局部点云以维持每一帧人体与环境的连贯性与一致性,因此我们利用 TIA 的特征预测轨迹,而用 SCA 的特征预测人体姿态: