sd-webui-controlnet安装配置完全指南:兼容各种操作系统和硬件环境
简介
sd-webui-controlnet是Stable Diffusion WebUI的一个扩展,它允许Web UI将ControlNet添加到原始的Stable Diffusion模型中以生成图像。该扩展为AUTOMATIC1111的Stable Diffusion web UI设计,实现了基于注入方式的SD控制。
安装前准备
在开始安装sd-webui-controlnet之前,请确保您已经安装了Stable Diffusion WebUI。如果尚未安装,请先按照官方指南进行安装。
系统要求
- Windows系统:推荐使用Windows 10或更高版本,配备NVIDIA显卡(Ampere架构及以上),至少4GB显存,并启用
--xformers选项和UI中的"Low VRAM"模式,可支持最高768x832分辨率的生成。 - MacOS系统:已在pytorch nightly版本上测试通过,使用mps和普通pytorch时,可能需要使用
--no-half启动WebUI。
硬件要求
- GPU:NVIDIA显卡(推荐Ampere架构及以上),至少4GB显存
- CPU:多核处理器,推荐4核及以上
- 内存:至少8GB RAM
- 存储空间:至少10GB可用空间(用于安装和模型存储)
安装步骤
通过WebUI扩展安装
- 打开"Extensions"选项卡。
- 在该选项卡中打开"Install from URL"选项卡。
- 在"URL for extension's git repository"中输入
https://gitcode.com/gh_mirrors/sd/sd-webui-controlnet。 - 点击"Install"按钮。
- 等待5秒钟,您将看到消息"Installed into stable-diffusion-webui\extensions\sd-webui-controlnet. Use Installed tab to restart"。
- 转到"Installed"选项卡,点击"Check for updates",然后点击"Apply and restart UI"。(下次您也可以使用这些按钮来更新ControlNet。)
- 完全重新启动A1111 webui,包括您的终端。(如果您不知道什么是"终端",可以重启计算机以达到相同的效果。)
- 下载模型(见下文)。
- 将模型放入正确的文件夹后,您可能需要刷新才能看到模型。刷新按钮位于"Model"下拉菜单的右侧。
手动安装
如果您无法通过WebUI扩展安装方法进行安装,可以尝试手动安装:
-
克隆仓库:
git clone https://gitcode.com/gh_mirrors/sd/sd-webui-controlnet.git extensions/sd-webui-controlnet -
安装依赖:
cd extensions/sd-webui-controlnet pip install -r requirements.txt -
重启Stable Diffusion WebUI。
依赖安装
sd-webui-controlnet需要安装一些额外的依赖包。这些依赖会在安装过程中自动安装,但您也可以手动安装以确保所有依赖都正确安装。
主要依赖
主要依赖项在requirements.txt文件中列出,包括:
- fvcore
- mediapipe
- opencv-python>=4.8.0
- svglib
- addict
- yapf
- albumentations==1.4.3
- matplotlib
- facexlib
- timm<=0.9.5
- pydantic<=1.10.17
安装脚本
安装过程由install.py脚本自动化处理,该脚本会根据系统环境安装适当的依赖项,包括onnxruntime或onnxruntime-gpu(基于CUDA的可用性)。
模型下载与配置
模型下载
您可以在Model download页面找到所有下载链接。
模型存放
下载完成后,将模型文件放入正确的文件夹中。默认情况下,模型应放在以下目录:
stable-diffusion-webui/extensions/sd-webui-controlnet/models
您可以在models/put_controlnet_models_here.txt文件中找到有关模型存放位置的说明。
模型刷新
将模型放入正确的文件夹后,您可能需要刷新才能在WebUI中看到模型。刷新按钮位于"Model"下拉菜单的右侧。
多操作系统配置
Windows系统配置
Windows系统的安装步骤与上述通用安装步骤相同。对于低显存用户,可以在启动命令中添加--xformers选项,并在UI中勾选"Low VRAM"模式。
MacOS系统配置
在MacOS上安装sd-webui-controlnet需要一些额外的步骤:
-
确保您使用的是pytorch nightly版本:
pip3 install --pre torch torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/cpu -
使用以下命令启动WebUI:
./webui.sh --no-half
命令行参数
sd-webui-controlnet为webui添加了以下命令行参数:
--controlnet-dir <path to directory with controlnet models> 添加controlnet模型目录
--controlnet-annotator-models-path <path to directory with annotator model directories> 设置注释器模型目录
--no-half-controlnet 以全精度加载controlnet模型
--controlnet-preprocessor-cache-size controlnet预处理器结果的缓存大小
--controlnet-loglevel controlnet扩展的日志级别
--controlnet-tracemalloc 启用malloc内存跟踪
常见问题解决
安装问题
-
无法安装依赖项:尝试手动安装requirements.txt中的依赖项,或检查您的Python环境是否正确配置。
-
模型不显示:确保模型文件放在正确的目录中,并点击"Model"下拉菜单右侧的刷新按钮。
运行问题
-
显存不足:尝试启用
--xformers选项和UI中的"Low VRAM"模式,或降低生成图像的分辨率。 -
生成结果异常:检查您的模型是否正确安装,或尝试使用默认设置作为参考。
使用示例
基础使用
- 在WebUI中选择"txt2img"或"img2img"选项卡。
- 在"ControlNet"部分,勾选"Enable"复选框。
- 选择一个预处理器和对应的模型。
- 上传或绘制控制图像。
- 设置其他参数(提示词、步数、采样器等)。
- 点击"Generate"按钮开始生成。
多ControlNet使用
sd-webui-controlnet支持多ControlNet输入。要启用此选项,请在设置中更改"Multi ControlNet: Max models amount (requires restart)"。注意,您需要重新启动WebUI才能使更改生效。
THE 0TH POSITION OF THE ORIGINAL IMAGE
控制模式
ControlNet 1.1引入了多种控制模式,可以控制提示词和ControlNet的重要性:
- Balanced:ControlNet在CFG scale的两侧都起作用,与ControlNet 1.0中关闭"Guess Mode"相同
- My prompt is more important:ControlNet在CFG scale的两侧都起作用,但SD U-Net注入逐渐减少
- ControlNet is more important:ControlNet只在CFG scale的条件侧起作用
THE 1TH POSITION OF THE ORIGINAL IMAGE
示例作品
以下是使用sd-webui-controlnet生成的一些示例作品:
深度+边缘检测+软边缘检测
| 输入(depth+canny+hed) | "Balanced" | "My prompt is more important" | "ControlNet is more important" |
|---|---|---|---|
![]() | ![]() | ![]() | ![]() |
参考图像控制
使用reference-only预处理器,可以直接使用图像作为参考来引导生成:
多种控制方式对比
| 源图像 | 输入 | 输出 |
|---|---|---|
| (无预处理器) | ![]() | ![]() |
| (无预处理器) | ![]() | ![]() |
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
总结
通过本指南,您应该已经成功安装并配置了sd-webui-controlnet扩展。现在,您可以开始探索ControlNet为Stable Diffusion带来的强大控制能力,创造出更加精美的图像作品。
如果您在使用过程中遇到任何问题,可以查阅项目的README.md文件或访问项目的GitHub页面寻求帮助。祝您使用愉快!
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
























