Stacked Hourglassによる姿勢推定メモ

概要

  • stacked hourglassな形状のネットワークを使って姿勢推定する
    • 画像の全ての大きさの情報を捉えて利用できる

f:id:yusuke_ujitoko:20170721234149p:plain

  • hourglassを連結、hourglassごとに教師データを与える
  • FLICとMPIIでsota

関連研究

  • 画像から関節位置(x,y)を直接推定(DeepPose(Toshev et al.))
  • 画像からHeatmapを出力(Tompson et al.)
    • 異なる解像度のネットワークを並列処理し、様々なスケールの特徴量を抽出
  • Iterative Error Feedback(Carreira et al.)
    • 繰り返し予測の精度を高めていく
  • Multi-stage pose machines(Wei et al.)

Hourglass Design

hourglassのネットワークにした理由は、画像中の様々なスケールの情報を抽出したかったから。 局所的な情報は、顔や手などの特徴を特定するのに役立つ一方で、最終的な姿勢の推定は体全体の情報が必要となる。 hourglassネットワークであれば、様々なスケールの情報を抽出できる。

様々なスケールの情報を抽出する他のアプローチとして、 並列に異なるスケールの特徴抽出ネットワークを配置し最後に繋げる方法(Tompson et al.)があるが、 本研究では単一のパイプラインで行っている。 単一のパイプラインで様々なスケールの特徴を保持するために、skip layerを備えている。

f:id:yusuke_ujitoko:20170721234231p:plain

hourglassのbottom-up段階(左側)ではConv層を重ねていき、各スケールでの特徴量を抽出する。 そして、一番解像度が低い段階まで来たら、top-down段階に入り、up-samplingしつつ、各スケールの特徴量を結合していく。 この構造はUNetに近い? 出力層ではheatmapを出力する。

8個のhourglassが連結。 重みは共有されない。 同じ教師データが各hourglassの出力の誤差計算に使われる。

結果

f:id:yusuke_ujitoko:20170722000303p:plain

f:id:yusuke_ujitoko:20170722000333p:plain