资讯动态

ComfyUI电商换装工作流实战:从分割重绘到批量出图

发布时间:2026/10/14 5:16:46 来源:尧图企业网站定制
简介这份资源是面向电商视觉设计与AI绘画爱好者的ComfyUI换装实战教程配套源码包聚焦用Flux Fill与Flux Redux工具为商品图快速更换服饰风格适合零基础想入门AI绘画、或希望提升电商视觉营销效率的从业者。压缩包共4个文件约7KB以md说明文档、html页面、inscode配置与gitignore为主分别承担流程讲解、页面展示与工程配置等用途结构轻量便于直接上手。目前已有149人学习。内容围绕模型选择、生成参数设置、提示词与反推提示词对换装效果的影响展开并指出复杂图案换装效果较差建议选用简洁参考衣物、精细调整提示词、手动处理模特蒙版并在换装后做高清修复。随包还整理了stable diffusion安装包、入门教程与关键词合集等学习线索可帮助读者快速建立从工具配置到效果优化的完整认知。1. 电商换装工作流为什么值得用 ComfyUI 重做一遍做电商视觉的团队大多经历过这样的场景一款服装要出十几个模特图换颜色、换姿势、换背景美工一天修不了几张外包一张几十块还排期。传统路径是拍摄加后期成本高、周期长、风格还难统一。ComfyUI 电商换装教程这类需求最近被问得特别多核心就一句话——用节点式工作流把「模特换装」这件事做成可复用、可批量、可微调的流水线而不是每次从零抠图。它解决的不是「能不能换」的问题而是「换得稳不稳、能不能批量、改一个参数会不会全盘崩」的问题。适合两类人一类是电商视觉、服装类目的运营和设计想低成本出图另一类是有一定 Stable Diffusion 基础、想把散装插件串成生产管线的技术同学。这篇笔记按「先立住原理、再跑通最小工作流、最后讲参数和坑」的顺序写源码部分给出可直接落地的节点配置和脚本片段你照着搭一遍就能出第一张换装图。2. 换装工作流的三个核心模块与选型理由2.1 为什么是「分割 重绘 融合」而不是端到端很多人第一反应是找一个「一键换装」的大模型输入模特图和衣服图直接出结果。这条路在 Demo 阶段能跑但落到电商场景几乎必翻车衣服纹理丢失、边缘糊、肤色和衣服光照不匹配。原因是端到端模型把「识别衣服区域」和「生成新衣服」耦合在一个网络里你没法单独调其中一环。主流可靠做法是拆成三段先用分割模型把模特身上的原始服装区域抠出来得到一张 mask再在 mask 区域内用重绘inpainting方式生成目标服装最后把生成结果和原图做边缘融合与色彩校正。这样每一段都能单独换模型、单独调参出问题也知道是哪一环的锅。ComfyUI 的节点图天然适合这种拆分每个环节就是一个节点组连线即数据流。选型上分割常用 SAM 系列或专门的服装分割模型重绘用 SDXL Inpainting 或 SD1.5 Inpainting 配合 ControlNet融合阶段用简单的图像混合节点加羽化。不要一上来就追最新最大的模型先用手上能跑动的版本把流程串通再逐步替换。2.2 节点图的最小骨架怎么搭下面是一个可运行的最小工作流骨架用 Python 描述节点连接逻辑实际在 ComfyUI 里是拖拽连线这里用代码表达数据流方便你理解依赖关系。# 最小换装工作流的数据流描述非直接运行用于理解节点依赖 workflow { load_model: { # 加载基础模型 ckpt: sd_xl_inpainting.safetensors, outputs: [model, clip, vae] }, load_image: { # 加载模特原图 path: model_input.png, outputs: [image, mask] }, load_cloth: { # 加载目标服装图 path: cloth_target.png, outputs: [cloth_image] }, segment_cloth: { # 分割原始服装区域 model: cloth_seg_model.pth, inputs: [image], outputs: [cloth_mask] # 二值 mask白色为待替换区域 }, inpaint: { # 在 mask 区域内重绘 inputs: [model, clip, vae, image, cloth_mask, cloth_image], steps: 25, cfg: 7.0, denoise: 0.85, outputs: [inpainted_image] }, blend: { # 边缘融合 inputs: [image, inpainted_image, cloth_mask], feather: 8, # 羽化像素 outputs: [final_image] } }逻辑说明segment_cloth输出的 mask 决定了重绘的作用范围mask 质量直接决定最终边缘干不干净。inpaint节点的denoise控制重绘强度太低会保留原衣服颜色太高会改变模特体型。blend节点用羽化把生成区域和原图过渡避免硬边。参数说明steps25 是速度和质量的平衡点电商出图建议不低于 20cfg7.0 是提示词遵循度换装场景不要超过 9否则颜色会过饱和denoise0.85 是经验值换整件衣服用 0.8 到 0.9只换颜色可以降到 0.6 左右。2.3 服装分割模型怎么选和怎么接分割是整条链路的地基。常见做法有两种一种是用通用分割模型如 SAM加文本提示定位服装区域灵活但需要调提示词另一种是用专门训练的服装分割模型直接输出上衣、裤子、裙子等类别 mask省事但泛化性受训练集限制。我一般会先用专用模型跑一版看边缘是否贴合。如果模特姿势复杂、衣服和背景颜色接近专用模型容易漏分割这时候切到 SAM 加点选或框选提示来补。ComfyUI 里有对应的分割节点把图像输入、输出 mask 接到重绘节点即可。注意 mask 要做一次膨胀dilate处理向外扩 3 到 5 像素给重绘留出过渡空间否则生成区域和原图之间会有一条明显的缝。# mask 膨胀与羽化预处理 import cv2 import numpy as np mask cv2.imread(cloth_mask.png, 0) # 读取二值 mask kernel np.ones((5, 5), np.uint8) # 5x5 膨胀核 mask_dilated cv2.dilate(mask, kernel, iterations2) # 向外扩约 4 像素 mask_blur cv2.GaussianBlur(mask_dilated, (9, 9), 0) # 高斯羽化 cv2.imwrite(cloth_mask_processed.png, mask_blur)这段预处理很关键iterations2配合 5x5 核大约扩 4 像素具体数值按图片分辨率调整1080P 图用这个值4K 图要加倍。羽化核用 9x9 是轻量过渡想要更柔和可以加到 15x15但太大会让衣服边缘发虚。3. 从零跑通一张换装图的完整步骤3.1 环境准备与模型放置先把 ComfyUI 跑起来确认能正常出图。然后准备三类模型文件基础重绘模型、分割模型、可选的 ControlNet 模型用于保持姿势。模型放置路径按 ComfyUI 的目录约定来checkpoints 放基础模型custom_nodes 里装好分割和图像处理相关节点包。# 目录结构示例按实际安装路径调整 ComfyUI/ ├── models/ │ ├── checkpoints/ │ │ └── sd_xl_inpainting.safetensors │ ├── sam/ │ │ └── sam_vit_h.pth │ └── controlnet/ │ └── openpose_sdxl.safetensors └── custom_nodes/ ├── comfyui-segment-anything/ └── comfyui-image-blend/放置完成后重启 ComfyUI在节点搜索里能搜到对应节点就说明加载成功。如果搜不到先看控制台报错多数是依赖包没装全按提示补装即可。3.2 搭建节点图并设置关键参数按第 2 章的数据流把节点拖出来连线。顺序是加载模型 → 加载模特图 → 加载服装图 → 分割节点 → 重绘节点 → 融合节点 → 保存图像。连线时注意 mask 要同时接到重绘节点和融合节点重绘节点用 mask 限定区域融合节点用 mask 做过渡。关键参数集中在这几处重绘节点的denoise设 0.85steps设 25cfg设 7分割节点的置信度阈值设 0.5 到 0.6太低会误分割背景太高会漏掉衣服边缘融合节点的羽化值设 8 到 12 像素。提示词写清楚目标服装的特征比如「红色针织开衫圆领长袖贴身」不要只写「换衣服」。# 提示词模板正向与负向 positive_prompt ( a model wearing a red knit cardigan, round neck, long sleeve, slim fit, natural fabric texture, studio lighting, high detail ) negative_prompt ( blurry, deformed, extra limbs, bad anatomy, color mismatch, harsh edge, watermark, text )正向提示词要包含颜色、材质、版型三个要素这是电商换装和普通 AI 绘画的区别——你要的是可控的服装属性不是艺术创作。负向提示词重点压边缘问题和颜色错配harsh edge和color mismatch这两个词在换装场景里很管用。3.3 批量换装的脚本化处理单张跑通后批量才是电商的真实需求。ComfyUI 支持通过 API 方式提交任务可以用脚本循环读取服装图和模特图组合批量出图。import requests import json import os server http://127.0.0.1:8188 workflow_api json.load(open(workflow_api.json)) # 从 ComfyUI 导出的 API 格式工作流 model_images [model_01.png, model_02.png] cloth_images [cloth_red.png, cloth_blue.png] for model_img in model_images: for cloth_img in cloth_images: # 替换工作流中的输入路径 workflow_api[3][inputs][image] model_img # 模特图节点 workflow_api[4][inputs][image] cloth_img # 服装图节点 workflow_api[9][inputs][filename_prefix] ( foutput_{os.path.splitext(model_img)[0]}_{os.path.splitext(cloth_img)[0]} ) resp requests.post(f{server}/prompt, json{prompt: workflow_api}) print(resp.status_code, resp.json())逻辑说明workflow_api.json是在 ComfyUI 界面里开启开发者模式后导出的 API 格式文件节点编号对应界面上的节点 ID需要按你的实际连线调整。每次循环替换输入路径和输出前缀提交到/prompt接口。参数上注意服务端要留足显存批量任务建议串行提交并发太高会爆显存导致任务失败。4. 换装效果不稳这五个坑我替你踩过了4.1 现象衣服边缘有一圈灰边或硬边原因mask 没有做膨胀和羽化重绘区域和原图之间是硬切。解决按 2.3 节的预处理脚本对 mask 做膨胀加高斯羽化膨胀 3 到 5 像素羽化核 9 到 15。如果还有轻微灰边在融合节点后加一个色彩匹配节点把生成区域的颜色统计对齐到原图。4.2 现象换完衣服模特体型变了原因denoise设太高重绘时把模特身体也重新生成了。解决把denoise降到 0.7 到 0.8同时检查 mask 是否只覆盖了衣服区域。如果 mask 把手臂或腰部也包进去了重绘就会改体型。用分割结果可视化检查一遍确保 mask 边界贴着衣服轮廓。4.3 现象衣服颜色对但纹理糊成一团原因重绘步数不够或模型本身细节能力弱。解决steps提到 30 以上换用细节表现更好的重绘模型。另外提示词里加上材质描述比如knit texture、denim fabric模型会往对应纹理上靠。如果还糊检查 VAE 是否匹配用错 VAE 会整体发灰发糊。4.4 现象复杂姿势下分割漏掉一部分衣服原因专用分割模型对遮挡和极端姿势泛化不够。解决切到 SAM 加提示点或提示框的方式补分割或者对 mask 做形态学闭运算把断裂区域连起来。实在不行就手动修一版 mask电商出图量不大时人工兜底比调模型快。4.5 现象批量任务跑到一半显存溢出原因并发提交太多或者上一张图的缓存没释放。解决串行提交任务每张图之间加短暂延时在 ComfyUI 启动参数里加上显存优化选项降低单张图的分辨率出图后再用放大节点提升。批量场景下稳定比单张极限质量更重要。5. 让换装图直接能上架的三个进阶技巧第一个技巧是姿势锁定。电商图往往要求同一姿势换不同衣服这时候用 ControlNet 的 OpenPose 把模特骨架固定住重绘时只改衣服区域姿势不会漂。把 OpenPose 节点接在重绘节点的条件输入上权重设 0.6 到 0.8太高会限制衣服自然褶皱太低姿势会跑。第二个技巧是色彩校正。生成区域和原图的光照、色温经常不一致尤其是棚拍图换外景衣服时。在融合节点后加一个色彩迁移节点用原图非衣服区域的颜色统计去校正生成区域或者简单点用曲线调整把生成区域的亮度和饱和度对齐到原图。这一步做完图基本就能直接用了。第三个技巧是分辨率策略。不要一开始就用 4K 跑重绘显存吃不消且速度慢。先用 1024 跑通换装确认效果后用放大节点配合低 denoise 的重绘做细节增强分两步走。放大时 denoise 设 0.3 到 0.4只补细节不改结构。技巧关键参数适用场景姿势锁定ControlNet 权重 0.6-0.8同姿势多衣服批量出图色彩校正亮度/饱和度对齐棚拍图换不同光照服装两步放大放大 denoise 0.3-0.4需要高分辨率上架图我自己的习惯是每调完一个参数就存一版工作流命名带上日期和改动点。换装工作流参数多改着改着就忘了哪版效果最好有存档才能回退。另外别追求一次出图就完美先出结构对的图再用局部重绘修细节比反复调全局参数快得多。希望帮到你。本文还有配套的精品资源点击获取

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑