Nodo Apply ControlNet in ComfyUI
Apply ControlNet collega un'immagine guida e un ControlNet caricato al CONDITIONING positivo e negativo con forza e percentuali di inizio/fine, così il sampler segue i bordi, la profondità o la posa dell'immagine guida.
Cosa fa Apply ControlNet
Apply ControlNet (la versione più recente ControlNetApplyAdvanced, mostrata come Apply ControlNet) prende il conditioning positivo e negativo, un CONTROL_NET, l'IMMAGINE guida preprocessata e, nelle versioni recenti, il VAE. Restituisce un nuovo conditioning che porta il segnale di controllo al sampler. strength regola l'influenza (1.0 è piena), start_percent e end_percent limitano il controllo a una parte del campionamento, per esempio 0.0-0.6 così la composizione si stabilisce presto ma il modello finisce i dettagli liberamente.
L'immagine guida deve già essere nel formato che il ControlNet si aspetta: un ControlNet Canny vuole bordi bianchi su nero, un ControlNet Depth vuole una mappa di profondità in grigio, OpenPose vuole lo scheletro colorato. I preprocessori del pacchetto ControlNet Aux producono questi da una foto. Per i Tile ControlNet la guida è l'immagine stessa, spesso sfocata o ridimensionata.
Ingressi
Nome | Tipo | Cos'è |
|---|---|---|
positive / negative | CONDITIONING | Dai nodi CLIP Text Encode. |
control_net | CONTROL_NET | Da Load ControlNet Model. |
image | IMAGE | La guida preprocessata (bordi, profondità, posa o l'immagine per Tile). |
vae | VAE | Opzionale nelle versioni recenti; richiesto da alcuni ControlNet Flux e Union. |
strength | FLOAT | 0-2, quanto forte seguire la guida. Di solito 0.6-1.0. |
start_percent / end_percent | FLOAT | Parte del campionamento in cui il controllo è attivo. |
Uscite
Nome | Tipo | Cos'è |
|---|---|---|
positive | CONDITIONING | Conditioning positivo controllato per KSampler. |
negative | CONDITIONING | Conditioning negativo controllato per KSampler. |
Come usare Apply ControlNet
- Carica una foto con Load Image e passala attraverso un preprocessore (Canny Edge, Depth Anything, DWPose).
- Carica il ControlNet corrispondente con Load ControlNet Model.
- Aggiungi Apply ControlNet; collega positive, negative, control_net e l'immagine guida.
- Imposta strength a 0.8 e end_percent a 0.8 come punto di partenza.
- Collega le due uscite a KSampler positive e negative; mantieni la dimensione latente che corrisponde al rapporto della guida.
Impostazioni e consigli
- Collega più nodi Apply ControlNet (posa + profondità) passando le uscite di uno all'ingresso del successivo.
- Abbassare end_percent (0.5-0.7) lascia più libertà al modello per aggiungere dettagli ed evita un aspetto rigido e tracciato.
- Mantieni l'immagine guida con lo stesso rapporto d'aspetto del latente; viene ridimensionata per adattarsi.
- Per l'upscaling Tile usa strength 0.5-0.8 così i dettagli possono ancora cambiare.
- Controlla l'output del preprocessore: una guida nera o rumorosa spiega la maggior parte dei casi di "nessun effetto".
Risoluzione dei problemi di Apply ControlNet
Il risultato ignora la guida
Perché succede
strength vicino a 0, end_percent troppo basso, immagine guida nera, o un ControlNet Union senza tipo.
Come risolverlo
Controlla la guida, imposta strength 0.8-1.0 e end_percent 1.0 per testare, poi rilassa. Aggiungi SetUnionControlNetType per i modelli union.
Errore: mat1 e mat2 shapes non possono essere moltiplicate / mismatch ControlNet
Perché succede
La famiglia ControlNet non corrisponde al checkpoint (SD 1.5 vs SDXL vs Flux).
Come risolverlo
Usa un ControlNet della stessa famiglia del checkpoint.
Immagine bruciata, ad alto contrasto, posterizzata
Perché succede
strength sopra 1 con un ControlNet forte (Canny o Lineart) e cfg alto.
Come risolverlo
Forza 0.6-0.9, end_percent 0.7, cfg nel range normale del modello.
Vecchio flusso mostra "Apply ControlNet (OLD)"
Perché succede
Il nodo single-conditioning è stato rinominato; funziona ancora ma manca il controllo start/end e il passaggio negativo.
Come risolverlo
Sostituiscilo con Apply ControlNet e collega sia positivo che negativo.
Errore Flux ControlNet su vae mancante
Perché succede
Alcuni ControlNet Flux e Union hanno bisogno del VAE per codificare la guida.
Come risolverlo
Collega l'output VAE di Load VAE all'ingresso vae di Apply ControlNet.
Domande su Apply ControlNet
Devo preprocessare l'immagine?
Sì, tranne per Tile e Inpaint ControlNet, che usano l'immagine stessa. Ogni ControlNet è addestrato per un tipo di mappa.
Posso usare ControlNet con img2img?
Sì. Il latente viene da VAE Encode, il controllo da questo nodo; sono indipendenti.
Quanti ControlNet posso mettere in fila?
Quanti ne permette la VRAM; due o tre è comune. Ognuno aggiunge memoria e tempo.
Nodi correlati
Load ControlNet Model
ComfyUI core
Load ControlNet Model carica un file ControlNet (o T2I-Adapter / ControlNet Union) da models/controlnet e restituisce un oggetto CONTROL_NET per Apply ControlNet.
Load Image
ComfyUI core
Load Image carica un'immagine dalla cartella di input di ComfyUI (o da un upload) e produce un tensore IMAGE più una MASK ricavata dal canale alfa, il punto di partenza per img2img, inpainting, ControlNet e IP-Adapter.
KSampler
ComfyUI core
KSampler esegue il ciclo di denoising: prende il modello, i prompt e un latente e produce l'immagine latente finita, controllata da seed, passi, cfg, sampler, scheduler e denoise.
CLIP Text Encode (Prompt)
ComfyUI core
CLIP Text Encode trasforma un prompt di testo in CONDITIONING usando l'encoder testuale del modello. Un nodo contiene il prompt positivo, un altro quello negativo.
Ultimate SD Upscale
ComfyUI_UltimateSDUpscale
Ultimate SD Upscale ingrandisce un'immagine con un modello ESRGAN, poi la riprocessa a pezzi tramite il modello di diffusione con il tuo prompt a basso denoise, aggiungendo dettagli reali da 2x a 4x senza esaurire la VRAM.
Altri nodi ComfyUI
ComfyUI Manager
ComfyUI-Manager
ComfyUI Manager è l’estensione che installa, aggiorna e sistema i pacchetti di nodi personalizzati e i modelli direttamente dall’interfaccia, risolve i nodi mancanti nei workflow importati e salva la tua configurazione.
Load Checkpoint
ComfyUI core
Load Checkpoint (CheckpointLoaderSimple) apre un file modello .safetensors o .ckpt e fornisce le tre parti di cui ogni workflow ha bisogno: il MODEL di diffusione, l'encoder testuale CLIP e il VAE.
Save Image
ComfyUI core
Save Image salva il tensore IMAGE in ComfyUI/output come PNG, con tutto il flusso di lavoro incorporato nei metadati del file così puoi trascinare l'immagine di nuovo in ComfyUI per ripristinare il grafico.
VAE Decode
ComfyUI core
VAE Decode trasforma il LATENT campionato in un'immagine a pixel usando il VAE; VAE Decode (Tiled) fa lo stesso a pezzi per immagini molto grandi.
Empty Latent Image
ComfyUI core
Empty Latent Image crea la tela latente vuota (larghezza, altezza, batch_size) da cui parte il campionamento testo-immagine; le dimensioni devono essere multipli di 8 e corrispondere alla famiglia del modello.
Load LoRA
ComfyUI core
Load LoRA (LoraLoader) applica un file LoRA al MODEL e al CLIP con intensità separate, così puoi aggiungere uno stile, un personaggio o un concetto a qualsiasi checkpoint senza doverlo unire.
