Info
Abstract
動画から得られるような時間的な連続性がある2D poseから3D poseの復元を行う研究。LSTMを用いた従来手法と比べ、Figure 1のように時間方向にDilated Convolutionを用いることで精度を改善。ラベルデータのない動画も活用可能な、半教師あり学習の枠組みを提案。
関連研究
LSTMをSeq2Seq的に用いることで同様のことをしている。
提案手法
ネットワークの詳細はFigure 2の通り。畳み込みの際に、zero paddingを行わないことが少し特殊である。使うと精度が落ちるのだとか。 教師あり学習、半教師あり学習についての説明はFigure 3の通り。3D Poseの相対的な座標と骨盤のkey-pointを基準とした(間違っているかも)絶対的な座標を別々のモデルで学習している。
教師あり学習では、3D PoseとGlobal positionを推定し、それそれにMPJPE loss、WMPJPE lossを用いて学習を行う。
半教師あり学習では、3D PoseとGlobal positionを推定するところまでは教師あり学習と同様だが、Global positionと3D poseを組み合わせて、Poseを2次元にProjectionする。そのProjection結果と元の2D poseに対して、MPJPE lossを計算することで学習を行う。
さらに、推測される3D Poseに制約をかけるために、bone length L2 lossを使用している。
MPJPE (mean per-joint position error)
全ての関節点ごとにL2ノルムを計算し平均を計算
WMPJPE (weighted mean per-joint position error)
$y_z$はdepth。MPJPEについて、距離が遠くなるほどlossが小さくなるような重みをかける。
bone length L2 loss
はじめに、ラベルありデータにおいてそれぞれの骨の長さを計算しておく。ラベルなしデータで3d keypointを推定する際に、ラベルありデータの骨の長さと、推定された3D Poseの骨の長さに対してL2 lossを与える。半教師あり学習では必須。
実験
評価指標
- MPJPE(mean per-joint position error)
- 全てのデータ、全ての関節点ごとにL2ノルムを計算し、平均をとる
- P-MPJPE
- translation, rotation, scaleについてGTを剛体変換したのちに、MOJOEの計算
- N-MPJPE
- scaleのみについてGTを変換したのちに、MPJPEの計算
データセット
Human3.6MとHumanEva-Iの二つ。
実験結果
従来手法との比較はこちら。"*"はGTのbbox情報を活用しているもの、"†"は時系列情報を使用しているものである。
Walk、Walk Togetherなど動きが多い行動で大大きく結果が改善している。
MPJPEとはmean per joint velocity errorのことで、関節それぞれの速度について評価を行ったものである。時系列情報を加味することで、速度の変化が大きく減らせており時間的な動きの滑らかさが改善している。
LSTMを用いた従来手法、提案手法で入力のフレーム数を変えた場合の比較。LSTMと同じ計算量だが、提案手法の方が精度が高い。また、入力するフレーム数はある程度長い方が良いことがわかる。Human3.6Mでは50fpsなので、243フレームは約5秒。
半教師あり学習の結果はこちら。教師データを減らした際には、教師あり学習よりも精度が多少上がっている。が、教師データが100%の教師あり学習と比べると、あまり良くない。
メモ
2D Pose >> 3D Pose推定に関して、時系列情報を加味する研究は出尽くした感。半教師あり学習については、Figure 6からわかるように、単純にラベル付きデータを増やせば精度が上がる状態であるので、ラベルなしデータを活用できるような手法についてはまだまだ検討の余地があるのかもしれない。