ComfyUI-ControlnetAux 插件完整保姆级教程
1. 插件简介
GitHub原地址: https://github.com/madtunebk/ComfyUI-ControlnetAux
这个插件就像是一个超级万能的图像处理工具箱,专门为ComfyUI设计。想象一下,你有一张照片,想要提取它的轮廓、深度信息、人体姿态等等,这个插件就能帮你做到!
能给我们带来什么效果:
- 提取图片的边缘线条(就像给照片描边一样)
- 分析图片的深度信息(哪里远哪里近)
- 识别人体姿态(检测人的胳膊腿在哪里)
- 检测人脸位置
- 提取线稿风格
- 还有很多其他的图像分析功能
2. 如何安装
方法一:直接克隆安装(推荐)
- 打开你的文件管理器,找到ComfyUI的安装目录
- 进入
custom_nodes文件夹 - 在这里打开命令行工具(Windows用户可以在地址栏输入cmd)
- 输入以下命令:
git clone https://github.com/madtunebk/ComfyUI-ControlnetAux.git
方法二:安装依赖包
安装完成后,需要安装一些必要的支持包:
cd ComfyUI-ControlnetAux
pip install -r requirements.txt
如果你想使用DWPose功能(高级人体姿态检测),还需要安装额外的包:
pip install -U openmim
pip install "mmcv>=2.0.1,<2.2.0"
mim install mmengine
mim install "mmdet>3.1.0"
mim install "mmpose>1.1.0"
3. 节点逐一解析
3.1 ControlAux HED 节点(边缘检测器)
这个节点就像一个专门画边缘线的画家,能把图片中所有物体的轮廓都描出来。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 输入图像 | image | 图像文件 | 任意图像 | 你要处理的原图片 | 输入的原始图像数据 | 连接一张照片,比如人像照片 |
| 处理模式 | mode | scribble_hed/softedge_hed | softedge_hed | 选择边缘检测的风格,scribble像涂鸦,softedge像柔和的线条 | 不同的边缘检测算法模式 | 如果要清晰的线条选softedge,要粗糙的线条选scribble |
3.2 ControlAux Midas 节点(深度估计器)
这个节点就像一个测距仪,能告诉你图片里哪些地方离你近,哪些地方离你远。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 输入图像 | image | 图像文件 | 任意图像 | 你要分析深度的图片 | 输入的原始图像数据 | 连接一张风景照或人像照 |
| 处理模式 | mode | depth_midas | depth_midas | 深度分析模式,固定用这个 | Midas深度估计算法 | 直接选择depth_midas即可 |
3.3 ControlAux MLSD 节点(直线检测器)
这个节点就像一个建筑师的测量工具,专门找图片里的直线,比如房子的边缘、桌子的边等。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 输入图像 | image | 图像文件 | 建筑/室内照片 | 你要检测直线的图片 | 输入的原始图像数据 | 连接一张房间照片或建筑照片 |
| 处理模式 | mode | mlsd | mlsd | 直线检测模式 | MLSD直线段检测算法 | 用于检测建筑物、家具的直线边缘 |
3.4 ControlAux OpenPose 节点(人体姿态检测器)
这个节点就像一个人体动作分析师,能识别出图片中人的胳膊、腿、头等各个部位的位置。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 输入图像 | image | 图像文件 | 人物照片 | 包含人物的图片 | 输入的原始图像数据 | 连接一张人物动作照片 |
| 处理模式 | mode | openpose | openpose | 人体姿态检测模式 | OpenPose人体关键点检测算法 | 用于检测人体的各个关节点位置 |
3.5 ControlAux DWPose 节点(高级人体姿态检测器)
这个节点是OpenPose的升级版,检测人体姿态更加准确,就像有了一双更敏锐的眼睛。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 输入图像 | image | 图像文件 | 人物照片 | 包含人物的图片 | 输入的原始图像数据 | 连接一张人物动作照片 |
| 处理模式 | mode | dwpose | dwpose | 高级人体姿态检测模式 | DWPose高精度人体姿态估计算法 | 比OpenPose更准确,适合复杂动作 |
3.6 ControlAux PidiNet 节点(精细边缘检测器)
这个节点就像一个超级精细的描边工具,能画出比HED更加细致的边缘线条。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 输入图像 | image | 图像文件 | 任意图像 | 你要精细描边的图片 | 输入的原始图像数据 | 连接一张需要精细边缘的照片 |
| 处理模式 | mode | pidi | pidi | 精细边缘检测模式 | PidiNet像素级边缘检测算法 | 用于需要非常精细边缘的场景 |
3.7 ControlAux NormalBae 节点(法线贴图生成器)
这个节点就像一个3D建模师,能从平面图片中提取出表面的凹凸信息。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 输入图像 | image | 图像文件 | 有纹理的图像 | 你要提取表面信息的图片 | 输入的原始图像数据 | 连接一张有明显纹理的照片 |
| 处理模式 | mode | normal_bae | normal_bae | 法线贴图生成模式 | NormalBae法线估计算法 | 用于3D建模或材质制作 |
3.8 ControlAux Lineart 节点(线稿生成器)
这个节点就像一个漫画家,能把照片转换成干净的线稿风格。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 输入图像 | image | 图像文件 | 任意图像 | 你要转换成线稿的图片 | 输入的原始图像数据 | 连接一张人像或物体照片 |
| 处理模式 | mode | lineart | lineart | 线稿生成模式 | Lineart线稿提取算法 | 制作干净的黑白线稿 |
3.9 ControlAux Lineart Anime 节点(动漫线稿生成器)
这个节点专门为动漫风格设计,就像一个专业的动漫原画师。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 输入图像 | image | 图像文件 | 人物照片 | 你要转换成动漫线稿的图片 | 输入的原始图像数据 | 连接一张人物照片 |
| 处理模式 | mode | lineart_anime | lineart_anime | 动漫线稿生成模式 | 专门针对动漫风格的线稿提取算法 | 制作动漫风格的线稿 |
3.10 ControlAux Zoe 节点(超高精度深度检测器)
这个节点就像一个超级精密的测距仪,比Midas更准确。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 输入图像 | image | 图像文件 | 任意图像 | 你要精确分析深度的图片 | 输入的原始图像数据 | 连接一张风景照或复杂场景照片 |
| 处理模式 | mode | zoe | zoe | 超高精度深度检测模式 | Zoe深度超分辨率算法 | 需要极高精度深度信息时使用 |
3.11 ControlAux SAM 节点(万能分割器)
这个节点就像一把智能剪刀,能把图片中的不同物体分割开来。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 输入图像 | image | 图像文件 | 包含多个物体的图像 | 你要分割的图片 | 输入的原始图像数据 | 连接一张包含多个物体的照片 |
| 处理模式 | mode | sam | sam | 智能分割模式 | SAM图像分割算法 | 用于精确分割图像中的不同物体 |
3.12 ControlAux Leres 节点(高质量深度估计器)
这个节点专门用于生成高质量的深度图,就像一个专业摄影师的景深控制器。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 输入图像 | image | 图像文件 | 风景或人像照片 | 你要生成高质量深度图的图片 | 输入的原始图像数据 | 连接一张有明显前后景的照片 |
| 处理模式 | mode | leres | leres | 高质量深度估计模式 | Leres深度估计算法 | 用于制作高质量的深度效果 |
3.13 ControlAux Canny 节点(经典边缘检测器)
这个节点是最经典的边缘检测工具,就像一支精准的铅笔。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 输入图像 | image | 图像文件 | 任意图像 | 你要检测边缘的图片 | 输入的原始图像数据 | 连接任意需要边缘检测的图片 |
| 处理模式 | mode | canny | canny | 经典边缘检测模式 | Canny边缘检测算法 | 最常用的边缘检测,效果稳定 |
3.14 ControlAux Content Shuffle 节点(内容重排器)
这个节点就像一个拼图游戏,能把图片的内容重新排列。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 输入图像 | image | 图像文件 | 任意图像 | 你要重新排列内容的图片 | 输入的原始图像数据 | 连接一张需要内容重排的图片 |
| 处理模式 | mode | content_shuffle | content_shuffle | 内容重排模式 | Content Shuffle内容重排算法 | 用于创意性的图像重新排列 |
3.15 ControlAux Face Detector 节点(人脸检测器)
这个节点就像一个专业的人脸识别器,能精确找到图片中的人脸位置。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 输入图像 | image | 图像文件 | 包含人脸的图像 | 你要检测人脸的图片 | 输入的原始图像数据 | 连接一张人物照片 |
| 处理模式 | mode | face_detector | face_detector | 人脸检测模式 | Mediapipe人脸检测算法 | 用于精确定位人脸位置 |
4. 使用技巧和建议
4.1 图像尺寸建议
- 最佳工作分辨率: 512x512、512x768、768x512、768x768、768x1024、1024x768、1024x1024
- 为什么这些尺寸最好: 就像衣服有标准尺码一样,这些尺寸是插件"最合身"的,处理效果最好
- 其他尺寸能用吗: 可以用,但效果可能不如标准尺寸
4.2 节点选择建议
- 想要清晰边缘: 用Canny或HED
- 想要动漫风格: 用Lineart Anime
- 想要人体姿态: 新手用OpenPose,进阶用DWPose
- 想要深度信息: 一般用Midas,要求高用Zoe
- 想要分割物体: 用SAM
4.3 连接顺序
- 先连接你的原图到节点的"image"输入
- 选择合适的处理模式
- 把处理后的结果连接到ControlNet节点
- 最后连接到你的生成流程
5. 常见问题解答
Q1: 为什么我的图片处理后是黑的?
A: 可能是图片格式不支持或者图片太大。试试把图片转换成JPG格式,或者缩小到建议的尺寸。
Q2: 处理速度很慢怎么办?
A:
- 检查你的电脑显卡内存是否足够
- 尝试减小图片尺寸
- 关闭其他占用显卡的程序
Q3: 不同节点的区别是什么?
A:
- 边缘检测类(Canny、HED、PidiNet): 就像不同粗细的画笔,画出的线条风格不同
- 深度检测类(Midas、Zoe、Leres): 就像不同精度的测距仪,准确度不同
- 姿态检测类(OpenPose、DWPose): 就像不同水平的教练,识别准确度不同
Q4: 怎么知道应该用哪个节点?
A:
- 看你的最终目标:要线稿就用线稿类,要深度就用深度类
- 看你的原图:人物照片适合姿态检测,风景照片适合深度检测
- 看你的质量要求:要求高就用高级版本(如DWPose而不是OpenPose)
Q5: 为什么安装了插件但找不到节点?
A:
- 检查是否正确安装了依赖包
- 重启ComfyUI
- 检查custom_nodes文件夹下是否有ComfyUI-ControlnetAux文件夹
6. 总结
这个插件就像是给ComfyUI装了一双火眼金睛,能从各种角度分析你的图片。每个节点都有自己的特长,就像不同的工具一样。新手建议从Canny边缘检测和OpenPose姿态检测开始练习,熟练后再尝试其他高级功能。
记住,好的工具需要多练习才能用得好,不要着急,一步一步来,很快你就能成为ComfyUI的高手!