PIFuHD: Multi-Level Pixel-Aligned Implicit Function for High-Resolution 3D Human Digitization (CVPR 2020)

CVPR2020で以下の紹介したPIfuの発展版であるPIFuHDが発表された。

PIFuHDではより詳細な形状の復元が可能になっている。PIFuとの違いとしては、推定処理において、正面および背面の高解像度な法線マップもImage-to-Image Translationによって生成し利用している。これにより、服のしわなども再現できるようになっている(と思われる)。

PIFuと同様にCodeが公開されており、実際に様々な画像に対して気軽に適用してみることができる。Google Colabのバージョンも公開されており、手元にGPUを搭載したPCが無い場合でも実行することができる。(GPUについては、最低8GBのメモリが必要とgithubのページに書かれている)

以下はサンプルの画像に対して、PIFuHDを実行した結果になっている。
入力画像,法線マップ(正面),法線マップ(背面)
復元された形状(上)と法線マップ(下)

PIFuの時の結果に比べて詳細な形状が復元されていることが確認できる。ただし、PIFuと異なり形状のみの復元となっており、テクスチャ情報については復元されない。この点については、githubのissueを見る限り今後も機能が追加されることは無さそう。

ただし、ソースコードを1行変更することで、復元されたモデルを入力画像上へ投影し各頂点に対して色情報を付加することが可能になる。変更する場所はapps/recon.pyの210行目get_meshをget_mesh_imgColorである。

これにより、以下のように色付きのモデルを生成することができる。

ただし、あくまで画像上に投影した際の色情報を参照しているだけなので、背面などの見えていない部分については、後頭部に顔が出てきたりとおかしくなってしまう。なので、テクスチャについては、他のアルゴリズムで生成する、背面の画像も撮影して貼り付け、など行う必要がある。

それにしても、画像1枚からここまで出来るのは凄い。

コメント

このブログの人気の投稿

COLMAPでキャリブレーション済みのデータを使う

5点アルゴリズムによるカメラ位置・姿勢の推定

2D-3D対応からのカメラ位置・姿勢の推定