Skip to main content

Whole-Body Pose Estimation

Whole-Body Pose Estimation は、体幹だけでなく、hands、face、feet まで含めた dense な keypoint を推定する task です。Human-computer interaction、avatar、animation、AR / VR で重要です。

Body-only pose との違い

通常の human pose estimation は、肩、肘、手首、腰、膝、足首などの body keypoint を扱います。一方で whole-body pose では、

  • Body keypoints
  • Hand keypoints
  • Face landmarks
  • Foot keypoints

を同時に扱います。

なぜ難しいのか

Whole-body pose は、通常の body pose より難しいです。

  • Hand と face は小さく、解像度が必要です。
  • Occlusion が多いです。
  • Body、hand、face の scale が大きく異なります。
  • Instance ごとの grouping が難しくなります。

COCO-WholeBody

COCO-WholeBody は、body、face、hand、foot を含む whole-body keypoint dataset です。Whole-body pose estimation の代表的 benchmark として使われます。

Applications

Whole-body pose は、次の用途で重要です。

  • Sign language recognition
  • Motion capture
  • Avatar animation
  • Human-object interaction
  • Gesture recognition
  • AR / VR communication

数式で見る whole-body pose の重み付け

Whole-body pose estimation では、body、hand、face、foot など、粒度の異なる keypoint を同時に扱います。単純に全 keypoint の loss を足すと、点数の多い face や hand が全体を支配することがあります。そのため、part ごとの重みを使います。

L=rRλrjrcju^juj22\mathcal{L}=\sum_{r\in\mathcal{R}}\lambda_r \sum_{j\in r} c_j\|\hat{\mathbf{u}}_j-\mathbf{u}_j\|_2^2

ここで、R\mathcal{R} は body part の集合、λr\lambda_r は part ごとの重み、cjc_j は keypoint confidence です。この式の気持ちは、「body 全体の大きな姿勢と、手指や顔の細かい姿勢をバランスよく学習する」というものです。

評価では、part ごとの AP を分けて見ることが重要です。全体平均だけを見ると、body は良いが手が悪い、あるいは顔は良いが足が悪いといった failure mode を見落とすことがあります。

関連ページ

主なソース