
在电商视觉设计与 AI 绘画生产管线中,约有 60% 的工时消耗在修整手部破损、更换商品背景以及将正方形构图扩展为横版 Banner 上。表面上看局部重绘与画面扩图只是用画笔涂抹选区让模型自由填补,本质上这是在潜空间(模型压缩与提取特征的数学向量空间)与像素空间之间,通过噪声掩码、边缘渐变与几何先验完成的受控插值计算。
许多创作者在切换到节点式工具 ComfyUI 后,经常遇到重绘边缘出现黑边硬缝、新生成内容与原图风格割裂或者扩图区域透视崩塌的困境。要达到商业交付级别的画面融合度,需要理清潜空间遮罩机制、羽化与膨胀数值配置,并结合 ControlNet 的空间约束能力。
潜空间重绘的底层链路与遮罩构建机制
局部重绘(Inpainting,即指仅在图像特定区域重新采样生成而保持其余部分不变的技术)在 ComfyUI 中的运行逻辑与传统 WebUI 的黑盒操作不同。它将图像的像素输入、遮罩处理、潜变量编码以及降噪采样彻底拆分为独立节点。
标准重绘工作流的最小闭环包含 Load Image(加载图像)、Image To Mask(图像转遮罩)、Set Latent Noise Mask(设置潜空间噪声遮罩)、VAE Encode(变分自编码器编码,将像素压缩为潜特征)、KSampler(采样器)与 VAE Decode(解码回像素)。只有被遮罩覆盖的潜特征区域会在 KSampler 中被重新加噪并去噪,未遮罩区域则全程保持原始潜数据锁定。
遮罩的来源决定了修图的精度与效率。创作者通常采用两套构建方案:
- 手绘遮罩:在 ComfyUI 内置的 Mask Editor 中手动涂抹,或者在 Photoshop 等外部软件中绘制黑白通道图后导入。这种方式适合处理轮廓随意、边界要求宽松的背景重绘。
- 语义分割遮罩:接入 Segment Anything(SAM,一种通用的图像分割大模型)或 Grounding-DINO 节点。输入商品、服装或面部的英文文本标签,系统会自动生成像素级贴合的目标轮廓,避免手工涂抹带来的边缘溢出。
[原始图像输入] ──┬──> [VAE Encode] ──> [Latent] ──┐
│ │
[遮罩构建/SAM] ──┴──> [Mask 处理/羽化] ───────────┴──> [Set Latent Noise Mask] ──> [KSampler (Denoise 0.5)] ──> [VAE Decode] ──> [最终无缝图像]
消除接缝的参数铁三角:羽化、膨胀与降噪控制
重绘画面中最常见的失败现象是边界处出现一层灰白或黑色的切痕。这种接缝产生的根源在于 VAE 编解码过程中的 8 倍下采样压缩:像素层面的一个锐利边缘,在潜空间中会被离散化,解码时就会在边缘 8 像素范围内产生重构误差。
要消除这条物理边界,必须在进入潜空间前对遮罩执行精细预处理:
- Mask Feathering(遮罩羽化):羽化是指将遮罩边缘由纯黑纯白变为柔和的半透明灰度渐变。将 Feather 节点参数设定在 8 至 16 像素之间,可以让新生成的像素与原有像素在线性权重过渡中相互融合,抹平突兀的切口。
- Grow Mask(遮罩膨胀):手绘或自动分割的边界往往紧贴物体边缘,这会导致原有物体的暗色轮廓线残留在重绘区外。设置 2 至 4 像素的外向膨胀,能够把原主体的边缘杂色彻底划入重绘范围。
- Denoise(降噪幅度)控制:降噪幅度决定了重绘区允许模型发挥的自由度。完全更换物体或重做背景时,Denoise 需设定在 0.7 至 1.0;若只是在原有材质上修复瑕疵、调整面部结构或修改纹理,Denoise 应严格限制在 0.4 至 0.6 之间,防止画面产生与周围环境脱节的画风突变。
| 阶段 | 核心问题 | 留下的硬伤 |
|---|---|---|
| 初始选区构建 | 手绘轮廓贴合度不足或自动分割边缘溢出 | 漏掉原有物体残影或误伤不需要修改的主体部位 |
| 遮罩边缘预处理 | 未配置像素羽化(Feather)与向外膨胀(Grow Mask) | 产生无法通过后期消除的高对比度硬切接缝与黑边 |
| KSampler 去噪采样 | 降噪幅度(Denoise)过高或提示词权重失衡 | 重绘区域的光影角度、色温与未涂抹区域严重割裂 |
扩图工作流:分块填充与画布延展策略
扩图(Outpainting,即将现有画面的四周留白并让模型推断补充外部场景的技术)本质上是一种带有空间外推属性的特殊局部重绘。在 ComfyUI 中,扩图通常借助 Pad Image for Outpainting 节点来实现。该节点在原图的上下左右指定像素方向填充空白区域,并同步输出对应的留白遮罩。
直接在四个方向同时大面积扩图往往会导致灾难性的画面漂移,模型容易在四周生成重复的人物肢体或结构混乱的无意义噪点。最稳妥的商业扩图方法是采取单向逐步扩展策略:
单次只向左侧或右侧扩展原图宽度的 25% 至 50%,保持 Denoise 在 0.6 左右进行单边渲染。每次生成后将结果重新送入流程作为基底,继续向下一个方向扩展。
对于需要大面积延展背景的场景,空白区域缺少像素参考容易导致噪点失控。此时可在 Pad 节点之后插入简易的色彩均值填充或将边缘像素做拉伸模糊(Blur),为 VAE 编码器提供基础色调提示,使采样器能够顺着原图的色相与明度向外平滑延伸。
引入 ControlNet:用线稿与深度图锚定空间骨架
当重绘与扩图涉及复杂空间透视、商品规整轮廓或人体特定姿态时,单纯依赖文本提示词和遮罩往往会出现透视崩塌或线条扭曲。ControlNet(一种通过向预训练扩散模型添加空间条件控制来精准引导生成的附加神经网络架构)在此时起到定位骨架的作用。
在局部换装或商品换材质流程中,主体轮廓必须严格保留。将原图接入 Canny(边缘检测,提取图像的高频线条)或 LineArt 预处理器,并将生成的线稿输入 ControlNet Apply 节点。Canny 约束能强行锁定物体的物理外形结构,KSampler 则仅在遮罩内替换面料质感或颜色。
在扩图工作流中,Depth(深度图估计)模型能发挥关键价值。扩图时模型经常无法判断地平线位置与纵深比例,导致延伸出来的地板或天花板呈现反常倾斜。通过对扩展后的拼版图像提取深度图并结合 ControlNet 约束,可以迫使模型沿着原图既有的三维透视网格继续向外推演场景,保证室内建筑线条或室外地平线的连续性。
综合判断
局部重绘与扩图并非单纯依靠模型想象力的覆盖重算,而是建立在严密数学边界上的受控潜空间插值。很多创作者误以为画面融合度差是因为大模型本身的生成能力不足,实际生产中的缺陷几乎都源于遮罩边缘未做灰度羽化缓冲、膨胀像素不足以覆盖原图边缘杂色,或者缺乏几何物理约束。
只要在工作流中建立起 SAM 语义提取、8 至 16 像素羽化预处理、适度降噪幅度以及 ControlNet 空间几何锚定的组合链路,ComfyUI 就能在保留主体特征与空间透视的前提下,稳定输出达到商用印刷与电商上架标准的视觉图像。
一个未解决的问题
尽管通过遮罩羽化与 ControlNet 能够完美解决几何轮廓和像素边界的无缝衔接,跨越重绘边界的全局动态光影与复杂环境反射(如高反射金属、镜面玻璃以及水面波光)在扩散模型中仍然缺乏物理一致性追踪。当遮罩内部的主体发生大幅变动时,未遮罩区域中原本存在的反光与环境着色无法实现双向联动更新,这一环节在全自动商业管线中依然需要人工介入校色。
引用来源
- ComfyUI Official Documentation: Inpainting and Outpainting Guide (2024-03-15)
https://comfyanonymous.github.io/ComfyUI_examples/inpaint/
- Meta AI: Segment Anything Project and Model Overview (2023-04-05)
https://github.com/facebookresearch/segment-anything
- Lvmin Zhang, Anyi Rao, Maneesh Agrawala: Adding Conditional Control to Text-to-Image Diffusion Models (2023-02-10)
https://arxiv.org/abs/2302.05543
- Hugging Face Diffusers: Outpainting with ControlNet Documentation (2024-04-23)
https://huggingface.co/blog/OzzyGT/outpainting-controlnet
- Stability AI: Stable Diffusion XL Inpainting and Mask Latent Techniques (2023-07-26)
https://stability.ai/research/stable-diffusion-xl-core-technologies-and-applications