Maitriser l’Image Prompt de Fooocus

Tout savoir sur l’image prompt de Stable Diffusion avec Fooocus

Maitriser l’Image Prompt de Fooocus
Do not index
Do not index
Publish
Publish
Fooocus est une interface moderne qui permet d’installer et utiliser facilement Stable Diffusion XL. Inspiré par Midjourney, Fooocus vise à rendre simple et accessible non seulement la génération d’image à partir de texte mais aussi des utilisations plus avancées de l’IA de génération d’image.
L’une de ces utilisations avancées est l’image prompting, qui consiste à utiliser une image pour compléter le prompt textuel et guider la génération. Cela permet de copier le style d’une image, des éléments de compositions, la position d’une personne ou même son visage.
Dans cet article, nous allons voir comment fonctionne l’image prompt dans Fooocus et les différents usages que vous pouvez en faire.
⚠️
Ce tutoriel considère que vous connaissez déjà Fooocus et son utilisation de base - Si ce n’est pas le cas, commencez par lire notre Guide de démarrage pour Fooocus.

Qu’est-ce que l’Image Prompt ?

L’Image Prompt permet d’utiliser une image comme partie du prompt lors d’une génération en text-to-image afin d'influencer la composition, le style et les couleurs de l'image de sortie.
C’est cependant diffèrent d’une génération image-to-image qui utilise l’image de référence comme point de départ pour générer une nouvelle image, avec ou sans texte. Ici, l’image agit comme une donnée complémentaire au prompt textuel. Le texte et l’image influencent l’ensemble la génération d'images lors de l’étape de conditionnement.
La plupart du temps, l’image prompt est mis en place sur Stable Diffusion à l’aide d’un modèle neuronal nommé IP-Adapter.
Dans Fooocus, la fonctionnalité d’image prompt est plus développée et se base en plus sur une série d’adaptations spécifiques mise en place par les développeurs : Negative embedding, attention hacking et algorithme d'équilibrage/de pondération adaptatif.
Ces adaptations rendent l’image prompt de Fooocus encore plus efficace et évitent les problèmes fréquemment rencontré avec l’IP-Adapter dans des interfaces comme ComfyUI et Automatic1111.

Comment utiliser l’Image Prompt ?

Activer l’Image Prompt

Dans Fooocus, toutes les fonctionnalité qui reposent sur l’utilisation d’un ou plusieurs images de références sont accessibles en activant Image Input en dessous du champs d’écriture de prompt. L’Image Prompt est alors accessible en cliquant sur l’onglet correspondant.
notion image
Vous voyez alors 4 sélecteur - Fooocus vous permet en effet d’utiliser de une à 4 images de référence pour générer vos images avec l’image prompt.

Image prompt standard

Commençons par générer une première image en text-to-image classique pour ensuite voir comment l’Image Prompt peut influencer le résultat.
Avec un prompt simple comme “a female basketball player” vous obtiendrez une image comme celle-ci.
notion image

Avec une seule image de référence

Gardons ce prompt mais ajoutons une image dans la première case de l’Image Prompt (soit en faisant un cliquer/déposer de l’image sur la zone, soit en cliquant dessus pour la choisir via l’explorateur de fichiers). Prenons par exemple une image obtenue avec le prompt SDXL Soft Neon.
notion image
En cliquant sur Generate, nous obtenons alors une image qui est influencée à la fois par notre prompt (une joueuse de basket) et par notre image (portrait d’une femme blonde sous un éclairage néon plutôt doux mais avec un effet de contraste important).
notion image
Cette image utilise les réglages par défaut de l’image prompt de Fooocus. Ceux-ci donne une importance plus forte au texte - ce qui fait que l’image n’a pas énormément d’influence sur les couleurs ou le style final.
Prenons par exemple une image générée avec le prompt SDXL Smoke Girl. Même si l’image de référence à un style et des éléments assez forts et marqués (noir et blanc, effet de fumée,…), avec les réglages de base, l’image obtenue n’en garde que peu :
Image de référence
Image de référence
Exemple de résultat
Exemple de résultat
On reconnait un peu l’expression du visage, les couleurs sont plus terne,… Mais on a pas vraiment une forte ressemblance avec le style de départ.
Heureusement, Fooocus dispose des outils pour changer ca.

Ajuster la force de l’image prompt

En dessous des images de références, vous avez une petite case à cocher Advanced qui permet d’activer les options de configurations avancée de l’image prompt.
Sous chaque image, vous pouvez maintenant régler deux paramètre : Stop At et Weight. Ensemble, ces valeurs vont vous permettre d’ajuster la force d’influence de votre image de référence et la manière dont elle va déterminer l’image finale.
Weight représente le poids ou l’importance de l’image. Sa valeur par défaut est de 0,6. Plus elle augmente, plus l’image “pèse lourd” et influence le résultat comme le montre les images suivantes, réalisées avec la même image de référence :
Weight 0,4
Weight 0,4
Weight 0,6
Weight 0,6
Weight 0,8
Weight 0,8
Weight 1
Weight 1
Weight 1,2
Weight 1,2
Weight 1,4
Weight 1,4
📌
Notez qu’ici, nous n’avons pas chercher à influencer le résultat en modifiant le prompt textuel. On pourrait certainement ajouter des mots clefs comme “black and white”, “smoke” ou “ink” pour obtenir un résultat plus proche de l’image de référence avec un weight moins important.
L’autre paramètres dont vous pouvez changer la valeur est Stop At. Il correspond au moment de la génération à partir duquel l’image de référence n’est plus utilisée pour orienter le résultat finale. Ce moment est exprimé en centièmes : à 0,5 (la valeur par défaut), l’image est utilisé pendant les premier 50% de la génération, soit la moitié des étapes.
Reprenons la même image et le même prompt, mais cette fois en variant le Stop at tout en conservant le Weight à 1 (une valeur où l’influence de notre image est bien visible) :
Stop At 0,3
Stop At 0,3
Stop At 0,5
Stop At 0,5
Stop At 0,7
Stop At 0,7
Stop At 0,9
Stop At 0,9
L’interêt du Stop at peut sembler moins évident - Mais ce paramètre permet en en fait de varier l’effet de l’image prompt différemment du poids (Weight).
Avec un Stop at plus, bas l’image prompt va surtout influencer la composition générale de l’image (par exemple la silhouette générale, la position du visage, les zones claires et les zones foncées,…). Un valeur plus élevée va renforcer l’importance de l’image pour les détails, les texture ou les couleurs.
Selon l’image de référence et l’effet voulu, vous voudrez donc jouer avec l’une ou l’autre des deux variables (ou les deux). Pour vous donner un aperçu de ce qui est possible, voici quelques exemples de génération avec l’image prompt et d’autres réglages.
notion image
notion image
notion image
notion image
notion image
notion image

Utiliser plusieurs images

Une autre utilisation puissante et simple de l’image prompt est d’utiliser plusieurs images pour les combiner.
Cela fonctionne même sans ajouter de prompt texte. Il suffit d’ajouter une image dans les deux première case de l’image prompt et de lancer la génération pour que Fooocus combine les deux images.
C’est très efficace, par exemple, pour recréer une photo d’un personnage dans un environnement inspiré d’une autre image :
notion image
Vous pouvez évidemment ajouter un prompt simple pour diriger un peu plus la manière dont les images vont être combinées :
notion image
Et, bien sur, cette technique se combine aisément avec les réglages du Weight et Stop At comme expliqué pour la génération avec une seule image de référence :
notion image

Advanced Image Prompt

Vous aurez probablement remarqué qu’en plus du réglage des paramètres Weight et Stop at, l’activation du mode Advanced affiche également un choix supplémentaire sous les images de référence : ImagePrompt, PyraCanny, CPDS ou FaceSwap.
notion image
Le premier choix, ImagePrompt correspond simplement au fonctionnement standard que nous venons de voir. Les 3 autres choix sont d’autres modes d’utilisation de l’image de référence pour diriger ou contrôler la génération dont nous allons maintenant voir le fonctionnement.

ControlNet dans Fooocus

Même si ils n’en portent pas le nom, les modes PyraCanny et CPDS correspondent à une implémentation de ControlNet dans Fooocus. L’un et l’autre sont en effet des modèles de contrôle :
PyraCanny
Il s’agit d’un contrôleur qui identifier les contours dans l’image à partir d’un filtre Canny dit pyramidal. En effet, Stable Diffusion XL et Fooocus travaillent avec des images en 1024px et à cette résolution un filtre Canny standard rate facilement des détails. La méthode pyramidale utilisée par Fooocus combine plusieurs détections Canny puis les combine pour mieux reprendre les structures qu’une détection standard.
CPDS
Ce contrôleur utilise un algorithme de reconnaissance des structures à partir de la "Décoloration préservant le contraste” (CPD - Contrast Preserving Decolorization en anglais). Il s’agit d’une modification de la reconnaissance des profondeur de l’image (Depth) qui fonctionne a peu près de la même manière, mais en plus rapide. Notez que, malgrè le nom de la technique, il ne s’agit pas de “décolorer” l’image finale.
Les deux modes peuvent être utilisés pour contrôler à la fois la positions des personnages sur une image, sa structure et sa composition.
PyraCanny reprendra plus facilement certains détails fins ainsi que des lignes claires et franches de l’image de départ. CPDS se concentrera plus sur la composition générale et les différents plans de l’image.
Dit comme ca, l’utilité et les différences entre ces deux modes ne paraissent pas évidentes. Regardez donc les exemples suivants, généré à partir d’une même image de référence, en changeant juste le mode de l’image prompt et en laissant Fooocus utiliser ses Weight et Stop at par défaut.
Image de référence
Image de référence
Mode ImagePrompt
Mode ImagePrompt
Mode PyraCanny
Mode PyraCanny
Mode CPDS
Mode CPDS
L’image de référence a été générée avec le prompt “A princess praying in a Church”. Pour les 3 autres images, le prompt a été changé en “A princess praying on a balcony, amazing landscape”.
Notez comment sur l’image avec e PyraCanny, le tracés des vitraux et des bancs ont été suivis pour créer des éléments supplémentaires. Cet effet est moins visible avec le mode CPDS - Par contre, les détails de la robes sont aussi mieux respectés avec le PyraCanny.
Essayons avec une image différente :
Image de référence
Image de référence
Mode ImagePrompt
Mode ImagePrompt
Mode PyraCanny
Mode PyraCanny
Mode CPDS
Mode CPDS
Ici, l’image de référence est générée avec le prompt “Pirate ship in a sea storm”. Le prompt est ensuite changé pour les 3 autres avec “Pirate ship flying in outer space, stars and galaxies”
Ajuster l’effet du ControlNet
Les paramètres Weight et Stop at fonctionnent également avec l’utilisation du ControlNet que sont les modes PyraCanny et CPDS.
De la même manière qu’avec le mode standard, le Weight détermine la force avec laquelle la contrainte de l’image est appliquée à la génération. Plus il est élevé, plus les tracés et la composition de l’image seront similaire.
Prenons par exemple cet homme en smoking que nous allons utiliser avec un prompt très simple, “a man holding a beer”, tout en variant le Weight de l’image prompt en PyraCanny.
Image de référence
Image de référence
PyraCanny / Weight 0,3
PyraCanny / Weight 0,3
PyraCanny / Weight 0,5
PyraCanny / Weight 0,5
PyraCanny / Weight 0,7
PyraCanny / Weight 0,7
PyraCanny / Weight 0,9
PyraCanny / Weight 0,9
PyraCanny / Weight 1,1
PyraCanny / Weight 1,1
Nous pouvons également faire varier le Stop at pour que l’image de référence soit utilisée plus longtemps dans la génération, ce qui aide à maintenir la contrainte dans les détails ajoutés plus tardivement à la génération. Reprenons notre exemple avec un Weight légèrement augmenté à 0,7.
PyraCanny / Stop at 0,3
PyraCanny / Stop at 0,3
PyraCanny / Stop at 0,5
PyraCanny / Stop at 0,5
PyraCanny / Stop at 0,7
PyraCanny / Stop at 0,7
PyraCanny / Stop at 0,9
PyraCanny / Stop at 0,9

Copier les visages avec FaceSwap

Le dernier mode, Faceswap est encore une technique différente.
Ici, Fooocus utilise un algorithme de détection et copie des visages pour orienter la génération de manière à reproduire les traits de la personne sur l’image de référence.
Le FaceSwap fonctionne avec n’importe quelle image contenant un visage - il n’est pas nécessaire de recadrer l’image pour centrer ou isoler le visage. Fooocus va détecter le visage et l’utiliser comme référence pour générer l’image avec.
notion image
Les réglage par défaut (Stop at 0,9 et Weight 0,75) fonctionneront dans la plupart des cas et son un bon point de départ. Vous pouvez évidemment faire varier ces réglages pour renforcer ou diminuer l’effet. Attention qu’un Weight plus élevé va rapidement forcer l’image à reprendre le même visage, sous le même angle et la même position.
Pour plus de ressemblance, il peut être intéressant d’utiliser 2 images de référence de la même personne. Cela peut donner au faceswap plus de détails pour (re)composer un visage dans la nouvelle image ou permettre de combiner différents looks d’un même personnage.
notion image
Le FaceSwap va avoir tendance à reproduire non seulement le visage mais aussi la coupe de cheveux de votre image de référence. Pensez donc à adapter le prompt textuel si vous souhaitez forcer un peu plus de variétés et changer la couleur ou le style de cheveux.
notion image

Combiner des images prompts différents

Vous pouvez non seulement utiliser plusieurs images en Image Prompt mais également combiner différents modes en même temps.
Il est par exemple très facile combiner un modèle de contrôle et le FaceSwap pour recréer une photo d’un personnage dans une pose ou situation donnée.
notion image
Voilà, vous savez maintenant comment intégrer des images de référence pour influencer de manière significative le style, la composition et les couleurs de vos créations grace à l’image prompt de Fooocus.
Il vous reste à tester ces différentes techniques par vous même et à expérimentez en faisant varier les paramètres et en combinant l’Images Prompts avec des prompts personnalisés et des Styles variés pour vous faire votre propre experience et maitriser la génération avec Fooocus.
 

Profitez de toute la puissance de SDXL sans rien installer et depuis n'importe quel ordinateur.

Stable Diffusion sur le Cloud

Créer avec Diffus

Ecris par