【CVPR 2022】 论文阅读:Ray3D: ray-based 3D human pose estimation for monocular absolute 3D localization
论文地址:https://arxiv.org/abs/2203.11471
Github:https://github.com/YxZhxn/Ray3D
单位:Aibee、北京工商大学
摘要
在本文中,我们提出了一种新的基于单目光线的3D(Ray3D)绝对人体姿势估计方法。从单目二维位姿输入精确且可推广的绝对三维人体位姿估计是一个不适定问题。为了解决这个问题,我们将输入从像素空间转换为3D标准化光线。这种转换使我们的方法对相机固有参数的变化具有鲁棒性。为了处理原始相机外部参数的变化,Ray3D明确地将相机外部参数作为输入,并联合建模3D姿势光线和相机外部参数之间的分布。这种新颖的网络设计是实现Ray3D方法卓越通用性的关键。为了全面了解相机内部和外部参数变化对绝对3D关键点定位精度的影响,我们在三个单人3D benchmark和一个合成benchmark上进行了深入系统的实验。这些实验表明,我们的方法明显优于现有的先进模型。
1&2 Inrtroduction&Related work
这部分还是只写一下作者的出发点,以及研究贡献。
相机内参和外参的介绍:https://zhuanlan.zhihu.com/p/144307108
在相机成像的过程中,三维世界的物体被投影到像素坐标上,是一个三维到二维的过程。人体2D关键点的像素位置(即在像素坐标系下的位置)由世界坐标系下人体大小、相机外部参数、相机内部参数和3D位置共同决定。这些因素为3D姿态估计带来了模糊性。如Figure1所示,(a)中身体大小和到摄影机的距离都放大两倍,则投影在相机上的二维关键点位置保持不变,同理(b)中焦距和距离都扩大两倍,在相机上得到的投影位置也保持不变。这样一来,便可得知在世界坐标系下,不同参数的组合可能得到相同的二维投影,如此一来,仅仅是简单的地学习从2D像素位置映射到3D世界位置的模型可能是错误的。
为了解决这些模糊性,人们提出了许多单目3D人体估计方法,主要分为两种:(1)lifting methods;(2)image based methods。lifting methods 讲2D人体姿势作为输入,将2D姿势提升为3D姿势。一些提升方法根据图像分辨率和相机主点对输入进行标准化。虽然这些归一化方案在一定程度上提高了泛化能力,但由于摄像机固有参数的变化,它们无法完全解决模糊问题。(本质上还是因为图像到2D pose这个过程丢失了深度信息)。image based methods基于身体大小的先验信息估计3D 根位置。还有些方法,基于图像的人体深度估计,进行绝对根关键点定位。这些基于学习的深度估计方法存在的问题是缺乏足够的训练数据,并且存在视点变化。
为了更有效的解决这个问题,作者提出了Ray3D。首先,为了有一个不变的内在参数表示,作者将像素空间中的二维关键点转换为规范化三维空间中的三维光线。通过这种简单的设计,Ray3D方法不受相机内在参数变化的影响,实现了稳定的性能。受Videopose和RIE的启发,作者使用时间卷积来融合连续帧中的3D光线,以进一步解决遮挡带来的模糊性,并提高准确性。这种时间融合机制稳定了输出,并生成更精确的3D位置。其次,作者将摄像机的外部参数联合嵌入到网络中,相机外部参数包含精确的3D人体姿势估计的基本信息。作者认为,利用相机外部参数是解决人体部位尺寸模糊的唯一方法。
主要贡献:
(1)将输入空间从二维像素空间转换为规范化坐标系中的三维光线。这种简单的设计有效地规范化了摄像机固有参数变化以及摄像机俯仰角变化带来的变化。
(2)提出了一种新颖而简单的网络,该网络利用摄像机外部参数学习摄像机嵌入,并联合建模摄像机外部参数和三维光线的分布。
(3)提供了一个全面和系统的基准,现有的3D方法在鲁棒性方面对摄像机姿态的变化,以及跨数据集的泛化。
(4)在三个真实基准数据集和一个合成数据集上的实验清楚地证明了Ray3D方法的优势
3. Proposed Method
Figure2为整体框架图,为了消除固有参数变化的影响,在相机坐标系(CCS)中的二维关键点被转换为三维光线。为了处理摄像机俯仰角的变化,作者进一步将这些3D光线转换为标准化坐标系(NCS)。同样,真实3D姿势也会转换为NCS。这样,模型的输入和输出都将对齐到同一坐标系中。时序关键点运动信息有助于解决由遮挡引起的3D姿势估计模糊。在这之后,作者在时序上融合连续帧中的3D光线,并对相对姿势光线进行编码,以捕获运动信息。具体来说,作者使用MLP网络来学习摄像机姿势表示的紧凑嵌入。该摄像机嵌入随后与潜在的3D射线特征连接,用于姿势预测。这种新颖的设计极大地提高了模型对摄像机姿势和身体比例变化的鲁棒性。
3.1 Input preprocessing
Intrinsic parameter decoupling
使用深度神经网络,基于提升的三维姿态估计方法能够提升预测的二维关键点{pi}Ji=1到3D关键点{PiC}Ji=1,pi=[xi,yi]表示人的第i个关节在输入图像坐标系中的位置,PCi=[XCi,YCi,ZCi]代表相机坐标系(CCS)中的相应关节点。J表示关节点数量。为了实现摄像机固有参数变化的不变性,对{pi}Ji=1执行以下转换:
得到3D rays定义如上图,cx和cy表示相机中心点,fx和fy表示焦距,Piray表示一条射线,从相机的光心指向图像平面中的关键点i。
Extrinsic parameter decoupling with the Normalized Coordinate System (NCS)
将关键点在世界坐标系、相机坐标系和标准化坐标系下的坐标分别定义为PW、PC和PN。通过精确校准,可以获取相机外部信息,包括旋转矩阵RW2C和平移向量TW2C,PW和PC之间的转换如下:
这部分在内参外参介绍部分有详细介绍。
在本文中,作者的目标是在中预测世界坐标系下的绝对三维人体姿势,相机在3D世界中的姿势可以通过其3D位置、俯仰、偏航和滚动角度来确定。俯仰角(pitch)/theta 描述相机光轴与地平面之间的角度。假设相机偏航和滚动角度接近0,根据水平平移,相机俯仰值和摄影机高度可以唯一确定摄影机的姿势。为了明确地对俯仰进行编码,以实现精确的姿势估计,作者建立了NCS,如Figure3所示。首先,CCS沿x轴旋转以消除俯仰角,然后,坐标系沿z轴平移到地平面。
很容易的,可以计算PC和PN之间的旋转矩阵和平移向量:
根据等式2,3,4,可得到:
根据式7,可得到从相机坐标系下的{Piray}Ji= 1转换到标准坐标系下的3D rays:{P^iray}Ji= 1,根据式8,可将世界坐标系下的真实三维关键点转换为标准化坐标系下的真值{PiN}Ji= 1。如此一来,在同一种坐标系下,直接降低了训练难度和增加了模型鲁棒性。
3.2 Lifting network
Absolute pose estimation
估计三维绝对人体姿势的任务由两个子问题组成,根位置估计(即估计人体中心的位置)和根相对姿势估计(即每个关键点相对于中心的偏移),作者分别使用轨迹网络(trajectory network)和姿势网络(pose network)共同学习解决这两个子问题,将这两个网络的输出相加,以生成绝对3D姿势。
时序运动信息提高了模型对身体遮挡的鲁棒性。作者采用RIE体系结构作为主干网络,用于根相对姿势网络和轨迹网络。如Figure4所示,RIE网络通过位置和时间信息得到加强,输入关键点的相对位置被编码为帧内的位置信息,当前帧的2D姿势与相邻帧的2D姿势之间的差异被视为时间信息。这种增强输入被分为5组(躯干、左臂、右臂、左腿和右腿),用于局部特征学习。此外,从当前帧中提取全局特征,以保持整体姿态的一致性。特征融合模块将所有这些特征集合起来,用于三维姿态估计。利用这种结构,作者用固有不变的标准化3D射线代替普通的2D人体关键点,作为姿势网络和轨迹网络的输入,以解决模糊问题。
Camera embedding
作者认为,在WCS中,摄像机外部参数对绝对姿态估计至关重要,并建议通过一个多层感知器学习独立的摄像机嵌入,明确利用外部参数/theta和h作为输入。具体地说,摄像机嵌入模块由两个完全连接的层构成,然后是批量标准化、校正线性单元和辍学dropout。如Figure4所示,在相对姿势预测和轨迹网络中,相机嵌入与时间融合的潜在3D射线特征相连接。因此,这两个网络都利用相机的外部参数进行鲁棒和精确的姿态估计。
4. Experiments and results
数据集:略
评价指标:
每关节平均位置误差(MPJPE)用于评估CCS下的根相对姿态估计结果。
Absolute MPJPE(Abs MPJPE),计算WCS中预测和GT姿态之间的差异。
根位置误差平均值(MRPE)用于评估根关节的轨迹预测。
4.2 Implementation Details
对于Ray3D方法,作者采用相机嵌入的大小设置为64,初始学习率为0.001,Adam优化器采用0.99的指数学习率衰减系数。在训练和测试中都采用了水平翻转增强。对于H36M数据集,采用CPN姿势检测器输出和真实2D姿势作为输入。至于Humaneva-I和3DHP,只使用真实2D姿势。
4.3. Evaluation on public benchmarks
这部分是常规的对比实验,直接看表即可。
4.4. Evaluation on synthetic dataset
这部分,作者在3DHP进行了训练,在H36M, Humaneva-I and 3DHP上进行测试,得到结果:
Intrinsic generalization 为了验证改变内部/固有参数方法的鲁棒性,作者在固定分辨率下改变摄像机的焦距。如Figure 5 (a)和(b)所示,焦距变化会影响VideoPose、PoseFormer、RIE分别在MPJPE和MRPE指标下,会发生不同程度的改变。而作者提出的Ray3D则不会。
Extrinsic generalization 为了衡量外部参数泛化的影响,作者分别改变了相机姿态的旋转、俯仰角和平移距离。平移是通过相机和拍摄对象之间的欧几里德距离来测量的。此外,作者还设计了一种新的根关节定位基线方法,具体来说,使用H36M受试者的根关节平均高度(即93.95cm)来估计根关节的高度。使用此高度假设,沿其3D射线定位根关节,作者将这种方法称为Ray Fixed Root Height(RFRH)。
实验结果主要通过Figure 6 和 Figure 7进行对比:
Person scale generalization 为了验证对人尺度模糊性的鲁棒性,作者改变了H36M中人的骨骼长度(为原来的0.6-1.1倍)。实验结果如图6(d)和7(d)所示,当体型较小时,所有比较方法的准确性都会显著降低。例如,对于最小的身型,PoseFormer、RIE、Videopose的MRPE高达4000mm,甚至高于RFRH,Ray3D的MRPE增加到800mm,仍然比基线好得多。下面这个图的横轴表示人体四肢的总长度。
4.5. Ablation Studies
4.6 Discussion
在三个真实基准和合成数据集上,我们的Ray3D方法在可推广性方面显著优于基线方法。这清楚地展示了Ray3D方法的健壮性。然而,如Figure7(d)所示,当人体大小变化很大时,Ray3D的性能会下降。这主要是因为所有的训练身体姿势都是成人的。同时,我们的方法假设主体在地平面上。如果受试者长时间离开地面(例如爬梯子),模型可能会失败。此外,需要提供校准的相机参数,这限制了Ray3D的使用情况。精确的3D姿势估计可能会被误用在监控应用中,骨架配置估计可以帮助识别人。
5. Conclusion
在本文中,作者提出了一种创新的单目绝对三维人体姿态估计方法,名为Ray3D。这种方法通过一系列新颖的设计逐渐解决了固有的模糊性:从2D关键点到3D规范化光线的转换,三维射线的时间融合,其中包括相机外部参数的嵌入。因此,在三个真实基准和一个合成基准上,Ray3D显著优于SOTA方法。