FireRed.image+ComfyUI+PS:AI换装不换脸的像素级实战方案
相信做电商图的人都有同感让AI给模特换衣服最怕的不是衣服变化不真实而是脸直接换了个人。跑图两小时生成结果一出来五官变了、眼型变了、连气质都跑偏客户那边压根交不了差。我一直在琢磨有没有一种方案既能做到比较干净的像素级换装又能把脸部特征牢牢锁住。后来接触到 FireRed.image再结合 ComfyUI 的关系图节点流程最后拿 PS 做收尾精修就组成了这套整合包2.0玩法。这套组合解决的最大痛点正是换装不换脸。FireRed.image 负责图像生成和理解服装细节ComfyUI 负责把整个换装过程节点化、可复制PS 负责把边缘、光影、瑕疵修到能交付的程度。整个过程不需要写代码只要准备一张人物图和一张服装参考图或者直接描述你想要的穿搭就能在几分钟内得到一张完整的试穿效果图。适合电商美工、独立摄影师、服装店主、内容创作者也适合玩 ComfyUI 又不想折腾环境的小白。下面我就把这个整合方案的完整玩法和踩坑记录从头到尾讲一遍。1. 为什么说FireRed.image是AI换装的新天花板1.1 传统AI换装为什么总是一眼假以前用 Stable Diffusion 或者 Midjourney 做服装替换常用的方法无非两种局部重绘和参考图引导。局部重绘的思路是先在原图上画一个遮罩罩住衣服区域告诉生成模型这里可以改然后靠提示词驱动它生成一件新衣服。这个方法听着简单实际跑起来问题很多。遮罩稍微画不到位肩膀的轮廓会被改掉提示词里指望它理解宽松的亚麻衬衫和修身的针织开衫之间的区别几乎靠缘分。更头疼的是很多模型在局部重绘时会默认把周围的背景、肤色、光影一并重画出来的图颜色断层严重边缘像贴纸一样浮在身体表面。参考图引导稍微好一点比如用 IPAdapter 提取服装图片的特征但衣服纹理是有了人脸也很容易被服装参考带跑生成出来的人眼型、脸型都会偏离原图。我把这类现象叫做贴纸式换装衣服和身体像是两张图层硬叠没有真实的穿着结构和形体关系。过去应付一下简单的商品图还可以但遇到侧面照、动态姿势、手部动作复杂的图基本废稿率高得吓人。这就是为什么很多人试过一次AI换装之后就放弃了不是生成模型不行是工作流的控制精度不够。1.2 整合包2.0到底打包了什么这个整合包2.0本质上是一套把环境配置、模型文件、节点流程、修图预设全部打包好的开箱即用方案。我以前装 ComfyUI 的时候光搞 PyTorch 版本、CUDA 环境、模型路径就能折腾一晚上而整合包2.0解压之后双击启动脚本就能直接进入 ComfyUI 界面。包内大致包含这几层内容ComfyUI 主程序以及配套的 Python 环境和依赖库不需要自己装FireRed.image 模型权重文件以及专用的加载节点和换装工作流文件常用的图像预处理节点包括人像分割、遮罩生成、脸部修复这类组件一组 PS 联动辅助工具比如图层脚本、色彩匹配动作方便出图后直接精修关键是 FireRed.image 本身。它是快手可图团队开源的中文图像生成模型对中文提示词的理解比很多海外模型自然得多。你说奶白色羊绒大衣落肩袖质感蓬松它还真能把那种蓬松感画出来。它不只是文生图强在图像编辑、局部生成、角色一致性这块也有专门的优化用它做服装替换天然就比通用模型占优势。1.3 为什么选ComfyUI当底座而不是WebUI有人问同样的模型为什么非要放 ComfyUI 里跑原因很简单可复现、可调整、可批量。ComfyUI 把所有操作拆成一个个节点从加载模型、读入图片、生成遮罩、应用参考图到最后采样输出每一步都能看到中间结果。WebUI 那种表单式操作也不是不行但每次调参都要重新组合一套参数工作流很难沉淀。ComfyUI 里只要搭好一条流程保存成 json 工作流文件以后想换模特图、换衣服参考直接改输入图片就行。对做电商批量出图的人来说这个差异是巨大的。2. 像素级换装不变脸的核心原理拆解2.1 先把脸锁住遮罩、局部重绘与face_detailer所谓不变脸第一步不是换衣服而是先把脸部锁死。在 ComfyUI 里最基础的手段是把人物原图送进一个人像分割节点比如 RMBG、SAM 或者专门的语义分割模型让它识别出身体的各个区域。我们只需要把衣服区域的遮罩留出来脸、手、背景这些区域直接排除在重绘范围之外。光排除还不够因为局部重绘本身的强度还是会渗出到附近的皮肤和五官上。我的习惯是额外加一个脸部分割遮罩也就是 FaceDetailer 这一类节点先生成完整换装图再用脸部修复节点把五官区域单独重绘一遍让脸部特征回到原图的状态。你也可以把原图的脸部特征通过 IPAdapter 提取出来重新注入生成过程相当于给模型一个提示这个人的脸长这样别跑偏。实操里遮罩边缘最好给一点膨胀和羽化。比如衣服遮罩向外扩展8到16像素配合2到4像素的高斯模糊这样生成的衣服边缘和身体之间会有自然的过渡不至于出现硬边。脸部遮罩则尽量收窄只覆盖额头到下巴的范围避免碰到帽檐、发际线这些容易有歧义的边界。2.2 让衣服穿自然参考网络与服装特征注入锁脸解决的是像不像的问题衣服怎么穿身上解决的是自然不自然的问题。这里就要引入参考图机制。IPAdapter 这类模型能从参考图中提取出衣物、颜色、纹理的特征然后把这些特征以一定权重注入到生成的 token 序列里。实际操作中我会把服装参考图的权重控制在0.5到0.8之间。权重太高衣服纹理是还原了但容易把服装参考里的背景、褶皱、人物姿势都带进来甚至会污染脸部区域权重太低参考图的作用就体现不出来生成的衣服只是口头描述款缺少细节。先在0.5附近跑一张再根据效果微调是效率最高的做法。同时提示词里的服装描述不要偷懒。只说一件衬衫和白色宽松纯棉衬衫落肩轻微褶皱自然垂落完全是两个水平的结果。FireRed.image 对中文属性的理解比较细把面料、版型、松紧度、颜色倾向都写清楚生成的衣服才像真正的衣服而不是一团模糊的色块。这里还要提一下 ControlNet 配合使用。换装场景里深度图和 OpenPose 都很常用。先提取原人物的深度信息让生成结果保持与原图一致的姿势和身体结构再提取关键点把手部、脚部位置固定下来。做了这两步配合遮罩和参考图换装得出的姿势基本上不会跑形。2.3 像素级不只是一句口号边缘、纹理与光影很多人以为像素级换装是营销话术其实不是。它指的是生成结果在衣服轮廓、褶皱走向、面料厚度、边缘过渡等细节层面能做到和人眼判断一致的程度。怎么实现的核心在于 FireRed.image 在生成时不只是把衣服当作一个标签而是当作一组空间关系来描述领口在锁骨上方多少、袖口收紧到什么程度、裙摆的下垂受什么力影响。这是训练数据决定的。模型在预训练阶段看过大量服装平铺图、模特试穿图、局部细节图所以它对面料应该怎么贴合身体是有认知的。再加上在 ComfyUI 里你还能叠加放大流程比如用 Ultimate Upscale 把出图放大到2倍再配合 PS 里的高频修正最终交付图完全能达到商用标准。不过我还是要提醒一句像素级不等于一像素不差。如果客户拿一张320×320的模糊衣服小图非要求你生成一张和它分毫不差的4K上身效果图那属于强人所难。AI换装解决的是忠实还原服装特征合理贴合人体结构而不是抄袭每一针线。3. 整合包部署与第一条换装工作流实操3.1 部署前必读硬件要求和目录结构安装之前先看一眼自己的显卡。FireRed.image 模型尺寸不小常规生成流程建议显存在8GB以上。我用 RTX 4070 跑起来比较从容手里只有6GB显存的机器也不是不能用但要把分辨率控制在512到640之间并且使用半精度加载。整合包解压后的目录结构大概是这样的ComfyUI 主程序目录启动脚本在根目录models 目录存放底模、VAE、LoRA、ControlNet 等权重workflows 目录放我保存的换装工作流json文件output 目录生成的图片默认输出到这里custom_nodes 目录放 IPAdapter、FaceDetailer 这些社区节点第一次启动会检查环境依赖耐心等几秒钟到几十秒不等。启动成功后浏览器会自动打开一个 Web 界面这个就是 ComfyUI 的操作台。入口一般是 127.0.0.1:8188如果自动打开失败手动输入这个地址也可以。3.2 手把手搭一条基础换装工作流搭工作流的时候我的习惯是从左往右分五步走。第一步用 Load Checkpoint 节点加载 FireRed.image 底模第二步用 Load Image 节点上传原图和服装参考图第三步把原图接入图像分割节点生成衣服遮罩第四步把遮罩、参考图、提示词都汇入采样器第五步输出图片放大保存。拿一条最常见的真人试穿流程举例节点顺序可以这样排Load Image 加载模特原图SAN/语义分割节点自动识别衣服区域生成 maskLoad Image 加载服装参考图接入 IPAdapter 节点IPAdapter 节点设置参考权重0.6接入模型通道提示词节点填写服装描述比如米色廓形西装外套直筒剪裁垂感面料KSampler 节点设置参数steps 24cfg 5sampler 选 dpmpp_2mscheduler 选 karrasVAE Decode 输出最终图像别忘了在采样之前把遮罩节点接到采样器的 mask 输入口否则整个画面都会被重绘而不是只换衣服。第一次跑通之后保存工作流文件以后换图直接替换 Load Image 的输入就行。参数选择上我给新手一个基础建议局部重绘的 denoising strength 控制在0.55到0.7之间。太低衣服变化不彻底太高脸和姿势容易崩。CFG 不建议超过7FireRed.image 这种模型CFG太高容易出现色彩饱和度过艳、边缘带黑边的问题。3.3 把PS请进来细节精修的完整路线ComfyUI 出图只是粗胚真正交付前PS 这步省不了。我的流程一般是四步抠图、修边、调色、合成。先用 PS 的快速选择工具或者钢笔工具把人物从原图背景里抠出来。注意生成图往往是连带背景一起出的如果客户要求保留原背景那就不抠人物而是只处理衣服区域边缘。最常见的小问题是袖口、领口位置会有淡淡的白色描边这是生成时边缘过渡不够造成的。处理方式是选中衣服图层执行图层蒙版再用画笔把边缘画一圈降低不透明度让边缘融进皮肤。调色是最容易被忽视的环节。生成图的色温、饱和度可能和原图不一致需要在 PS 里统一。打开曲线调整层分别对比原图和生成图的高光、中间调、阴影位置然后把生成图的色温往原图方向拉。要做到完全一致可以用 PS 的颜色匹配工具选原图作为参考源它能把整体色调自动对齐。还有一个实用小技巧尤其是当你需要把生成人物融入另一张背景时用混合颜色带。在图层样式里把下一图层的暗部渐进隐藏这样人物边缘的暗边会被背景透出来接缝处会自然很多。比单纯抠图加蒙版省事得多。4. 实战一张日常照片快速出三套穿搭4.1 素材准备与换装描述怎么写实战之前先准备好素材。原图最好用正面或半侧面全身照光线均匀背景干净衣服和背景的颜色有区分。如果原图光线复杂生成出来的衣服会带着原图阴影影响效果。服装参考图尽量用白底平铺图或模特正面图衣服主体占画面60%以上别让背景杂物干扰特征提取。换装描述建议写成基础属性版型细节材质搭配饰的结构。比如第一套描述写白色衬衫翻领袖口微卷面料挺括搭配黑色西装直筒裤整体商务休闲风第二套写雾霾蓝针织开衫V领垂感好内搭白色T恤搭配浅色牛仔裤慵懒休闲风第三套写黑色短款皮衣外套拉链设计修身版型搭配深色牛仔裤和马丁靴街头风。FireRed.image 对这类中文描述的理解非常到位我不建议为了追求洋气强行中英混写。反而中文描述越具体生成结果越准。4.2 参数设置与出图对比选择这一轮实测我给的是尺寸768×512steps 档位28CFG 5.5IPAdapter 权重0.65denoising strength 0.6。三套衣服全部用同一张原图工作流跑完大概花了四五分钟这还是开着 VAE 半精度优化后的速度。出图之后先别急着放大按脸→肩线→袖口→下摆→背景这个顺序检查。脸有没有崩肩线有没有对齐身体轮廓袖口处的衔接是否自然衣服下摆的走向是否符合原图的身体姿势。三张里第一张肩膀处的褶皱明显乱第二张脸没有完全还原回原图我调整了 FaceDetailer 的强度参数之后重新出图最后第三张直接可用。我一般不会只输出单张而是每个方案跑四张候选图挑出最合眼缘的一张进PS。批量出图时把工作流里的 seed 节点改成 random或者用 Batch Count 设为4点一次队列就批量执行。4.3 PS精修案例把生成图修成可交付图挑定一张生成图之后我会在 PS 里做这几件事先建一个新图层用吸管工具强调一下衣服高光位置给袖口、肩部补几笔浅色提亮让服装的立体感更明显。然后用液化工具微调衣服褶皱走向尤其是腰部、腋下这些容易堆积面料的位置稍微往内侧推一点会显得衣服更合身。最后一步是磨皮但只磨身体和皮肤接触的位置比如颈部、手臂别整个图一遍美颜那样会让衣服纹理也变糊。用 Camera Raw 滤镜里细节面板的蒙版功能按住 Alt 把蒙版范围限制在皮肤纹理较平滑的区域这样裙子、领口的针织纹理都不会被误伤。这整套流程走下来一张图纯手工精修时间大约15分钟。如果批量交付比如一次30张我会把常用的修图步骤记录成PS动作一键多图回放效率提升非常明显。4.4 速度优化与批量出图心得如果你要做大批量我给你一个经验先用低分辨率把大方向确定比如512或640确认构图和服装形态没问题再做2倍超分放大。不要直接上1024以上一方面是显存吃不消另一方面出图参数来回调整时等待时间成本太高。另外输出图片的命名建议按原图编号_服装编号_seed值的方式保存。一旦某张图需要复现只要把对应seed填回去就能保证一致的风格和脸型。这个习惯在做电商素材时特别有用客户说这张领子再开一点你可以精准定位到具体那张工作流的seed而不是每次都碰运气。5. 常见问题与AI换装避坑速查表5.1 为什么脸还是崩了常见原因有三个一是遮罩没有完全隔离脸部区域重绘噪声侵入了五官二是 IPAdapter 参考服装的权重太高服装特征污染了面部语义三是提示词里无意中写了太多面部描述比如大眼睛、高鼻梁模型就会重新生成一张新脸。对应的解决办法很直接检查 mask 是否正确覆盖衣服区域且不碰到脸部把 IPAdapter 权重降到0.4以下清空提示词里的面部描述词改用保持同一位女性人物这类约束。如果还不行加一个 FaceDetailer 节点把脸部修复强度拉到0.35左右基本能救回来。5.2 衣服边缘像贴纸怎么办衣服边缘发硬、发假大概率是遮罩边缘太锐利或者 denoising strength 太高导致生成结果与身体结构脱节。把 mask 节点的 edge padding 调大比如 expand 10到20像素再把生成的图放进 PS用涂抹工具顺着边缘走向轻擦一遍能有效缓解贴纸感。也有一种情况是总像素不够边缘细节糊成一团。这时候别硬在PS里修回 ComfyUI 做一次2倍放大。放大模型和重绘幅度要配合好重绘幅度设置在0.25上下既能补细节又不会大幅改动衣服结构。5.3 显存不足或生成速度慢整合包2.0跑起来的常规配置下8GB显存是可以用的但如果你同时挂了 IPAdapter、FaceDetailer、ControlNet再加上1024以上的分辨率就很容易爆显存。我的建议是工作流里不用的节点先禁用把分辨率调到768以内VAE加载用半精度。跑批量的场景可以开 --lowvram 启动参数让显存占用低一些代价是速度稍微慢一点。换个更省钱的思路先在一台普通显卡机器上把工作流和参数定稿然后放到配置高的机器上跑大规模生成。ComfyUI 的工作流 json 文件是通用的换了机器照样能直接加载。5.4 生成之后背景被改得看不出原样如果你需要保留原背景遮罩范围就必须只选中衣服区域不要让分割模型把整个上半身框进去。有些分割模型默认会隔出整个人物轮廓这时需要手动整理一下 mask把人物区域以外的部分涂掉。同时在提示词里明确写背景保持原样、无需改变denoising strength 控制到0.55左右。如果背景还是被污染把原背景用 PS 在最后合成阶段叠回去是成本最低的方案。我个人在实际操作中还有一个习惯工作流里固定保存一套锁脸-锁姿势-锁背景的标准流程只要涉及换装都从这套模板开始再根据具体图片微调。这样踩坑次数少出图质量也稳定。想要进阶的话还可以在提示词里加入光影方向、镜头焦距、景深这些信息让换装后的照片更接近真实棚拍质感。这套组合跑顺之后你会发现AI换装并不是一门玄学它就是一条可以标准化复制的工作流水线。