[論文読み] V2V-PoseNet :デプスマップから人体のkey-point三次元位置推定を行うネットワーク


V2V-PoseNet: Voxel-to-Voxel Prediction Network for Accurate 3D Hand and Human Pose Estimation from a Single Depth Map(CVPR2018)


description: 論文読んだまとめ記事


url: https://arxiv.org/abs/1711.07399

自分なりに解釈したメモになります。

ミスがあったら優しく教えてください。



  • Title
    V2V-PoseNet: Voxel-to-Voxel Prediction Network for Accurate 3D Hand and Human Pose Estimation from a Single Depth Map

  • Conference
    CVPR2018

  • Authors
    Moon, Gyeongsik, Ju Yong Chang, and Kyoung Mu Lee



どんなもの?

3次元のDepthマップから3次元の手や人の体のkey-point推定を行うパワフルなネットワークであるV2V-PoseNetを提案した。1

V2V-PoseNetは2次元のDepthマップをボクセル化したものを入力として、V2V-PoseNetによってkey-pointを推定する。

V2V-PoseNetは3Dのデータを3Dのままに扱うことにより従来手法の欠点を克服している。

この研究の価値は2D(Depthマップ)から3D(Voxel)を推定していた従来の傾向に対して、3Dから3Dを推定することの有用性を示した点にあるのではないだろうか。

リアルタイムに実行可能(35FPS)と言っているがマルチGPUによる力押しらしい。


  • Model architecture


  • Input format discussion



先行研究と比べて何がすごい?


■従来研究

従来の研究は3Dのデータを2DのdepthマップとしてCNNにかけるなどの方法が取られていた。


■従来研究の欠点

2Dデプスマップから3D座標を出す方法には2つ欠点がある。

1つ目は、従来手法はdepthマップを2次元画像として扱っているため、2次元への射影時にdistorionが生じるという点だ。

本来3Dのデータを2Dにすることによるdepthマップの歪みがあることである。

これにより、ネットワークは歪んだ見え方に対して不変的な推定を行うようになる。

2つ目は、2Dイメージから3D座標を推定することは非線形(mapping)であり学習が難しいということだ。


■改善方法

V2V-PoseNetは3Dのデータを3Dのままに扱うことでこれらの欠点を克服している。

具体的には、それぞれのVoxelがkey-pointらしさを持っており、そのVoxelを3Dの畳込みで処理していく。

input_exp

Table1

上記の表のように、表現方法の改善によってパラメータ数を抑えつつも精度の向上が見込める


技術の手法や肝は?

V2V-PoseNetは3Dのデータを3Dのままに扱い、ボクセル毎に各key-pointsらしさ(尤度)を求める。

具体的には、それぞれのVoxelにkey-pointらしさをもたせ、そのVoxelを3Dの畳込みで処理していく。

入力は2DのDepthマップを3DのVoxel表現に変換してから、全体の点群から推定したい点群を切り抜いて与える。

V2V-PoseNetでは、この前処理にシンプルなCNN2を使っている。

architecture


  • 前処理(Refining target object localization)
    全体の点群から取り扱いたい点群を切り出す三次元的な箱をcudicという。
    入力点群の重心が中央に来るようにcudicを決定したりする手法がある。
    しかしその手法の場合、例えば物体を掴んでいる時などには適切に動作しない。
    そのため、以下の図に示すシンプルなCNN(他論文で提案されたネットワーク2)を使って正しいReferencePointとのオフセットを得る。

input_

Table2 refining


  • 入力

    2Dデプスマップを3DVoxel(88×88×88)に変換する。

    前処理で求めた参照点(the reference point)からcubic boxを切り抜く。


    (voxelサイズに沿って離散化されることになる)

    入力が88x88x88であるため、ほぼ$O(10^6)$でリアルタイムに実行できるということなのだろうか。



  • 出力

    Voxelごとに各key-pointの尤度を求める。

    つまり、key-pointごとのヒートマップを求めることと等しい。


    • 確率密度関数

      grand-truth$(i,j,k)$でピークになるようにガウス分布を設計する。
      $n$:key-point
      $i_n,j_n,k_n$:key-point nの正しい座標
      $$
      H^*n(i,j,k) = exp\left(-\frac{(i-i_n)^2+(j-jn)^2+(k-k_n)^2}{2\sigma^2}\right)
      $$

    • 損失関数

      $$
      L = \sum^N_{n=1}\sum_{i,j,k}||H^*_n(i,j,k)-H_n(i,j,k)||
      $$




ネットワーク構造


  • volumetric basic block

    よくわからん (7x7x7)
    VolumetricBatchNormalization
    ReLU
    hour-glass model3ベース

  • volumetric residual block

    ある論文4の2D residual blockを拡張したもの。(3x3x3)

  • volumetric downsampling block

    三次元のMaxPoolingLyer(2×2×2 stride 2)

  • volumetric upsampling block

    三次元の逆畳み込み(2×2×2 stride 2)
    VolumetricBatchNormalization
    ReLU

  • encoder decoder

    下図に示す。
    どこの論文を参考にしたとか書いていなかったが、三次元のデータへのencoder-decoderはこの形が一般的なのか?
    図中での@32は32channelを示す.

  • 出力層の近く

    encoder-decoderの出力に対して1×1×1のvolumetric basic blocksと1×1×1のvolumetric convolutional layerでvoxelごとの尤度予測を行う。

enc_dec


データ拡張

すごくベーシック



  • 回転

    [-40, 40] degrees


  • 拡大・縮小

    [0.8, 1.2]


  • 並進移動

    [-8, 8] voxels


どうやって有効だと検証したか5

直接key pointの座標を求める手法と比べ、ボクセル毎の確立を求めることで精度が向上した。具体的には、正解値との誤差、mAPの2つの尺度において従来手法よりも数値的に向上したことを確認した。6


  • HANDS2017 frame-based 3D hand pose estimation Challenge Results

Challenge_result

k- Comparison with the previous state-of-the-art methods

Paper_result_hand_graph

Paper_result_hand_table

Paper_result_human_table


次に読むべき論文は?

null


参考文献





  1. https://github.com/mks0601/V2V-PoseNet_RELEASE 



  2. M. Oberweger and V. Lepetit. Deepprior++: Improving fast and accurate 3d hand pose estimation. In IEEE InternationalConference on Computer Vision Workshop, Oct 2017. 



  3. A. Newell, K. Yang, and J. Deng. Stacked hourglass net-works for human pose estimation. InEuropean Conference on Computer Vision, pages 483–499. Springer, 2016. 



  4. K. He, X. Zhang, S. Ren, and J. Sun. Deep residual learning for image recognition. In IEEE Conference on Computer Vision and Pattern Recognition , pages 770–778, 2016. 



  5. http://icvl.ee.ic.ac.uk/hands17/ 



  6. https://cvpaperchallenge.github.io/CVPR2018_Survey/#/ID_V2V-PoseNet_Voxel-to-Voxel_Prediction_Network_for_Accurate_3D_Hand_and_Human_Pose_Estimation_from_a_Single_Depth_Map