option to unload GFPGAN after using
This commit is contained in:
parent
f40617d6c4
commit
595c827bd3
|
@ -4,6 +4,7 @@ import traceback
|
|||
|
||||
from modules.paths import script_path
|
||||
from modules.shared import cmd_opts
|
||||
import modules.shared
|
||||
|
||||
|
||||
def gfpgan_model_path():
|
||||
|
@ -23,10 +24,18 @@ loaded_gfpgan_model = None
|
|||
def gfpgan():
|
||||
global loaded_gfpgan_model
|
||||
|
||||
if loaded_gfpgan_model is None and gfpgan_constructor is not None:
|
||||
loaded_gfpgan_model = gfpgan_constructor(model_path=gfpgan_model_path(), upscale=1, arch='clean', channel_multiplier=2, bg_upsampler=None)
|
||||
if loaded_gfpgan_model is not None:
|
||||
return loaded_gfpgan_model
|
||||
|
||||
return loaded_gfpgan_model
|
||||
if gfpgan_constructor is None:
|
||||
return None
|
||||
|
||||
model = gfpgan_constructor(model_path=gfpgan_model_path(), upscale=1, arch='clean', channel_multiplier=2, bg_upsampler=None)
|
||||
|
||||
if not cmd_opts.unload_gfpgan:
|
||||
loaded_gfpgan_model = model
|
||||
|
||||
return model
|
||||
|
||||
|
||||
def gfpgan_fix_faces(np_image):
|
||||
|
|
|
@ -25,6 +25,7 @@ parser.add_argument("--allow-code", action='store_true', help="allow custom scri
|
|||
parser.add_argument("--medvram", action='store_true', help="enable stable diffusion model optimizations for sacrficing a little speed for low VRM usage")
|
||||
parser.add_argument("--lowvram", action='store_true', help="enable stable diffusion model optimizations for sacrficing a lot of speed for very low VRM usage")
|
||||
parser.add_argument("--always-batch-cond-uncond", action='store_true', help="a workaround test; may help with speed in you use --lowvram")
|
||||
parser.add_argument("--unload-gfpgan", action='store_true', help="unload GFPGAN every time after processing images. Warning: seems to cause memory leaks")
|
||||
parser.add_argument("--precision", type=str, help="evaluate at this precision", choices=["full", "autocast"], default="autocast")
|
||||
parser.add_argument("--share", action='store_true', help="use share=True for gradio and make the UI accessible through their site (doesn't work for me but you might have better luck)")
|
||||
cmd_opts = parser.parse_args()
|
||||
|
|
Loading…
Reference in New Issue
Block a user