C27:如何在 ComfyUI 中使用 Remove Latent Mask 配合通用扩散模型进行修复

简介

在上一篇文章优化 ComfyUI 修复分辨率中,我们探讨了在使用专用模型进行修复工作流时提高分辨率的技术。在此基础上,本文重点介绍使用通用扩散模型进行修复,这种方法用途广泛,适用于无法使用或不适合使用专用修复模型的场景。

本指南将逐步带您完成整个流程,重点介绍以下关键节点,如Set Latent Noise Mask和Remove Latent Mask,以实现无缝效果。读完本文,您将了解如何优化纹理、平衡去噪参数,以及如何调整工作流以获得一致的输出,同时利用通用模型的灵活性。

让我们深入了解工作流,探索如何在 ComfyUI 中使用通用扩散模型进行修复。



为什么使用通用扩散模型进行修复?

  • 专用模型的局限性:Flux.1 Schnell 等模型在某些场景下可能会失败,尤其是在使用蒸馏模型时。
  • 通用扩散模型的优势:Juggernaut XL 等通用模型在非商业应用中提供更广泛的兼容性和更好的图像质量。
  • 理想用例:这种方法非常适合在保留原始纹理的同时,在遮罩区域生成新内容。

使用通用扩散模型进行修复的分步工作流

步骤 1:准备图像和遮罩

  1. 加载背景图像:
    • 使用Load Image节点在 ComfyUI 中导入图像。
  2. 创建遮罩:
    • 右键单击图像并选择Open in Mask Editor。
    • 涂抹您想要修复的区域(例如,移除一张桌子)。

步骤 2:搭建图

  1. 添加 KSampler Advanced 节点:
    • 使用两个 KSampler 节点进行优化:
      • 第一个节点执行大部分扩散步骤(例如,20 步中的 18 步)。
      • 第二个节点对图像进行重采样以保持一致性(例如,2 步)。
    • 配置提示词:
      • 第一个节点:指定修复区域的细节(例如,“empty room, carpet textured”)。
      • 第二个节点:包含完整的提示词,以与原始图像匹配。
  2. 调整去噪参数:
    • 对于标准 KSampler 节点,将去噪值设置在0.6 and 0.8之间,以获得最佳效果。
    • 对于高级节点,在扩散步骤中手动控制噪声的添加。

步骤 3:使用 Set Latent Noise Mask

  • 用途:分离用于图生图操作和随机噪声生成的区域。
  • 配置:
    • 将潜在图像从VAE Encode连接到Set Latent Noise Mask节点。
    • 将遮罩从Load Image节点连接到同一节点。
    • 将潜在输出发送到第一个 KSampler 节点。

步骤 4:使用 Remove Latent Mask 优化工作流

  • 用途:确保重采样过程应用于整个图像,而不仅仅是遮罩区域。
  • 配置:
    • 通过 Manager 安装ComfyUI Essentials Node Pack。
    • 在两个 KSampler 节点之间添加Remove Latent Mask节点。

步骤 5:比较结果

  • 添加Image Comparer节点(在 rgthree 节点包中提供)。
  • 将原始图像和解码输出从VAE Decode连接到比较器的输入。
  • 展开比较器节点以分析修复前后的差异。
移除墙上的显示屏

优化后的效果:


优化结果的关键见解

  • 模型选择:与其他模型相比,Juggernaut XL 提供更柔和的纹理和更好的抗锯齿效果。
  • 去噪值:尝试0.6 and 0.8之间,以平衡上下文保留效果。
  • 提示词配置:对修复区域使用有针对性的提示词,对重采样使用全面的提示词以保持一致性。

结论

在 ComfyUI 中使用通用扩散模型进行修复,为专用工作流提供了一种灵活而强大的替代方案。利用Set Latent Noise Mask和Remove Latent Mask等节点,您可以获得无缝效果,在保留原始纹理的同时生成新内容。无论您从事的是商业项目还是非商业项目,这种方法都能让您更好地控制图像质量和优化效果。

有关更高级的技术和故障排除技巧,请参阅我们之前关于优化 ComfyUI 修复分辨率的文章。

发表评论