基于多视角人体姿态(一)Fast and Robust Multi-Person 3D Pose Estimation
基于多视角人体姿态(一)
原文:Fast and Robust Multi-Person 3D Pose Estimation from Multiple Views
收录:CVPR2019
代码:Code
Abstract
Q1: 在几种标定的摄像机视点下,对多人进行三维姿态估计中,在有噪声和不完整的二维位姿预测中寻找交叉视图的响应是一项挑战。
之前的大多数方法都是通过 使用图形结构模型(3DPS) 直接在3D中进行推理 来解决,但由于状态空间巨大,这种方法的效率很低。本文方法则是提出一个 fast and robust approach。
本文关键思想则是使用 多路匹配算法 对所有视图中检测到的二维位姿进行聚类,每个生成的聚类都编码了同一个人在不同视图上的2D姿态(相应的关键点),从而可以有效地推断出每个人的3D姿态。提出的 基于凸优化 的多路匹配算法在不知道场景中人员数目的情况下,对漏检和误检具有较强的鲁棒性和有效性。除此之外,还提出将几何和外观线索结合起来进行跨视图匹配。
※论文核心思想:
- 使用多路匹配算法对所有视图中检测到的二维位姿进行聚类;
- 基于凸优化的多路匹配算法对漏检和误检具有较强的鲁棒性和有效性;
- 将几何和外观线索结合起来进行跨视图匹配。
1. Introduction
Q1: 虽然在多视角人体重建方面已经取得了显著的进展,但涉及到处理更具挑战性的场景的研究很少(例如:在拥挤的场景中,多人肢体之间相互交错,存在明显的遮挡)
※解决上述问题的现存方法中分两步来进行:
① 先是在单独的2D视图中检测人体关键点或关键部分;
② 聚合这些关键点或关键部分来重建3D姿态。
由于基于深度学习的2D关键点检测技术有显著的表现,剩下的挑战是找到被检测关键点之间的跨视图对应关系以及关键点属于具体哪一个人。对于这项挑战,以前的研究一般采用 3DPS。
3DPS :该模型通过对与二维探测在几何上相容的所有三维假设进行推理,然后推理得到每个人的3D姿态,但是由于巨大的状态空间,这种基于3DPS的方法计算开销很大。此外,当相机数量很少时,它鲁棒性不好,因为3DPS只使用多视图几何来连接视图之间的2D检测,外观线索被忽略。
创新点: 本文则是通过 匹配在多个视图中检测到的2D姿态来生成2D姿态的聚类,其中每个聚类包含同一个人在不同视图中的2D姿态,然后,可以从相应的2D位姿中推断出每个人的3D位姿,由于减少了状态空间,这比多个位姿的联合推断要快得多。
Q2: 匹配多个视图之间的2D姿态也具有挑战,如何解决?
典型的方法则是使用 epipolar约束 来验证两个2D位姿是否是相同3D位姿在不同视图的投影,但是可能会因为以下原因而失败:
① 由于严重的遮挡和截断,检测到的二维位姿往往不准确,如下图(b)所示,这使得几何验证变得困难
② 单独匹配每一对视角可能会产生不一致的对应关系,违背了循环一致性约束,即同一个人的位姿的两个视角之间对应关系可能会变成不同的人的不同视角这样的关系,这种不一致导致错误的多视角重建。
创新点: 提出 多路匹配算法,①将2D位姿之间的几何一致性与相关图像块之间的外观相似性相结合,以减少匹配的模糊性;②利用循环一致性约束,同时解决所有视图的匹配问题,以利用多路信息并产生全局一致的对应。
主要贡献:
- 提出一种快速、鲁棒的多人三维姿态估计新方法,不像3DPS那样计算量巨大,同时提高效率和鲁棒性;
- 提出多路匹配算法 ,来寻找检测到的2D位姿在多个视图之间的周期一致性对应关系。提出的匹配算法能够在不知道场景中真实人数的情况下,对虚假检测进行修剪,处理视图之间的部分重叠;
- 结合几何和外观线索,以匹配视角下检测到的2D位姿。我们证明了外观信息对于连接视图间的2D检测是非常重要的,而以往的方法大多忽略了外观信息。
2. Technical approach
(a)标定过的相机的输入图像;
(b)是使用一个 现成的人体姿态检测器 来生成每个视图中的2D边界框和相关的2D位姿,这可能是不准确和不完整的;
(c)使用一种新的 多视图匹配算法 对检测到的边界框进行聚类。每个生成的聚类包含同一个人在不同视图中的边界框。对于没有匹配的孤立边界框被认为是假检测并被丢弃;
(d)根据相应的边界框和相关的2D位姿来重建每个人的3D位姿。
2.1. 2D human pose detection
现成的人体姿态检测器 则是采用在MSCOCO数据集上训练的 级联金字塔网络 对图像进行二维位姿检测。
级联金字塔网络 包括两个阶段:(尽管它在基准上的性能是最先进的,但是上图(b)所示,探测可能嘈杂)
- 用GlobalNet粗略估计人体姿态;
- RefineNet提供最佳人体姿态。
2.2. Multi-view correspondences
在重建3D位姿之前,我们需要在所有视图中找到属于同一人的2D边界框。
- 需要一个合适的度量来度量两个2D边界框属于同一个人的可能性;(度量两个边界框是否属于同一个人)
- 需要一个匹配算法,以建立跨多个视图的边界框的对应关系,此外,匹配算法的输出应该是循环一致的,即两幅图像中任何两个相关的边界框都应该对应于另一幅图像中相同的边界框(在跨多个视图时,判断多个视图边界框之间的关系)
- 假定有 V 个相机,在视角 i 下的检测边界框数量为 pi;
- 对于一对视角 (i, j),其关联分数可以通过视角 i 和视角 j 下的两组边界框来计算。
- Aij:关联矩阵,其元素则是关联分数,且
- Pij:
2.2.1 Affinity matrix
结合外观相似性和几何一致性来计算边界框之间的关联分数。
首先,我们采用一个预先训练的人员重建网络来获得一个边界框的描述符
※ 几何一致性:
对应的二维关节位置应满足 极线约束,即第一个视图中的关节应位于与其对应的第二视图的 极线 上。
x: 由 N 个关节点组成的2D位姿,且;
: 在视角 i 下第 n 个关节点的2D位置;
: 在另一视角的极线;
: 某点到线 的距离
注意:最后的距离 Dg 使用sigmoid函数映射到(0,1)作为最后的几何关联得分。