Scopri come ControlNet offre un controllo spaziale preciso sull'IA generativa. Impara a utilizzare Ultralytics per estrarre pose che guidano la generazione di immagini oggi stesso.
ControlNet è un'architettura di rete neurale avanzata progettata per garantire un controllo spaziale dettagliato su modelli di IA generativi di grandi dimensioni che trasformano il testo in immagini. Introdotta originariamente per migliorare modelli come Stable Diffusion, consente agli utenti di guidare la generazione di immagini utilizzando condizioni di input aggiuntive oltre ai semplici prompt di testo. Inserendo nella rete guide visive specifiche, come mappe dei bordi , mappe di profondità o scheletri umani, i professionisti possono dettare l'esatta composizione, postura o struttura dell'output generato, colmando il divario tra le descrizioni in linguaggio naturale e l'esecuzione visiva precisa .
L'innovazione principale di ControlNet risiede nella sua capacità di preservare la vasta conoscenza pre-addestrata di un modello di base mentre apprende nuovi compiti di condizionamento . Ciò è possibile bloccando i parametri del blocco della rete neurale originale e creando un clone addestrabile . Questo clone è collegato al modello bloccato utilizzando livelli specializzati di "convoluzione zero", che vengono inizializzati con pesi pari a zero per garantire che non venga aggiunto alcun rumore durante le prime fasi di messa a punto. Per ulteriori informazioni sulla teoria matematica e strutturale, consultare la pubblicazione originale della ricerca ControlNet su arXiv.
Questa struttura unica consente agli sviluppatori di addestrare controlli di condizionamento robusti su hardware di livello consumer, rendendola altamente accessibile rispetto all'addestramento di un modello di deep learning massiccio partendo da zero.
Quando si parla di intelligenza artificiale generativa, è utile differenziare ControlNet dai concetti correlati:
ControlNet ha notevolmente ampliato l'utilità della visione artificiale e dell'IA generativa nei flussi di lavoro professionali.
Per utilizzare ControlNet in modo efficace, è necessario innanzitutto estrarre la condizione spaziale desiderata da un'immagine sorgente. Ad esempio, è possibile utilizzare Ultralytics , l'ultimo modello di visione all'avanguardia, per estrarre uno scheletro della posa umana. Questo scheletro viene quindi salvato e utilizzato come input di condizionamento per una pipeline da testo a immagine abilitata per ControlNet.
from ultralytics import YOLO
# Load the Ultralytics YOLO26 pose estimation model
model = YOLO("yolo26n-pose.pt")
# Perform inference to extract the human pose skeleton
results = model("character_reference.jpg")
# Save the resulting plotted skeleton to use as ControlNet input
results[0].save("pose_conditioning.jpg")
Sia che si stiano preparando bordi Canny utilizzando OpenCV standard OpenCV o che si stiano estraendo maschere di segmentazione avanzate, è essenziale preparare input di alta qualità. Per la gestione dei set di dati basata su cloud e l' annotazione dei dati necessaria per addestrare le condizioni personalizzate di ControlNet, piattaforme come Ultralytics forniscono un ambiente end-to-end senza soluzione di continuità per i moderni team di IA.