ホームページ  >  記事  >  テクノロジー周辺機器  >  2D画像を使って3Dの人体を作成し、好きな服を着たり、動きを変えたりすることができます。

2D画像を使って3Dの人体を作成し、好きな服を着たり、動きを変えたりすることができます。

WBOY
WBOY転載
2023-04-11 14:31:041255ブラウズ

NeRF が提供する微分可能なレンダリングのおかげで、最近の 3D 生成モデルは静止したオブジェクトに対して素晴らしい結果を達成しました。ただし、人体のようなより複雑で変形可能なカテゴリでは、3D 生成には依然として大きな課題が伴います。この論文では、超解像度モデルを使用せずに高解像度 (512x256) の 3D 人体生成を可能にする、人体の効率的な組み合わせ NeRF 表現を提案します。 EVA3D は、4 つの大規模な人体データ セットに関する既存のソリューションを大幅に上回り、コードはオープンソースになっています。

2D画像を使って3Dの人体を作成し、好きな服を着たり、動きを変えたりすることができます。


  • 論文名: EVA3D: 2D 画像コレクションからの合成 3D 人間の生成
  • ##論文アドレス: https://arxiv.org/abs/2210.04888
  • プロジェクト ホームページ: https://hongfz16.github.io/projects/EVA3D.html
  • オープン ソース コード: https://github.com/hongfz16/EVA3D
  • Colab デモ: https://colab.research.google。 com/github/hongfz16/EVA3D/blob/main/notebook/EVA3D_Demo.ipynb
  • ハグフェイスのデモ: https://huggingface.co/spaces/hongfz16/EVA3D


2D画像を使って3Dの人体を作成し、好きな服を着たり、動きを変えたりすることができます。


2D画像を使って3Dの人体を作成し、好きな服を着たり、動きを変えたりすることができます。

##Background


NeRF が提供する微分可能レンダリング アルゴリズム、EG3D、StyleSDF などの 3 次元生成アルゴリズムを静的オブジェクトの生成に使用しますカテゴリ すでに非常に良い結果が得られています。しかし、人体は顔や CAD モデルなどのカテゴリに比べて外観や形状がより複雑で、変形しやすいため、2D 画像から 3D 人体を生成する方法を学習することは依然として非常に困難な作業です。研究者は、ENARF-GAN や GNARF など、このタスクに関していくつかの試みを行ってきましたが、人間の非効率的な表現によって制限され、高解像度の生成を達成できず、そのため生成の品質も非常に低くなります。

この問題を解決するために、この論文では、高解像度 (512x256) の 3D 人体 GAN トレーニングと生成を実現する、効率的な結合 3D 人体 NeRF 表現を提案します。この記事で提案する人間の NeRF 表現と 3 次元人間 GAN トレーニング フレームワークを以下に紹介します。

効率的な人間 NeRF 表現

この記事で提案する人間 NeRF は、人間の姿勢と形状の便利な制御を提供するパラメーター化された人体モデル SMPL に基づいています。 NeRF モデリングを行う場合、以下の図に示すように、この記事では人体を 16 の部分に分割します。各部分は、ローカル モデリング用の小規模な NeRF ネットワークに対応します。各部分をレンダリングするとき、この論文ではローカル NeRF について推論するだけで済みます。このスパース レンダリング方法では、より少ないコンピューティング リソースでネイティブの高解像度レンダリングを実現することもできます。

たとえば、ボディおよびアクション パラメータが逆線形ブレンド スキニングである人体をレンダリングする場合、ポーズ空間のサンプリング ポイントを標準空間に変換します。次に、正準空間内のサンプリング ポイントが 1 つまたは複数のローカル NeRF 境界ボックスに属することが計算され、特定のサンプリング ポイントが複数のローカル NeRF 境界ボックスに分類される場合、NeRF モデルが推論されて各サンプリング ポイントに対応する色と濃度が取得されます。 NeRF オーバーラップ領域では、各 NeRF モデルが推論され、ウィンドウ関数を使用して複数の結果が補間され、最終的に、この情報は最終的なレンダリングを取得するための光の統合に使用されます。

3 次元人体 GAN フレームワーク

提案された効率的な人体 NeRF 表現に基づいて、この記事では 3 次元人体 GAN トレーニング フレームワークを実装します。各トレーニング反復において、この論文はまずデータセットから SMPL パラメータとカメラパラメータをサンプリングし、ランダムにガウス ノイズ z を生成します。この記事で提案した人体 NeRF を使用すると、サンプリングされたパラメータを偽のサンプルとして 2 次元の人体画像にレンダリングできます。この記事では、データセット内の実際のサンプルを使用して、GAN の敵対的トレーニングを実施します。

2D画像を使って3Dの人体を作成し、好きな服を着たり、動きを変えたりすることができます。

極端に不均衡なデータ セット

DeepFashion などの 2 次元の人体データ セットは、通常、それは 2 次元の視覚タスクのために準備されているため、人体の姿勢の多様性は非常に限られています。不均衡の程度を定量化するために、この論文では、DeepFashion におけるモデルの顔の向きの頻度を数えます。下図に示すように、オレンジ色の線はDeepFashionにおける顔の向きの分布を表しており、非常にアンバランスであり、三次元の人体表現の学習が困難であることがわかります。この問題を軽減するために、以下の図の他の色付きの線で示すように、分布曲線を平坦化するために人間の姿勢に基づいたサンプリング方法を提案します。これにより、モデルはトレーニング中に、人体のより多様で大きな角度の画像を見ることができるため、人体の 3 次元形状の学習に役立ちます。サンプリングパラメータの実験解析を行ったところ、以下の表から分かるように、人間姿勢誘導サンプリング手法を追加すると、画質(FID)は若干低下するものの、学習された三次元形状(Depth)は良好な結果が得られました。大幅に良くなりました。

高品質な生成結果

次の図は、EVA3D の生成結果の一部を示しています. EVA3D は人体の外観をランダムにサンプリングし、レンダリング カメラ パラメーターと人間の姿勢を制御できます。そして体型。

2D画像を使って3Dの人体を作成し、好きな服を着たり、動きを変えたりすることができます。

この論文では、DeepFashion、SHHQ、UBCFashion、および AIST という 4 つの大規模なヒト データ セットに対して実験を実施します。この研究では、最先端の静的 3D オブジェクト生成アルゴリズム EG3D と StyleSDF を比較します。同時に研究者らは、3D 人間生成に特化したアルゴリズム ENARF-GAN も比較しました。この記事では、指標の選択において、レンダリング品質 (FID/KID)、人体制御の精度 (PCK)、およびジオメトリ生成の品質 (Depth) の評価を考慮します。以下の図に示すように、この記事はすべてのデータセットとすべての指標において以前のソリューションを大幅に上回っています。

2D画像を使って3Dの人体を作成し、好きな服を着たり、動きを変えたりすることができます。

#応用可能性

最後に、この記事では EVA3D の応用可能性についてもいくつか示します。まず、この研究では潜在空間における差分をテストしました。以下の図に示すように、この記事では 3 次元の 2 人の人物間のスムーズな切り替えが可能であり、中間結果も高い品質を維持しています。さらに、この記事では、2次元 GAN インバージョンで一般的に使用されるアルゴリズムである Pivotal Tuning Inversion を使用した GAN インバージョンの実験も実施しました。下の右の図に示すように、この方法では再構成されたターゲットの外観をより適切に復元できますが、幾何学的部分の多くの詳細が失われます。 3次元GANの反転は依然として非常に困難な課題であることがわかります。

2D画像を使って3Dの人体を作成し、好きな服を着たり、動きを変えたりすることができます。

#結論

本稿は、初の高精細三次元人体 NeRF 生成アルゴリズム EVA3D を提案する2D人体画像データを使用して学習することができます。 EVA3D は、複数の大規模な人間データセットで最先端のパフォーマンスを実現し、下流タスクへの応用の可能性を示しています。 EVA3D のトレーニング コードとテスト コードはオープンソース化されており、誰でも気軽に試してみることができます。

以上が2D画像を使って3Dの人体を作成し、好きな服を着たり、動きを変えたりすることができます。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事は51cto.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。