ComfyUI FitSize 插件完整保姆级教程
1. 插件简介
ComfyUI FitSize 插件(原地址:https://github.com/bronkula/comfyui-fitsize)是一个专门用来调整图片大小的超实用工具包。
想象一下,你有一堆从各种地方复制来的图片,有的是截图,有的是从网上保存的,大小五花八门。这个插件就像是一个智能的相框师傅,不管你给它什么尺寸的图片,它都能帮你按照你想要的最大尺寸来调整,而且还能保持图片不变形。
这个插件能给你带来什么好处?
- 自动把各种奇形怪状的图片调整到合适的尺寸
- 保持图片的宽高比例不变形
- 自动调整到8的倍数(这样AI画图工具会更喜欢)
- 可以缩小图片,也可以放大图片
- 直接集成到你的AI画图工作流程中
2. 如何安装
安装很简单,就像在电脑上安装软件一样:
- 打开你的ComfyUI安装目录
- 找到
custom_nodes文件夹 - 在这个文件夹里打开命令行窗口
- 输入以下命令:
git clone https://github.com/bronkula/comfyui-fitsize.git
- 重启ComfyUI就可以使用了
3. 节点逐一解析
3.1 FS: Fit Size From Int(基础尺寸计算器)
这个节点就像一个数学计算器,你告诉它原始的宽度、高度和你想要的最大尺寸,它就会帮你算出调整后的尺寸。
3.2 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 宽度 | width | 整数 | 512-1024 | 告诉它原始图片有多宽 | 输入图像的宽度像素值 | 比如你的图片是800像素宽,就输入800 |
| 高度 | height | 整数 | 512-1024 | 告诉它原始图片有多高 | 输入图像的高度像素值 | 比如你的图片是600像素高,就输入600 |
| 最大尺寸 | max_size | 整数 | 512-1024 | 你希望调整后最大不超过多少 | 输出图像的最大边长限制 | 设置为512,意思是宽和高都不能超过512 |
| 是否放大 | upscale | 真/假 | 假 | 小图片要不要放大到最大尺寸 | 是否允许上采样小于目标尺寸的图像 | 如果原图很小,设置为真就会放大它 |
3.3 FS: Fit Size From Image(智能图片尺寸调整器)
这个节点更聪明一点,你直接把图片输入进去,它会自动读取图片的宽高,然后帮你调整。
3.4 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 图片 | image | 图片文件 | - | 你要调整的图片 | 输入的图像数据 | 直接连接其他节点的图片输出 |
| 最大尺寸 | max_size | 整数 | 512-1024 | 你希望调整后最大不超过多少 | 输出图像的最大边长限制 | 设置为768,图片最大边不会超过768 |
| 是否放大 | upscale | 真/假 | 假 | 小图片要不要放大到最大尺寸 | 是否允许上采样小于目标尺寸的图像 | 原图200x200,设置真会放大到768x768 |
3.5 FS: Load Image And Resize To Fit(一站式图片加载和调整)
这是最厉害的节点,就像一个全能助手,不仅能调整尺寸,还能直接处理图片并且输出给AI用的特殊格式。
3.6 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| VAE编码器 | vae | VAE模型 | - | 把图片转换成AI能理解的格式的工具 | 变分自编码器模型 | 连接VAE加载器节点的输出 |
| 图片 | image | 图片文件 | - | 你要处理的图片 | 输入的图像数据 | 可以直接粘贴图片或连接其他节点 |
| 最大尺寸 | max_size | 整数 | 512-1024 | 你希望调整后最大不超过多少 | 输出图像的最大边长限制 | 设置为512适合大多数AI模型 |
| 重采样方法 | resampling | 下拉选择 | lanczos | 调整图片大小时用什么算法 | 图像缩放时的插值算法 | lanczos质量最好,nearest速度最快 |
| 是否放大 | upscale | 真/假 | 假 | 小图片要不要放大到最大尺寸 | 是否允许上采样小于目标尺寸的图像 | 通常设置为假,避免图片变模糊 |
| 批处理大小 | batch_size | 整数 | 1 | 一次处理多少张图片 | 批处理的数量 | 设置为4可以一次处理4张图片 |
| 添加噪声 | add_noise | 小数 | 0.0 | 给图片添加一些随机点点,让AI更好发挥 | 添加到图像的噪声强度 | 0.1会添加轻微噪声,0.5较明显 |
3.7 FS: Pick Image From Batch(批量图片选择器)
这个节点就像一个图片挑选器,从一堆图片中挑出你想要的那几张。
3.8 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 图片批次 | images | 图片组 | - | 一堆图片的合集 | 输入的图像批次数据 | 连接前面生成的多张图片 |
| 选择索引 | index | 整数 | 0 | 你要第几张图片(从0开始数) | 要选择的图像索引 | 0是第一张,1是第二张,以此类推 |
| 选择数量 | count | 整数 | 1 | 你要选几张图片 | 要选择的图像数量 | 设置为3会选择3张连续的图片 |
3.9 FS: Pick Image From List(列表图片选择器)
这个节点处理的是多个图片组,就像从多个相册中挑选图片。
3.10 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 图片列表 | image_list | 图片组列表 | - | 多个图片组的合集 | 输入的图像列表数据 | 连接多个图片批次的输出 |
| 选择索引 | index | 整数 | 0 | 你要第几个图片组 | 要选择的列表索引 | 0是第一个组,1是第二个组 |
| 选择数量 | count | 整数 | 1 | 你要选几个图片组 | 要选择的列表数量 | 设置为2会选择2个图片组 |
3.11 FS: Crop Image Into Even Pieces(图片均匀切割器)
这个节点就像一个切蛋糕的工具,能把一张大图片切成很多小块。
3.12 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 图片 | image | 图片文件 | - | 你要切割的图片 | 输入的图像数据 | 连接要切割的图片 |
| 行数 | rows | 整数 | 2 | 要切成几行 | 垂直方向的切割数量 | 设置为2会从上到下切成2行 |
| 列数 | cols | 整数 | 2 | 要切成几列 | 水平方向的切割数量 | 设置为2会从左到右切成2列 |
| 重叠像素 | overlap | 整数 | 0 | 切割时每块之间要重叠多少像素 | 相邻区域的重叠像素数 | 设置为10,相邻块会有10像素重叠 |
3.13 FS: Image Region To Mask(图片区域遮罩生成器)
这个节点能从图片的某个区域生成遮罩,就像在图片上贴一张透明贴纸。
3.14 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 图片 | image | 图片文件 | - | 你要处理的图片 | 输入的图像数据 | 连接要生成遮罩的图片 |
| 起始行 | start_row | 整数 | 0 | 从第几行开始选择区域 | 遮罩区域的起始行索引 | 0是第一行,1是第二行 |
| 结束行 | end_row | 整数 | 1 | 到第几行结束选择区域 | 遮罩区域的结束行索引 | 设置为1意味着只选择第一行 |
| 起始列 | start_col | 整数 | 0 | 从第几列开始选择区域 | 遮罩区域的起始列索引 | 0是第一列,1是第二列 |
| 结束列 | end_col | 整数 | 1 | 到第几列结束选择区域 | 遮罩区域的结束列索引 | 设置为1意味着只选择第一列 |
4. 使用技巧和建议
4.1 最佳实践
尺寸设置建议:
- 对于Stable Diffusion,建议max_size设置为512、768或1024
- 如果你的电脑性能不强,建议用512
- 如果想要更高质量的图片,可以用768或1024
重采样方法选择:
lanczos:质量最好,但速度较慢,适合最终输出bicubic:质量和速度的平衡选择bilinear:速度较快,质量一般nearest:速度最快,但质量较差,适合快速预览
工作流程建议:
- 先用基础的Fit Size节点确定合适的尺寸
- 再用Load Image And Resize To Fit进行实际处理
- 如果需要批量处理,可以配合Pick Image节点
4.2 常见组合用法
图片预处理流程:
原图 → Load Image And Resize To Fit → 后续AI处理节点
批量图片处理:
多张图片 → Load Image And Resize To Fit (batch_size>1) → Pick Image From Batch → 选择最佳结果
图片切割处理:
大图 → Crop Image Into Even Pieces → 分别处理每个部分 → 重新组合
5. 常见问题解答
Q:为什么我的图片变模糊了?
A:可能是因为开启了upscale功能,小图片被强制放大了。建议将upscale设置为false,或者使用更好的重采样方法如lanczos。
Q:输出的图片尺寸不是我设置的max_size?
A:这是正常的,插件会保持原始比例,所以最终尺寸会是在max_size范围内的最大可能尺寸。
Q:batch_size设置多少合适?
A:这取决于你的显卡内存。如果显卡内存充足,可以设置为4-8;如果内存不足,建议设置为1。
Q:什么时候使用add_noise?
A:当你想要让AI对图片进行更多创意改动时,可以添加少量噪声(0.1-0.3)。如果想保持原图不变,设置为0。
Q:Crop节点的overlap参数有什么用?
A:当你切割图片后需要重新拼接时,overlap可以确保拼接处更自然,避免出现明显的分割线。
6. 高级应用场景
6.1 批量图片标准化
如果你有很多不同尺寸的图片需要统一处理,可以这样做:
- 使用Load Image And Resize To Fit节点,设置统一的max_size
- 将batch_size设置为你的图片数量
- 所有图片都会被调整到相同的尺寸范围内
6.2 大图片分块处理
对于超大图片,可以使用切割功能:
- 先用Crop Image Into Even Pieces将大图切成小块
- 对每个小块进行AI处理
- 最后将处理后的小块重新拼接
6.3 图片质量优化工作流
- 原图 → Load Image And Resize To Fit(使用lanczos重采样)
- 添加轻微噪声(0.1-0.2)增加细节
- 连接到放大或增强节点进行进一步处理
这个插件非常适合需要处理各种不同尺寸图片的场景,特别是当你需要将它们统一调整到适合AI处理的尺寸时。记住,保持图片比例不变形是这个插件的最大优势,让你的工作流程更加高效!