Découvrez comment ControlNet permet un contrôle spatial précis de l'IA générative. Apprenez à utiliser Ultralytics pour extraire des poses afin de guider la génération d'images dès aujourd'hui.
ControlNet est une architecture de réseau neuronal avancée conçue pour permettre un contrôle spatial précis sur les grands modèles d'IA génératifs de texte en image. Initialement introduit pour améliorer des modèles tels que Stable Diffusion, il permet aux utilisateurs de guider la génération d'images à l'aide de conditions d'entrée supplémentaires, au-delà des simples invites textuelles. En introduisant des guides visuels spécifiques (tels que des cartes de contours , des cartes de profondeur ou des squelettes humains) dans le réseau, les praticiens peuvent dicter la composition, la posture ou la structure exacte du résultat généré, comblant ainsi le fossé entre les descriptions en langage naturel et l'exécution visuelle précise .
L'innovation principale de ControlNet réside dans sa capacité à préserver les vastes connaissances pré-entraînées d'un modèle de base tout en apprenant de nouvelles tâches de conditionnement . Pour ce faire, il verrouille les paramètres du bloc de réseau neuronal d'origine et crée un clone entraînable. Ce clone est connecté au modèle verrouillé à l'aide de couches spécialisées « à convolution nulle », qui s'initialisent avec des poids nuls afin de garantir qu'aucun bruit ne soit ajouté pendant les premières étapes du réglage fin. Vous pouvez en savoir plus sur la théorie mathématique et structurelle dans la publication originale de recherche sur ControlNet sur arXiv.
Cette structure unique permet aux développeurs de former des contrôles de conditionnement robustes sur du matériel grand public, ce qui la rend très accessible par rapport à la formation d'un modèle d'apprentissage profond massif à partir de zéro.
Lorsqu'on aborde le sujet de l'intelligence artificielle générative , il est utile de différencier ControlNet des concepts connexes :
ControlNet a considérablement élargi l'utilité de la vision par ordinateur et de l'IA générative dans les flux de travail professionnels.
Pour utiliser efficacement ControlNet, vous devez d'abord extraire la condition spatiale souhaitée d'une image source. Par exemple, vous pouvez utiliser Ultralytics , le dernier modèle de vision de pointe, pour extraire le squelette de la posture humaine. Ce squelette est ensuite enregistré et utilisé comme entrée de conditionnement pour un pipeline texte-image compatible 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")
Que vous prépariez des contours Canny à l'aide OpenCV standard ou que vous extrayez des masques de segmentation avancés, il est essentiel de préparer des entrées de haute qualité. Pour la gestion des ensembles de données dans le cloud et l' annotation des données nécessaires à l'entraînement des conditions ControlNet personnalisées, des plateformes telles que la Ultralytics offrent un environnement transparent et de bout en bout aux équipes d'IA modernes.