ControlNet (Zhang et al., 2023) fonctionne en créant une copie entraînable de l'encodeur du modèle de diffusion et en la connectant au modèle original via des couches de convolution initialisées à zéro. Le signal de contrôle (carte de contours, pose, profondeur) est traité par cette copie, et les features sont ajoutées aux couches correspondantes du modèle principal. L'initialisation à zéro signifie que le contrôle commence sans effet et apprend graduellement à guider la génération pendant l'entraînement, préservant la qualité du modèle original.
Entrées de contrôle courantes : contours Canny (structure du contour), OpenPose (pose du corps humain), cartes de profondeur (structure 3D), cartes de segmentation (quelle région est quoi), cartes de normales (orientation des surfaces), et croquis (esquisses grossières). Chaque type de contrôle nécessite un ControlNet entraîné séparément. Plusieurs contrôles peuvent être combinés : un squelette de pose plus une carte de contours te donne à la fois la position du corps et les détails structurels.
Au-delà du contrôle spatial, des techniques comme IP-Adapter fournissent un contrôle de style : donne une image de référence et génère de nouvelles images dans le même style. T2I-Adapter est une alternative plus légère à ControlNet qui atteint un contrôle similaire avec moins de paramètres. La tendance est vers un contrôle de plus en plus précis et composable — spécifier exactement ce que tu veux à travers une combinaison de texte, de guides spatiaux, de références de style et de raffinement itératif.