Yolo Vision Shenzhen
Shenzhen
Rejoindre maintenant
Glossaire

ControlNet

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 .

Comment fonctionne l'architecture

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.

Modèles ControlNet vs Diffusion et LoRA

Lorsqu'on aborde le sujet de l'intelligence artificielle générative , il est utile de différencier ControlNet des concepts connexes :

  • Modèles de diffusion: il s'agit des moteurs de base sous-jacents qui génèrent des images en supprimant le bruit de manière itérative. Ils s'appuient presque exclusivement sur des invites textuelles.
  • LoRA (Low-Rank Adaptation): LoRA est une méthode permettant d'enseigner rapidement à un modèle un nouveau style ou sujet (comme un personnage ou un style artistique spécifique). En revanche, ControlNet dicte l'agencement spatial exact de l'image.

Applications concrètes

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.

  • Rendu architectural: les architectes et les designers d'intérieur utilisent ControlNet pour transformer des plans de conception assistée par ordinateur (CAO) noirs et blancs ou des croquis dessinés à la main en rendus photoréalistes de bâtiments et de pièces.
  • Pose des personnages dans le développement de jeux vidéo: les animateurs exploitent des modèles d'estimation de la pose humaine pour extraire des structures squelettiques à partir d'une vidéo de référence. Ces squelettes sont intégrés à ControlNet afin de générer des sprites de personnages stylisés et cohérents adoptant des poses précises pour les ressources des jeux vidéo, ce qui réduit considérablement le temps d'illustration manuelle.

Préparation des conditions pour ControlNet

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.

Boostez votre énergie avec Ultralytics YOLO

Bénéficiez d'une vision IA avancée pour vos projets. Trouvez la licence adaptée à vos objectifs dès aujourd'hui.

Explorer les options de licence