Suivez nous sur

Paint3D : modèle de diffusion sans Ă©clairage pour la gĂ©nĂ©ration d'images

Intelligence Artificielle

Paint3D : modèle de diffusion sans Ă©clairage pour la gĂ©nĂ©ration d'images

mm

Le dĂ©veloppement rapide des modèles gĂ©nĂ©ratifs d'IA, notamment des modèles gĂ©nĂ©ratifs profonds, a considĂ©rablement amĂ©liorĂ© les capacitĂ©s de gĂ©nĂ©ration de langage naturel, de gĂ©nĂ©ration 3D, de gĂ©nĂ©ration d'images et de synthèse vocale. Ces modèles ont rĂ©volutionnĂ© la production 3D dans divers secteurs. Cependant, nombre d'entre eux sont confrontĂ©s Ă  un dĂ©fi : leur câblage complexe et les maillages gĂ©nĂ©rĂ©s sont souvent incompatibles avec les pipelines de rendu traditionnels comme le rendu physique (PBR). Les modèles basĂ©s sur la diffusion, notamment sans textures d'Ă©clairage, offrent une impressionnante diversitĂ© de gĂ©nĂ©ration d'actifs 3D, amĂ©liorant les cadres 3D pour le cinĂ©ma, les jeux vidĂ©o et la rĂ©alitĂ© augmentĂ©e/virtuelle.

Cet article présente Paint3D, un nouveau framework permettant de produire des textures UV 2K haute résolution et diversifiées pour des maillages 3D non texturés, conditionnées par des entrées visuelles ou textuelles. Le principal défi de Paint3D est de générer des textures de haute qualité sans illumination intégrée, permettant ainsi la réédition ou le rééclairage par l'utilisateur dans les pipelines graphiques modernes. Il utilise un modèle de diffusion 2D pré-entraîné pour la fusion de textures multi-vues, générant ainsi des textures initiales grossières. Cependant, ces textures présentent souvent des artefacts d'illumination et des zones incomplètes en raison des limitations du modèle 2D, qui ne permet pas de désactiver les effets d'éclairage et de représenter pleinement les formes 3D. Nous allons explorer le fonctionnement et l'architecture de Paint3D, ainsi que des comparaisons avec d'autres frameworks de génération profonde. Commençons.

Paint3D : une introduction

Les capacitĂ©s des modèles Deep Generative AI dans les tâches de gĂ©nĂ©ration de langage naturel, de gĂ©nĂ©ration 3D et de synthèse d’images sont bien connues et mises en Ĺ“uvre dans des applications rĂ©elles, rĂ©volutionnant l’industrie de la gĂ©nĂ©ration 3D. MalgrĂ© leurs capacitĂ©s remarquables, les profondeurs modernes IA gĂ©nĂ©rative Les frameworks gĂ©nèrent des maillages caractĂ©risĂ©s par un câblage complexe et des textures d'Ă©clairage chaotiques qui sont souvent incompatibles avec les pipelines de rendu conventionnels, notamment le PBR ou le rendu physique. Ă€ l’instar des modèles d’IA gĂ©nĂ©ratifs profonds, la synthèse de textures a Ă©galement progressĂ© rapidement, notamment dans l’utilisation de modèles de diffusion 2D. Les modèles de synthèse de texture utilisent une profondeur d'image prĂ©-entraĂ®nĂ©e modèles de diffusion efficacement pour utiliser les conditions de texte pour gĂ©nĂ©rer des textures de haute qualitĂ©. Cependant, ces approches rencontrent des problèmes avec les textures prĂ©-Ă©clairĂ©es qui peuvent avoir un impact significatif sur les rendus finaux de l'environnement 3D et introduire des erreurs d'Ă©clairage lorsque les lumières sont modifiĂ©es dans les flux de travail courants, comme le montre l'image suivante. 

Comme on peut l'observer, la carte de texture avec Ă©clairage libre fonctionne en synchronisation avec les pipelines de rendu traditionnels, fournissant des rĂ©sultats prĂ©cis, tandis que la carte de texture avec prĂ©-Ă©clairage inclut des ombres inappropriĂ©es lors de l'application d'un rééclairage. D'un autre cĂ´tĂ©, les frameworks de gĂ©nĂ©ration de textures formĂ©s sur des donnĂ©es 3D offrent une approche alternative dans laquelle le framework gĂ©nère les textures en comprenant la gĂ©omĂ©trie entière d'un objet 3D spĂ©cifique. Bien qu'ils puissent fournir de meilleurs rĂ©sultats, les frameworks de gĂ©nĂ©ration de textures formĂ©s sur des donnĂ©es 3D manquent de capacitĂ©s de gĂ©nĂ©ralisation, ce qui entrave leur capacitĂ© Ă  appliquer le modèle Ă  des objets 3D en dehors de leurs donnĂ©es de formation. 

Les modèles actuels de gĂ©nĂ©ration de textures sont confrontĂ©s Ă  deux dĂ©fis critiques : utiliser le guidage d'image ou diverses invites pour atteindre un degrĂ© plus large de gĂ©nĂ©ralisation sur diffĂ©rents objets, et le deuxième dĂ©fi Ă©tant l'Ă©limination de l'Ă©clairage couplĂ© sur les rĂ©sultats obtenus lors de la prĂ©-entraĂ®nement. Les textures prĂ©-illuminĂ©es peuvent potentiellement interfĂ©rer avec les rĂ©sultats finaux des objets texturĂ©s dans les moteurs de rendu, et comme les modèles de diffusion 2D prĂ©-entraĂ®nĂ©s fournissent des rĂ©sultats 2D uniquement dans le domaine de la vue, ils manquent de comprĂ©hension globale des formes, ce qui les empĂŞche de pour maintenir la cohĂ©rence de la vue pour les objets 3D. 

En raison des dĂ©fis mentionnĂ©s ci-dessus, le framework Paint3D tente de dĂ©velopper un modèle de diffusion de texture en deux Ă©tapes pour les objets 3D qui se gĂ©nĂ©ralise Ă  diffĂ©rents modèles gĂ©nĂ©ratifs prĂ©-entraĂ®nĂ©s et prĂ©serve la cohĂ©rence de la vue tout en apprenant la gĂ©nĂ©ration de texture sans Ă©clair. 

Paint3D est un modèle de gĂ©nĂ©ration de textures grossières Ă  fines en deux Ă©tapes qui vise Ă  tirer parti des solides capacitĂ©s de guidage rapide et de gĂ©nĂ©ration d'images des utilisateurs prĂ©-entraĂ®nĂ©s. IA gĂ©nĂ©rative modèles pour texturer des objets 3D. Dans la première Ă©tape, le framework Paint3D Ă©chantillonne d'abord progressivement des images multi-vues Ă  partir d'un modèle de diffusion d'images 2D sensible Ă  la profondeur prĂ©-entraĂ®nĂ© pour permettre la gĂ©nĂ©ralisation de rĂ©sultats de texture riches et de haute qualitĂ© Ă  partir de diverses invites. Le modèle gĂ©nère ensuite une première carte de texture en rĂ©troprojectant ces images sur la surface du maillage 3D. Dans la deuxième Ă©tape, le modèle se concentre sur la gĂ©nĂ©ration de textures sans Ă©clairage en mettant en Ĺ“uvre des approches utilisĂ©es par des modèles de diffusion spĂ©cialisĂ©s dans la suppression des influences lumineuses et le raffinement sensible Ă  la forme des rĂ©gions incomplètes. Tout au long du processus, le framework Paint3D est systĂ©matiquement capable de gĂ©nĂ©rer sĂ©mantiquement des textures 2K de haute qualitĂ© et d’éliminer les effets d’éclairage intrinsèques. 

Pour rĂ©sumer, Paint3D est un nouveau modèle d'IA gĂ©nĂ©ratif grossier Ă  fin qui vise Ă  produire des cartes de textures UV 2K diverses, sans Ă©clairage et haute rĂ©solution pour les maillages 3D non texturĂ©s afin d'obtenir des performances de pointe en matière de texturation d'objets 3D avec diffĂ©rentes conditions. entrĂ©es comprenant du texte et des images, et offre un avantage significatif pour les tâches de synthèse et d'Ă©dition graphique. 

Méthodologie et Architecture

Le framework Paint3D gĂ©nère et affine progressivement les cartes de texture pour gĂ©nĂ©rer des cartes de texture diverses et de haute qualitĂ© pour les modèles 3D Ă  l'aide des entrĂ©es conditionnelles souhaitĂ©es, notamment des images et des invites, comme le montre l'image suivante. 

Au stade grossier, le modèle Paint3D utilise des modèles de diffusion d'images 2D prĂ©-entraĂ®nĂ©s pour Ă©chantillonner des images multi-vues, puis crĂ©e les cartes de texture initiales en rĂ©troprojetant ces images sur la surface du maillage. Dans la deuxième Ă©tape, c'est-Ă -dire l'Ă©tape de raffinement, le modèle Paint3D utilise un processus de diffusion dans l'espace UV pour amĂ©liorer les cartes de texture grossières, obtenant ainsi une fonction de haute qualitĂ©, sans peinture et sans Ă©clairage, qui garantit l'attrait visuel et l'exhaustivitĂ© de la texture finale. . 

Étape 1 : GĂ©nĂ©ration progressive de texture grossière

Au cours de l'Ă©tape de gĂ©nĂ©ration progressive de texture grossière, le modèle Paint3D gĂ©nère une carte de texture UV grossière pour les maillages 3D qui utilisent un modèle de diffusion 2D sensible Ă  la profondeur prĂ©-entraĂ®nĂ©. Pour ĂŞtre plus prĂ©cis, le modèle utilise d'abord diffĂ©rentes vues de camĂ©ra pour restituer la carte de profondeur, puis utilise les conditions de profondeur pour Ă©chantillonner les images du modèle de diffusion d'images, puis rĂ©troprojete ces images sur la surface du maillage. Le framework exĂ©cute alternativement les approches de rendu, d'Ă©chantillonnage et de rĂ©troprojection pour amĂ©liorer la cohĂ©rence des maillages de texture, ce qui contribue finalement Ă  la gĂ©nĂ©ration progressive de la carte de texture. 

Le modèle commence Ă  gĂ©nĂ©rer la texture de la rĂ©gion visible avec les vues de la camĂ©ra se concentrant sur le maillage 3D, et restitue le maillage 3D sur une carte de profondeur Ă  partir de la première vue. Le modèle Ă©chantillonne ensuite une image de texture pour une condition d'apparence et une condition de profondeur. Le modèle rĂ©troprojete ensuite l'image sur le maillage 3D. Pour les points de vue, le modèle Paint3D exĂ©cute une approche similaire mais avec un lĂ©ger changement en effectuant le processus d'Ă©chantillonnage de texture Ă  l'aide d'une approche de peinture d'image. De plus, le modèle prend en compte les rĂ©gions texturĂ©es des points de vue prĂ©cĂ©dents, permettant au processus de rendu de produire non seulement une image de profondeur, mais Ă©galement une image RVB partiellement colorĂ©e avec un masque non colorĂ© dans la vue actuelle. 

Le modèle utilise ensuite un modèle d'inpainting d'image sensible Ă  la profondeur avec un encodeur d'inpainting pour remplir la zone non colorĂ©e de l'image RVB. Le modèle gĂ©nère ensuite la carte de texture Ă  partir de la vue en rĂ©troprojetant l'image peinte dans le maillage 3D sous la vue actuelle, permettant au modèle de gĂ©nĂ©rer la carte de texture progressivement et d'arriver Ă  l'intĂ©gralitĂ© de la carte de structure grossière. Enfin, le modèle Ă©tend le processus d'Ă©chantillonnage de texture Ă  une scène ou un objet avec plusieurs vues. Pour ĂŞtre plus prĂ©cis, le modèle utilise une paire de camĂ©ras pour capturer deux cartes de profondeur lors de l'Ă©chantillonnage initial de texture Ă  partir de points de vue symĂ©triques. Le modèle combine ensuite deux cartes de profondeur et compose une grille de profondeur. Le modèle remplace l'image de profondeur unique par la grille de profondeur pour effectuer un Ă©chantillonnage de texture multi-vues tenant compte de la profondeur. 

Étape 2 : raffinement de la texture dans l'espace UV

Bien que l'apparition de cartes de texture grossières soit logique, elle se heurte Ă  certains dĂ©fis tels que des trous de texture provoquĂ©s lors du processus de rendu par l'auto-occlusion ou des ombres Ă©clair en raison de l'implication de modèles de diffusion d'images 2D. Le modèle Paint3D vise Ă  effectuer un processus de diffusion dans l'espace UV sur la base d'une carte de texture grossière, en essayant d'attĂ©nuer les problèmes et d'amĂ©liorer encore davantage l'attrait visuel de la carte de texture lors du raffinement de la texture. Cependant, affiner le modèle de diffusion d'image traditionnel avec les cartes de texture dans l'espace UV introduit une discontinuitĂ© de texture puisque la carte de texture est gĂ©nĂ©rĂ©e par le mappage UV de la texture de la surface 3D qui coupe la texture continue en une sĂ©rie de fragments individuels dans l'espace UV. espace. En raison de la fragmentation, le modèle a du mal Ă  apprendre les relations de contiguĂŻtĂ© 3D entre les fragments, ce qui entraĂ®ne des problèmes de discontinuitĂ© de texture. 

Le modèle affine la carte de texture dans l'espace UV en effectuant le processus de diffusion sous la direction des informations de contiguĂŻtĂ© des fragments de texture. Il est important de noter que dans l'espace UV, c'est la carte de position qui reprĂ©sente les informations de contiguĂŻtĂ© 3D des fragments de texture, le modèle traitant chaque Ă©lĂ©ment hors arrière-plan comme une coordonnĂ©e de point 3D. Au cours du processus de diffusion, le modèle fusionne les informations de contiguĂŻtĂ© 3D en ajoutant un encodeur de carte de position individuelle au modèle de diffusion d'image prĂ©-entraĂ®nĂ©. Le nouvel encodeur ressemble Ă  la conception du framework ControlNet et possède la mĂŞme architecture que l'encodeur implĂ©mentĂ© dans le modèle de diffusion d'image avec la couche Ă  convolution nulle reliant les deux. De plus, le modèle de diffusion de texture est entraĂ®nĂ© sur un ensemble de donnĂ©es comprenant des cartes de texture et de position, et le modèle apprend Ă  prĂ©dire le bruit ajoutĂ© au bruit latent. Le modèle optimise ensuite l'encodeur de position et fige le dĂ©bruiteur entraĂ®nĂ© pour sa tâche de diffusion d'image. 

Le modèle utilise ensuite simultanĂ©ment la position de l'encodeur conditionnel et d'autres encodeurs pour effectuer des tâches de raffinement dans l'espace UV. Ă€ cet Ă©gard, le modèle dispose de deux capacitĂ©s de raffinement : UVHD ou UV High Definition et UV inpainting. La mĂ©thode UVHD est structurĂ©e pour amĂ©liorer l’attrait visuel et l’esthĂ©tique de la carte de texture. Pour obtenir l'UVHD, le modèle utilise un encodeur d'amĂ©lioration d'image et un encodeur de position avec le modèle de diffusion. Le modèle utilise la mĂ©thode d'inpainting UV pour remplir les trous de texture dans le plan UV, ce qui est capable d'Ă©viter les problèmes d'auto-occlusion gĂ©nĂ©rĂ©s lors du rendu. Au cours de la phase de raffinement, le modèle Paint3D effectue d'abord une inpainting UV, puis exĂ©cute UVHD pour gĂ©nĂ©rer la carte de texture finale raffinĂ©e. En intĂ©grant les deux mĂ©thodes de raffinement, le framework Paint3D est capable de produire des cartes de texture UV complètes, diversifiĂ©es, haute rĂ©solution et sans Ă©clairage. 

Paint3D : Expériences et résultats

Le modèle Paint3D utilise le Diffusion stable modèle text2image pour l'aider dans les tâches de gĂ©nĂ©ration de texture tout en utilisant le composant encodeur d'image pour gĂ©rer les conditions de l'image. Pour amĂ©liorer encore son contrĂ´le sur les contrĂ´les conditionnels tels que l'inpainting d'image, la profondeur et la haute dĂ©finition d'image, le framework Paint3D utilise des encodeurs de domaine ControlNet. Le modèle est implĂ©mentĂ© sur le framework PyTorch avec des projections de rendu et de texture implĂ©mentĂ©es sur Kaolin. 

Comparaison texte-textures

Pour analyser ses performances, nous commençons par Ă©valuer l'effet de gĂ©nĂ©ration de texture de Paint3D lorsqu'il est conditionnĂ© Ă  l'aide d'invites textuelles, et nous le comparons aux frameworks de pointe, notamment Text2Tex, TEXTure et LatentPaint. Comme on peut l'observer dans l'image suivante, le framework Paint3D excelle non seulement dans la gĂ©nĂ©ration de dĂ©tails de texture de haute qualitĂ©, mais il synthĂ©tise Ă©galement assez bien une carte de texture sans Ă©clairage. 

En comparaison, le framework Latent-Paint a tendance Ă  gĂ©nĂ©rer des textures floues qui entraĂ®nent des effets visuels sous-optimaux. D'un autre cĂ´tĂ©, bien que le framework TEXTure gĂ©nère des textures claires, il manque de douceur et prĂ©sente des Ă©pissures et des coutures visibles. Enfin, le framework Text2Tex gĂ©nère remarquablement bien des textures lisses, mais il ne parvient pas Ă  reproduire les performances de gĂ©nĂ©ration de textures fines avec des dĂ©tails complexes. 

L'image suivante compare quantitativement le framework Paint3D avec les frameworks de pointe. 

Comme on peut le constater, le framework Paint3D surpasse tous les modèles existants, et de loin, avec une amĂ©lioration de près de 30 % de la rĂ©fĂ©rence FID et une amĂ©lioration d'environ 40 % de la rĂ©fĂ©rence KID. L'amĂ©lioration des scores de base FID et KID dĂ©montre la capacitĂ© de Paint3D Ă  gĂ©nĂ©rer des textures de haute qualitĂ© sur divers objets et catĂ©gories. 

Comparaison image-texture

Pour gĂ©nĂ©rer les capacitĂ©s gĂ©nĂ©ratives de Paint3D Ă  l'aide d'invites visuelles, nous utilisons le modèle TEXTure comme rĂ©fĂ©rence. Comme mentionnĂ© prĂ©cĂ©demment, le modèle Paint3D utilise un encodeur d'image provenant du modèle text2image de Stable Diffusion. Comme on peut le voir dans l'image suivante, le framework Paint3D synthĂ©tise remarquablement bien des textures exquises et est toujours capable de maintenir une haute fidĂ©litĂ© par rapport aux conditions de l'image. 

D'un autre cĂ´tĂ©, le framework TEXTure est capable de gĂ©nĂ©rer une texture similaire Ă  Paint3D, mais il ne parvient pas Ă  reprĂ©senter avec prĂ©cision les dĂ©tails de la texture dans l'Ă©tat de l'image. De plus, comme le dĂ©montre l'image suivante, le framework Paint3D offre de meilleurs scores de base FID et KID par rapport au framework TEXTure, le premier diminuant de 40.83 Ă  26.86 tandis que le second affiche une baisse de 9.76 Ă  4.94. 

Réflexions finales

Dans cet article, nous avons parlĂ© de Paint3D, un nouveau framework grossier Ă  fin capable de produire des cartes de texture UV 2K sans Ă©clairage, diversifiĂ©es et haute rĂ©solution pour des maillages 3D non texturĂ©s conditionnĂ©s par des entrĂ©es visuelles ou textuelles. Le principal point fort du framework Paint3D est qu'il est capable de gĂ©nĂ©rer des textures UV 2K haute rĂ©solution sans Ă©clairage, sĂ©mantiquement cohĂ©rentes, sans ĂŞtre conditionnĂ©es par des entrĂ©es d'image ou de texte. Grâce Ă  son approche grossière Ă  fine, le framework Paint3D produit des cartes de textures sans Ă©clairage, diversifiĂ©es et haute rĂ©solution, et offre de meilleures performances que les frameworks de pointe actuels. 

« IngĂ©nieur de profession, Ă©crivain de cĹ“ur Â». Kunal est un rĂ©dacteur technique avec un amour et une comprĂ©hension profonds de l'IA et du ML, dĂ©diĂ© Ă  la simplification de concepts complexes dans ces domaines grâce Ă  sa documentation engageante et informative.