ControlNet: Canny Edge ist ein ControlNet-Preprocessor, der die Kanten eines Referenzbildes extrahiert und als strukturelle Steuerkarte nutzt, um Stable Diffusion zu zwingen, dieselbe Grundform in neuem Stil zu reproduzieren.
Rubrik: GenAI & Content Creation · Unterrubrik: Stable Diffusion · Niveau: Fortgeschritten Synonyme / Auch bekannt als: Canny, Canny-Preprocessor, Edge Detection ControlNet
Was ist ControlNet: Canny Edge?
Der Canny-Edge-Preprocessor wandelt ein Eingabebild in eine schwarz-weiße Kantenkarte um, bei der helle Linien die Umrisse und Strukturkanten des Motivs markieren. Stable Diffusion mit dem zugehörigen ControlNet-Modell generiert dann neue Bilder, die exakt dieser Kantenstruktur folgen. Das Ergebnis: vollständige kreative Freiheit bei Farbe, Textur und Stil – bei gleichzeitig präziser struktureller Kontrolle.
Erklärung
Der Canny-Algorithmus ist ein klassisches Computer-Vision-Verfahren, das 1986 von John Canny entwickelt wurde. Er arbeitet in vier Schritten: Glätten des Bildes mit einem Gauß-Filter zur Rauschreduktion, Berechnung des Intensitätsgradienten in alle Richtungen, Non-Maximum-Suppression zur Verdünnung von Kanten auf eine Pixelbreite und schließlich Hysterese-Schwellenwertung mit zwei Parametern (low_threshold und high_threshold).
In AUTOMATIC1111 und ComfyUI steuern diese beiden Schwellenwerte direkt die Empfindlichkeit des Preprocessors:
- Low Threshold (Standard: 100): Untergrenze – Kanten mit einem Gradienten über diesem Wert werden als potenzielle Kante erkannt.
- High Threshold (Standard: 200): Obergrenze – Kanten, die diesen Wert überschreiten, werden sicher als Kante eingestuft. Kanten zwischen den beiden Schwellenwerten werden nur übernommen, wenn sie mit einer sicheren Kante verbunden sind.
Niedrige Schwellenwerte liefern dichte, detaillierte Kantenkarten – ideal für komplexe Texturen und viele strukturelle Details. Hohe Schwellenwerte erzeugen reduzierte, saubere Linien – gut für klare Konturen ohne Rauschen.
Das eigentliche ControlNet-Modell (z. B. control_v11p_sd15_canny) wurde auf Tausenden Bildpaaren trainiert, bei denen Kantenkarte und Originalbild korrespondieren. Beim Inferenz-Schritt wird die Kantenkarte in den U-Net-Prozess injiziert, sodass Stable Diffusion bei jedem Denoising-Schritt die Kantenstruktur als Leitplanke erhält.
Der Parameter ControlNet Weight (0–2, Standard: 1.0) reguliert den Einfluss der Kantenkarte auf die Generierung. Niedrige Werte erlauben dem Modell mehr Freiheit bei der Interpretation; hohe Werte erzwingen strikte Konformität. Der Guidance Start/End-Parameter definiert, in welchem Anteil der Denoising-Schritte das ControlNet aktiv ist – ein früher Start sichert globale Struktur, ein frühes Ende erlaubt kreativere Details am Ende des Prozesses.
Beispiele
- Architekturvisualisierung: Linienzeichnung eines Gebäudes als Input → ControlNet Canny erzeugt fotorealistische Fassade im gewünschten Architekturstil, exakt der Skizze folgend.
- Logo-Repainting: Firmenlogo als Canny-Input mit Prompt „ancient stone carving, mossy texture, dramatic lighting" → Logo-Struktur bleibt erhalten, Stil transformiert zu verwittertem Stein.
- Porträt-Stilisierung: Foto einer Person → Canny-Kantenkarte → Prompt „oil painting, impressionist style, Monet" → Gesichtsstruktur und Pose werden beibehalten, Stil vollständig verändert.
- Produktfoto-Redesign: Produktfoto als Canny-Input → Prompt mit neuem Hintergrund und Farbe → Produktform identisch, Umgebung und Erscheinungsbild komplett neu.
- Charakterkonsistenz in der Illustration: Comic-Figur in einer Pose als Canny-Input → Generierung derselben Figur in verschiedenen Szenen und Stilen, ohne Körperform zu verlieren.
In der Praxis
Empfohlener Workflow in AUTOMATIC1111:
- Bild in das ControlNet-Panel laden
- Preprocessor:
cannyauswählen - Model: passendes Canny-ControlNet-Modell wählen (z. B.
control_v11p_sd15_cannyfür SD 1.5 odercontrolnet-canny-sdxlfür SDXL) - Low Threshold auf 100, High Threshold auf 200 setzen (Ausgangswerte)
- Weight: 0.8–1.0 für starken strukturellen Einfluss; 0.4–0.6 für weichere Interpretation
- Auf „Preview Annotator Result" klicken, um die Kantenkarte zu prüfen
Fallstricke:
- Zu niedrige Schwellenwerte erzeugen überdichte Kantenkarten mit viel Rauschen – das Modell „erstickt" in zu vielen Linien und verliert kreative Flexibilität.
- Zu hohe Schwellenwerte liefern zu wenig Struktur; das ControlNet-Modell kann die Komposition dann kaum noch beeinflussen.
- Canny funktioniert am besten bei klaren, kontrastreichen Bildern. Bei flachen, weichen Motiven (z. B. Himmel, Nebel) entstehen kaum nutzbare Kanten.
- Das Canny-Modell muss zur verwendeten Stable-Diffusion-Version passen (SD 1.5-Modelle nicht mit SDXL verwenden).
Vergleich & Abgrenzung
| Merkmal | Canny Edge | Depth Map | OpenPose |
|---|---|---|---|
| Erfasst | Kanten und Umrisse | Räumliche Tiefe | Körperposen |
| Stärke | Präzise Strukturkontrolle | Räumliche Anordnung | Posen bei Figuren |
| Schwäche | Sensibel bei Rauschen | Ungenau bei flachen Szenen | Nur für menschliche Figuren |
| Typischer Einsatz | Logo, Architektur, Objekte | Szenenkomposition | Charakterposen |
Gegenüber ControlNet: Depth Map liefert Canny feiner detaillierte Strukturen, aber keine Information über Tiefenverhältnisse im Bild. Für Ganzkörperposen von Figuren ist ControlNet: OpenPose die bessere Wahl; für eine Kombination beider Anforderungen können mehrere ControlNet-Module gleichzeitig gestapelt werden.
Häufige Fragen (FAQ)
Wie verwende ich ControlNet Canny in der Praxis? Das Referenzbild wird im ControlNet-Panel hochgeladen, der Preprocessor auf „canny" gesetzt und ein passendes ControlNet-Canny-Modell geladen. Anschließend wird der Prompt wie gewohnt formuliert – die Kantenkarte übernimmt die strukturelle Führung, während der Prompt den Stil und Inhalt vorgibt. Ein Preview der Kantenkarte hilft beim Feintuning der Schwellenwerte.
Was sind typische Fehler bei ControlNet Canny? Der häufigste Fehler ist die Verwendung von Modellen aus unterschiedlichen SD-Versionen (z. B. ein SD-1.5-Canny-Modell mit einem SDXL-Checkpoint). Außerdem werden Schwellenwerte oft nicht angepasst: Bei Bildern mit vielen feinen Texturen sollten beide Schwellenwerte erhöht werden, um Rauschen zu reduzieren. Ein zu hoher Weight-Wert (>1.3) kann Artefakte und unnatürliche, schematische Bilder erzeugen.
Weiterführend
- ControlNet GitHub (lllyasviel)
- AUTOMATIC1111 ControlNet Extension
- Civitai: Canny-Modelle
