前言
之前用 Stable Diffusion 批量绘制图片,基本上都得用视频作为 ControlNet 的输入,比如 M2M ,这对于批量生图,或者序列帧生序列帧来说,比较麻烦,于是自己写了一个让 Stable Diffusion 的 ControlNet 支持序列帧的插件。
项目地址
主要功能
- 一个 Stable Diffusion WebUI 支持的脚本;
- 让 ControlNet 支持序列帧(批量多图);
- 与 ControlNet Movie2Movie 类似,只是 M2M 上传视频时会压缩图片质量,损失细节,而 Frame2Frame 不会。
用法
- 下载 frame2frame.py 文件,复制到
./extensions/sd-webui-controlnet/scripts/
文件夹下; - 设置-ControlNet-勾选【允许其他脚本控制此扩展】;
- 重载前端;
视频演示
思路
这个插件的实现借鉴了 sd-webui-controlnet 多个脚本的实现方式。
全局 UI
起初想参考 sd-webui-controlnet/scripts/controlnet.py 做一个全局的 UI ,但是后来发现如果放到全局,则拿到 controlnet 的回调比较费劲,后来这种思路就放弃了。
脚本
最终参考 sd-webui-controlnet/scripts/movie2movie.py 完成了脚本模式的开发。