没有 controlnet 模型
时间: 2025-07-25 19:10:28 浏览: 10
ControlNet 是一个用于增强稳定扩散模型(如 Stable Diffusion)控制能力的强大工具,特别是在图像生成中提供了更高的可控性。以下是 ControlNet 模型的下载和使用指南:
### 下载指南
ControlNet 的模型文件可以通过 Hugging Face 平台下载,其路径为:
https://huggingface.co/lllyasviel/ControlNet-v1-1/tree/main
替换文件名为具体模型名即可获取对应的模型文件 [^3]。
模型文件通常是 `.pth` 格式,下载完成后,需要将这些文件放入指定的目录中。例如,在使用 `sd-webui-controlnet` 插件时,模型文件应放置在以下路径:
`/Stable-Diffusion-WEBUI/extensions/sd-webui-controlnet/models`
### 安装与配置
1. **安装插件**:
在 WebUI 的扩展界面中,点击 `Available` 选项卡,搜索 `sd-webui-controlnet`,然后点击安装。安装完成后,重新加载界面以确保插件生效 [^2]。
2. **加载模型**:
安装完成后,在 `txt2img` 和 `img2img` 界面下可以看到 ControlNet 的操作界面。从 ControlNet v1.1.218 开始,界面增加了 `Control Type` 选项,无需手动选择预处理器模型 [^2]。
3. **选择模型与预处理器**:
根据需求选择合适的模型和预处理器。例如,`canny`、`depth`、`tile` 是常用的预处理器,适用于不同的应用场景 [^2]。
### 使用建议
在生成图像时,需要注意以下几点:
- **参考图的选择**:
在使用 ControlNet 生成图像时,特别是生成全身图时,容易出现图像扭曲的问题。因此,建议使用中景、近景或特写图片作为参考图,以获得更好的生成效果 [^4]。
- **模型选择**:
ControlNet 1.1 版本新增了多种模型和预处理器,每种模型对应不同的应用场景。例如,`canny` 适用于边缘检测,`depth` 适用于深度图生成,`tile` 适用于纹理生成等 [^1]。
- **逐步完善**:
对于初学者,建议从简单的模型和预处理器开始,例如 `canny` 和 `depth`,在熟悉基本操作后再尝试更复杂的模型 [^2]。
### 示例代码
以下是一个简单的 Python 示例代码,用于加载 ControlNet 模型并进行图像生成(假设已经配置好 Stable Diffusion 环境):
```python
from diffusers import StableDiffusionPipeline, ControlNetModel
import torch
# 加载 ControlNet 模型
controlnet = ControlNetModel.from_pretrained("lllyasviel/sd-controlnet-canny", torch_dtype=torch.float16)
# 加载 Stable Diffusion 管线
pipeline = StableDiffusionPipeline.from_pretrained("runwayml/stable-diffusion-v1-5", controlnet=controlnet, torch_dtype=torch.float16)
# 生成图像
image = pipeline(prompt="A futuristic city skyline", image="path_to_canny_image.png").images[0]
image.save("generated_image.png")
```
###
阅读全文
相关推荐



















