ComfyUI-NegiTools 插件完全使用指南
1. 插件简介
ComfyUI-NegiTools(https://github.com/natto-maki/ComfyUI-NegiTools)是一个功能丰富的ComfyUI插件包,就像是给你的ComfyUI工具箱里增加了一套全新的工具。这个插件包含了多种实用功能,包括:
- OpenAI图像生成:直接在ComfyUI里使用DALL-E3生成图片,就像有了一个专业画师助手
- 智能翻译:把任何语言的文字翻译成英文,让你写中文提示词也能生成好图
- 噪声生成:制作各种类型的噪声图像,就像给图片加上不同的纹理效果
- 字符串处理:用代码来处理文字,就像有了一个文字处理机器人
- 种子值管理:更好地控制图片生成的随机性,让你能重现喜欢的效果
- 图像信息获取:查看图片的基本信息,就像是图片的身份证
- 图像合成:把两张图片合在一起,就像拼贴画一样
- 人体关键点检测:找出图片中人体的关键位置,就像给人体画骨架图
2. 如何安装
方法一:手动安装(推荐新手)
- 打开你的ComfyUI文件夹
- 找到
custom_nodes文件夹(如果没有就新建一个) - 在
custom_nodes文件夹里打开命令行/终端 - 输入命令:
git clone https://github.com/natto-maki/ComfyUI-NegiTools.git - 等待下载完成
- 进入下载的文件夹,运行:
pip install -r requirements.txt - 重启ComfyUI
方法二:ComfyUI管理器安装
- 打开ComfyUI
- 点击"Manager"按钮
- 搜索"NegiTools"
- 点击"Install"
- 重启ComfyUI
重要提醒:如果你要使用OpenAI相关功能,需要设置OpenAI的密钥。在启动ComfyUI之前,设置环境变量:OPENAI_API_KEY=sk-你的密钥
3. 节点详细解析
3.1 OpenAI DALL-E3 节点
这个节点就像是一个神奇的画师,你告诉它想要什么图片,它就能帮你画出来。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 提示词 | prompt | 文本 | 详细描述 | 告诉AI你想要什么样的图片,就像给画师下订单 | 用于生成图像的文本描述 | 输入"一只可爱的小猫坐在花园里",AI就会画出这样的图片 |
| 分辨率 | resolution | 固定选项 | 1024x1024 | 选择图片的大小,就像选择画纸的尺寸 | 图像输出的像素尺寸 | 选择1024x1024适合大多数用途,1792x1024适合横版图片 |
| 伪随机种子 | dummy_seed | 整数 | 任意数字 | 控制图片是否变化的开关,就像骰子的点数 | 控制缓存和重新生成的参数 | 相同种子+相同提示词=相同图片,改变种子=新图片 |
3.2 噪声生成器节点
这个节点就像是一个纹理制造机,能制作各种不同类型的噪声图案,就像给图片添加不同的底纹。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 输入图像 | image_opt | 图像 | 可选 | 要添加噪声的底图,就像选择画布 | 可选的输入图像 | 不连接=黑色背景,连接图像=在图像上加噪声 |
| 遮罩 | mask_opt | 遮罩 | 可选 | 决定哪些地方加噪声,就像用模板喷漆 | 指定添加噪声区域的遮罩 | 不连接=全图加噪声,连接遮罩=只在白色区域加噪声 |
| 宽度 | width | 整数 | 512 | 生成图片的宽度,就像设置画布宽度 | 图像宽度像素值 | 512适合测试,1024适合高质量输出 |
| 高度 | height | 整数 | 512 | 生成图片的高度,就像设置画布高度 | 图像高度像素值 | 512适合测试,1024适合高质量输出 |
| 噪声类型 | method | 选择项 | uniform_gray | 选择噪声的样式,就像选择纹理类型 | 噪声生成算法类型 | uniform_gray=简单灰色噪声,perlin=云朵状噪声 |
| 随机种子 | seed | 整数 | 任意 | 控制噪声图案的随机性,就像骰子点数 | 随机数生成器种子 | 相同种子=相同噪声图案,不同种子=不同图案 |
| 噪声强度 | scale | 小数 | 1.0 | 控制噪声的强弱,就像调节音量大小 | 噪声的幅度范围 | 0.5=轻微噪声,2.0=强烈噪声 |
| 噪声偏移 | bias | 小数 | 0.0 | 调节噪声的亮度基准,就像调节屏幕亮度 | 噪声的偏移值 | 0.0=中性,0.5=偏亮,-0.5=偏暗 |
| 柏林噪声频率 | perlin_freq_log2 | 整数 | 4 | 控制柏林噪声的细节程度,就像调节纹理粗细 | 柏林噪声的基础频率 | 2=粗糙纹理,6=细腻纹理 |
| 柏林噪声层数 | perlin_octaves | 整数 | 4 | 控制柏林噪声的层次感,就像纹理的复杂程度 | 分形噪声的倍频层数 | 1=简单纹理,8=复杂纹理 |
| 柏林噪声衰减 | perlin_persistence | 小数 | 0.5 | 控制不同层次的混合比例,就像调节纹理的对比度 | 高频成分的衰减系数 | 0.2=平滑过渡,0.8=对比强烈 |
3.3 深度估计节点(已弃用)
这个节点原本是用来分析图片的深度信息的,就像给图片加上3D效果。但是作者已经不再维护这个功能了,建议使用其他替代方案。
3.4 立体图像生成节点
这个节点能把普通图片转换成立体效果,就像制作3D电影一样。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 输入图像 | image | 图像 | 必需 | 要转换成立体效果的图片,就像选择要加工的照片 | 用于生成立体图像的源图像 | 连接任何图片,节点会自动生成左右眼视图 |
3.5 OpenAI翻译节点
这个节点就像是一个专业翻译官,能把任何语言的文字翻译成英文,特别适合中文用户写提示词。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 输入文本 | text | 文本 | 任意语言 | 要翻译的文字,就像给翻译官看的原文 | 需要翻译的源语言文本 | 输入"一个美丽的女孩",输出"a beautiful girl" |
3.6 字符串处理节点
这个节点就像是一个可编程的文字处理机器人,你可以用简单的代码来处理文字。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| Python代码 | python_code | 代码文本 | 简单脚本 | 用来处理文字的小程序,就像给机器人写指令 | 可执行的Python代码脚本 | 写return "hello " + a,如果a是"world",就会输出"hello world" |
| 输入A | a | 文本 | 可选 | 第一个输入的文字,就像给机器人的第一个材料 | 第一个字符串参数 | 可以是任何文字,在代码里用变量a来使用 |
| 输入B | b | 文本 | 可选 | 第二个输入的文字,就像给机器人的第二个材料 | 第二个字符串参数 | 可以是任何文字,在代码里用变量b来使用 |
| 输入C | c | 文本 | 可选 | 第三个输入的文字,就像给机器人的第三个材料 | 第三个字符串参数 | 可以是任何文字,在代码里用变量c来使用 |
3.7 种子生成器节点
这个节点就像是一个智能骰子,帮你更好地控制图片生成的随机性。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 模式 | mode | 选择项 | random | 控制种子的生成方式,就像选择骰子的投掷方式 | 种子生成模式 | random=每次都不同,keep_previous=保持上次的结果 |
3.8 图像信息获取节点
这个节点就像是图片的身份证查看器,能告诉你图片的基本信息。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 输入图像 | image | 图像 | 必需 | 要查看信息的图片,就像要检查的身份证 | 需要获取属性的图像 | 连接任何图片,节点会输出宽度和高度信息 |
3.9 潜在空间信息获取节点
这个节点类似于图像信息获取,但是专门用于查看潜在空间图像的信息。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 潜在输入 | latent | 潜在空间 | 必需 | 要查看信息的潜在空间数据,就像检查半成品的规格 | 需要获取属性的潜在空间张量 | 连接来自编码器的潜在空间,查看其尺寸信息 |
3.10 图像合成节点
这个节点就像是一个拼贴画工具,能把两张图片合在一起。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 背景图像 | image_B | 图像 | 必需 | 作为底层的图片,就像拼贴画的底纸 | 合成的背景图像 | 连接一张风景图作为背景 |
| 前景图像 | image_F | 图像 | 必需 | 要放在上层的图片,就像要贴上去的贴纸 | 合成的前景图像 | 连接一张人物图作为前景 |
| 遮罩 | mask_opt | 遮罩 | 可选 | 控制合成区域的模板,就像剪纸的模板 | 可选的合成遮罩 | 不连接=全图合成,连接遮罩=只在指定区域合成 |
| 合成方式 | method | 选择项 | normal | 选择图片合成的方法,就像选择胶水的类型 | 图像合成算法 | normal=普通覆盖,multiply=相乘效果 |
| 透明度 | alpha | 小数 | 0.5 | 控制前景图的透明程度,就像调节贴纸的透明度 | 前景图像的不透明度 | 0.0=完全透明,1.0=完全不透明,0.5=半透明 |
3.11 OpenPose关键点检测节点
这个节点就像是一个人体骨架分析师,能找出图片中人体的关键位置。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 输入图像 | image | 图像 | 必需 | 要分析的人体图片,就像要画骨架的照片 | 需要检测关键点的图像 | 连接包含人物的图片,节点会输出关键点坐标 |
3.12 关键点转遮罩节点
这个节点能把关键点信息转换成遮罩,就像把骨架图转换成选区。
参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 关键点列表 | point_list | JSON文本 | 必需 | 关键点的坐标信息,就像骨架的各个连接点 | 关键点坐标的JSON数据 | 连接OpenPose节点的输出,生成对应的遮罩 |
| 图像尺寸 | image_size | 尺寸 | 必需 | 生成遮罩的尺寸,就像选择画布大小 | 遮罩图像的尺寸信息 | 通常与原图尺寸保持一致 |
4. 使用技巧和建议
4.1 OpenAI功能使用技巧
- 提示词优化:虽然DALL-E3很智能,但详细的描述仍然很重要。比如不要只写"猫",要写"一只橙色的小猫坐在绿色的草地上"
- 成本控制:DALL-E3按次数收费,建议先用免费工具测试想法,确定后再用DALL-E3生成最终图片
- 语言使用:可以用中文写提示词,然后用翻译节点转换成英文,这样更容易表达想法
4.2 噪声生成技巧
- 纹理制作:Perlin噪声最适合制作自然纹理,如云朵、大理石纹理
- 遮罩配合:配合遮罩可以只在特定区域添加噪声,制作更精确的效果
- 参数调试:建议先用小尺寸测试参数,满意后再用大尺寸生成
4.3 字符串处理技巧
- 安全第一:不要执行来历不明的代码,特别是从网上下载的工作流
- 功能举例:
- 随机选择:
colors = ["red", "blue", "green"]; return random.choice(colors) - 文本组合:
return f"{a} wearing {b} in {c}" - 条件处理:
return "sunny" if "sun" in a else "cloudy"
- 随机选择:
4.4 种子管理技巧
- 工作流程:先设置为随机模式生成多张图,找到满意的后改为保持模式
- 版本控制:记录好的种子值,方便后续调整其他参数时重现基础效果
5. 常见问题解答
Q1:安装后找不到节点怎么办?
A1:确保已经重启ComfyUI,如果还是找不到,检查custom_nodes文件夹中是否有ComfyUI-NegiTools文件夹,确认requirements.txt中的依赖是否都安装成功。
Q2:OpenAI相关节点报错怎么办?
A2:首先检查OPENAI_API_KEY是否正确设置,确保密钥有效且有余额。如果仍有问题,检查网络连接是否正常。
Q3:噪声生成的图像全黑怎么办?
A3:检查scale和bias参数设置,如果scale为0或者bias设置过小,可能导致生成的噪声超出显示范围。建议scale设置为1.0,bias设置为0.0开始测试。
Q4:字符串处理节点无法执行代码怎么办?
A4:确保代码语法正确,记住代码中不能使用import语句,只能使用预设的模块(random, re, numpy)。检查是否有return语句。
Q5:深度估计节点无法使用怎么办?
A5:这个节点已被官方标记为弃用,建议使用作者推荐的替代方案:https://github.com/kijai/ComfyUI-Marigold
Q6:图像合成效果不理想怎么办?
A6:调整alpha值改变透明度,尝试不同的合成方式(method参数),如果有特定需求,可以用遮罩精确控制合成区域。
6. 实用工作流示例
示例1:中文提示词转英文生成图像
- 使用"字符串处理"节点输入中文描述
- 连接"OpenAI翻译"节点转换成英文
- 连接到其他图像生成节点使用
示例2:带噪声的艺术效果
- 使用"噪声生成"节点创建纹理
- 使用"图像合成"节点与主图合成
- 调整透明度获得理想效果
示例3:人物姿势控制
- 使用"OpenPose关键点检测"分析参考图
- 使用"关键点转遮罩"生成控制遮罩
- 结合其他控制节点生成符合姿势的图像
7. 结语
ComfyUI-NegiTools是一个功能强大的插件包,特别适合需要更多创意工具的用户。虽然有些功能需要OpenAI的API密钥,但大部分功能都可以免费使用。建议新手先从简单的功能开始,如噪声生成和图像信息获取,逐步熟悉后再尝试更复杂的功能。
记住,任何工具都需要实践才能熟练掌握,多尝试不同的参数组合,你会发现更多有趣的用法!