1-8 ConditioningArea画面区域分区生图:一张图分区域控制,海滩哥斯拉同框互不干扰
准备工作:这篇教程要用到的材料
本教程演示的工作流是「1-8_[图像生成]_ConditioningArea画面区域分区控制生图」,位于工作流大合集的 01 图像生成 分类目录下。它的作用一句话概括:把画面按坐标分成几个区域,每个区域用不同的提示词单独控制,最后合成一张图——同一张图里,左边是海滩、右边哥斯拉破水而出,各占各的区域互不干扰。
这个工作流只用到 2 个模型,其中 1 个在之前的教程里已经下过(1-5 的 VAE),真正要新下的只有 1 个底模:
- SD1.5 写实底模:工作流原配是 absolutereality v1.81(写实风格模型),在 Civitai 或模型站搜索 absolutereality 下载 v1.81 版 → models\checkpoints\v15\ 子目录(注意:工作流里引用的路径带 v15 前缀,文件要放进 v15 子目录,直接丢 checkpoints 根目录会选不到)。也可以换成你已有的任何 SD1.5 底模,画风跟着变
- VAE vae-ft-mse-840000-ema-pruned.safetensors(约 334MB,1-5 教程已下载)→ models\vae\

一、这个工作流能干什么
普通生图是一条提示词管整张图,画面里想同时出现两个毫不相干的主体(海滩和哥斯拉、产品和模特、人物和文字),提示词会互相打架。这个工作流把画面当成一块可以切分的画布:
- 区域分区:用 ConditioningSetArea 把提示词绑定到画面的指定坐标区域——哪块区域听哪段提示词,泾渭分明
- 多主体同框:两段提示词各自只影响自己的区域,海滩区域不会因为哥斯拉提示词长出怪物,哥斯拉区域也不会被海滩提示词带偏
- 局部精修:第二阶段用低 denoise 接力,只重绘指定区域的内容,其他部分保持不动
它的用途很明确:场景+主体的合成图、同一画面多元素布局、只改画面某一块内容的二创。
二、工作流原理:提示词也要划地盘
核心是两个 ConditioningSetArea 节点(区域限定)+ 一个 ConditioningCombine(区域合并),走两阶段生成:
- 第一段提示词「a photo of a Caribbean beach」(加勒比海滩照片)→ 包一层 ConditioningSetArea(宽 640、高 512、x=0、y=0、strength=1)——只管画面左半边
- 第二段提示词「Godzilla raising from the waters of a Caribbean beach」(哥斯拉从海滩水中升起)→ 包一层 ConditioningSetArea(宽 512、高 512、x=448、y=0)——管右侧区域
- 两段条件用 ConditioningCombine 合并 → 第一段 KSampler(ddpm、18 步、denoise=1)整幅生成:左边按海滩词出海滩,右边按哥斯拉词出哥斯拉

区域坐标怎么读:ConditioningSetArea 的参数是 width(宽)、height(高)、x(起始横坐标)、y(起始纵坐标)、strength(影响强度)。以 960x512 画布为例:海滩区域 x=0 宽 640,即左 2/3;哥斯拉区域 x=448 宽 512,即右 1/2——两个区域在 448~640 之间有重叠带,重叠处两段提示词都会生效,避免区域接缝太生硬。
两阶段里还有一个细节:第二阶段 KSampler(dpmpp_2m、15 步、denoise=0.35)只接哥斯拉那段提示词,对第一遍的成图做低强度局部重绘——海滩基本不动,哥斯拉区域的细节被进一步细化。这就是"指哪打哪"的局部精修:不需要蒙版,靠区域坐标就能圈定重绘范围。
三、实操:换掉作者的海滩和哥斯拉
第一步:先跑一遍原图。作者示例(海滩+哥斯拉)能正常出图,说明模型和环境没问题,同时也看一遍"区域分区"的效果长什么样。
第二步:改两段提示词。想换成自己的内容,改两个 CLIPTextEncode 的正面提示词即可:
- 第一段(大区域,画面主体场景):如 a photo of a modern living room(现代客厅)
- 第二段(小区域,想塞进去的元素):如 a robot standing in the living room(机器人站在客厅里)
第三步:调整区域坐标。换的内容占位不同,区域可能要跟着改——想塞在画面正中间,就把第二段 ConditioningSetArea 的 x 调大(比如 x=200、宽 400);想让元素小一点,就调小 width/height。
第四步:跑图。直接运行,左侧大区域出主体场景,右侧区域叠上你的元素。


四、区域设置的三个要领
- 坐标对着画布算:画布 960x512,区域参数以像素为单位,先想好元素占画面的比例,再填 width/height/x/y。占左半边 = x=0 宽 480;占右半边 = x=480 宽 480
- 留一段重叠带:两个区域最好有几十像素的重叠(作者示例里 448~640 就重叠了),两段提示词在重叠处共同生效,接缝更自然;完全不相接的两个区域,边界可能生硬
- strength 控制这段词的影响力:默认 1(全效),想让某区域内容弱化一点可以降到 0.8~0.9

五、参数调节
- 第二阶段 denoise 是关键:0.35 是作者默认(局部精修,只重塑区域内容不破坏整体);想大改区域内容可以升到 0.5~0.6,想只微调就降到 0.2~0.3
- 第二段提示词重复第一段也行:如果只想把整个画面某区域再修细一点,第二阶段可以直接复用第一段提示词,当"区域增强"用
- 固定 seed:两个 KSampler 都是固定种子模式(作者已固定),跑出满意效果后不要改 seed,方便对比调参
- 换底模换画风:absolutereality 是写实底模,想换动漫风就在 CheckpointLoaderSimple 里换成你已有的动漫底模

六、常见问题排查
- 模型下拉框是空的:absolutereality 要放进 models\checkpoints\v15\ 子目录(工作流引用路径带 v15 前缀),放错目录或文件名不一致都选不到,放好刷新
- 出图两个区域内容串味了:两段 ConditioningSetArea 区域重叠太多或 strength 都拉满,减小重叠带或调低一段的 strength
- 第二段元素没出现:检查区域坐标是否在画布范围内(960x512),x+width 超出画布右侧的话区域落到画面外了
- 区域边界生硬:两个区域留一段重叠带(见第四节要领),或把第二阶段的 denoise 稍微调高一点
- 第一遍和第二遍效果差别不大:第二阶段是局部精修,正常现象;想明显变化就提高 denoise(0.5 以上)