ComfyUI 中如何使用 Depth ControlNet SD1.5 模型 - 完整指南
SD1.5 Depth ControlNet 简介
Depth ControlNet 是一个专门用于控制图像深度和空间结构的 ControlNet 模型。它通过分析输入图像的深度信息,帮助 AI 在生成新图像时保持正确的空间关系和透视效果。这个模型在室内设计、建筑设计和场景重构等领域特别有用,因为它能够准确理解和保持空间的深度信息。
这篇教程专注于 SD1.5 模型的 Depth ControlNet 模型的使用方法和技巧,其它版本和类型的模型的 ControlNet 教程我们会在后续继续补充。
Depth ControlNet 主要特点
- 空间控制: 精确控制图像的空间深度和透视关系
- 场景重构: 能够保持原始场景的空间布局,同时改变风格和内容
- 室内设计: 特别适合室内场景的重新设计和风格转换
- 建筑可视化: 对建筑和室内设计的 3D 效果展示特别有效
- 产品展示: 适合创建具有深度感的产品展示效果
- 场景规划: 帮助进行景观设计和城市规划的可视化
SD1.5 Depth ControlNet工作流准备工作
1. 安装必要插件
由于 ComfyUI Core 并不带有对应的 Depth 图像预处理器,所以需要预先下载对应的预处理器插件 本教程需要使用 ComfyUI ControlNet Auxiliary Preprocessors 插件来生成深度图。
这里比较推荐使用 ComfyUI Manager 来进行安装 插件安装的教程可以参考 ComfyUI 插件安装教程 这个部分说得比较详细了
最新版本 ComfyUI Desktop 已经预装 ComfyUI Manager 插件了
方式一:使用 ComfyUI Manager(推荐)
- 先安装 ComfyUI Manager
- 在 Manager 中搜索并安装 “ComfyUI ControlNet Auxiliary Preprocessors”
方式二:通过 git 安装必要插件
- 打开命令行,使用 cd 命令进入 ComfyUI 的 custom_nodes 目录
- 执行以下命令:
git clone https://github.com/Fannovel16/comfyui_controlnet_aux
cd comfyui_controlnet_aux
pip install -r requirements.txt
注意:安装完插件后需要重启 ComfyUI
方式三:手动安装(不推荐)
1.访问 https://github.com/Fannovel16/comfyui_controlnet_aux
2. 下载对应的代码仓库的代码的 ZIP 包含
3. 复制解压后的文件到 ComfyUI/custom_nodes/
文件夹下
2.1 下载工作流所需模型
首先需要安装以下模型:
模型类型 | 模型文件 | 下载地址 |
---|---|---|
SD1.5 基础模型 | dreamshaper_8.safetensors | Civitai |
Depth ControlNet 模型 | control_v11f1p_sd15_depth.pth | Hugging Face |
VAE 模型(可选) | vae-ft-mse-840000-ema-pruned.safetensors | Hugging Face |
SD1.5 版本的模型可以使用你自己电脑上的模型,只是作者我在这篇教程中我使用的是 dreamshaper_8 这个模型作为示例,如果是室内设计等场���,你应该选择专门为室内或建筑设计优化训练过的模型
2.2 模型存放位置
请按照以下结构放置模型文件:
📁ComfyUI
├── 📁models
│ ├── 📁checkpoints
│ │ └── 📁SD1.5
│ │ └── dreamshaper_8.safetensors
│ ├── 📁controlnet
│ │ └── 📁SD1.5
│ │ └── control_v11f1p_sd15_depth.pth
│ └── 📁vae
│ └── vae-ft-mse-840000-ema-pruned.safetensors
3. 工作流文件
室内设计是 Depth ControlNet 最常见的应用场景之一。通过深度信息的控制,可以保持原有空间布局的同时,完全改变室内的风格和氛围。
以下是一个将传统客厅转换为赛博朋克风格的示例:
SD1.5 Depth ControlNet 工作流说明
主要组件
本工作流使用了以下关键节点:
- LoadImage: 加载输入图像
- Zoe-DepthMapPreprocessor: 生成深度图,这是由 ComfyUI ControlNet Auxiliary Preprocessors 插件提供的节点
- resolution: 控制深度图的分辨率,这个参数会影响深度图的精细程度:
- 较大分辨率(如 768, 1024):
- 优点:能够捕捉多细节,对于复杂的室内场景和建筑效果更好
- 缺点:处理速度较慢,占用更多显存
- 适用场景:精细的室内设计、建筑细节重现
- 较小分辨率(如 384, 512):
- 优点:处理速度快,显存占用少
- 缺点:可能丢失一些细节信息
- 适用场景:快速预览、简单场景重构
- 建议设置:
- 一般场景:512 是较好的平衡点
- 细节要求高:768 或更高
- 快速测试:384
- 较大分辨率(如 768, 1024):
- 使用 Zoe 深度估计算法,能够生成高质量的深度图
- 特别适合室内场景和建筑场景
- 可以通过 PreviewImage 节点预览生成的深度图
- resolution: 控制深度图的分辨率,这个参数会影响深度图的精细程度:
提示:建议先用较低的 resolution 进行测试和调整,确定其他参数后再提高 resolution 进行最终生成
提示:Zoe-DepthMapPreprocessor 是目前最适合建筑和室内场景的深度图生成器之一,它能够很好地处理复杂的空间结构和细节
Depth ControlNet 参数设计说明及建议
KSampler 参数设置
-
steps (采样步数)
- 作用:控制生成图像的精细程度和质量
- 建议范围:25-30步
- 参数说明:
- 较高步数(30+):生成更精细的细节,但耗时更长
- 较低步数(20-):生成速度快,但可能丢失细节
- 建议不低于25步,以确保空间结构的准确性
-
cfg (提示词相关度)
- 作用:控制生成图像与提示词的匹配程度
- 建议范围:6-8
- 参数说明:
- 较高数值(8+):更严格遵循提示词,但可能影响创意性
- 较低数值(5-):更有创意,但可能偏离原始意图
- 室内设计场景建议使用6-7,以平衡准确性和创意性
-
sampler_name (采样器)
- 建议选择:
- euler:速度快,适合快速预览
- dpmpp_2m:质量好,适合最终生成
- 不同场景选择:
- 室内设计:优先使用 dpmpp_2m
- 快速测试:使用 euler
- 建议选择:
-
scheduler (调度器)
- 建议使用:karras
- 原因:对空间结构的保持效果最好
ControlNet 控制参数
-
strength (控制强度)
- 作用:决定深度信息对生成结果的影响程度
- 建议范围:0.8-1.0
- 场景建议:
- 室内设计:0.9-1.0
- 建筑外观:0.8-0.9
- 简单场景:0.7-0.8
-
start_percent 和 end_percent
- 作用:控制深度引导在生成过程中的作用范围
- 默认设置:
- start_percent: 0 (从开始就应用控制)
- end_percent: 1 (全程保持控制)
- 特殊情况:
- 如果想在生成后期允许更多创意变化,可以将 end_percent 设置为 0.8-0.9
- 如果想保持严格的空间结构,建议保持默认值
提示:这些参数可以组合使用,例如在进行室内设计时,可以使用较高的 strength (0.9+)配合较高的 steps (30+)来获得最佳效果
工作流节点说明
本工作流的主要节点连接说明:
-
输入部分:
- LoadImage → Zoe-DepthMapPreprocessor → PreviewImage (用于预览深度图)
- LoadImage → Zoe-DepthMapPreprocessor → ControlNetApplyAdvanced
-
模型加载部分:
- CheckpointLoaderSimple (加载基础模型)
- ControlNetLoader (加载 Depth ControlNet)
-
提示词处理部分:
- CLIPTextEncode (处理正面提示词)
- CLIPTextEncode (处理负面提示词)
-
生成控制部分:
- KSampler (控制生成过程)
- VAEDecode (将潜空间图像转换为最终图像)
Depth ControlNet 使用技巧与最佳实践
-
深度图质量控制
- 使用高质量的输入图像
- 确保图像有清晰的空间层次
- 避免过于复杂的场景
- 注意光线对深度图的影响
-
提示词编写
- 详细描述空间关系
- 包含材质和光照信息
- 明确指出重要的深度元素
- 使用专业术语提升生成质量
- 推荐的关键词:
- 空间词: depth, perspective, spatial layout, composition
- 质量词: professional, high quality, detailed, realistic
- 风格词: modern, minimalist, futuristic (根据需求选择)
-
常见问题解决
- 空间感不足:增加 strength 值
- 细节丢失:适当降低 cfg 值
- 结构变形:增加 steps 值
- 深度不准:调整 resolution 值
- 风格不对:优化提示词描述
常见问题(FAQ)
-
为什么生成的图像空间感不强?
- 检查深度图是否清晰
- 确认 strength 值是否足够高
- 考虑增加 steps 值
-
如何提高生成图像的质量?
- 使用更高的 resolution
- 选择合适的采样器
- 优化提示词描述
-
生成速度太慢怎么办?
- 降低 resolution
- 使用更快的采样器
- 减少采样步数
-
如何保持原始图像的布局?
- 增加 strength 值
- 保持 end_percent 为 1
- 使用更详细的空间描述