Installation sur Linux et présentation de Stable Diffusion Web UI un outil puissant pour la génération d'images par IA

 

Stable Diffusion Web UI est une interface utilisateur open source pour le modèle d'intelligence articifielle de génération d'images Stable Diffusion. 

Il permet aux utilisateurs de générer des images à partir de texte, d'éditer des images existantes et bien plus encore.

Comparé à Easy Diffusion, Stable Diffusion Web UI est plus complet aux niveau des fonctionnalités ce qui permet des résultats plus créatifs et plus précis.

Cependant, il est important de noter que Stable Diffusion Web UI est plus complexe à utiliser qu'Easy Diffusion. Si vous êtes un débutant, il est peut-être préférable de commencer par Easy Diffusion avant de passer à Stable Diffusion Web UI.

https://github.com/AUTOMATIC1111/stable-diffusion-webui/

Installation pour Linux (Mint/Ubuntu) :

1. Ouvrez le terminal et collez (CRTL+MAJ+V) : 

sudo apt install wget git python3 python3-venv libgl1 libglib2.0-0

Fermez le terminal.

2. Créez un dossier dans lequel vous souhaitez installer l'application. Ouvrez un terminal dans le dossier nouvellement crée (1) et collez la commande suivante (2) :

wget -q https://raw.githubusercontent.com/AUTOMATIC1111/stable-diffusion-webui/master/webui.sh

La commande va télécharger un fichier nommé webui.sh.

 

Fermez le terminal.

3. Allez dans le dossier où à été téléchargé le fichier webui.sh et rendez-le éxecutable (clic droit / Propriétés / Permissions / Cochez Autoriser l’exécution du fichier comme un programme), puis fermez la fenêtre.


 

Ensuite, faites un double clic sur webui.sh et cliquez sur lancer dans un terminal.

L'installation débute, patientez. 

 

4. Quand l'installation est finie, Stable Diffusion s'ouvre automatiquement dans votre navigateur (http://127.0.0.1:7860/).

Pour lancer le programme ultérieurement, il suffira d'aller dans le dossier nommé stable-diffusion-webui (1), de faire un double clic sur webui.sh (2) et de cliquez sur lancer dans un terminal (3). Le navigateur s'ouvrira automatiquement.

 

Voici l'interface de Stable Diffusion Web UI :


Explications des onglets txt2img, img2img, extras, png info, checkpoint merger et train :

  • txt2img : permet de générer des images à partir de texte.
  • img2img* : permet de modifier une image existante en utilisant du texte.
  • Extras : regroupe des fonctionnalités expérimentales et avancées.
  • PNG Info : affiche des informations détaillées sur une image PNG, telles que sa résolution, son format de couleur et ses couches.
  • Checkpoint Merger : permet de fusionner plusieurs checkpoints (modèles) en un seul nouveau modèle.
  • Train : permet d'entraîner votre propre modèle d'intelligence artificielle pour la génération d'images.

* Onglets img2img en détails :

  • img2img: modifie une image existante en utilisant une description textuelle.
  • Sketch : créer une image à partir d'un croquis grossier ou d'une ébauche.
  • Inpaint : permet de "peindre" sur une partie d'une image pour la modifier ou la supprimer.
  • Inpaint Sketch : Cet onglet combine les fonctionnalités "Inpaint" et "Sketch".
  • Inpaint Upload : Cet onglet est similaire à "Inpaint", mais il vous permet d'utiliser une autre image comme source de remplacement.
  • Batch : permet de générer plusieurs images à la fois en utilisant un fichier texte contenant plusieurs invites.

Explications des paramètres de génération (txt2img / img2img) : 


"Sampling Method" (méthode d'échantillonnage) = détermine la manière dont l'IA génère l'image finale à partir de votre invite textuelle ou image de base.

En résumé, il s'agit de l'algorithme qui guide l'IA dans la création progressive de l'image, en affinant les détails et en s'assurant que le résultat correspond à vos attentes.

Différentes méthodes sont disponibles, chacunes avec ses propres caractéristiques et avantages:

  • Euler A: Rapide et aléatoire, adapté aux images simples ou aux expérimentations rapides.
  • Euler : Plus stable et précis que Euler A, adapté aux images plus complexes ou détaillées.
  • DDIM: Offre un bon équilibre entre vitesse et qualité, avec un contrôle accru sur la génération d'image.
  • LMS: Similaire à DDIM, mais avec une meilleure préservation des détails fins.
  • DPM (Denoising Diffusion Probabilistic Model): Cette méthode vise à débruiter une image progressivement pour révéler l'image finale. Elle est connue pour sa capacité à produire des images nettes et détaillées, particulièrement pour les portraits et les paysages réalistes.
  • UniPC (Unconditional Probabilistic Contextual Autoencoder): Cette méthode utilise un modèle autoencodeur probabiliste pour générer des images à partir de descriptions textuelles. Elle est connue pour sa capacité à produire des images cohérentes et réalistes, même avec des invites complexes ou abstraites.

https://stable-diffusion-art.com/samplers/

Sampling steps (étapes d'échantillonnage) :  elles représentent le nombre d'itérations que l'IA effectue pour générer l'image finale à partir de votre invite textuelle ou image de base.

Plus il y a d'étapes d'échantillonnage, plus l'IA aura de temps pour affiner les détails, la complexité et la cohérence de l'image. Valeurs recommandées : 20 à 500.

HiRes Fix (correction haute résolution) : améliore la qualité des images générées à des résolutions élevées.

En résumé, il s'agit d'un ensemble de techniques qui permettent de réduire les artefacts, les flous et les distorsions qui peuvent apparaître lors de la génération d'images à des résolutions supérieures à 512x512 pixels.

Refine : permet d'affiner et d'améliorer vos images générées par l'IA de manière itérative. Fonctionne en utilisant un processus de "diffusion" guidée pour apporter des modifications spécifiques à l'image, tout en conservant l'aspect général et le style de l'image d'origine.

CFG Scale (Classifier Free Guidance Scale) : contrôle la fidélité de l'image générée à votre invite textuelle. En d'autres termes, détermine à quel point l'IA doit suivre  vos instructions lors de la création de l'image. Avec une valeur faible, IA a plus de liberté et de créativité. Avec une valeur haute, l'IA respecte plus votre invite de départ.

Seed : nombre aléatoire qui est le point de départ pour le processus créatif de l'IA.

Utiliser cette option peut être utile pour :

  • Reproduire des images : Si vous aimez une image générée et que vous voulez en créer des variations similaires, mémorisez le Seed et réutilisez-le en ajustant légèrement l'invite.
  • Explorer des variations : Générez plusieurs images avec des Seeds proches pour voir comment de subtils changements dans le point de départ affectent le résultat final. 

Laissez la valeur à -1 si vous souhaitez des résultats différents à chaque fois. 

Explications de paramètres onglet Textual Inversion :  

L'inversion textuelle (ou "Textual Inversion" en anglais) dans Stable Diffusion Web UI est une fonctionnalité expérimentale qui permet aux utilisateurs de "créer" de nouveaux concepts visuels pour le modèle d'intelligence artificielle. En d'autres termes, elle permet d'entraîner le modèle à associer un texte descriptif spécifique à un ensemble d'images fourni par l'utilisateur.

Explications de l'onglet Hypernetworks

Hypernetworks (ou hyperréseaux) sont de petits réseaux de neurones supplémentaires qui peuvent être utilisés pour affiner les images générées par les modèles standard (checkpoints). Ils offrent un moyen flexible de contrôler le style et l'apparence des images finales, permettant aux utilisateurs d'obtenir des résultats plus créatifs et personnalisés.

L'utilisation d'hypernetworks dans Stable Diffusion Web UI présente plusieurs avantages :

  • Contrôle accru: Les hypernetworks offrent un contrôle plus précis sur le style et l'apparence des images générées, permettant aux utilisateurs d'obtenir des résultats plus conformes à leurs visions artistiques.
  • Spécialisation: Des hypernetworks peuvent être entraînés pour des styles ou des thèmes spécifiques, comme les paysages, les portraits, les styles artistiques particuliers, etc., ce qui permet d'obtenir des résultats plus cohérents et de meilleure qualité.
  • Créativité: Les hypernetworks ouvrent de nouvelles possibilités créatives en permettant aux utilisateurs de combiner différents styles et de créer des images uniques et originales.

Explications de l'onglet Checkpoints :  

Fichiers qui contiennent les paramètres d'un modèle d'intelligence artificielle pré-entraîné. Ces modèles sont utilisés pour générer des images à partir de texte.

L'utilisation de checkpoints offre plusieurs avantages :

  • Facilité d'utilisation: Vous n'avez pas besoin de posséder des connaissances en apprentissage automatique pour utiliser Stable Diffusion Web UI. Il vous suffit de charger un checkpoint et de saisir un texte descriptif pour générer une image.
  • Variété: Il existe une grande variété de checkpoints disponibles, ce qui vous permet de créer des images dans différents styles.
  • Qualité: Les checkpoints peuvent générer des images d'une qualité impressionnante, rivalisant parfois avec les images photographiques.

Explications de l'onglet LoRA :


LoRA (Low-Rank Adaptation) : petits modèles supplémentaires pour Stable Diffusion Web UI. Ils permettent d'apporter des modifications subtiles aux images générées par les modèles standard (checkpoints).

Avantages des modèles LoRA :

  • Taille réduite : Les modèles LoRA sont 10 à 100 fois plus petits que les checkpoints, ce qui est pratique si vous avez une collection importante de modèles.
  • Spécialisation : On peut les entraîner pour obtenir des effets spécifiques, comme un style artistique particulier, un thème précis, etc.

Comment installer et utiliser des modèles LoRA :

Installation : Téléchargez le modèle LoRA et placez-le dans le dossier stable-diffusion-webui/models/Lora de votre installation.

Utilisation : Ajoutez une commande LoRA à votre invite pour activer le LoRA. Cette commande est <lora:nom_du_fichier:poids>, où nom_du_fichier est le nom du fichier du modèle et poids est un coefficient optionnel pour ajuster l'influence du LoRA (1.0 par défaut). 

Ne pas saisir l'extension du fichier LoRA (.safetensors) !

Par exemple, pour utiliser un modèle LoRA nommé "anime_style.pt" avec un poids de 0.5 : un chat mignon dans le style anime <lora:anime_style.pt:0.5>

Ou depuis l'interface :

Saisir une invite puis sélectionner un LoRA :


Trouver des LoRA et des modèles : 

https://civitai.com/tag/lora

https://civitai.com/models

https://huggingface.co/models?other=stable-diffusion

https://www.deviantart.com/tag/stable_diffusion

Pour trouver des "styles", consultez les exemples depuis les sites ci-dessous :

https://proximacentaurib.notion.site/invites

https://www.stable-diffusion-france.fr/styles-list.php

https://openart.ai/promptbook

https://strikingloo.github.io/stable-diffusion-vs-dalle-2#prompt-examples-and-experiments

https://www.sdprompt.it/ 

https://majinai.art/

https://replicate.com/guides/stable-diffusion/image-to-image 

https://publicprompts.art/

https://openart.ai/discovery

En cas d'interrogations, vous pouvez consulter la documentation ici.

D'autres articles sur Stable diffusion sont à venir (tutoriels, installations de forks, ect...). Pour voir les articles parus ou à venir cliquez ici

MAJ : le 28/04/24

Enregistrer un commentaire

Les commentaires sont validés manuellement avant publication. Il est normal que ceux-ci n'apparaissent pas immédiatement.

Plus récente Plus ancienne