【AI学习-comfyUI学习-1批量抠图换背景工作流+2视频抠图工作流-各个部分学习-第十节】

【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)调用模块

整个模块部分

这回整个模块都可以截截图下了

【AI学习-comfyUI学习-1批量抠图换背景工作流+2视频抠图工作流-各个部分学习-第十节】

说明:在runningHUB上传输压缩包
【AI学习-comfyUI学习-1批量抠图换背景工作流+2视频抠图工作流-各个部分学习-第十节】

(2)输出 提示词

(3)模型加载

(4)生成图片

(1)原图片
【AI学习-comfyUI学习-1批量抠图换背景工作流+2视频抠图工作流-各个部分学习-第十节】
(2)切出来的遮罩

【AI学习-comfyUI学习-1批量抠图换背景工作流+2视频抠图工作流-各个部分学习-第十节】

(3)切出来的图

【AI学习-comfyUI学习-1批量抠图换背景工作流+2视频抠图工作流-各个部分学习-第十节】

(4)换背景的图

【AI学习-comfyUI学习-1批量抠图换背景工作流+2视频抠图工作流-各个部分学习-第十节】

(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)调用模块

整个模块部分

这回整个模块都可以截截图下了

【AI学习-comfyUI学习-1批量抠图换背景工作流+2视频抠图工作流-各个部分学习-第十节】

(2)输出 提示词

(3)模型加载

(4)生成图片

(1)图片

【AI学习-comfyUI学习-1批量抠图换背景工作流+2视频抠图工作流-各个部分学习-第十节】

(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,总结

这也算各一个开始吧,我也在学习摸索中。

© 版权声明

相关文章

暂无评论

none
暂无评论...