Maison  >  Article  >  Périphériques technologiques  >  Utilisez des images 2D pour créer un corps humain en 3D. Vous pouvez porter n'importe quel vêtement et modifier vos mouvements.

Utilisez des images 2D pour créer un corps humain en 3D. Vous pouvez porter n'importe quel vêtement et modifier vos mouvements.

WBOY
WBOYavant
2023-04-11 14:31:041299parcourir

Grâce au rendu différenciable fourni par NeRF, les modèles génératifs 3D récents ont obtenu des résultats époustouflants sur des objets stationnaires. Cependant, dans une catégorie plus complexe et déformable comme le corps humain, la génération 3D pose encore de grands défis. Cet article propose une représentation NeRF combinée efficace du corps humain, permettant la génération de corps humain 3D haute résolution (512 x 256) sans utiliser de modèles de super-résolution. EVA3D a largement surpassé les solutions existantes sur quatre ensembles de données du corps humain à grande échelle, et le code est open source.

Utilisez des images 2D pour créer un corps humain en 3D. Vous pouvez porter nimporte quel vêtement et modifier vos mouvements.


  • Nom de l'article : EVA3D : Génération humaine compositionnelle en 3D à partir de collections d'images 2D
  • Adresse de l'article : https://arxiv.org/abs/2210.04888
  • Accueil du projet page : https : //hongfz16.github.io/projects/EVA3D.html
  • Code open source : https://github.com/hongfz16/EVA3D
  • Démo Colab : https://colab.research.google.com / github/hongfz16/EVA3D/blob/main/notebook/EVA3D_Demo.ipynb
  • Démo Hugging Face : https://huggingface.co/spaces/hongfz16/EVA3D


Utilisez des images 2D pour créer un corps humain en 3D. Vous pouvez porter nimporte quel vêtement et modifier vos mouvements.


Utilisez des images 2D pour créer un corps humain en 3D. Vous pouvez porter nimporte quel vêtement et modifier vos mouvements.


Contexte

En utilisant l'algorithme de rendu différenciable fourni par NeRF, les algorithmes de génération tridimensionnelle, tels que EG3D et StyleSDF, ont obtenu de très bons résultats dans la génération de catégories d'objets statiques. Cependant, comparé à des catégories telles que les visages ou les modèles CAO, le corps humain est plus complexe en apparence et en géométrie, et le corps humain est déformable, donc apprendre à générer des corps humains 3D à partir d'images 2D reste une tâche très difficile. Les chercheurs ont fait quelques tentatives dans ce domaine, comme ENARF-GAN et GNARF, mais limités par une expression humaine inefficace, ils ne peuvent pas réaliser une génération à haute résolution, de sorte que la qualité de la génération est également très faible.

Pour résoudre ce problème, cet article propose une représentation NeRF 3D combinée efficace du corps humain pour obtenir une formation et une génération GAN 3D du corps humain haute résolution (512x256). La représentation NeRF humaine proposée dans cet article et le cadre de formation GAN humain tridimensionnel seront présentés ci-dessous.

Représentation NeRF humaine efficace

Le NeRF humain proposé dans cet article est basé sur le modèle humain paramétrique SMPL, qui permet un contrôle pratique de la posture et de la forme humaines. Lors de la modélisation NeRF, comme le montre la figure ci-dessous, cet article divise le corps humain en 16 parties. Chaque partie correspond à un petit réseau NeRF pour une modélisation locale. Lors du rendu de chaque pièce, cet article n'a besoin que de raisonner sur le NeRF local. Cette méthode de rendu clairsemé peut également obtenir un rendu natif haute résolution avec des ressources informatiques réduites.

Par exemple, lors du rendu d'un corps humain dont les paramètres de corps et d'action sont Les points d'échantillonnage dans l'espace sont transformés en espace canonique. Ensuite, il est calculé que les points d'échantillonnage dans l'espace canonique appartiennent à un ou plusieurs cadres de délimitation NeRF locaux, puis le modèle NeRF est déduit pour obtenir la couleur et la densité correspondant à chaque point d'échantillonnage lorsqu'un certain point d'échantillonnage tombe dans plusieurs locaux ; NeRF Dans la zone de chevauchement, chaque modèle NeRF sera déduit, et plusieurs résultats seront interpolés à l'aide de la fonction fenêtre, enfin, ces informations seront utilisées pour l'intégration de la lumière afin d'obtenir le rendu final ;

Utilisez des images 2D pour créer un corps humain en 3D. Vous pouvez porter nimporte quel vêtement et modifier vos mouvements.

Cadre GAN humain tridimensionnel

Basé sur l'expression NeRF humaine efficace proposée, cet article implémente un cadre de formation GAN humain tridimensionnel. À chaque itération de formation, cet article échantillonne d'abord un paramètre SMPL et des paramètres de caméra à partir de l'ensemble de données, puis génère de manière aléatoire un bruit gaussien z. En utilisant le NeRF du corps humain proposé dans cet article, cet article peut restituer les paramètres échantillonnés dans une image bidimensionnelle du corps humain en tant que faux échantillon. À l’aide d’échantillons réels de l’ensemble de données, cet article effectue une formation contradictoire du GAN.

Utilisez des images 2D pour créer un corps humain en 3D. Vous pouvez porter nimporte quel vêtement et modifier vos mouvements.

Ensembles de données extrêmement déséquilibrés

Les ensembles de données 2D du corps humain, tels que DeepFashion, sont généralement préparés pour les tâches de vision 2D, de sorte que la diversité des poses du corps humain est très limitée. Pour quantifier le degré de déséquilibre, cet article compte la fréquence des orientations du visage du modèle dans DeepFashion. Comme le montre la figure ci-dessous, la ligne orange représente la répartition des orientations du visage dans DeepFashion. On peut voir qu'elle est extrêmement déséquilibrée, ce qui rend difficile l'apprentissage de la représentation tridimensionnelle du corps humain. Pour atténuer ce problème, nous proposons une méthode d'échantillonnage guidée par la posture humaine pour aplatir la courbe de distribution, comme le montrent les autres lignes colorées dans la figure ci-dessous. Cela permet au modèle pendant l'entraînement de voir des images du corps humain plus diversifiées et avec un angle plus grand, aidant ainsi à apprendre la géométrie humaine tridimensionnelle. Nous avons effectué une analyse expérimentale des paramètres d'échantillonnage. Comme le montre le tableau ci-dessous, après avoir ajouté la méthode d'échantillonnage à guidage de posture humaine, bien que la qualité de l'image (FID) soit légèrement réduite, la géométrie tridimensionnelle apprise (profondeur) a été modifiée. sensiblement amélioré.

Résultats de génération de haute qualité

La figure suivante montre certains résultats de génération d'EVA3D EVA3D peut échantillonner de manière aléatoire les apparences du corps humain et contrôler les paramètres de rendu de la caméra, la posture humaine et la forme du corps.

Utilisez des images 2D pour créer un corps humain en 3D. Vous pouvez porter nimporte quel vêtement et modifier vos mouvements.

Cet article mène des expériences sur quatre ensembles de données humaines à grande échelle, à savoir DeepFashion, SHHQ, UBCFashion et AIST. Cette étude compare l'algorithme de génération d'objets 3D statiques de pointe EG3D avec StyleSDF. Dans le même temps, les chercheurs ont également comparé l’algorithme ENARF-GAN spécifiquement pour la génération humaine en 3D. Dans la sélection des indicateurs, cet article prend en compte l'évaluation de la qualité du rendu (FID/KID), la précision du contrôle du corps humain (PCK) et la qualité de la génération géométrique (Profondeur). Comme le montre la figure ci-dessous, cet article surpasse considérablement les solutions précédentes dans tous les ensembles de données et tous les indicateurs.

Utilisez des images 2D pour créer un corps humain en 3D. Vous pouvez porter nimporte quel vêtement et modifier vos mouvements.

Potentiel d'application

Enfin, cet article montre également certains potentiels d'application d'EVA3D. Premièrement, l’étude a testé la différenciation dans l’espace latent. Comme le montre la figure ci-dessous, cet article est capable d'effectuer des changements en douceur entre deux personnes en trois dimensions, et les résultats intermédiaires conservent une haute qualité. En outre, cet article a également mené des expériences sur l'inversion GAN. Les chercheurs ont utilisé Pivotal Tuning Inversion, un algorithme couramment utilisé dans l'inversion GAN bidimensionnelle. Comme le montre la figure de droite ci-dessous, cette méthode permet de mieux restaurer l'apparence de la cible reconstruite, mais de nombreux détails sont perdus dans la partie géométrique. On peut voir que l’inversion du GAN 3D reste une tâche très difficile.

Utilisez des images 2D pour créer un corps humain en 3D. Vous pouvez porter nimporte quel vêtement et modifier vos mouvements.

Conclusion

Cet article propose le premier algorithme de génération NeRF humaine tridimensionnelle haute définition EVA3D, et peut être entraîné en utilisant uniquement des données d'image humaine bidimensionnelles. EVA3D atteint des performances de pointe sur plusieurs ensembles de données humaines à grande échelle et montre un potentiel d'application sur des tâches en aval. Les codes de formation et de test d'EVA3D sont open source et tout le monde est invité à l'essayer !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer