【AI学习-comfyUI学习-1批量抠图换背景工作流+2视频抠图工作流-各个部分学习-第十节】
1,前言2,说明1:第十节-1批量抠图换背景工作流2:第十节-2视频抠图工作流
3,流程1-第十节-1批量抠图换背景工作流(1)调用模块整个模块部分
(2)输出 提示词(3)模型加载(4)生成图片(5)模块介绍参数说明
🔵 **① Load Images(zip)**🔵 **② Batch Images From ImageList**🔵 **③ #9 Inspyrenet Rembg(高质量抠图)**✓ 输出1:✓ 输出2:
🔵 **④ #10 was-node-suite-comfyui(遮罩到图像)**🔵 **⑤ #6 获取图像尺寸(masquerade-nodes-comfyui)**🔵 **⑥ #8 Impact-Pack(图像批次处理 → 统一尺寸)**🔵 **⑦ #4、#11、#12、#13 保存图像**第十节-2视频抠图工作流(1)调用模块整个模块部分
(2)输出 提示词(3)模型加载(4)生成图片(5)模块介绍参数说明
① #10 VideoHelperSuite — **加载视频**② #13 VideoHelperSuite — **视频信息解析器**③ #17 KJNodes Resize Image v2 — **调整每帧的图像大小**🚨 小提示(重要)④ #18 Easy-Use 背景移除 — **第一次扣图**⑤ #8 BiRefNet-Hugo — **高质量二次抠图**⑥ #9 遮罩到图像(可选)⑦ #12 VideoHelperSuite — **合成为视频(最终输出)**4,细节部分1-加载视频时,切换英文2-只处理 zip 中的前三张图3-背景图尺寸与人物图尺寸不同,会导致拉伸4-想保持透明背景(而不是换背景)
5,使用的工作流1:第十节-1批量抠图换背景工作流2:第十节-2视频抠图工作流
6,总结
1,前言
最近,学习comfyUI,这也是AI的一部分,想将相关学习到的东西尽可能记录下来。
2,说明
1:第十节-1批量抠图换背景工作流
⭐ 「批量读取图片 → 自动抠图 → 批量替换背景 → 批量输出新图」
的全自动工作流。
特点:
可以上传一个 zip 文件(里面是多张人物图)
系统会自动逐张抠图
使用 指定背景图(右上角)
把人物贴进去
最终输出多张带新背景的成品图
【Load Images(zip)】
↓
【Batch Images From ImageList】
↓(一张张取出)
【#9 Inspyretnet Rembg —— 抠图(生成透明人物 + mask)】
↓
┌→ 【#11 保存 mask(白色轮廓)】
│
└→ 【#10 透明到图像 —— 人物合成背景】
↓
【#6 获取背景尺寸】
↓
【#8 图像批次处理——统一大小】
↓
【合成效果图 → 预览】
↓
【#12、#13 批量保存最终图像】
2:第十节-2视频抠图工作流
工作流本质是一个:
🎬 「视频 → 逐帧处理 → 背景移除(抠图)→ 合成新视频」的完整流水线
也就是说:
输入:一个视频
输出:一个扣好背景的人物新视频(透明或黑背景)
【#10 加载视频】
↓
【#13 提取视频帧信息】
↓
【#17 Resize Image v2 统一尺寸】
↓
【#18 背景移除(RMBG 或 BiRefNet)】
↓
【#8 BiRefNet-Hugo(更精细抠图)】
↓
【#9 遮罩到图像(可选)】
↓
【#12 合成为视频(mp4 文件)】
3,流程
1-第十节-1批量抠图换背景工作流
(1)调用模块
整个模块部分
这回整个模块都可以截截图下了

说明:在runningHUB上传输压缩包

(2)输出 提示词
无
(3)模型加载
无
(4)生成图片
(1)原图片

(2)切出来的遮罩

(3)切出来的图

(4)换背景的图

(5)模块介绍参数说明
🔵 ① Load Images(zip)
(加载压缩包)
作用:
上传一个 zip 文件(里面是多张图)节点会把 zip 解压并输出为 图片列表
输出:
images(list) → 多张图
🔵 ② Batch Images From ImageList
(从图片列表中逐张取图)
设置了:
image_indices = 0-2
意思是:
只取第 0、1、2 三张图
(不是全部)
作用:
把图片列表变成一张张单独输出的图供下游逐张处理
🔵 ③ #9 Inspyrenet Rembg(高质量抠图)
这是这套工作流的核心。
它输出两个东西:
✓ 输出1:
IMAGE(透明背景的人物)
✓ 输出2:
MASK(白色/黑色mask:白是人物,黑是背景)
screenshot 中黑白图就是这个 mask。
🔵 ④ #10 was-node-suite-comfyui(遮罩到图像)
作用:
将 “透明人物图” 和 “背景图” 进行合成把人物贴到一个新的背景中得到完整的合成图
输入:
IMAGE:透明人物图Background:在右上角上传的插画背景图
输出:
合成后的新画面(人物 + 新背景)
🔵 ⑤ #6 获取图像尺寸(masquerade-nodes-comfyui)
作用:
读取背景图尺寸(512×512)给后面的合成提供统一大小参数
🔵 ⑥ #8 Impact-Pack(图像批次处理 → 统一尺寸)
作用:
调整合成后的图大小确保所有生成图一致(无论人物原图尺寸是多大)
输出:
统一尺寸的最终结果图
注意:
处理结果现在变成 1792×1024(右上角预览),说明背景是 1792×1024。
🔵 ⑦ #4、#11、#12、#13 保存图像
多个“保存图像节点”:
#11 保存 mask#12 保存透明背景人物#13 保存最终结果
这三个输出都对,属于正常输出流程。
第十节-2视频抠图工作流
(1)调用模块
整个模块部分
这回整个模块都可以截截图下了

(2)输出 提示词
无
(3)模型加载
无
(4)生成图片
(1)图片

(5)模块介绍参数说明
① #10 VideoHelperSuite — 加载视频
作用:
读取一个视频文件输出逐帧图片(image → 一帧一帧的图)输出视频信息(FPS、帧数、分辨率等)
输入:
视频文件(mp4 等)
输出:
image(每一帧的图像)视频参数(FPS、帧宽度、帧高度)
这是整个模型的 起点。
② #13 VideoHelperSuite — 视频信息解析器
这个节点把视频中的元数据解析出来,比如:
初始 FPS初始时长初始宽度/高度视频的总帧数
这些信息会在后面的视频合成中用到。
③ #17 KJNodes Resize Image v2 — 调整每帧的图像大小
选择了:
height = 1024width = 自动计算upscale_method = lanczos(高质量缩放)keep_proportion = stretch(会强制拉伸)
作用:
把每一帧图像统一成同样大小,方便后续模型推理现在设的是拉伸(stretch),就是把画面直接拉扯成新尺寸
输入:
单帧图像(image)视频分辨率元数据(mask optional)
输出:
处理后的图像(统一大小)
🚨 小提示(重要)
之前遇到的错误:
“Lanczos is not supported on GPU”
因为 Resize Image v2 的 lanczos 模式只能 CPU
如果 device=GPU 会报错。
当前设的是 CPU → 所以可以跑。
④ #18 Easy-Use 背景移除 — 第一次扣图
这个节点使用 RMBG(Remove Background)模型:
生成一个 alpha mask(透明度)抠掉背景,留下人物主体
输入:
单帧图像
输出:
图像(人物 + 透明背景)Mask(黑白轮廓)
这个抠图的质量一般,属于预处理级别。
⑤ #8 BiRefNet-Hugo — 高质量二次抠图
这个节点比 RMBG 强很多。
它做两件事:
精细化轮廓(头发丝、边缘更清晰)背景设定为透明(transparency)
BiRefNet 是一个很强的抠图模型。
输入:
上一步的抠图图像
输出:
最终透明背景的人物图(rgba)
看到的右下角预览(黑底+人物)就是这里的输出。
⑥ #9 遮罩到图像(可选)
这个节点的作用:
用 mask 把人物贴到一张新的背景图上或者保留透明
现在似乎没在用它做替换,只是连过去但没真正加背景。
如果不需要换背景,这个节点可以删除。
⑦ #12 VideoHelperSuite — 合成为视频(最终输出)
这是整个流程的最后一步。
它会:
按顺序接收每帧(扣了背景的人物图)按 FPS 重新生成视频生成一个新的 mp4 文件
设置:
格式 video(h264-mp4)
px_fmt yuv420p
crf 19
这是普通 mp4 格式,因此:
👉 mp4 不支持透明背景 → 自动变成黑色背景
所以看到的是:
✔ 人物
❌ 背景透明(变成黑)
4,细节部分
1-加载视频时,切换英文
在使用的时候,有时候视频可能无法加载,这个时候请使用英文界面
根据 screenshot,我看到了以下可改进点:
2-只处理 zip 中的前三张图
因为:
image_indices = 0-2
如果 zip 有 100 张图:
只处理 3 张。
想处理全部图片请改成:
image_indices = all
或:
0-999
3-背景图尺寸与人物图尺寸不同,会导致拉伸
背景是 1792×1024
人物图抠出后是 1013×1107
合成时会自动缩放
可能会导致人物比例被压扁或拉伸
👉 解决:
在 #10 合成前加入一个 Resize 节点,把人物缩放到合适大小。
4-想保持透明背景(而不是换背景)
现在是用背景图“覆盖”透明部分
无法导出透明 PNG
如果要:
批量抠图导出透明 PNG
,那么应该从 Inspyrenet 输出那一路直接保存,而不是合成背景。
5,使用的工作流
1:第十节-1批量抠图换背景工作流
https://download.csdn.net/download/qq_22146161/92314817
2:第十节-2视频抠图工作流
https://download.csdn.net/download/qq_22146161/92314809
6,总结
这也算各一个开始吧,我也在学习摸索中。