ComfyUI背景融合工作流,人像产品都适用,SDXL 5步出图
在上一篇文章中,我发布了一个 ComfyUI 的换背景的工作流,能够将产品或人像完美地融入新的背景。它的背景是由AI生成的,不过有些情况下我们已经有了一个现成的背景,这时候可以用我今天给大家介绍的这个工作流。
实际应用
假设你有一张人像,你希望将主体置于一个全新的背景中。

第一步是移除现有的背景。这种工作流足够灵活,可以移除简单或复杂的背景。

一旦背景被移除,主体会被重新定位到新场景中。

真正的“魔法”发生在我们使用Lightning版本的SDXL模型的时候。该模型能够重新调整主体的光影效果,确保光线方向、高光和阴影与新环境相匹配。
例如,如果原始光线来自右侧,但新场景的光线来自左侧,SDXL模型会相应地调整主体的光影,从而使主体看起来更自然,与新背景的阴影和高光无缝融合。

不仅限于人物,这种工作流在处理产品时同样出色。

不论是将一个人物放置在沙滩上,还是将一个产品置于摄影棚环境中,其应用场景几乎是无穷的。通过这一流程,你可以获得令人惊艳的效果,提升项目的视觉吸引力。

⚡️发电下载工作流:https://afdian.com/p/a31569c0d71d11efac785254001e7c00
节点组1:加载模型
现在,让我们一步步学习如何使用这一工作流。
在第一个节点组中,我们的主要任务是加载必要的模型并为图像处理做好准备。这一步非常重要,因为它为整个工作流奠定了基础。以下是具体步骤:
- 激活初始节点组:
- 首先,只激活第一个节点组。这将简化流程,仅专注于加载模型。
- 运行工作流:
- 执行工作流以启动模型加载过程。这一步确保所有必要的模型已准备就绪。
- 上传主体和背景图像:
- 将主体图像和背景图像导入工作流。这些图像是你将要处理的核心组件。
- 限制图像尺寸:
- 使用用于限制图像尺寸的节点,通过调整”scale_to_length(缩放到边)”参数控制图像的尺寸。
- 加载Checkpoint和ControlNet模型:
- 加载Checkpoint模型和ControlNet模型。这些模型对于结构和控制非常重要。
- 设置ControlNet类型:
- 指定你使用的ControlNet模型类型。
- 使用BiRefNet模型移除背景:
- 使用BiRefNet模型从主体图像中移除背景。此模型有两个版本,你可以选择最适合自己需求的一个。
- 集成Clip视觉模型与IP-Adapter:
- 在后续步骤中,Clip视觉模型会与IP-Adapter结合使用,这种组合能有效增强工作流的图像处理能力。
节点组2:移除背景
在第二个节点组中,我们的目标是有效移除主体图像的背景。这一步对于隔离主体并为其融入新背景做好准备至关重要。以下是具体步骤:
- 启动背景移除工作流:
- 运行专门设计用于移除主体图像背景的工作流。这一节点组的功能与之前的工作流类似。
- 执行背景移除:
- 观察工作流如何精准地从主体图像中移除背景。在这一过程中,需要确保干净,不留多余元素。
- 检查并修正瑕疵:
- 在初步移除后,检查是否有残留的阴影或其他瑕疵,例如主体鞋底下的阴影。这些小细节会影响最终图像的整体质量。
- 使用“Preview Bridge”节点微调:
- 利用”Preview Bridge(桥接预览)”节点进行必要的调整。这个节点可以帮助你微调,确保移除干净且没有残留。
- 重新运行工作流:
- 做出调整后,再次运行工作流以完成背景移除过程。
- 完成背景移除:
- 背景成功移除后,主体图像已经被隔离,并可用于集成到新场景中。
节点组3:主体重新定位、提示词生成和Canny边缘图像创建
在这个节点组中,我们的重点是将主体定位到新背景中,并优化图像的整体外观。以下是具体步骤:
- 主体定位:
- 通过此节点组调整主体在背景中的位置。这一步确保主体与新场景无缝对齐。
- 利用深度图模糊背景:
- 注意背景会被稍微模糊化。这种效果是通过“ProPostDepthMapBlur”节点实现的,该节点基于深度图对图像进行模糊处理。离镜头越远的物体会显得越模糊,从而为图像增加深度感。
- 深度图是通过“Depth Anything”节点创建的,该节点对于决定图像中不同区域的模糊程度至关重要。
- 调整“blur_strength”参数以控制模糊的强度。通过调整此设置,可以根据你的艺术愿景微调深度效果。
- 自动生成提示词:
- 使用“Florence2Run”节点自动生成提示词。如果需要更详细的提示词,可以将“task”参数设置为“more_detailed_caption”,从而生成更长、更具描述性的提示词。
- Canny边缘图像创建:
- 生成Canny边缘图像以协助控制主体的轮廓。降低阈值参数,直到主体的轮廓变得清晰分明。
- 选择Canny边缘图像版本:
- Canny边缘图像有两个版本:一个显示主体和背景的轮廓,另一个仅聚焦于主体。通常,“Image Input Switch”节点中的第一个选项是首选,但在某些特定场景下可能会选择第二个选项,稍后会详细解释这些场景。
节点组4:重绘和阴影调整
在这个节点组中,我们专注于通过重绘来优化图像,增强光影效果,确保主体能够自然地融入背景。以下是具体步骤:
- 图像重绘:
- 使用此节点组重绘由上一组生成的图像。这一步对于重新调整主体的光影效果以及创建帮助主体自然融入背景的阴影至关重要。
- 对比与调整:
- 将新生成的图像与上一组的图像进行对比,注意高光和阴影的变化,这些变化会使画面显得更加和谐。虽然一些原始细节可能会丢失,但只要新生成的主体保持与原始图像相同的轮廓,这些细节可以在最后一组中恢复。
- 扩展重绘区域:
- 确认主体周围地板上的阴影需求。初始的重绘区域可能只关注主体,因此需要通过”Preview Bridge(桥接预览)”节点扩展至包括地板。这一调整对于创建自然的地板阴影至关重要。
- 抽卡:
- 扩展重绘区域后再次运行工作流。需要准备好更改KSampler中的种子并尝试多次迭代,因为每次的阴影都会有所不同。得益于SDXL模型的Lightning版本,这一过程非常高效,仅需五步采样。
- 解决阴影不一致问题:
- 如果阴影看起来破碎或与原始图像一致,问题可能出在Canny边缘限制了阴影形状。为了解决这一问题,可以使用”Image Input Switch(图像切换)”节点选择主体轮廓作为轮廓图像,从而形成更自然的阴影。
- 最终工作流执行:
- 完成调整后再次运行工作流。观察地板上的阴影如何均匀分布,增强了画面的真实感。
- 推荐采样器和调度器设置:
- 使用“dpmpp_sde”采样器,并将调度器设置为“exponential”,以确保在处理过程中的构图稳定性。
通过以上步骤,主体可以自然地融入新背景,光影效果也能得到极大的优化。
节点组5:创建和修改阴影遮罩
在这个最终的节点组中,我们重点是生成和优化阴影遮罩,以提升整体图像质量。以下是具体步骤的详细说明:
- 生成初始阴影遮罩:
- 通过特定节点从上一组生成的图像中生成阴影遮罩。该遮罩会突出显示图像中的阴影区域。
- 重复相同的过程,从第三组生成的图像中创建另一个阴影遮罩。这一步确保不同阶段的阴影表现保持一致 。
- 减法操作生成精准遮罩:
- 对生成的两个阴影遮罩执行减法操作。这一操作会生成一个范围更小的阴影遮罩,从而实现更精确的阴影调整。
- 修改阴影遮罩:
- 使用“Preview Bridge”节点根据需要修改阴影遮罩。例如,如果遮罩意外覆盖了地板上的某些区域(如花盆),可以手动涂抹以排除这些部分。
- 增强阴影可见性:
- 使用“Levels(色阶)”节点调整阴影遮罩的亮度。通过提高遮罩的亮度,阴影在最终图像中会更加突出和明显,从而提升图像的真实感。
- 完善图层遮罩:
- 经过上述调整后,你可以创建一个优化的图层遮罩,在增强阴影效果的同时,不影响图像的其他元素。
节点组6:恢复细节与调整阴影
在这一部分,我们旨在恢复重绘过程中丢失的细节,并解决阴影融合问题。以下是步骤的详细指南:
- 通过Image Detail Transfer恢复细节:
- 使用“Image Detail Transfer(图像细节迁移)”节点恢复重绘过程中丢失的大部分细节。该节点需要两张图像和一个遮罩:目标图像(具有正确的高光和阴影)以及源图像(具有正确的细节)。主体遮罩将细节迁移限制在主体范围内。
- 调整阴影融合:
- 如果主体面部的阴影未能均匀融合,调整“Image Blur(图像模糊)”节点的“blur_sigma”或“blur_radius”值。这有助于柔化阴影,使其更自然。
- 解决地板阴影问题:
- 如果地板上的阴影由于原始阴影破碎而未能均匀融合,注意“Image Detail Transfer”节点的局限性,它无法直接影响背景。这种情况需要通过其他方法单独解决。
- 使用Color Blend调整色彩:
- 利用“Color Blend(颜色混合)”节点调整图像颜色,使其与原始图像匹配,从而确保整体色调一致。
- 通过ImageBlend创建阴影:
- 使用“ImageBlend(图像混合)”节点将图层图像与背景图像进行混合。将混合模式设置为“darker(变暗)”,以加深特定区域并创建阴影。上一组生成的图层遮罩定义了这些阴影区域。
- 恢复高光:
- 将混合模式调整为“lighter(变亮)”,以恢复阴影区域中的高光。这一步平衡了阴影和高光,从而增强图像的深度和真实感。
- 微调高光和阴影:
- 使用右侧的节点进一步调整高光和阴影。将“shadow_brightness(阴影亮度)”设置为小于1以加深阴影,而将“highlight_brightness(高光亮度)”设置为大于1以增强高光。通过修改阴影和高光的范围来实现所需的效果。
故障排除与优化技巧
在处理复杂工作流时,遇到问题是很正常的。以下是一些帮助你排查问题并优化结果的提示:
- 地板阴影问题:
- 如果地板上的阴影未能很好地融合,可以尝试从第四节点组更换为新的背景图像。新背景中包含重绘的阴影区域,这可能有助于提升阴影的融合效果。
- 纹理与过渡调整:
- 如果阴影区域的纹理与周围地板不匹配,可以进一步模糊遮罩。这一调整有助于创建更平滑的过渡和更协调的纹理。
- 迭代运行工作流:
- 不要害怕多次运行工作流。每次迭代都能让你更好地完善图像,直到达到满意的效果。调整遮罩以排除特定元素(如花盆),将重绘精力集中在地板上。
- 利用Levels节点增强阴影:
- 如果需要更深的地板阴影,可以使用“Levels(色阶)”节点增加黑点值以加深阴影,然后重新运行工作流以有效应用更改。
通过这些步骤和技巧,你可以显著改善图像的阴影质量和整体表现。
总结
这一工作流赋予你增强图像的能力,通过高效管理阴影和背景,实现真实且视觉吸引力更强的效果。通过遵循上述步骤和提示,你可以获得令人满意的成果。记住,掌握这一工作流的关键在于不断尝试。大胆探索新想法,挑战创造力的边界。每一次尝试都能让你更接近发现创新技术和效果的目标。