Interrogez-nous, nous vous répondrons !

Applications et Guides

Stable Diffusion: Générer des visages reproductibles

La répétabilité est l'aspect le plus important lors de la création de contenu graphique à l'aide de réseaux neuronaux génératifs. Cela est vrai quel que soit le type de contenu créé, qu'il s'agisse d'un personnage de cinéma ou de jeu, d'un paysage ou d'un environnement scénique. Le problème principal peut être formulé comme suit : "Comment puis-je répéter mon résultat ? Chaque fois que vous commencez à générer des images avec les mêmes invites positives et négatives, vous obtiendrez des résultats différents. Parfois, les différences sont mineures et acceptables, mais dans la plupart des cas, elles peuvent poser un problème.

La diffusion stable est apprise sur un vaste ensemble de données issues du monde réel, ce qui explique pourquoi la répétabilité n'est pas un point fort de ce modèle de réseau neuronal. Toutefois, cette règle ne s'applique pas aux photos de célébrités. Ces photos sont beaucoup plus fréquentes dans le monde réel et, par conséquent, dans l'ensemble de données sur lequel Stable Diffusion a été entraîné. Vous pouvez utiliser ces photos comme une "constante" ou un "point de départ" dans le processus de génération.

Méthode 1. "Secoué, pas remué"

Bien entendu, il n'est pas nécessaire de créer uniquement des images de célébrités, mais vous pouvez utiliser plusieurs invites pertinentes pour obtenir des résultats plus ou moins cohérents. Par exemple, nous pouvons prendre deux chanteuses grecques célèbres : Elena Paparizou et Marina Satti, et obtenir des résultats reproductibles :

Model: Realistic Vision v6.0 beta 1

Positive prompts:

Elena Paparizou, Marina Satti, fashion portrait, alone, solo, greek woman in beautiful clothes, natural skin, 8k uhd, high quality, film grain, Canon EOS

Negative prompts:

bad anatomy, bad hands, three hands, three legs, bad arms, missing legs, missing arms, poorly drawn face, bad face, fused face, cloned face, worst face, three crus, extra crus, fused crus, worst feet, three feet, fused feet, fused thigh, three thigh, fused thigh, extra thigh, worst thigh, missing fingers, extra fingers, ugly fingers, long fingers, horn, extra eyes, huge eyes, 2girl, amputation, disconnected limbs, cartoon, cg, 3d, unreal, animate, nsfw, nude, censored
Greek singer generated

Cela fonctionne avec n'importe quelle célébrité, car Stable Diffusion a essayé de reproduire les traits les plus saillants du visage. Ici, nous utilisons le même modèle et "secouons" deux stars hollywoodiennes (Dwayne Johnson et Danny Trejo) en un nouveau personnage synthétique.

Positive prompts:

Dwayne Johnson, Danny Trejo, fashion portrait, alone, solo, 8k uhd, high quality, film grain, Canon EOS

Negative prompts:

bad anatomy, bad hands, three hands, three legs, bad arms, missing legs, missing arms, poorly drawn face, bad face, fused face, cloned face, worst face, three crus, extra crus, fused crus, worst feet, three feet, fused feet, fused thigh, three thigh, fused thigh, extra thigh, worst thigh, missing fingers, extra fingers, ugly fingers, long fingers, horn, extra eyes, huge eyes, amputation, disconnected limbs, cartoon, cg, 3d, unreal, animate, nsfw, nude, censored
Hollywood stars generated

Chaque fois que vous mélangez les mêmes célébrités, vous obtenez des résultats similaires. Examinons une autre méthode pour générer des personnages reproductibles.

Méthode 2. Ancre de nom

Les célébrités sont un bon début, mais examinons d'autres méthodes pour obtenir des résultats reproductibles. La réponse est très simple : nous pouvons utiliser plusieurs noms humains. Chaque nation possède des noms uniques, liés à des caractéristiques linguistiques. Par exemple, le nom grec Kostas peut se traduire par "travail" ou "effort", tandis que Nikos signifie "Victoire du peuple". Ces deux noms créent une image unique de la personne générée, ce qui aide les modèles de réseaux neuronaux à comprendre nos objectifs de création.

Positive prompts:

Portrait of [Kostas | Nikos] on a white background, greek man, short haircut, beard

Negative prompts:

woman, bad anatomy, bad hands, three hands, three legs, bad arms, missing legs, missing arms, poorly drawn face, bad face, fused face, cloned face, worst face, three crus, extra crus, fused crus, worst feet, three feet, fused feet, fused thigh, three thigh, fused thigh, extra thigh, worst thigh, missing fingers, extra fingers, ugly fingers, long fingers, horn, extra eyes, huge eyes, 2girl, amputation, disconnected limbs, cartoon, cg, 3d, unreal, animate, nsfw, nude, censored
Greek person generated

Générons de nombreuses images (80-100) pour la création ultérieure d'ensembles de données. L'invite principale a été choisie pour fournir des images pratiques qui peuvent être facilement éliminées de l'arrière-plan. Les invites négatives nous évitent d'inclure dans l'ensemble de données des images aléatoires présentant des distorsions, ainsi que des images de femmes.

Conseil : si vous recevez des images très différentes les unes des autres, essayez de modifier le paramètre CFG Scale de 7,5 à 15. Cela forcera le réseau neuronal à suivre les invites de manière plus formelle.

Greek person dataset

Vous pouvez sélectionner vos propres noms uniques à l'aide d'un générateur de noms simple, comme Behind the Name. Vous pouvez également utiliser la fonction ControlNet pour obtenir un meilleur contrôle.

Méthode 3. Enseigner l'apparence

Nous ne pouvons pas influencer directement le résultat final, mais nous observons que certains tokens (tels que les tokens d'images de célébrités) ont plus de poids que d'autres. Cela signifie que nous pouvons créer notre jeton "célébrité" conditionnel en créant une invite appropriée pour ce jeton et en entraînant le modèle sur ce jeton. C'est ainsi que fonctionne LoRA (Low-Rank Adaptation of Large Language Models). Vous pouvez utiliser notre guide étape par étape pour entraîner votre propre modèle LoRA sur la base d'un ensemble de données créé par vos soins.

Après avoir supprimé l'arrière-plan, nous obtenons des portraits clairs et les utilisons pour créer un modèle LoRA spécifique. Ce modèle permet de reproduire un visage avec quelques changements mineurs :

Dataset without background

Maintenant, nous pouvons générer ce personnage dans différents lieux, créer des histoires et le placer dans différents rôles : du jardinier à l'homme d'affaires. Son visage sera toujours reconnaissable et reproductible :

Greek person with various backgrounds

Cette méthode n'est pas idéale, mais elle fonctionne parfaitement dans diverses situations. Vous n'avez pas besoin de préparer un ensemble de données à partir d'une personne réelle, et il peut être généré à distance :

Greek person generated result

Vous pouvez tenter de créer un tel personnage virtuel vous-même, sans l'aide d'un designer professionnel ou d'un spécialiste de la modélisation 3D. Tout ce dont vous avez besoin, ce sont des GPU rapides, que vous pouvez trouver dans les serveurs dédiés de LeaderGPU.

Voir aussi:



Mis à jour: 26.03.2025

Publié: 21.01.2025