ControlNet
探索 ControlNet 如何提供对生成式 AI 的精确空间控制。学习今天如何使用 Ultralytics YOLO26 提取姿态以指导图像生成。
ControlNet 是一种先进的神经网络架构,旨在为大型文本到图像 生成式 AI 模型提供细粒度的空间控制。它最初是为了增强 Stable Diffusion 等模型而引入的,允许你使用除文本提示之外的其他输入条件来引导图像生成。通过将特定的视觉引导(例如边缘图、深度图或人体骨架)输入到网络中,从业者可以精确控制生成输出的构图、姿势或结构,从而填补了自然语言描述与精确视觉执行之间的鸿沟。
Link to this section架构的工作原理#
ControlNet 的核心创新在于它能够在学习新的调节任务时,保留基础 基础模型 的庞大预训练知识。它通过锁定原始 神经网络 块的参数并创建一个可训练的克隆来实现这一点。该克隆使用特殊的“零卷积”层连接到被锁定的模型上,这些层初始化时权重为零,以确保在 微调 的早期阶段不会引入噪声。你可以在 arXiv 上的 ControlNet 原始研究论文 中阅读有关其数学和结构理论的更多信息。
这种独特的结构允许开发者在消费级硬件上训练稳健的调节控制,使其相比从零开始训练大型 深度学习 模型更易于实现。
Link to this sectionControlNet 与扩散模型及 LoRA 的比较#
在讨论生成式 人工智能 时,区分 ControlNet 与相关概念会很有帮助:
- 扩散模型:这些是底层的基础引擎,通过迭代去除噪声来生成图像。它们几乎完全依赖于文本提示。
- LoRA (低秩自适应):LoRA 是一种快速教会模型学习新 风格 或 主题(例如特定角色或艺术风格)的方法。相比之下,ControlNet 则用于决定图像的精确 空间排列。
Link to this section实际应用#
ControlNet 极大地扩展了 计算机视觉 和生成式 AI 在专业工作流程中的用途。
- 建筑概念渲染:建筑师和室内设计师使用 ControlNet 将基础的黑白 计算机辅助设计 (CAD) 蓝图 或手绘草图转换为建筑物和房间的照片级真实感渲染图。
- 游戏开发中的角色姿势:动画师利用人体 姿态估计 模型从参考视频中提取骨架结构。这些骨架被输入到 ControlNet 中,用于为视频游戏资产生成保持精确姿势的一致性风格化角色精灵,从而显著减少手动绘图的时间。
Link to this section为 ControlNet 准备条件#
要有效利用 ControlNet,你必须首先从源图像中提取所需的空间条件。例如,你可以使用最新的最先进视觉模型 Ultralytics YOLO26 来提取人体姿势骨架。该骨架随后被保存并用作启用 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")无论你是使用标准的 OpenCV 函数 准备 Canny 边缘,还是提取高级分割掩码,准备高质量的输入都是必不可少的。对于训练自定义 ControlNet 条件所需的基于云的数据集管理和 数据标注,像 Ultralytics Platform 这样的平台为现代 AI 团队提供了无缝的端到端环境。






