人体姿态估计-评价指标

人体姿态估计-评价指标(一)

摘要

人体姿态估计可以细分成四个任务:单人姿态估计 (Single-Person Skeleton Estimation)、多人姿态估计 (Multi-person Pose Estimation)、人体姿态跟踪 (Video Pose Tracking)、3D人体姿态估计 (3D Skeleton Estimation)。
单人姿态估计: 输入是切割出来的单个行人,然后再找出行人的关键点,使用的方法也就是自顶向下(Topdown),先检测人的bounding box,再用single-stage的方法检测每个人的骨骼关键点,常使用的benchmark数据集MPII,使用的是PCKh的指标(可以认为预测的关键点与GT标注的关键点经过head size normalize后的距离)。但是经过这几年的算法提升,整体结果目前已经非常高了(最高的已经有93.9%了)。
人体姿态估计-评价指标
多人姿态估计: 输入是一张整图,可能包含多个行人,目的是需要把图片中所有行人的关键点都能正确的做出估计,同样有两种方法:自顶向下(top-down)、自底向上(bottom-up)。对于top-down的方法,往往先找到图片中所有行人,然后对每个行人做姿态估计,寻找每个人的关键点。单人姿态估计往往可以被直接用于这个场景。对于bottom-up,思路正好相反,先是找图片中所有parts (关键点),比如所有头部,左手,膝盖等。然后把这些parts(关键点)组装成一个个行人。使用的是OKS(object keypoint similarity) 指标。
人体姿态估计-评价指标
人体姿态跟踪: 输入的是视频,对视频中的每一个行人进行人体以及每个关键点跟踪,相比行人跟踪来讲,人体关键点在视频中的temporal motion可能比较大,比如一个行走的行人,手跟脚会不停的摆动,所以跟踪难度会比跟踪人体框大。目前主要有的数据集是PoseTrack。
3D人体姿态估计: 输入的是RGB图像,输出3D的人体关键点的话,就是3D 人体姿态估计。这个有一个经典的数据集Human3.6M。
目前主要的难点: 图像的复杂性-遮挡(不可见)、拥挤,算法的复杂度。

评价指标

oks(object keypoint similarity)

oks是目前常用的人体骨骼关键点检测算法的评价指标,这个指标启发于目标检测中的IoU指标,目的就是为了计算真值和预测人体关键点的相似度。
OKS:
OKSp=iexp{dpi2/2Sp2σi2}δ(vpi>0)iδ(vpi>0){OKS_{p}}=\frac{\sum_{i}exp\{-d_{pi}^{2}/2S_{p}^{2}\sigma_{i}^{2}\}\delta(v_{pi}>0)}{\sum_{i}\delta(v_{pi}>0)}
参数详细解释,其中:
pp 表示当前图片所有groundtruth行人中id为p的人,p(0,M)p\in(0,M)MM表示当前图*有行人的数量
ii 表示id为ii的keypoint
dpid_{pi} 表示当前检测的一组关键点中id为ii的关键点与groundtruth行人中id为pp的人的关键点中id为ii的关键点的欧式距离,dpi=(xixpi)(yiypi)d_{pi}=\sqrt{(x_{i}^{\prime}-x_{pi})(y_{i}^{\prime}-y_{pi})}(xi,yi)(x_{i}^{\prime},y_{i}^{\prime})为当前的关键点检测结果,(xpi,yi)(x_{pi},y_{i})为groundtruth
SpS_{p} 表示groundtruth行人中id为p的人的尺度因子,其值为行人检测框面积的平方根:Sp=whS_{p}=\sqrt{wh}wwhh为检测框的宽和高
σi\sigma_{i} 表示id为ii类型的关键点归一化因子,这个因子是通过对所有的样本集中的groundtruth关键点由人工标注与真实值存在的标准差,σ\sigma越大表示此类型的关键点越难标注。根据[1]中所述,对coco数据集中的5000个样本统计出17类关键点的归一化因子,σ\sigma的取值可以为:{鼻子:0.026,眼睛:0.025,耳朵:0.035,肩膀:0.079,手肘:0.072,手腕:0.062,臀部:0.107,膝盖:0.087,脚踝:0.089},因此此值可以当作常数看待,但是使用的类型仅限这个里面。如果使用的关键点类型不在此当中,可以使用另外一种统计方法计算此值,