1. 换装的底层逻辑:先把问题拆成三层
做服装电商视觉、写真交付、社媒素材的同行,这两年问得最多的一句话就是:Stable Diffusion 到底能不能把模特身上的衣服换成另一套,顺便把模特本人也换掉。答案是能,但**"能"和"能稳定交付"之间隔着一整套流程设计**。我前后做过几个服装类目的商拍替换项目,从最初靠图生图硬怼、十张废九张,到后来把流程拆成可复现的步骤,中间踩的坑基本都集中在"没搞清楚自己在改什么"这件事上。模特精准换装和替换模特,本质上是两个不同难度的问题,只是它们在 Stable Diffusion 的操作面板上长得有点像。
先把问题分层,后面所有的参数选择才有落脚点。第一层是区域:你要改的是画面里的一块像素,其余部分必须一动不动,这决定了你必须用局部重绘而不是整图重绘。第二层是结构:衣服有版型、有褶皱走向、有和身体的贴合关系,换上去的新衣服如果版型和原图的姿态对不上,出来就是个纸片贴图。第三层是身份:模特的五官、肤色、发际线、体型比例要保持一致,换人时又要保证新身份在所有图里统一,这是替换模特真正的难点。
我见过太多人卡在第一层就放弃了——用整图图生图,重绘幅度调低衣服不变,调高脸就崩了。这不是模型不行,是方法用错了工具。局部重绘(Inpainting)解决区域问题,ControlNet 解决结构问题,IP-Adapter 一类的人脸/风格注入方案解决身份问题,这三件事各管一段,混在一起谈就会永远调不好参数。
这篇文章适合三类人看:一类是刚上手 Stable Diffusion、想知道换装这条路到底通不通的新手;一类是已经在做但出图不稳定、想找问题根因的中级用户;还有一类是要把这件事做成批量流水线、关心交付质量的从业者。下面我会把每一步的"为什么这么做"讲清楚,参数给的是范围加推导,不是让你照抄数字就完事。
1.1 为什么直接图生图十有八九翻车
图生图的工作方式是把原图加噪再逐步去噪,模型在去噪过程中会同时重建"它认为该有的东西"。问题在于,模型并不知道你想保留哪些、想改哪些。你把重绘幅度设到 0.35,衣服基本原样;设到 0.75,衣服确实变了,但脸也跟着变了,背景细节、手指、饰品全在漂移。这不是参数没调好,是整图重绘的信息通道是共享的,你没法在不影响其他区域的前提下只改衣服。
另一个常见误区是以为"提示词写详细点就能控制住"。提示词影响的是全局语义分布,它能告诉模型"这里应该是一件米色针织开衫",但它没法告诉模型"这件开衫只出现在蒙版区域内、边缘要和原图的肩膀严丝合缝"。图生图里提示词的权重是弥散的,写到再细也解决不了空间约束问题。
还有一个坑是分辨率。很多原图是竖构图商拍图,直接塞进 512×768 或者 768×1024 的底模里,衣服的纹理细节在第一步就被压缩掉了,后面再怎么放大都是糊的。我一般会在预处理阶段先把短边拉到 1024 以上,再做重绘,宁可多花点显存也不要在低分辨率上反复修补——低分辨率下的重绘结果,放大之后是无法救回来的。
1.2 四条技术路线的横向对比
真要做换装,市面上能走的路不止一条,各有各的适用边界。我把实际用过的四条路线整理成下表,方便你按手头素材和交付要求选。
| 路线 | 核心做法 | 适用场景 | 优势 | 主要短板 |
|---|---|---|---|---|
| 局部重绘 + 蒙版 | 手绘或自动分割出衣服区域,只在该区域重绘 | 单件上衣/裤子/裙装的替换 | 可控性最高,背景和脸几乎不动 | 蒙版边缘处理不好会露接缝 |
| ControlNet 结构约束 | 用边缘、深度、姿态约束新衣服的版型走向 | 版型复杂、有大量褶皱和垂坠的服装 | 结构还原准,褶皱自然 | 多模型叠加时显存和调试成本高 |
| 分段重绘 + 回填 | 分区域多次重绘,再合成 | 全身换装、多件单品同时换 | 每块都能单独调参 | 流程长,接缝需要手工处理 |
| 参考图注入(IP-Adapter 类) | 用一张服装平铺图或上身图注入风格与版型 | 有明确目标款式的商业化替换 | 款式还原度高 | 需要搭配蒙版使用,单独用会污染全图 |
我自己的默认选择是第一条打底、第二条加固、第四条补款式细节。分段重绘在全身换装时才会启用,因为它的工序确实长,单件上衣用不上。这里要强调一句:这四条不是互斥的,实际生产里最稳的组合往往是"蒙版 + 边缘约束 + 参考图注入"三件套一起上。
选择路线的判断标准其实很简单——看你的目标款式和原图款式的结构差异有多大。如果是同类型的替换(T 恤换 T 恤),蒙版加适度重绘就够了;如果是跨类型(西装外套换成oversize 卫衣),就必须上 ControlNet 约束轮廓,否则模型会按原西装的肩线去画卫衣,出来是个四不像。
1.3 开工前的环境与素材清单
动手之前,环境不齐会浪费大量时间。我习惯按下面这份清单过一遍:
- 底模:一到两个写实向的 checkpoints,专攻人像和服装质感,不要用二次元或插画模型做商拍。
- 局部重绘模型:与底模同源或同风格的 inpaint 版本,混用会导致重绘区域色调偏移。
- ControlNet 模型组:softedge / lineart(轮廓)、depth(前后层次)、openpose(人体姿态)、tile(细节放大时的保真)各一份。
- 分割工具:用于自动生成衣服蒙版,手绘蒙版在批量场景下不现实。
- 放大链:一个通用的放大模型加一个细节修复模型,用于出图后的质感补齐。
- VAE:与底模匹配,颜色发灰、发闷十有八九是 VAE 不对。
素材侧的要求更容易被忽略。原图的光位要尽量统一,如果原图是硬光侧面打光,你却想换一件适合柔光的雪纺,成图的光影会打架,这个靠参数救不回来,只能靠后期或换原图。另外原图里衣服和皮肤、头发、背景的交界要清晰,交界模糊的图(比如毛领、半透明薄纱)蒙版极难做准,这类图我一般直接判定为"高成本单",不放进批量流程。
提示:所有换装、换人操作请只用于你拥有授权或商用权的素材。涉及真人肖像的替换,务必取得当事人书面同意,这是职业底线,也是很多项目翻车的真正原因。
2. 模型与插件选型:哪些是必需品,哪些是安慰剂
选型这件事,我的观点是先把必需的三件套配齐,再谈锦上添花。必需的是:一个靠谱的写实底模、一个匹配的 inpaint 模型、一组 ControlNet。可选的包括参考图注入类插件、自动分割插件、细节修复插件。我见过不少人插件装了三十个,底模却是随便下的一个融合模型,出图糊得没法看,然后归咎于"SD 换装不行"。
选型的核心逻辑是减少变量。每多一个模型参与,就多一个可能出错的地方;每多一个插件,就多一层参数耦合。批量生产时我宁愿用一套打磨透的组合,也不愿意每次临时拼装。
2.1 底模:写实类模型的取舍标准
写实底模的差异主要在三个方面:皮肤质感、布料表现、对提示词的服从度。商拍换装最看重的是布料表现——针织的纹理、丝绸的高光、牛仔的硬挺感,这些是决定成图"像不像真衣服"的关键。有些写实模型人脸很漂亮,但画出来的衣服永远是那种糊成一团的软塌质感,这类模型不适合做服装替换。
测试方法很土但有效:拿一张纯色背景的白衬衫图做局部重绘,提示词只写材质和颜色,看模型能不能画出布料的经纬感和自然褶皱。如果出来的是一片平涂色块,直接换模型。
另一个被低估的点是模型对负面提示词的敏感度。换装时最常出现的崩坏是"衣服长出多余的结构"——多出一条不存在的肩带、领口多一层、袖口接缝错位。这时候负面提示词里加上对应描述能压住一部分,但前提是模型本身对负面词有反应。有的融合模型对负面词几乎无感,调了等于没调。
实操心得:固定一套底模 + inpaint 模型的组合,用同一张测试图跑三组不同参数,把结果存档。以后换新模型时用同一张测试图对比,能快速判断新模型值不值得换,比凭感觉靠谱得多。
2.2 ControlNet 子模型的组合逻辑
ControlNet 是换装能不能"贴合身体"的分水岭。但很多人一上来就叠四五个,结果互相打架,出图畸形。我的经验是最多同时用两个,第三个只在特定场景加。
| 子模型 | 作用 | 权重区间 | 什么时候必须用 |
|---|---|---|---|
| softedge / lineart | 提取原图衣服的轮廓线 | 0.5 ~ 0.8 | 目标款式需要保留原有版型走向 |
| depth | 保持前后层次和体积感 | 0.4 ~ 0.7 | 有外套、叠穿、遮挡关系时 |
| openpose | 锁定人体骨架 | 0.6 ~ 0.9 | 换装后姿态跑偏、手臂位置错乱 |
| tile | 放大时保持细节不漂移 | 0.5 ~ 0.7 | 走高清修复流程时 |
组合的优先级是这样的:姿态优先于轮廓,轮廓优先于深度。因为姿态错了整张图就废了,轮廓错了还能修,深度错了只是层次感差一点。所以如果你只能开两个,先开 openpose 加 softedge。
权重的取法有个反直觉的地方:轮廓类 ControlNet 的权重不是越高越好。权重拉到 1.0,模型会死死锁住原图的每一条褶皱,新衣服就变成了"原衣服的换色版",完全体现不出目标款式的版型。我一般在 0.6 左右起步,出图后看版型贴合度,版型太像原款就降到 0.45,版型完全跑飞就升到 0.75。
还有一个细节是控制图的起始和结束步数。很多人不知道 ControlNet 可以设置介入的步数区间。换装场景里,我通常让轮廓约束在前 60% 的步数里生效、后 40% 释放,这样结构定下来之后,模型有空间去自由补布料纹理,出来的质感反而更自然。全程锁死会让画面显得僵硬。
2.3 Inpaint 模型、VAE 与放大链
inpaint 模型和普通底模的区别在于它额外接收蒙版信息,知道哪些区域需要重建。用普通底模做局部重绘也能出图,但边界融合明显更差,尤其是蒙版边缘会出现一圈色调不同的"晕圈"。所以只要做局部重绘,就用专门的 inpaint 版本,这一步没有省的空间。
VAE 的问题更隐蔽。VAE 负责把潜空间解码成最终像素,解码器不对,整张图会发灰、发闷、颜色偏。换装场景里最容易出现的表现是重绘区域和保留区域的颜色对不上——蒙版内是鲜亮的米白,蒙版外是发灰的米白,一眼假。这时候别急着调参数,先换 VAE 试一遍,十有八九能解决。
放大链的思路是"先重绘、后放大、再局部修复"。直接大倍数放大再重绘,细节是在糊的基础上重建的;正确顺序是小尺寸重绘定稿,再走 1.5 到 2 倍的分块放大,最后对放大后可能出现的高频噪点做一次低重绘幅度的整体过一遍,把质感拉回来。tile 类 ControlNet 在这一步的作用是防止放大过程中布料的细密纹理被抹平。
3. 模特换装全流程实操
流程本身不复杂,难的是每一步的判定标准。我把它拆成预处理、蒙版、参数、回填、统一五个环节,每个环节都有明确的"合格线",不到线就不往下走,否则后面全是返工。
3.1 原图预处理与蒙版制作
预处理的顺序是:裁切构图 → 分辨率拉到短边 1024 以上 → 轻微降噪 → 色彩校正。降噪这一步很多人跳过,但商拍原图往往有压缩噪点,模型会把这些噪点当成纹理去重建,结果重绘区域出现奇怪的颗粒。降噪强度别太高,能压掉压缩痕迹就行,过了会把布料纹理一起抹掉。
蒙版的精度决定成败。手绘蒙版在单张精修时可行,但批量场景必须自动化。常用的自动分割思路是用语义分割模型输出衣服区域的掩码,再人工检查修正。这里有个取舍:蒙版宁可略小,不要偏大。偏小的话边缘会留一圈原衣服,需要二次修补;偏大的话会把皮肤、头发、背景一起吃进去,重绘后身体和背景都变形,比留边难修得多。
蒙版的三个关键参数:
- 蒙版模糊(mask blur):我一般设 4 到 8。太小边缘生硬有接缝,太大重绘区域会向外侵蚀,把不该改的地方改掉。
- 蒙版扩展(mask padding):设 16 到 32 像素。给模型留出上下文,它能看到蒙版外的环境色,融合会更自然。
- 重绘区域模式:选"仅蒙版区域"。选"整图"会把未蒙版区域也一起重新编码,虽然有 latent 约束但仍有漂移风险,只有在需要整体色调统一时才用。
注意:毛领、薄纱、网眼、镂空这些材质,自动分割几乎都做不准。这类单子老老实实手工修蒙版,或者干脆换一张原图,别在自动蒙版上耗时间。
3.2 参数推导:重绘幅度、CFG 与步数怎么定
重绘幅度是换装里最重要的参数,它的物理含义是"加噪到什么程度"。设成 0 就是原图不动,设成 1 就是完全重新生成。换装需要的区间,我实测下来集中在0.55 到 0.8。
推导逻辑是这样的:0.55 以下的加噪程度,模型还能从残余信息里"看出"原衣服的轮廓和颜色,它会倾向于保留原样,你要换的新款式体现不出来。0.8 以上,原图信息被破坏得太彻底,模型只能靠提示词和 ControlNet 硬画,衣服的贴合关系、和身体交界处的自然过渡都会变差,而且极容易在边缘长出多余结构。
跨类型替换(西装换卫衣)往上取 0.7 到 0.8,同类替换(T 恤换 T 恤)取 0.55 到 0.65。这个区间不是死的,判断标准是出图后新衣服的版型是否来自目标款式、而不是原图。如果版型明显还是原衣服的,加 0.05 再试。
CFG 的作用是提示词引导强度。换装场景不建议拉高,5 到 7 是安全区。拉到 9 以上,模型会过度服从提示词,布料的褶皱变得生硬做作,颜色也会过饱和得像塑料。低于 4 则提示词几乎不起作用,衣服类型可能完全跑偏。
步数 25 到 35 足够,步数再高收益递减,只是浪费时间。采样器我固定用 DPM++ 2M 一类的中性采样器,别用那些带强烈风格倾向的,换装要的是稳定还原而不是艺术化。
| 参数 | 同类替换 | 跨类型替换 | 说明 |
|---|---|---|---|
| 重绘幅度 | 0.55 ~ 0.65 | 0.70 ~ 0.80 | 看版型来源判断,不看去噪曲线 |
| CFG | 5 ~ 6 | 6 ~ 7 | 超过 8 布料质感发硬 |
| 步数 | 25 ~ 30 | 30 ~ 35 | 再高收益递减 |
| 蒙版模糊 | 4 ~ 6 | 6 ~ 8 | 跨类型时留更大融合空间 |
| 蒙版扩展 | 16 ~ 24 | 24 ~ 32 | 给模型更多上下文 |
3.3 分段重绘与局部回填
全身换装(上衣加裤子或裙子)一次性重绘的问题在于,模型要同时处理两块结构差异很大的区域,容易顾此失彼——上衣做得好,裤子就画成一团。稳妥的做法是分段:先做上衣,回填到原图,再做下装。
分段时有个细节决定成败:留出重叠带。比如上衣蒙版做到腰线以上,下装蒙版从腰线略上方开始,两块蒙版有 30 到 50 像素的重叠。这样两次重绘在腰部的过渡是连续的,不会出现一条突兀的分界线。如果两块严丝合缝地拼接,接缝处的光影、布料走向必然对不上。
回填用图像编辑的图层合成,蒙版边缘做羽化过渡。回填完如果发现腰部颜色有轻微偏差,用小半径的修复工具局部过一遍,比重新走一遍重绘快得多。
还有一种情况需要"重绘—看—再重绘"的迭代:新衣服有复杂图案(条纹、格纹、logo 位)。第一次重绘先出结构和版型,第二次降低重绘幅度到 0.35 左右,只在图案区域补细节。一次到位反而会把图案画糊,分两步走清晰度明显更高。
3.4 光影、褶皱与质感统一
出图之后,最容易被挑刺的地方是光影。原图的光从左上打过来,新衣服的高光却在右上,这种错误外行一眼就能看出来。修正方式有两条:一是在提示词里明确光源方向,二是靠后期。
提示词这条路的写法是把光源信息写进正向描述里,比如"左侧柔和主光、右侧轮廓光"这类,模型对方向性描述是有反应的,但不是百分百服从。所以我还是建议留一道后期工序:用曲线和色阶在蒙版区域内做局部调整,把明暗关系和原图对齐。这一步纯手工,但耗时很短,一张图两三分钟。
褶皱的自然度取决于两件事:一是 ControlNet 有没有提供足够的结构信息,二是重绘幅度够不够让模型自由生成。太低的幅度会让褶皱沿用原图的走向,在新版型上就显得不合理(比如卫衣不该有衬衫那种硬挺的折线)。这时候可以局部提高重绘幅度重做一次,或者用参考图注入的方式给模型一个正确的褶皱样本。
质感统一指的是布料和皮肤、头发之间的质感协调。新衣服边缘如果和皮肤的过渡太生硬,看起来就是"贴上去的"。处理方法是在蒙版边缘外扩 10 像素左右做一次低幅度(0.25 到 0.35)的局部重绘,让交界处的像素重新融合一遍。这一步很多人忽略,但它对"像不像真照片"的影响非常大。
4. 替换模特:换脸与换身两条路
换装和换人是两个独立问题,但经常被一起提出——客户想要"这套衣服穿在另一个模特身上"。这时候流程就变成:先换装,再换人,或者反过来。顺序很重要,我的经验是先换装后换人,因为换装过程会改变肩宽、胸围等视觉比例,如果先换脸再换装,脸和身体的匹配关系会被破坏,容易出现"头身比例不对"的诡异感。
当然也有反过来的场景:如果新模特的体型和原模特差异很大(比如从偏瘦换到偏壮),那就得先换身再换装,因为衣服的版型是跟着身体走的,身体变了衣服必须重画。
4.1 换脸:身份特征与姿态解耦
换脸的核心是把"身份"和"姿态"分开。身份包括五官形状、肤色、脸型比例;姿态包括角度、表情、光照方向。理想情况是保留原图的姿态和光照,只替换身份特征。
技术上有两条常用路径。一条是基于人脸特征注入的方式,把目标人脸的特征向量注入到生成过程中,配合低幅度重绘,让模型在保留姿态的前提下重建五官。另一条是先生成再对齐的方式,先按原图重绘出一张脸,再把目标人脸的关键特征迁移过去。
我倾向第一条,因为它在批量场景下更稳定。参数上的要点是:重绘幅度卡在 0.3 到 0.45 之间。太低换不动,太高脸型会跟着变,出来的人既不像原图也不像目标。蒙版只框住五官区域,额头、发际线、下颌线尽量留在蒙版外,因为这些区域一旦重绘就容易和脖子、头发的连接关系出错。
换脸最常见的翻车是"眼神死"和"皮肤质感不一致"。前者是因为眼睛区域重绘时模型没拿到足够的细节约束,后者是因为脸部和脖子的肤色没对齐。解决办法分别是:眼睛单独做一次小蒙版高精度重绘;脖子区域做一次低幅度融合重绘。
4.2 换身:骨架对齐与体型匹配
换身比换脸难一个量级,因为它涉及全身比例。核心工具是姿态控制——先用姿态估计提取原图的人体骨架,再把目标模特的体型特征注入进去,让模型按新体型重绘整个身体。
流程上是这样的:提取原图骨架 → 蒙版覆盖全身(留出头部)→ 用姿态约束锁定关节位置 → 提示词描述目标模特的体型特征(身高比例、肩宽、体型类型)→ 中高幅度重绘(0.65 到 0.8)。
这里有个关键判断:关节位置要不要跟着改。如果只是体型微调(瘦一点、高一点),骨架保持不动,只改蒙版内的体型描述就够了。如果是大幅改变(比如从站姿换到另一个完全不同的站姿),那就得手动调整骨架图,重新摆一遍关节点。手调骨架听着麻烦,但比反复试参数快得多。
体型匹配还有个隐性问题是衣服的版型必须跟着体重变。原来穿 M 码的人换成偏壮的体型,衣服还是 M 码的紧绷感就会很违和。这时候要么在提示词里加上版型描述(宽松、oversize),要么直接重走一遍换装流程。我一般选择后者,因为分两步做质量更可控。
4.3 换装与换人的组合流水线
把两个流程串起来,就是完整的商业替换流水线。我实际用的顺序是:
- 原图预处理,分辨率统一。
- 换装第一轮:上衣重绘,ControlNet 上轮廓加姿态约束。
- 回填、检查版型,不合格则调参重来。
- 下装重绘,注意腰部重叠带。
- 整体低幅度过一遍,统一光影和色调。
- 换脸,蒙版只框五官。
- 脖子、发际线局部融合。
- 放大、细节修复、输出。
这条流水线跑顺之后,单张图的处理时间大概在 8 到 15 分钟,其中大部分时间花在检查和局部修补上,而不是等出图。真正耗时的从来不是生成,是判断哪里不对、为什么不对。
实操心得:给每一步的中间结果单独存盘,命名带上步骤号和参数。返工时能定位到具体是哪一步出的问题,也能对比不同参数的效果。我吃过没存中间图的亏,改到第五步发现版型不对,只能从头再来。
5. 常见问题排查实录
问题排查这部分,我按"症状 → 原因 → 处置"的结构整理,都是实际遇到过的。有些问题的根因和直觉完全相反,比如颜色不对可能根本不是提示词的问题。
5.1 蒙版边缘、色溢与接缝
症状一:重绘区域边缘有一圈明显的亮边或暗边。
原因是蒙版模糊太小,模型在边界处没有足够的上下文做过渡,重绘区域的像素和保留区域的像素直接硬接。处置方式是把蒙版模糊从 4 提到 8,或者用羽化后的蒙版做二次合成。还有一种情况是 VAE 不匹配导致整体色调偏移,这时候边界会显出一条色差线,换 VAE 即可。
症状二:新衣服的颜色"渗"到了皮肤或背景上。
这是重绘区域超出蒙版导致的。检查两个地方:蒙版扩展是不是设得太大,重绘幅度是不是过高。幅度超过 0.85 时,模型的影响会溢出蒙版边界,尤其在蒙版外的区域本身信息量少(比如大面积纯色背景)的时候特别明显。处置是降低幅度到 0.75 以下,同时把蒙版扩展收回到 24 以内。
症状三:分段重绘后,腰线处有一条横向的接缝。
重叠带没留够,或者两次重绘的光照方向描述不一致。处置是重新做重叠带合成,并在两次重绘的提示词里保持相同的光源描述。如果接缝已经很明显,用局部修复工具沿接缝走一遍低幅度重绘,比重新做两块快。
5.2 手部、花纹、蕾丝的高频崩坏
手部是局部重绘的经典雷区。手在换装蒙版边缘时最容易被卷进去重绘,而模型画手本来就弱。处置办法很简单:蒙版坚决避开手部,宁可让袖口少覆盖一点。如果手确实需要改(比如原来手插兜,新衣服没兜),单独开一次手部蒙版,用高步数低幅度(0.4 到 0.5)精修,别和换装混在一次里。
条纹、格纹、logo这类规则图案,在重绘幅度偏高时会被打散成随机纹理。处置分两步:第一轮用 0.5 左右的幅度定型,第二轮单独对图案区域用 0.3 的低幅度补细节,第二轮提示词里明确写出图案类型和方向。规则图案还有个技巧是配合边缘约束,让模型知道图案要沿着什么方向走。
蕾丝、薄纱、镂空基本是高成本单。这类材质在半透明区域的重绘会连带背景一起重画,出来往往是糊的。可行的做法是把蒙版做得非常精细,逐块处理,或者接受"它不是完全还原"这个前提,改用参考图注入的方式给模型一个高保真的样本,让它照着画。
5.3 参数与症状速查表
| 症状 | 最可能的原因 | 优先处置 | 次要处置 |
|---|---|---|---|
| 衣服款式没变 | 重绘幅度偏低 | 幅度加 0.05 ~ 0.1 | 检查负面提示词是否压制过强 |
| 版型跑飞、不贴身 | ControlNet 权重偏低或缺失 | 轮廓约束权重提到 0.7 | 补加姿态约束 |
| 脸崩、五官变形 | 蒙版覆盖到面部 | 收紧蒙版到衣服区域 | 幅度降到 0.75 以下 |
| 布料像塑料 | CFG 过高 | CFG 降到 6 以下 | 提示词补充材质描述 |
| 颜色发灰发闷 | VAE 不匹配 | 换匹配的 VAE | 检查是否有色彩校正步骤 |
| 边缘生硬 | 蒙版模糊过小 | 模糊提到 6 ~ 8 | 羽化后重新合成 |
| 出现多余结构 | 幅度过高或负面词不足 | 幅度降 0.05 | 负面词补"多余接缝""重复衣领" |
| 褶皱不合理 | 原图结构污染 | 提高幅度或释放控制步数区间 | 用参考图注入正确褶皱 |
| 关节位置错乱 | 姿态约束缺失 | 加 openpose,权重 0.8 | 手动修正骨架图 |
6. 效率与交付:把单张手艺变成流水线
单张精修和批量交付完全是两种工作模式。前者追求上限,后者追求下限——批量场景里最重要的不是最好那张有多好,而是最差那张能不能过线。这个思路转变之后,很多参数选择会跟着变:我会刻意收窄参数区间、固定模型组合、减少每次的随机变量,用一点点上限换取稳定性。
6.1 批量化的工程思路
批量化的第一个动作是建立参数模板。按服装品类分几套:上装、下装、连衣裙、外套。每套模板固定底模、inpaint 模型、ControlNet 组合、参数区间、提示词框架。新单子进来先归到某个品类,直接用对应模板起跑。
第二个动作是减少人工介入点。全流程里必须人工判断的只有三个地方:蒙版是否合格、版型是否正确、边缘是否需要修补。其他环节尽量自动化,包括分辨率统一、批量重绘、批量放大。自动分割的蒙版偶尔出错,但检查一遍比全程手绘快得多。
第三个动作是建立失败样本库。每次遇到崩坏的图,存下来并标注原因。积累到几十张之后,你会发现自己踩的坑高度集中在那几类,后面遇到类似原图能提前预判并规避——比如毛领图直接不接、纯色大面积背景的图降低幅度、重叠穿搭的图先做深度约束。
还有一点是关于硬件和时间的现实考量。高分辨率重绘加多 ControlNet 叠加,显存占用很高,批量跑的时候要控制并发,别一次塞十张导致显存溢出中断。我习惯小批次跑,每批三到五张,出完检查一遍再继续,比一次性跑完发现全废要省时间。
6.2 交付前的自检清单
出图前的最后一道检查,我一般按这个清单过:
- 新衣服的版型是否来自目标款式,而不是原图款式的变体。
- 肩线、袖长、衣长这些关键比例是否合理,有没有出现袖子穿过手臂、下摆穿进裤腰的情况。
- 光影方向是否和原图一致,高光位置对不对。
- 边缘过渡是否自然,放大到 200% 看有没有硬接缝。
- 皮肤和布料的交界是否有明显色差。
- 手部、颈部、发际线有没有被卷进重绘导致变形。
- 图案和纹理是否清晰,条纹有没有随机断裂。
- 整体色调是否统一,有没有一块区域偏冷或偏暖。
这份清单看着琐碎,但每一条都对应过一次实际的返工。我自己最常翻车的是肩线和光影这两项,前者是因为蒙版画得不够贴合肩部轮廓,后者是因为提示词里光源描述和原图对不上。现在这两项基本成了肌肉记忆,出图第一眼就看这两个地方。
最后说一句关于时间预期的话。刚开始做换装,一张图折腾一两个小时很正常,不要觉得自己方法错了。真正缩短时间的不是某个神奇参数,而是对"什么样的图能做好、什么样的图做不好"的判断力。等你扫一眼原图就能预判这单要花多久、哪一步会卡,流程才算真正跑通了。我现在接单前会先看三件事:衣服和背景的交界清不清楚、有没有半透明材质、光照是不是单一光源。这三项都过,基本可以放心进流程;有一项不过,就先跟需求方沟通预期,别硬做。