Inpainting : le Guide Complet

Tout savoir de l’inpainting avec Stable Diffusion

Inpainting : le Guide Complet
Do not index
Do not index
Publish
Publish
L'inpainting est désormais une technique incontournable dans l'univers de l'intelligence artificielle (IA) et de la génération d'images. Cette méthode qui consiste à modifier ou à restaurer des parties d'images en s'appuyant sur le contexte environnant pour générer les pixels manquants rend incroyablement aisée la correction d'imperfections, la suppression d'éléments indésirables ou encore la complétion créative d'espaces vides.
Stable Diffusion n’est évidemment pas en reste dans ce domaine. En effet, le modèle de diffusion de Stability ne se contente pas de remplir les pixels manquant ; il interprète le contexte et la composition de l'image pour produire des résultats qui semblent intentionnels et harmonieux, comme s'ils faisaient partie de l'image originale depuis le début.
Ce guide de l'inpainting avec Stable Diffusion nous conduira à travers les fondements de cette technique, explorant comment elle fonctionne, ce qui la distingue d'autres méthodes de manipulation d'images, et les nombreuses façons dont elle peut être appliquée pour enrichir la création et l’interaction avec les images numériques.

Qu’est ce que l’Inpainting ?

L'inpainting numérique est une technique permettant de reconstruire les parties manquantes ou endommagées d'une image. Utilisant le contexte fourni par les zones intactes de l'image, cette méthode repose sur des algorithmes avancés pour prédire et générer les pixels absents de manière cohérente, visant à restaurer l'image à son état d'origine ou à modifier son contenu selon les besoins de l'utilisateur.

Les Origines de l'Inpainting

Cette technique trouve ses racines dans la restauration d'œuvres d'art, où les conservateurs utilisent divers matériaux pour combler les lacunes dans les tableaux et sculptures endommagées. Dans le domaine numérique, l'inpainting utilise des données plutôt que des matériaux physiques, mais l'objectif reste le même : recréer les parties manquantes en conservant l’harmonie de l'ensemble.
Exemples de restauration de photo par l’inpating (source: Wikipedia)
Exemples de restauration de photo par l’inpating (source: Wikipedia)
Contrairement aux méthodes traditionnelles de manipulation d'images, qui peuvent nécessiter une intervention manuelle minutieuse, l'inpainting automatise le processus de reconstruction. Il se distingue par sa capacité à comprendre et à interpréter le contexte visuel environnant pour produire des résultats qui s'intègrent naturellement à l'image. Cette compréhension contextuelle permet non seulement de réparer les images endommagées mais aussi d'éliminer ou de modifier des éléments spécifiques, comme des objets indésirables, sans laisser de traces évidentes de modification.

L'Inpainting à l'Ère de l'IA

L'inpainting peut être réalisé grâce à diverses approches algorithmiques, allant des techniques basées sur la diffusion, qui propagent les informations des zones intactes vers les zones à restaurer, aux méthodes basées sur l'apprentissage profond, qui apprennent des exemples pour prédire le contenu manquant.
Stable Diffusion, en particulier, emploie des modèles de diffusion conditionnelle pour offrir une flexibilité et une précision remarquables dans le processus d'inpainting, permettant aux utilisateurs de spécifier en détail les modifications souhaitées au moyen des descriptions textuelles (les prompts).
Avec l’avènement des IA générative et des modèles de diffusion, l'inpainting se révèle être une technique puissante et polyvalente de manipulation d'images, offrant des possibilités étendues pour la restauration, la modification et la création d'images numériques. Son intégration avec Stable Diffusion marque une avancée significative, rendant ces capacités sophistiquées accessibles à un large éventail d'utilisateurs.

Comment utiliser l’Inpainting ?

Effectuer de l’Inpainting avec Stable Diffusion demande à la fois d’avoir une interface permettant de définir l’image d’origine et la zone à générer et d’utiliser un workflow spécifique dans l’execution du diffuser.
Il existe également des modèles (checkpoint) optimisés pour des tâches d’Inpaiting plutôt que de génération simple en text-to-image mais depuis SDXL la différence entre le modèle standard et sa version inpaiting est très légère.
Nous allons voir ensemble comment utiliser une interface standard dédiée à l’Inpainting. Nous verrons également comment différentes interfaces complètes comme Automatic1111 ou Fooocus intègre des outils d’Inpaiting.
🧠
Le propos de cette article n’est pas de décrire la mise en place d’un workflow d’inpaiting avec un modèle de diffusion. Mais si le sujet vous intéresse, je vous conseille la documentation de l’inpainting avec diffuser sur HuggingFace.

Interfaces d’Inpainting

SDXL Inpainting Demo

L’interface de démo de SDXL Inpaiting permet d’essayer rapidement et gratuitement l’Inpainting avec Stable Diffusion. C’est une solution en ligne, facile à utiliser et idéale pour ceux qui voudraient tester la technique sans rien installer ou juste modifier une image de temps en temps.
https://huggingface.co/spaces/diffusers/stable-diffusion-xl-inpainting
Voici comment utiliser cette interface pour supprimer un détail indésirable sur une image :
 
  1. Déposer ou télécharger l’image dans la zone prévue à cet effet.
  1. Utiliser l’outil de dessin pour définir la zone à regénérer.
  1. Indiquer en prompt une brève description du résultat attendu.
  1. Cliquer sur Inpaint! et attendre quelques seconde.
La même technique peut être utilisé pour ajouter des éléments à l’image ou la modifier
notion image
notion image
En dessous du champs prompt, vous pouvez également afficher des paramètres supplémentaires pour la génération d’inpaiting en cliquant sur Advanced Settings :
  • Le nombre d’étape (steps) d’inférence.
  • La force (strenght) du débruitage qui permet de suivre plus ou moins fort l’image d’oirigine (voir ci-dessous).
  • Le choix du Scheduler à utiliser pour les inférence.
notion image
Mais même avec ces paramètres avancés, cette interface de démonstration reste plutôt limitée. Elle ne fonctionne qu’avec des images carrées, ne permet qu’une génération à la fois et ne dispose pas de toutes les options utiles pour obtenir un inpaiting parfait (voir les réglages clés ci-dessous).
Si vous souhaitez effectuer de l’inpainting de qualité et utiliser cet outil de manière plus sérieuse, vous aurez besoin d’utiliser une interface plus avancée. En voici quelques unes que je peux vous reccommander :

Inpainting avec Fooocus

Fooocus est une interface minimaliste mais puissante pour utiliser Stable Diffusion. C’est pour moi la solution idéale pour prendre en main Stable Diffusion et obtenir rapidement des résultats de qualité sans passer des heures à apprendre et maitriser de nombreux paramètres.
Fooocus intègre l’inpainting parmi ces outils de génération à partir d’une image de référence (Input image). L’interface permet de facilement dessiner un masque pour la génération et propose des options adaptées à différents usages de l’inpainting (correction de détails, ajouts d’éléments,…).
notion image
Les principaux avantages de l’inpainting dans Fooocus sont sa simplicité d’utilisation, l’utilisation d’un modèle optimisé et une génération qui se concentre sur la zone masquée pour un résultat plus détaillé. Les paramètres avancés permettent également d’ajuster les options si ceux par défaut ne vous convienne pas.
→ Consultez notre Tutoriel complet sur l’Inpainting avec Fooocus pour apprendre en détails comment l’utiliser.

Inpainting avec Automatic1111 ou Forge

L’interface Webui d’Automatic1111 et sa nouvelle variante Forge restent une interface populaire et très complète pour utiliser Stable Diffusion. Elle intègre évidement l’inpainting et propose même de nombreuses options et configuration pour tirer le maximum de cette technique.
L’Inpainting de base s’utilise depuis l’onglet img2img, dans la partie Inpaint qui permet de télécharger son image, y dessiner un masque et définir les paramètres d’inpaiting.
notion image
Si Automatic1111 n’a pas la simplicité d’interface de Fooocus et est donc un peu plus compliqué à maitriser, mais ca reste un excellent choix pour générer des images et effectuer de l’inpainting avec Stable Diffusion. En plus des nombreux paramètres de configuration, Automatic1111 propose également une option de Skecth Inpaiting ainsi que la possibilité de télécharger le masque sous forme de fichier plutôt que de le dessiner dans l’interface.
→ A venir : le guige complet de l’inpainting dans Automatic1111
En attendant, vous pouvez consulter le Manuel Automatic1111 en français qui explique déjà les bases de l’inpaiting dans cette interface.

Inpainting avec ComfyUI

ComfyUI est une interface graphique utilisateur (GUI) modulaire et puissante pour Stable Diffusion. Elle se distingue par son interface basée sur des nœuds, permettant aux utilisateurs de construire des flux de travail d'image en chaînant différents blocs ou nodes.
notion image
L'intégration de l'Inpainting dans ComfyUI utilise cette même logique modulaire, offrant plusieurs méthodes pour retoucher spécifiquement des zones d'images.
En utilisant diffèrent workflows ComfyUI, il est possible dechoisir entre l'inpainting avec un modèle Stable Diffusion standard, l'inpainting avec un modèle spécifiquement conçu pour, le ControlNet inpainting pour une force de débruitage élevée sans sacrifier la cohérence de l'image, et une méthode automatique pour corriger les visages dans les images.
OpenArt.ai propose par exemple ce workflow de base pour l’inpaiting que vous pouvez télécharger pour commencer à utiliser l’inpaiting dans ComfyUI. Vous pouvez également consulter cette vidéo en français qui présente 3 méthodes d’inpaiting avec ComfyUI.

Les Réglages Clés de l'Inpainting

En plus des paramètres de génération standards, l’Inpainting avec Stable Diffusion a également trois réglage clefs qui peuvent grandement influencé le résultat. Notez que toutes les interface ne permettent pas nécessairement de les modifier tous les trois - certaine appliquent ces réglages de manière automatique (pour un résultat plus ou moins heureux).

Force du Débruitage

Le paramètre le plus crucial dans l'inpainting avec Stable Diffusion est la force du débruitage. Cette valeur détermine le degré de modification de la zone masquée : plus elle est élevée, plus les changements seront importants. Une valeur trop élevée peut entraîner des résultats incohérents avec le reste de l'image, tandis qu'une valeur trop faible peut donner une image floue. Trouver le juste milieu est donc essentiel pour un résultat optimal .

Zone à (re)générer

La plupart des solutions d’inpaiting avec Stable Diffusion offre deux options : traiter toute l'image ou se concentrer uniquement sur la zone masquée. La première option est idéale pour maintenir une cohérence globale, surtout pour des corrections mineures. La seconde option, qui recarde et traite la zone masquée à une résolution plus élevée avant de la réintégrer à l'image, est préférable pour les détails fins nécessitant une attention particulière, comme les visages ou les objets petits .

Contenu Masqué

Le contenu masqué détermine ce que le modèle utilise comme point de départ pour générer le contenu dans la zone masquée de votre image. Cela peut varier de ne rien changer (maintenir le contenu original sous le masque) à remplacer la zone par une couleur moyenne ou du bruit aléatoire, offrant ainsi différentes bases sur lesquelles le modèle peut construire.

Comment fonctionne l’Inpainting ?

Inpainting et Processus de Diffusion

Stable Diffusion utilise une architecture de réseau neuronal convolutif (CNN) basée sur le modèle U-Net. Ce type d'architecture est particulièrement adapté aux tâches de segmentation et de reconstruction d'images comme l’Inpainting.
Contrairement aux approches classique d'inpainting qui ajoute du bruit aléatoire sur l'ensemble de l'image dans l'espace latent avant de le débruiter, l'inpainting avec Stable Diffusion introduit du bruit uniquement dans la zone masquée. Ce processus ciblé permet de concentrer les efforts de reconstruction là où ils sont nécessaires, optimisant ainsi la qualité et la cohérence de l'image résultante.

Encodage et décodage

L'image d'entrée, avec la zone masquée remplie de bruit, est d'abord encodée par une série de couches convolutives. L'encodeur extrait des caractéristiques à différents niveaux de granularité, à partir de détails fins jusqu'aux structures globales de l'image.
Le décodeur utilise ensuite ces caractéristiques pour reconstruire l'image étape par étape. Il utilise des couches convolutives transposées pour augmenter progressivement la résolution de l'image et affiner les détails.

Perceptual Loss

Une fonction de perte (Percuptual Loss) guide alors le processus de reconstruction en mesurant l'écart entre l'image générée et l'image originale. Il s'agit d'une combinaison de plusieurs correcteurs qui se combinent pour guider la génération. Les corrcteurs spécifiques inclus dans la fonction de perte perceptuelle peuvent varier, mais comprennent généralement :
  • Perte de reconstruction: Minimise la différence entre les pixels de l'image générée et ceux de l'image originale.
  • Perte de similarité perceptuelle: Prend en compte la perception humaine visuelle en s'appuyant sur des modèles pré-entraînés pour évaluer la similarité visuelle entre les images.
  • Perte de régularisation: Empêche l'ajustement excessif et encourage la génération d'images réalistes.

Optimisation et Post-traitement

L'algorithme utilise également une méthode d'optimisation par gradient pour minimiser la fonction de perte et ajuster les paramètres du réseau neuronal.
Enfin, l'image générée peut subir un post-traitement pour améliorer la qualité et la cohérence, comme l'affûtage des contours ou la suppression d'artefacts.

Exemples d’applications de l’Inpaiting

L'inpainting, grâce à ses capacités de reconstruction et de création, trouve son application dans une variété de domaines, démontrant ainsi sa polyvalence. Voici quelques cas d'usage concrets où l'inpainting révolutionne notre approche de la manipulation d'images.

Revivre le Passé en Images

Restauration de Photographies Anciennes
Les photographies anciennes, souvent endommagées par le temps, racontent des histoires précieuses de notre histoire personnelle et collective. L'inpainting permet de restaurer ces images, de combler les lacunes causées par les déchirures, les plis ou la décoloration, redonnant vie aux souvenirs fanés sans altérer leur essence originale.
notion image
 

Archéologie et Conservation

Préservation du Patrimoine
Dans le domaine de l'archéologie et de la conservation, l'inpainting numérique offre une méthode non invasive pour visualiser l'état original d'objets anciens et de sites archéologiques. En comblant les parties manquantes d'artefacts ou de fresques murales à partir de fragments existants, les conservateurs peuvent proposer des reconstructions précises, enrichissant ainsi notre compréhension du passé.
notion image

Perfectionnement Visuel

Retouche Photographique Professionnelle
Dans le domaine de la photographie professionnelle, l'inpainting sert à éliminer les éléments indésirables ou à ajouter des détails manquants dans une composition. Que ce soit pour effacer un objet perturbateur dans un paysage ou pour ajouter des éléments qui renforcent l'impact visuel d'un portrait, l'inpainting ouvre de nouvelles avenues pour la créativité photographique.
notion image

Création sans Limites

Conception Graphique et Publicitaire
L'inpainting trouve une application remarquable dans la conception graphique et publicitaire, où la création d'images uniques et accrocheuses est primordiale. Les designers peuvent utiliser l'inpainting pour fusionner des éléments de plusieurs images en une seule composition cohérente, ou pour générer des concepts visuels entièrement nouveaux, poussant les limites de l'imagination.
notion image

Magie à l'Écran

Cinématographie et Effets Visuels
Dans le secteur du cinéma et des effets visuels, l'inpainting aide à restaurer ou à modifier des scènes, permettant ainsi de corriger des erreurs ou d'ajouter des éléments post-production. Que ce soit pour effacer des câbles et supports visibles dans une scène d'action ou pour enrichir un paysage avec des éléments fantastiques, l'inpainting est devenu un outil inestimable pour les créateurs de contenu visuel.
notion image

Visualisation Avant-Gardiste

Mode et Conception de Produits
Dans l'industrie de la mode et du design de produit, l'inpainting permet aux créateurs de visualiser des modifications de conception avant la production. En ajustant les couleurs, les textures ou en ajoutant des éléments à des prototypes d'images, les designers peuvent expérimenter avec différentes idées de manière efficace et économique.
notion image
Ces exemples illustrent la portée étendue de l'inpainting, prouvant son rôle indispensable dans divers secteurs créatifs et scientifiques. En exploitant la puissance de cette technologie, professionnels et amateurs peuvent transcender les limites traditionnelles de l'édition d'images, ouvrant ainsi la porte à une infinité de possibilités créatives et de découvertes.
Au carrefour de l'intelligence artificielle et de la création d'images, l’inpainting s'inscrit comme une méthode précieuse dans l'édition numérique.
Au-delà de son application pratique pour effacer ou modifier des éléments indésirables dans des images, l'inpainting invite à une réflexion plus large sur notre rapport à l'image. Il permet de restaurer non seulement des photographies endommagées mais aussi de reconstruire notre mémoire visuelle collective. Dans le domaine de la création, il offre aux artistes et aux designers un outil supplémentaire pour exprimer leur vision, en complétant ou en transformant des scènes selon leur imagination.
L'accessibilité croissante à des outils tels que Stable Diffusion démocratise l'inpainting, le rendant disponible à un large public d'utilisateurs. Cette accessibilité est une avancée notable, ouvrant la voie à de nouvelles formes de créativité et d'expression artistique. Elle souligne également l'importance de comprendre les outils numériques que nous utilisons et leur impact sur notre perception des images.
L'inpainting s'inscrit donc comme un complément significatif à la palette d'outils disponibles pour les professionnels de l'image et les amateurs. Il enrichit le domaine de l'édition d'images en offrant la possibilité de corriger, de restaurer, et de repenser visuellement notre monde. Avec une utilisation réfléchie et responsable, l'inpainting continuera d'apporter une valeur ajoutée à nos interactions avec l'imagerie numérique.

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