From a8b1bbe441fe3021f08acd321bec88ad4bccebdb Mon Sep 17 00:00:00 2001 From: cmdr2 Date: Sat, 8 Feb 2025 11:25:28 +0530 Subject: [PATCH] Fix a bug where the inpainting mask wasn't resized to the image size when using the WebUI/v3.5 backend. Thanks @AvidGameFan for their help in investigating and fixing this! --- ui/easydiffusion/backends/webui/impl.py | 2 +- ui/easydiffusion/tasks/render_images.py | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/ui/easydiffusion/backends/webui/impl.py b/ui/easydiffusion/backends/webui/impl.py index 0e644bd5..a651a66f 100644 --- a/ui/easydiffusion/backends/webui/impl.py +++ b/ui/easydiffusion/backends/webui/impl.py @@ -195,7 +195,7 @@ def generate_images( cmd["init_images"] = [init_image] cmd["denoising_strength"] = prompt_strength if init_image_mask: - cmd["mask"] = init_image_mask + cmd["mask"] = init_image_mask if isinstance(init_image_mask, str) else img_to_base64_str(init_image_mask) cmd["include_init_images"] = True cmd["inpainting_fill"] = 1 cmd["initial_noise_multiplier"] = 1 diff --git a/ui/easydiffusion/tasks/render_images.py b/ui/easydiffusion/tasks/render_images.py index 2a46e6e6..ecb0226f 100644 --- a/ui/easydiffusion/tasks/render_images.py +++ b/ui/easydiffusion/tasks/render_images.py @@ -240,6 +240,10 @@ def generate_images_internal( if req.init_image is not None and int(req.num_inference_steps * req.prompt_strength) == 0: req.prompt_strength = 1 / req.num_inference_steps if req.num_inference_steps > 0 else 1 + if req.init_image_mask: + req.init_image_mask = get_image(req.init_image_mask) + req.init_image_mask = resize_img(req.init_image_mask.convert("RGB"), req.width, req.height, clamp_to_8=True) + backend.set_options( context, output_format=output_format.output_format,