You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
損失関数
本手法でのネットワークは、Pifu のような L1 loss や L2 loss ではなく、
以下の式のように、サンプリングされた3D点集合に対しての拡張された BCE loss で学習される。
※ サンプリングされた3D点集合に対しての拡張された BCE loss : 論文「Deephuman: 3d human reconstruction from a single image」
損失関数を評価するサンプル点集合 S のサンプリングは、Pifu と同様にして、
一様な体積サンプリングと、この一様サンプリングされたメッシュ表面点周りでガウシアン摂動したメッシュ表面周りの重点サンプリング [importance sampling] を混合したサンプリングで行う。
また法線マップを推論するための PixPixHD ネットワークは、以下の式のように、正解法線マップと推論法線マップとの間の L1 loss + VGG loss の線形結合で学習する。
0. 論文情報・リンク
1. どんなもの?
2. 先行研究と比べてどこがすごいの?
この問題は、GPUメモリ制約のために、入力画像として比較的低解像度の画像を入力しているのが1つの原因で発生していると考えられる。
本手法では、PIFu のアーキテクチャをベースとして、高解像度(1K)の入力人物画像とその法線マップを入力し、画像の荒い低解像度レベルで画像全体を捉え、画像の細かい高解像度レベルで画像詳細を捉えるような PIFuHD のアーキテクチャを採用することで、3D再構成した人物メッシュの品質を向上させている。
3. 技術や手法の"キモ"はどこにある?
【前提知識】PIFu [Pixel-Aligned Implicit Function]

人体メッシュの3D再構成は、一般的に、3D空間内の各点が人体メッシュ表面内にあるかメッシュ表面外にあるかを決定するための緻密な [dense] 3D体積(※3D空間離散化時はボクセルに対応)の占有率(=占有確率)を推定することで実現される。
既存の3D再構成モデルでは、3D空間を離散化し、各ボクセルの占有確率を明示的に推定するアプローチを採用していた。
一方で PIFu は、以下の式のように、連続なカメラ空間 X 内において、任意の3次元位置での2値(メッシュ内 or メッシュ外)の占有率を推定する関数 f(X) を end2end で学習されるニューラルネットワークでモデル化している。

このようにモデル化することで、学習時に明示的な3D体積をメモリに保管する必要がなく、3D空間の離散化も不要となる。このことは、高品質の3D再構成を実現する上で重要な点となる。
PIFu での具体的な処理は、以下のような流れになる。
PiFuHD のアーキテクチャ

上図は、本手法(PiFuHD)でのアーキテクチャの全体像を示した図である。
PiFuHD は、PiFu をベースに、入力画像として 1024 x 1024 の高解像度画像を入力している。
また、この入力画像から image-to-image 変換(Pix2PixHD使用)で得られる正面と裏向きでの法線マップを入力している。
※ 法線マップを活用することで、背面での3D再構成の品質を向上させている
PiFuHD は、以下の2つのサブネットワークから構成される。
この荒いレベルのネットワークでの処理は、以下のように定式化される
この細かいレベルのネットワークでの処理は、以下のように定式化される
※ これら荒いレベルのネットワークと細かいレベルのネットワークの具体的な構造は、Stacked hourglass networks の構造を採用されている。
※ PifuHD のこの部分の構造や発想は、最近のセグメンテーションモデルにおいてよく採用されているピラミッド構造や UNet 構造のように局所的な情報と大域的な情報の両方を捉える構造や発想とよく似ている印象。
正面から背面への推論(Front-to-Back Inference)
一般的に背面の3Dメッシュ再構成は、入力人物画像では直接観測できないために困難なタスクである。
このことは、最終的な3D点の占有確率を推定する MLP が複雑な関数を学習することが困難であるためとも解釈できる。
本手法では、PixPixHD を用いて、入力画像から正面と背面の法線マップを image-to-image 変換し、それを PiFuHD ネットワークに入力することで、背面での3D再構成の品質を向上させている。
※ 法線マップを入力することで、最終的な MLP がより簡単に占有確率を推定できるようになる。
損失関数

本手法でのネットワークは、Pifu のような L1 loss や L2 loss ではなく、
以下の式のように、サンプリングされた3D点集合に対しての拡張された BCE loss で学習される。
※ サンプリングされた3D点集合に対しての拡張された BCE loss : 論文「Deephuman: 3d human reconstruction from a single image」
損失関数を評価するサンプル点集合 S のサンプリングは、Pifu と同様にして、
一様な体積サンプリングと、この一様サンプリングされたメッシュ表面点周りでガウシアン摂動したメッシュ表面周りの重点サンプリング [importance sampling] を混合したサンプリングで行う。
また法線マップを推論するための PixPixHD ネットワークは、以下の式のように、正解法線マップと推論法線マップとの間の L1 loss + VGG loss の線形結合で学習する。

4. どうやって有効だと検証した?
学習用データセット
Pifu の RenderPeople data。
商用利用可能な 500 枚の高解像度人物スキャンデータ
既存の imge-to-3D モデルとの定性的品質比較検証

既存の imge-to-3D モデルと比較して、本手法での3D再構成品質が最も優れている。
法線マップ活用有無での背面品質の定性比較検証

法線マップを活用することで、背面での3D再構成品質が向上している。
本手法での3D再構成の定性的品質検証

様々な1枚の入力人物画像から、品質の高い3D再構成を実現できている。
5. 議論はあるか?
6. 次に読むべき論文はあるか?
7. 参考文献
The text was updated successfully, but these errors were encountered: