end-to-end recovery of human shape and pose
TRANSCRIPT
End-to-end Recovery ofHuman Shape and Pose
東京⼤学 松尾研究室⼤野峻典
書誌情報
• https://arxiv.org/abs/1712.06584• 著者:Angjoo Kanazawa, Michael J. Black, David W. Jacobs, Jitendra
Malik– University of California Berkeley, MPI for Intelligent Systems Tubingen Germany,
University of Maryland College Park• 公開⽇:18 Dec 2017
• プロジェクトページ:https://akanazawa.github.io/hmr/• デモビデオ:https://www.youtube.com/watch?v=bmMV9aJKa-c
2
アジェンダ
• Human Mesh Recovery(HMR)タスクとは• ⽣成された3Dの真偽の識別器を導⼊した, end2endアーキテクチャ
– 論⽂の主張・ポイント– 従来⼿法の問題点– 提案⼿法– 実験結果
3
Human Mesh Recovery (HMR) タスクとは
• 今回取り組むタスク• (⼊⼒)単⼀のRGB画像 → (出⼒)⼈体の完全な3Dメッシュ
– こんな感じ
• 難しさ– ⾃然な(in-the-wildな)画像の3D教師データ⽤意が⼤変(3D測定できるようにした特
殊な環境下で撮影されたものばかりで実⽤性△)– 単視点だと、同じ⾒え⽅でも3Dのあり⽅は異なるものなどある.– ⼈がどれくらいのスケールで写っているかわからない.
4
論⽂の主張・ポイント
• GAN的発想を取り⼊れる事で, 画像と対になる⼈の3Dデータが無くても, それらしい⼈の3Dの⽣成ができるようになる.– 本物か/⽣成されたものか判断する識別器を学習することで, 独⽴した⼈の3Dデータ
セットから, それらしい⼈の3Dデータに関して, 弱教師あり学習的に関節的に学ぶ
• (2D関節位置推定を挟まずに,) end2endで3Dの姿勢推定を⾏うことで, 2D画像にある情報を無駄にしない.
• (スケルトンででなく) メッシュを出⼒. 情報量多い分応⽤範囲も広い.
5
従来⼿法の問題点
• 適⽤可能な画像のバリエーションの⼩ささ– 問題:既存の3D復元⼿法は、セットアップされた環境下で撮影された画像を対象にし
ており、in-the-wildな画像へは適⽤できない. (ドメイン変化に対するロバスト性❌)• 2stage:2Dの関節位置推定 ⇛ この結果を⽤いて3D推定
– 問題:2D関節位置推定の精度依存, 2D情報の無駄– 背景:既存は, 3D推定のモデルがドメイン変化に対してロバストでなかったため, ドメ
インの変化分を⼩さくするため2Dのキーポイントに情報を抽象化してから, 3Dモデルに渡していた
6
提案⼿法
• 画像の特徴量表現から3D回帰モデルにより3Dの潜在表現を推定. 以下の誤差に対して最適化するように学習.– 再構築誤差 Lreproj– 識別器Dに関する誤差 Ladv
7
提案⼿法:3D Body Representation
• ⼈体:Skinned Multi-Person Linear (SMPL) で表現– Shape β ∈ R10 :主成分空間の10次元で表現. (height, weight, body proportions等)– Pose θ ∈ R3K: K=23関節の3D回転度で表現. (各関節の変形度等)
• カメラ:– 回転 R∈R3x3, 平⾏移動 t∈R2、スケール s∈R
• ⇛ 全て合わせて
• Θが与えられた時, ⼈ X(θ, β) は で投影される.
8
提案⼿法:Iterative 3D Regression with Feedback
• Θを直接回帰で求めるのは難しいので, 残差計算し, Θを繰り返し更新する.– 3D回帰モジュールの⼊⼒に, 画像特徴量Φと現在のパラメータΘtを受取り, 残差ΔΘtを
出⼒する
• 誤差– 2Dの関節reprojection誤差– 3Dのground truthデータがある時は, 以下の誤差関数を最⼩化
– Adversarial Loss(後述)により, 学習が⼈体3Dのマニフォールド上で進むように.
9
提案⼿法:Factorized Adversarial Prior
• SMPLパラメータの真偽を判定する識別器.• Shape, Poseそれぞれに対して独⽴に識別器を⽤意.
– Poseはさらに分解:• 各関節回転毎に識別器を⽤意. ⇛ 各関節の⾓度の制約を学習できる.• 全ての関節を⼊⼒にした, 全体観をチェックするような識別器も学習. ⇛ 全ての関節の回転⾓
を組み合わせた分布も学習– ⇛ 識別器の⼊⼒が低次元になるため, 学習が安定する.
• 関節の制約に関する事前知識は⼊れない(先⾏研究とは異なる)– 本⼿法では, 識別器によりデータドリブンに制約を学習.
• エンコーダ E に関する⽬的関数:• 各識別器 Di の⽬的関数:
10
実験結果
• 3Dスケルトン以上のことをしているが、いかんせんground truthが存在しないので、そのままの評価が難しい
• ⇛ 今回の評価軸– (標準的な)3D関節位置推定タスク– Body part segmentationタスク
• データセット:MSCOCO• 青は2d-3d対あり、赤は対無し
11
実験結果:3D 関節位置推定
• データセット– Human3.6M:研究環境で撮られた系の画像– MPI-INF-3DHP:より多様なポーズ, ⼈の画像(in-the-wildにはまだ遠い)
• 評価指標– Mean Per Joint Position Error (MPJPE)– Reconstruction Error: 厳格なアライメントの後のMPJPE. グローバルミスアラインメ
ントを除いて, 再構成された3Dスケルトンの質を評価. (⼈体的にありえないけど、誤差最⼩化するようなトリッキーな推定を排除したもの(と理解))
• Human 3.6M
12
実験結果:3D 関節位置推定
• データセット:Human3.6M
13
Protocol2: 同じsubjectの訓練/テストセットを使⽤し, テストは前からのカメラに限定
今回同様3Djoints+SMPLまで出⼒する既存⼿法. 2Dkeypointsを⼊⼒にもつのは異なる.
本⼿法が⼤差で勝った.
Protocol1: 5subjects上で訓練して, 異なる2subjects上でテスト.
今回同様関節位置のみならずキネマティックツリーにおける関節⾓も出⼒する既存⼿法. ただし, 事前知識として各関節の全27⾃由度しか与えていない(本⼿法はshape含む85⾃由度)また, 既存⼿法ではスケールと⾻の⻑さの仮定を与えている.
3Djoints+αで出⼒している⼿法には勝っていて, 3Djointsのみのモデルとも良い勝負.
参考: http://vision.imar.ro/human3.6m/description.php
実験結果:3D 関節位置推定
• MPJPEと視覚的なクオリティはあまり相関していないことがわかった.
14
実験結果:3D 関節位置推定
• データセット:MPI-INF-3DHP– 室内、屋外で撮影されたもの. マーカを⽤いずにground truthを作成するので、
ground truthに⽐較的ノイズが含まれがち.– 指標
• MPJPE• Percentage of Correct Keypoints (PCK): threshold 150mm• Area Under the Curve (AUC): PCKの閾値の範囲でのAUC
15
3Djoints専⽤の既存⼿法といい勝負.
After Rigid Alignmentでは上回る.⇛ 既存⼿法では⼈体的な制約を無視し体歪ませて評価値上げられるのに対して, 本⼿法のshape/poseの⽅がより意味的に正しいということでは
実験結果:Human Body Segmentation
• 6つの⾝体部位+背景のセグメンテーション• 今回はセグメンテーションラベルは学習には⽤いていない
16
セグメンテーションデータを最適化対象として学習時に利⽤した既存⼿法と、いい勝負.
実験結果:Without paired 3D Supervision
• 関節位置推定, 3D再構築を⾏う既存⼿法では、3Dの教師データを必要とした.
• 本⼿法では、2D-to-3Dの対の教師データ無くとも、Adversarial Priorがあれば既存のタスク設定においても、精度が出ることを⽰した。
17
⾚が対データ無し
Adversarial priorが無いとぐちゃぐちゃに.(ただしそれでも2D誤差は低い)