人体姿态估计和评价指标
人体姿态估计可以细分成四个任务:
- 单人姿态估计 (Single-Person Skeleton Estimation)
- 多人姿态估计 (Multi-person Pose Estimation)
- 人体姿态跟踪 (Video Pose Tracking)
- 3D人体姿态估计 (3D Skeleton Estimation)。
单人姿态估计: 输入是切割出来的单个行人,然后再找出行人的关键点,使用的方法也就是自顶向下(Topdown),先检测人的bounding box,再用one-stage的方法检测每个人的骨骼关键点(landmark),常使用的benchmark数据集MPII,使用的是PCKh的指标(可以认为预测的关键点与GT标注的关键点经过head size normalize后的距离)。但是经过这几年的算法提升,整体结果目前已经非常高了(最高的已经有93.9%了)。
多人姿态估计: 输入是一张整图,可能包含多个行人,目的是需要把图片中所有行人的关键点都能正确的做出估计,同样有两种方法:自顶向下(top-down)、自底向上(bottom-up)。对于top-down的方法,往往先找到图片中所有行人,然后对每个行人做姿态估计,寻找每个人的关键点。单人姿态估计往往可以被直接用于这个场景。对于bottom-up,思路正好相反,先是找图片中所有parts (关键点),比如所有头部,左手,膝盖等。然后把这些parts(关键点)组装成一个个行人。使用的是OKS(object keypoint similarity) 指标。
$OKS_{p}=frac{sum_{i}exp {-d_{pi}^{2}/2S_{p}^{2} sigma_{i}^{2}} delta(upsilon_{pi}>0)}{sum_{i}delta(upsilon_{pi}>0)}$
参数详细解释,其中:
$p$ 表示当前图片所有groundtruth行人中id为$p$的人,$pin(0,M)$,$M$表示当前图中共有行人的数量
$i$ 表示id为$i$的keypoint
$d_{pi}$ 表示当前检测的一组关键点中id为i ii的关键点与groundtruth行人中id为$p$的人的关键点中id为$i$的关键点的欧式距离,$d_{pi}=(x_{i}'-x_{pi})(y_{i}'-y_{pi})$,$(x_{i}', y_{i}')$为当前的关键点检测结果,$(x_{pi}, y_{pi})$为groundtruth
$S_{p}$表示groundtruth行人中id为$p$的人的尺度因子,其值为行人检测框面积的平方根:$S_{p}=sqrt{wh}$