目录
- 1. 问题背景
- 2. 问题场景分析
- 3. 批量文生图
- 4. 批量图生图
- 5. Comfyui自动化
问题背景
现在有一批提示词,想通过文生图,针对每个提示词生成多张效果图,然后对效果图经过图生图、ControlNet的处理和插件放大系列功能,处理成最终想要的效果图。最后,从这些效果图里面筛选出合格的图片来使用。问题深入分析后,就是一个自动化的过程,节省人工刷图时间
问题场景分析
- 1. 批量文生图:针对批提示词,能够以文生图的方式,批量生成多张图片
- 2. 批量图生图:针对批量图片,再通过图生图、ControlNet等插件处理批量生成多张图
- 3. Comfyui:自动化执行上述批量文生图+图生图,将上述两个步骤合并为一个工作流自动化执行
批量文生图
通过脚本,选择“从文本框或文件载入提示词”,不管是直接文本输入还是上传文件,提示词的其格式是一样的,每一行只写一条记录
格式:
--prompt "1dog" --negative_prompt "nsfw" --width 512 --height 512 --sampler_name "Euler a" --steps 20 --batch_size 1 --cfg_scale 7 --seed -1
--prompt "1dog" --negative_prompt "nsfw" --width 512 --height 512 --sampler_name "Euler a" --steps 30 --batch_size 4 --cfg_scale 7 --seed -1
prompt:正向提示词
negative_prompt:反向提示词
seed:种子
width:宽度
height:高度
cfg_scale:提示词相关性
sampler_name:采样器名称
steps:采样步数
batch_count:生成图片次数
batch_size:一次生成图片数量
restore_face:人脸修复
举个例子: 给出两个完整的 prompt,一个是画一只猫,一个是狗,那么我们就可以在文本输入框内填
--prompt "1dog" --negative_prompt "nsfw" --width 512 --height 512 --sampler_name "Euler a" --steps 20 --batch_size 1 --cfg_scale 7 --seed -1
--prompt "1cat" --negative_prompt "nsfw" --width 512 --height 768 --sampler_name "Euler a" --steps 20 --batch_size 1 --cfg_scale 7 --seed -1
如果出的是人物相关的,可以开启Adetailer功能,来修复脸部或者手部的崩坏情况,批量出的图也会采用改插件效果
Adetailed插件
网上很多错误的脚本,--sampler_name给出的是--sample_name,--steps给出的是--step,需要留意
Batch 批量处理功能在图生图页面的 Batch 子栏目中,它可以将指定目录(Input director)下的所有图片依次作为图生图任务的引导图来生成对应的新图,并将新图批量存储到指定的输出目录(Output directory)。
- • 选择 Batch 子栏目。
- • 在 Input directory 输入框中设置引导图所在的目录。
- • 在 Output directory 输入框中设置生成图的输出目录。
- • 设置图生图相关的其他参数。
- • 点击生成。
Input directory 和 Output directory 对应的路径可以是相对路径,也可以是绝对路径。相对路径,是相对于 Stable Diffusion WebUl 的工作目录;绝对路径,需要确保路径正确,Stable Diffusion 对该路径有读写权限
Comfyui自动化
上述批量出图通过了两步流程,先文生图,再图生图。Comfyui理论上是可以通过一个流程完成两步流程。但是在第一步处理后,可以人工过滤掉不需要第二步处理的崩坏图,会大大节省处理时间与节省资源;而Comfyui只能全部处理,无法人工过滤
Comfyui涉及到另一个系统,这里mark一下,后续进行深入分析