Intermedio 13 minImmagine

ControlNet: controllare la composizione delle proprie images

Risposta diretta

ControlNet aggiunge a un modello di diffusione una condizione visiva (contorni, profondità, posa) che stabilisce la composizione mentre il prompt governa lo stile. Il suo metodo ha vinto il premio per il miglior articolo a ICCV 2023. Si usa in ComfyUI, Forge o AUTOMATIC1111 ed è disponibile per SD 1.5, SDXL, SD 3.5 Large, Flux.1 e Z-Image Turbo. Attenzione: un controllo funziona solo con la famiglia di modelli per cui è stato addestrato.

Un prompt descrive un contenuto; non descrive una posizione. ControlNet condiziona la generazione di immagini sulla base di una struttura di riferimento, una posa, un contorno, una mappa di profondità, affinché il risultato segua una composizione che decidi tu. Questa guida, aggiornata al 28 settembre 2026, spiega quale controllo scegliere, come regolare la forza e l'intervallo di applicazione, quanto pesano i file in base alla famiglia di modelli e qual è lo stato attuale dell'offerta ufficiale, che è cambiata molto dai tempi di SD 1.5.

Di Mohamed Meguedmi·Agg. 2026-09-29·Testato su Windows, macOS e Linux

#Il problema che risolve

Il testo è un linguaggio poco adatto alla geometria. In un prompt si descrivono un soggetto, uno stile e un'atmosfera, ma la posizione di una mano, l'angolo di un edificio o la sagoma esatta di un prodotto non si possono definire con le parole. Si ripete la generazione con un altro seed e la composizione cambia completamente. ControlNet modifica l'input, non il prompt: fornisci un'immagine che codifica la struttura desiderata, il modello viene condizionato su di essa a ogni fase del denoising e il prompt governa tutto il resto.

Il metodo deriva da un articolo di ricerca: « Adding Conditional Control to Text-to-Image Diffusion Models », di Lvmin Zhang, Anyi Rao e Maneesh Agrawala, pubblicato negli atti di ICCV 2023 e vincitore del premio per il miglior articolo della conferenza, il premio Marr. Il suo abstract descrive il principio: ControlNet blocca il modello di diffusione, riutilizza i suoi strati di codifica preaddestrati come base e collega la copia addestrabile tramite « zero convolutions », strati di convoluzione inizializzati a zero che fanno crescere progressivamente i parametri ed evitano che rumore dannoso perturbi l'addestramento. Gli autori mostrano anche che l'addestramento rimane robusto sia con piccoli insiemi di dati, meno di 50.000 immagini, sia con grandi insiemi, più di un milione.

Cosa cambia per te: si aggiunge un controllo a un modello esistente senza addestrarlo di nuovo, e ogni tipo di controllo è un file separato. È anche per questo che serve il file giusto per la famiglia di modelli corretta.

#Scegliere il tipo di controllo

Il kit Immagini IA

Immagini e video IA in locale, senza limiti: ComfyUI, Flux, Z-Image, Wan 2.2 sulla tua GPU o sul tuo Mac — workflow pronti da caricare, quadro legale incluso.

  • Spazio online a vita
  • PDF + file
  • Aggiornamenti a vita
Cosa cattura ogni controllo, con i modelli SD 1.5 di ControlNet 1.1
ControlloCiò che catturaPer cosaModello ControlNet 1.1 per SD 1.5
Contorni (canny, softedge, lineart)Linee e silhouetteMantenere una forma esatta: un prodotto, un logo, un disegno da colorarecontrol_v11p_sd15_canny, _softedge, _lineart, _lineart_anime
ProfonditàDistanza dalla telecameraMantenere il volume e la prospettiva cambiando materiali e dettaglicontrol_v11f1p_sd15_depth
PosaUno scheletro di articolazioniI personaggi: la posa è fissata, il resto è liberocontrol_v11p_sd15_openpose
SegmentazioneRegioni per categoriaLa disposizione di una scena: cielo qui, edificio làcontrol_v11p_sd15_seg
Schizzo (scribble)Un disegno approssimativoTrasformare un disegno a mano in un'immagine renderizzatacontrol_v11p_sd15_scribble
NormaliL'orientamento delle superficiRilievo e dettagli sensibili all'illuminazionecontrol_v11p_sd15_normalbae
Tassello (tile)Il contenuto di una zona dell'immagineAggiungere dettagli ingrandendocontrol_v11f1e_sd15_tile

Il repository ufficiale di ControlNet 1.1 annuncia 14 modelli, di cui 11 pronti per la produzione e 3 sperimentali, tutti denominati secondo un'unica regola. Per la profondità, elenca tre preprocessori accettati: Depth_Midas, Depth_Leres e Depth_Zoe. Un preprocessore è lo strumento che trasforma la tua immagine di riferimento in una mappa di controllo, ad esempio una foto in una mappa di profondità.

La regola pratica: scegli il controllo meno restrittivo che riesca comunque a cogliere ciò che ti interessa. Un condizionamento basato sui contorni di una fotografia riproduce la fotografia: se era questo il risultato desiderato, la generazione era inutile. La profondità o la posa offrono in genere un equilibrio migliore tra aderenza alle istruzioni e creatività.

#Le impostazioni che contano

I nomi variano a seconda dello strumento, ma tre impostazioni ricorrono ovunque. La tabella ne indica i nomi nei tre ambienti più comuni, secondo le rispettive documentazioni.

Le impostazioni di ControlNet in base allo strumento
RegolazioneComfyUI (nodo Apply ControlNet)Libreria diffusersEstensione AUTOMATIC1111
Intensità del controllostrength: più alto è il valore, maggiore è l'influenza del controllo sull'immaginecontrolnet_conditioning_scale: il peso assegnato al controlloControl Weight: il peso dell'influenza del controllo, paragonabile all'enfasi data a una parola nel prompt
Momento di applicazionestart_percent e end_percent: 0,2 significa che il controllo inizia al 20% del processo di denoising, 0,8 che si interrompe all'80%control_guidance_start e control_guidance_end, come frazione dei passaggi (da 0 a 1)Start e End: la frazione della generazione in cui il controllo inizia e termina
Precisione della mappaRisoluzione del preprocessore, da impostare nel nodo del preprocessoreDimensione dell'immagine di controlloLa modalità Pixel-Perfect calcola automaticamente la risoluzione ottimale del preprocessore

L'intensità è la leva più efficace: vicino al massimo, il risultato è rigido, e ridurla corregge la maggior parte delle immagini troppo rigide. Interrompere il controllo prima della fine della rimozione del rumore fissa la composizione lasciando al modello libertà nella resa dei materiali e della luce. L'estensione di AUTOMATIC1111 aggiunge un Control Mode con tre opzioni: Balanced, My prompt is more important e ControlNet is more important, per bilanciare il peso del prompt e del controllo.

#Valori di partenza pubblicati dagli autori dei modelli

Piuttosto che inventare numeri, parti dai dati indicati dagli editori. Variano notevolmente da una famiglia all'altra, il che ricorda che un'impostazione valida per SD 1.5 non si applica automaticamente ad altri modelli.

Valori raccomandati, secondo le schede dei modelli e la documentazione di diffusers
ModelloImpostazione consigliataFonte
Flux.1 dev, Union Pro 2.0 (Shakker Labs), canny o soft edgeIntensità 0,7; fine a 0,8Scheda del modello
Flux.1 dev, Union Pro 2.0, profonditàForza 0,8; fine a 0,8Scheda del modello
Flux.1 dev, Union Pro 2.0, posaForza 0,9; fine a 0,65Scheda del modello
Flux.1 dev, Union Pro 2.0, scala di grigiForza 0,9; fine a 0,8Scheda del modello
Z-Image Turbo, Fun ControlNet Unioncontrol_context_scale compreso tra 0,65 e 0,80Scheda del modello
Flux.1 dev, ControlNet canny di InstantXForza di 0,5 nell'esempio ufficialeDocumentazione di diffusers
SDXL, due controlli combinati (canny e profondità)0,5 per ciascuno nell'esempio ufficialeDocumentazione di diffusers
!
Il modello di controllo deve corrispondere al modello base
Un ControlNet è addestrato per un'architettura precisa. Un file previsto per SD 1.5 non funziona con SDXL né con Flux. Il sintomo tipico è un output che ignora del tutto il controllo o che degenera in rumore. Controlla sempre la famiglia indicata nella scheda del file prima di scaricarlo.

#Quale ControlNet per quale famiglia

L'offerta è cambiata molto dai tempi di SD 1.5 e molte guide sono obsolete. La tabella distingue ciò che pubblica il laboratorio che sviluppa il modello da ciò che pubblica la comunità, perché questa distinzione determina la manutenzione e la licenza.

Stato dell'offerta per famiglia di modello, alla data di redazione
FamigliaControlli pubblicati dall'editore del modelloControlli della comunità o di terzi
SD 1.5ControlNet 1.1 di lllyasviel: 14 modelli (canny, profondità, posa, segmentazione, schizzo, tile…)Molti modelli derivati
SDXLControl-LoRA di Stability AI: canny, profondità, recolor e sketchControlNet canny e profondità del team diffusers; ControlNet Union di xinsir (un file, più modalità)
SD 3.5 LargeTre ControlNets di Stability AI pubblicati il 26 novembre 2024: Blur, Canny e DepthPochi riferimenti comparabili
Flux.1 devFLUX.1 Canny e Depth di Black Forest Labs, in versione completa e in LoRA, pubblicati nel novembre 2024ControlNet Union di InstantX (versione beta) e Union Pro 2.0 di Shakker Labs
Z-Image TurboNessuno sulla pagina Hugging Face dello sviluppatore (Tongyi-MAI) al momento della nostra verificaFun ControlNet Union di Alibaba PAI: canny, HED, profondità, posa e MLSD

Due punti meritano di essere menzionati. Innanzitutto, Black Forest Labs ha contrassegnato FLUX.1 Depth e FLUX.1 Canny come deprecati per la propria API, comprese le versioni LoRA: i pesi aperti rimangono disponibili su Hugging Face, ma il produttore non li mantiene più. Inoltre, i modelli «Union» riuniscono più modalità in un unico file, risparmiando spazio su disco, a fronte di un livello di maturità variabile: la scheda del ControlNet Union di InstantX per Flux lo presenta come una prima versione beta, forse non completamente addestrata.

La licenza non segue automaticamente il modello base: ogni file di controllo ne ha una propria, e cambia da file a file.

Licenze dei controlli, secondo i metadati dei repository Hugging Face e le licenze citate
ControlloLicenzaDa ricordare
ControlNet 1.1 per SD 1.5OpenRAILLicenza di tipo RAIL con restrizioni d'uso
ControlNet canny SDXL del team diffusersOpenRAIL++Come SDXL: restrizioni d'uso elencate nell'appendice
ControlNet Union SDXL di xinsirApache 2.0Permissiva
Control-LoRA di Stability AIStability AI Control-LoRA Community LicenseOltre 1 milione di utenti attivi al mese, è necessaria una licenza di Stability AI per l'uso commerciale
ControlNets SD 3.5 LargeStability AI Community LicenseGratuito per uso commerciale con un fatturato annuo inferiore a 1 milione di dollari
FLUX.1 Canny e Depth [dev]Licenza FluxDev non commercialeLa scheda specifica che le immagini generate possono essere utilizzate a fini personali, scientifici e commerciali secondo la licenza
Union di InstantX e Union Pro 2.0 di Shakker Labs, per FluxLicenza FluxDev non commercialeLeggere prima di qualsiasi utilizzo commerciale
Fun ControlNet Union per Z-Image TurboApache 2.0Permissiva

#L'ingombro dei file e il consumo di memoria

Un ControlNet è una rete aggiuntiva che gira accanto al modello di base: aumenta il consumo di VRAM e il tempo necessario per ogni immagine. Le dimensioni dei file, pubblicate su Hugging Face, danno una prima indicazione dell'ordine di grandezza: si sommano ai pesi del modello di base e del suo encoder di testo.

Dimensione dei file di controllo, secondo Hugging Face e Stability AI
ControlloDimensione del file
ControlNet 1.1 per SD 1.5, versione originale (.pth)1,45 GB ciascuno
SDXL, ControlNet canny del team diffusers5 GB in piena precisione, 2,5 GB in mezza precisione
SDXL, ControlNet Union di xinsir2,51 GB
SDXL, Control-LoRA di Stability AICirca 738 MB, contro 4,7 GB per il ControlNet originale
SD 3.5 Large, ControlNet canny8,61 GB
Flux.1 dev, ControlNet Union di InstantX6,6 GB
Flux.1 dev, Union Pro 2.0 di Shakker Labs4,28 GB
Flux.1 dev, FLUX.1 Depth sotto forma di LoRA (Black Forest Labs)1,24 GB, contro 23,8 GB per il modello Canny completo
Z-Image Turbo, Fun ControlNet Union3,1 GB

Due insegnamenti. Primo, un controllo sotto forma di LoRA pesa una frazione di un modello completo: Stability AI presenta i suoi Control-LoRA come un modo per rendere il controllo accessibile a una gamma più ampia di schede grafiche consumer. Secondo, bisogna diffidare del formato: i file .pth di ControlNet 1.1 sono pickle Python, che Hugging Face segnala con un avviso di importazione di pickle. Preferisci le versioni .safetensors, che non possono eseguire codice.

Quanta VRAM in più? Gli sviluppatori non indicano un valore generale e la misurazione dipende dal modello e dalla risoluzione. Se la memoria è satura, l'ordine dei rimedi è: abbassare la risoluzione, ridurre il numero di controlli simultanei, poi passare a un controllo più leggero, come un Control-LoRA o una versione a mezza precisione. Per la memoria di base, vedere la guida sulla VRAM.

#Dove usarlo

ControlNet non è un'applicazione autonoma: opera all'interno di un'interfaccia di generazione di immagini. In ComfyUI, due nodi svolgono il lavoro: Load ControlNet, che legge i file della cartella models/controlnet, e Apply ControlNet, che riceve l'immagine di controllo e le impostazioni della tabella riportata sopra. La documentazione di ComfyUI precisa che il nucleo del software non include tutti i preprocessori: spesso serve un'estensione come ComfyUI ControlNet aux. Ricorda che un'estensione è codice eseguito con i tuoi privilegi: installa solo estensioni conosciute. Per Z-Image Turbo, il file di controllo va in un'altra cartella, models/model_patches.

Nell'interfaccia web classica, l'estensione sd-webui-controlnet di AUTOMATIC1111 aggiunge un pannello sotto il prompt. L'ultima notizia pubblicata, relativa alla versione 1.1.454, risale a luglio 2024, così come il suo ultimo commit: funziona ancora su SD 1.5 e SDXL, ma non verrà aggiornata per supportare i modelli recenti. Forge integra direttamente ControlNet, secondo il suo README, senza passare attraverso questa estensione.

#Combinare più controlli contemporaneamente

Nulla impedisce di combinare due controlli, ad esempio un controllo della posa per la postura del personaggio e uno della profondità per l'ambientazione. La documentazione di diffusers dà la regola: per ottenere buoni risultati, applica maschere ai condizionamenti affinché non si sovrappongano e sperimenta con intensità diverse per regolare il peso di ciascun controllo. Il suo esempio SDXL combina canny e profondità con un'intensità di 0,5 ciascuno. In ComfyUI si concatenano i nodi Apply ControlNet. Gli stessi principi valgono per entrambi: combinare solo controlli che riguardano aspetti diversi dell'immagine e ridurre l'intensità di ciascuno, perché gli effetti si sommano.

#Quando il controllo è ignorato

Il controllo non appare nell'elenco
Il file si trova nella cartella sbagliata, oppure il suo file di configurazione non ha lo stesso nome del file stesso. In ComfyUI, la cartella è models/controlnet.
L'output ignora il riferimento
Incompatibilità tra la famiglia del modello di base e quella del modello di controllo, un preprocessore che ha prodotto una mappa vuota oppure un'intensità troppo bassa. Visualizza la mappa di controllo stessa prima di sospettare altro.
Le immagini sono rigide e prive di vita
Intensità troppo alta, oppure controllo applicato durante l'intero processo di denoising. Riduci l'intensità e disattiva il controllo prima della fine.
Risultato deludente con un modello Union
Gli autori di Union di InstantX scrivono che anche un modello Union completamente addestrato può dare risultati peggiori rispetto a modelli specializzati, come quello per la posa. Prova un ControlNet dedicato e scrivi un prompt dettagliato, come consiglia la scheda di Shakker Labs.
Memoria saturata
Diminuisci la risoluzione, rimuovi un controllo, o usa una versione più leggera del controllo.

#FAQ

FAQ
A cosa serve ControlNet?+
Serve a condizionare la generazione di immagini usando un riferimento strutturale, come contorni, profondità o uno scheletro di posa, affinché l'immagine segua questa struttura mentre il prompt determina il soggetto e lo stile. Il metodo, pubblicato negli atti di ICCV 2023, congela il modello di diffusione e addestra una copia collegata tramite convoluzioni inizializzate a zero: il modello originale non viene riaddestrato.
Serve una scheda grafica potente per ControlNet?+
Aggiunge una seconda rete al modello di base, aumentando quindi il consumo di memoria e il tempo necessario. Gli sviluppatori non pubblicano un valore generale per il consumo aggiuntivo di VRAM. Su SD 1.5, un controllo pesa 1,45 GB nella versione originale; su SDXL, un Control-LoRA di Stability AI pesa circa 738 MB contro 4,7 GB. Inizia con un solo controllo leggero, poi aumenta.
Perché il mio output ignora l'immagine di controllo?+
Nella maggior parte dei casi, il modello di controllo non corrisponde alla famiglia del modello di base (SD 1.5, SDXL, Flux), oppure il preprocessore ha prodotto una mappa vuota, oppure l'intensità è troppo bassa. Visualizza prima la mappa di controllo stessa. Nei modelli recenti conta anche l'intervallo di applicazione: se il controllo viene interrotto troppo presto, non ha più effetto.
Quale controllo usare per la posa di un personaggio?+
Il condizionamento tramite la posa, che fissa lo scheletro articolare e lascia liberi abiti, aspetto e ambientazione. Su Flux con il modello Union Pro 2.0 di Shakker Labs, la scheda consiglia un'intensità di 0,9 e l'interruzione del denoising a 0,65 per la posa. I contorni bloccherebbero l'intera silhouette, cosa che raramente è l'obiettivo per un personaggio.
Esiste ControlNet per SDXL, Flux e Z-Image?+
Sì, ma l'origine varia. SDXL: Control-LoRA di Stability AI e modelli di terzi. SD 3.5 Large: tre ControlNets di Stability AI. Flux.1: FLUX.1 Canny e Depth di Black Forest Labs, deprecati per l'API, e modelli Union comunitari. Z-Image Turbo: il Fun ControlNet Union di Alibaba PAI, con valore consigliato da 0,65 a 0,80.
È possibile utilizzare più ControlNets contemporaneamente?+
Sì. La documentazione di diffusers consiglia di applicare maschere ai condizionamenti affinché non si sovrappongano e di regolare l'intensità di ciascuno; il suo esempio SDXL usa 0,5 per Canny e 0,5 per la profondità. In ComfyUI, si concatenano i nodi Apply ControlNet. Combina soltanto controlli complementari, come la posa e l'ambientazione.
Questa guida ti è stata utile?

Un feedback, un errore, una precisazione? Facci sapere, così la guida migliora per tutti.