Stable Diffusion+Ebsynth 分割模型无法切换gpu运行解决

Ebsynth 在stable diffusion中的插件会用到transparent-background这个插件来分割图片人物和背景,然后通过对人物部分做蒙版重绘做到减少抖动。

1.这里运行会遇到不少问题,如果没有会遇到下载transparent-background的运行模型,下载失败的情况
安装pip install transparent-background,
下载模型
https://www.mediafire.com/file/gjvux7ys4to9b4v/latest.pth/file
放到C:\Users\自己的用户名.transparent-background\加一个ckpt_base.pth文件

2.当然你可以运行一个fast的版本,这个版本会比较粗略一点,运行速度应该能够快一倍

3.关键在这个代码,这里会发现找不到gpu运行环境,所以运行在cpu当中,导致运行速度非常缓慢。翻看源码,原来使用的是sbprocess来运行,是主动运行在subprocess当中的虚拟环境,如果虚拟环境没有配置gpu cuda环境,就会运行在cpu当中。特别如果使用秋叶等各位大神的整合包,就大概率会遇到此问题。
代码是在stage1.py当中
±+

def create_mask_transparent_background(input_dir, output_dir, tb_use_fast_mode, tb_use_jit, st1_mask_threshold):
    fast_str = " --fast" if tb_use_fast_mode else ""
    jit_str = " --jit" if tb_use_jit else ""
    venv = "venv"

你可能感兴趣的:(Stable,stable,diffusion,python,AI作画,ai)