超简单 Flux 换背景工作流:结合最新 ControlNet 深度 Depth 模型

在本篇文章中,我们将深入探讨如何使用 Flux ControlNet Depth 模型进行换背景。这种方法是我之前基于 Flux 模型换背景工作流的简化版。虽然旧的工作流程功能强大,但它非常复杂且运行缓慢。今天,我们将学习一个更快速、更易用的替代方案。

欢迎去B站观看本文对应的视频教程:

Flux ControlNet Depth 模型的新特性

这款由 Jasper AI 开发的全新 ControlNet 模型的最大优势是,它可以与现有的 SDXL ControlNet 节点和采样器兼容,无需专门的Flux ControlNet 节点。这大大简化了搭建过程,使其更容易集成到您的现有工作流中。

关键优势:

  • 更简化的设置: 无需专门的Flux ControlNet 节点,直接兼容现有框架。
  • 提升运行速度: 优化后的节点结构显著减少了处理时间。
  • 更高的灵活性: 能够无缝处理不同类型的背景。

模型下载

在开始之前,请从 HuggingFace下载 Flux ControlNet Depth 模型。下载后,请按照以下步骤操作:

  1. 重命名 文件为 Flux.1-dev-Controlnet-Depth.safetensors
  2. 移动 文件到您的 ControlNet 模型文件夹:ComfyUI/models/controlnet

如果您在流程中看到某些节点缺失,只需安装它们即可确保所有功能正常运行。

工作流程概览

该新工作流程分为三个主要部分:

  1. 图像缩放和背景去除
  2. 深度图生成与新背景创建
  3. 将修改后的主体替换为原始主体

整个流程大约包含 30 个节点,运行速度比以往更快。例如,在一张 3090 GPU 上,它可以在大约 1 分钟内生成一张图像。使用 Hyper LoRA 的 8 步图像生成甚至可以进一步提高速度!

让我们先看看原始图像和使用此工作流更换了背景的图像:

工作流程下载

您可以在这里下载完整的工作流。在使用它之前,请确保已正确下载并配置 ControlNet Depth 模型。

接下来,让我们逐步讲解每个部分的详细操作。

第 1 部分:图像缩放和背景去除

步骤 1:调整图像尺寸

我上传的原始图像尺寸为 2995 x 3994 像素——对于我们想要生成的背景来说,这个尺寸太大了,可能会使 GPU 负载过重。因此,我们需要对图像进行缩放。

  1. 使用 ‘Upscale Image By’ 节点,并将缩放系数设置为 0.35,将图像尺寸缩小至 1048 x 1398 像素

步骤 2:使用 ‘Anything Everywhere’ 节点

  • 这个节点可以使图像输入的连接更加整洁,避免流程节点连接混乱。
  • 缩放后的图像被连接到 ‘Image Comparer’ 节点的 ‘image_b’ 端口。

步骤 3:去除背景

为了将主体从背景中分离出来:

  1. 使用 ‘Inspyrenet’ 节点去除原始背景。
  2. 根据图像调整 threshold 值。较高的阈值将移除更多的背景元素。
  3. 此节点还生成了一个 蒙版,我们将在之后的合成中使用它。

步骤 4:创建并应用灰色背景

  1. 使用 ‘Image Blank’ 节点创建一个灰色背景。
  • 红色、绿色和蓝色RGB 值 均设置为 128
  1. 使用 ‘Image Composite Masked’ 节点将蒙版化的主体合成到灰色背景上。

修复粗糙的边缘

  • 通常,在主体周围会出现白色边框或粗糙的边缘。为了修复这些问题:
  1. 使用 ‘Mask Grow Fast’ 节点。
  2. 设置 负的“grow”值 以去除白色边缘。
  3. 调整 “blur”值 以平滑边缘过渡。

到这里,第一个部分就完成了。主体已被干净地隔离,并放置在一个灰色背景上。接下来我们进入第二部分。

第 2 部分:深度图生成与背景创建

步骤 1:使用 Flux ControlNet Depth 模型

在这部分中,我们将从灰色背景图像生成深度图。深度图将指导 ControlNet 在创建新背景时保持主体的大致轮廓。

  1. 根据您的显存情况选择 fp8 版本GGUF 版本
  2. 编写一个与原始图像光照条件相匹配的 提示词
  • 例如,如果你的图像具有柔和的日落光照效果,请避免在提示词中使用强烈的正午光照描述。

步骤 2:生成深度图

  1. 对灰色背景图像应用 ‘AIO Aux’ 预处理节点。
  2. 使用生成的深度图引导 ControlNet 确定主体的大致轮廓。

提高背景清晰度的技巧

Flux 生成的背景可能略显模糊。如果您需要更清晰的效果,可以尝试使用 LoRA 模型 进行微调。更多细节请参考我之前的文章

第 3 部分:主体替换

现在我们已经生成了新背景,我们需要将原始主体放回图像中。

步骤 1:移除修改后的主体

主要节点是 ‘Big Lama Remover’。它能够从生成的背景图像中移除修改后的主体,从而创建一个空白区域供我们粘贴原始主体。

  1. 再次使用 ‘Inspyrenet’ 节点生成移除所需的蒙版。
  • threshold 设低,确保主体被完全擦除。

步骤 2:粘贴原始主体

  1. 使用 ‘ImageCompositeMasked’ 节点将原始主体融合到新背景中。
  • 这将确保主体边缘与周围环境自然融合。

至此,背景替换已完成。效果看起来更加干净且更具专业性。

最终总结

这个工作流利用 Flux ControlNet Depth 模型提供了一个更快速、更简化的背景替换方案。与之前的方法相比,它结构更简单,但仍能生成令人满意的结果。我已经在开发一个功能更强大的升级版本——敬请期待更多更新!

类似文章

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注