Inpainting in Stable Diffusion bezeichnet das gezielte Neu-Generieren eines maskierten Bildbereichs durch ein Diffusionsmodell, während der unmaskierte Rest des Bildes als Kontext erhalten bleibt.
Rubrik: GenAI & Content Creation · Unterrubrik: Stable Diffusion · Niveau: Fortgeschritten Synonyme / Auch bekannt als: SD-Inpainting, KI-Retusche, Mask-Inpainting, Diffusion Inpainting
Was ist Inpainting in Stable Diffusion?
Inpainting in Stable Diffusion ist eine Technik, bei der eine vom Nutzer gezeichnete Maske einen Bildbereich definiert, der vom Diffusionsmodell neu generiert wird. Der umgebende Bildkontext bleibt erhalten und dient dem Modell als visuelle Referenz — kombiniert mit einem Textprompt entsteht so eine kontextsensitive, semantische Ergänzung statt einer simplen Pixel-Interpolation.
Erklärung
Beim Inpainting wird das Eingabebild zunächst in den latenten Raum (Latent Space) kodiert. Anschließend wird die Maske auf dieses Latent gelegt: Die maskierten Bereiche werden mit Rauschen initialisiert, der Rest des Latents bleibt fix. Während des Sampling-Prozesses (z. B. mit DPM++ oder Euler a) iteriert das Diffusionsmodell ausschließlich über die maskierten Regionen und nutzt sowohl den Textprompt als auch die unmaskierten Pixel als Kondition.
Stable Diffusion bietet zwei Wege: das klassische Inpainting mit einem normalen Checkpoint und die spezialisierten Inpainting-Modelle (z. B. sd-v1-5-inpainting, sdxl-inpainting). Letztere wurden gezielt mit maskierten Trainingsbildern trainiert und liefern sauberere Kanten, kohärentere Übergänge und weniger Halluzinationen am Maskenrand.
Zentrale Parameter sind die Denoising Strength (0.3 = minimal, 0.8 = stark, 1.0 = komplette Neugenerierung), die Mask Blur (weiche Übergänge zwischen Original und neu generiertem Bereich) und das Inpaint Area: Entweder das ganze Bild („Whole Picture") oder nur die Maske („Only Masked") — letzteres rendert in voller Auflösung nur in der Maske und ist deutlich detailreicher.
Inpainting wird häufig mit ControlNet kombiniert, um Pose, Tiefe oder Kanten innerhalb der Maske zu kontrollieren — etwa um eine Hand korrekt nachzuzeichnen, während die übrige Komposition unverändert bleibt.
Beispiele
- Beispiel 1 – Objekt entfernen: Auf einem Produktfoto eine störende Person mit Pinsel überstreichen, Prompt: „empty street, asphalt, daylight" — Stable Diffusion füllt den Bereich kontextsensitiv mit Straße und Schatten.
- Beispiel 2 – Hand-Korrektur: Misslungene KI-Hände mit sechs Fingern werden maskiert und mit Prompt „realistic human hand, five fingers, anatomically correct" plus ControlNet-OpenPose neu generiert.
- Beispiel 3 – Outfit-Wechsel: Ein Model im T-Shirt wird im Brustbereich maskiert; Prompt „elegant black suit jacket, fine wool, studio lighting" tauscht das Kleidungsstück bei erhaltenem Gesicht.
- Beispiel 4 – Hintergrund-Tausch: Maskierung um das Hauptmotiv invertiert, neuer Hintergrund per Prompt „moody forest at dusk, volumetric light".
- Beispiel 5 – Text- oder Logo-Entfernung: Schriftzüge auf Produkten werden überpinselt und mit dem Material der Umgebung neu gerendert.
- Beispiel 6 – Defekte Stellen: Sensorflecken, Kratzer oder JPEG-Artefakte werden maskiert und vom Modell sauber rekonstruiert.
In der Praxis
In AUTOMATIC1111 liegt Inpainting im „img2img"-Tab unter „Inpaint". Wichtige Einstellungen: Mask Blur 4–8 px, Denoising 0.6–0.8 für sichtbare Änderungen, „Only Masked" für maximale Detailtiefe. In ComfyUI lässt sich Inpainting flexibler verschalten, inklusive maskenbasierter Conditioning-Nodes und Inpaint-Crop-and-Stitch-Workflows. Für professionelle Retusche empfiehlt sich die Kombination mit einem Inpainting-Checkpoint, ControlNet (Canny oder Inpaint-Modell) und einer LoRA, die den Stil des Originalbildes hält. Wichtig: Bei harten Kanten Mask Blur erhöhen, sonst entstehen sichtbare „Naht"-Linien. Saubere Masken sind 80 % der Arbeit — lieber mit Photoshop oder einem Segment-Anything-Plugin präzise maskieren als grob pinseln.
Vergleich & Abgrenzung
| Merkmal | Inpainting | Outpainting | Image-to-Image |
|---|---|---|---|
| Bereich | Innerhalb des Bildes, maskiert | Außerhalb des Bildes, neu hinzu | Ganzes Bild |
| Kontext | Umgebende Pixel | Bildrand als Anker | Komplettes Eingabebild |
| Typischer Use Case | Retusche, Korrektur | Erweiterung, Aspect-Ratio-Wechsel | Stiltransfer, Re-Render |
Häufige Fragen (FAQ)
Welches Inpainting-Modell ist das beste? Für SD 1.5 ist sd-v1-5-inpainting Standard; für SDXL existieren sdxl-inpainting sowie Community-Checkpoints wie „Juggernaut Inpainting". Realistic-Vision- und DreamShaper-Reihen bieten ebenfalls Inpainting-Varianten. Für maximale Kontrolle ist ein dediziertes Inpainting-Modell normalen Checkpoints überlegen, da es weniger an der Maskenkante „halluziniert".
Warum sieht man die Maskenkante im Ergebnis? Drei Hauptursachen: Mask Blur zu gering (Wert auf 4–8 px erhöhen), Denoising zu hoch im Verhältnis zum Mask Blur, oder „Whole Picture" wäre besser als „Only Masked" gewesen. Ein zusätzlicher Pass mit niedrigem Denoising (0.2) und voller Bildmaske glättet sichtbare Übergänge zuverlässig.
Kann man Inpainting mit ControlNet kombinieren? Ja, und das ist der professionelle Standard. ControlNet-Inpaint, -Canny oder -OpenPose stabilisieren Pose, Anatomie oder Komposition innerhalb der Maske. Besonders bei Händen, Gesichtern und Architektur deutlich höhere Trefferquote als reines Prompt-Inpainting.
Verwandte Einträge
- Image to Image
Weiterführend
- Rombach, Robin et al. (2022): High-Resolution Image Synthesis with Latent Diffusion Models. CVPR / arXiv:2112.10752
- Stability AI (2023): Stable Diffusion Inpainting Model Card. huggingface.co/runwayml/stable-diffusion-inpainting
- AUTOMATIC1111 (laufend): Stable Diffusion WebUI Wiki — Inpainting. github.com/AUTOMATIC1111/stable-diffusion-webui/wiki
