diff options
author | AUTOMATIC <16777216c@gmail.com> | 2022-09-03 18:02:38 +0000 |
---|---|---|
committer | AUTOMATIC <16777216c@gmail.com> | 2022-09-03 18:02:38 +0000 |
commit | 657074a73deb2b1b4ac723bf3b16769770fd2931 (patch) | |
tree | 05d4dd61eb84ff5cda5f5c0093bf65d2cd1d59a3 /modules/processing.py | |
parent | e67a56dbb4643c7ddd01668bcd7c4ec7f58f7d81 (diff) | |
download | stable-diffusion-webui-gfx803-657074a73deb2b1b4ac723bf3b16769770fd2931.tar.gz stable-diffusion-webui-gfx803-657074a73deb2b1b4ac723bf3b16769770fd2931.tar.bz2 stable-diffusion-webui-gfx803-657074a73deb2b1b4ac723bf3b16769770fd2931.zip |
option to invert mask for inpainting
Diffstat (limited to 'modules/processing.py')
-rw-r--r-- | modules/processing.py | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/modules/processing.py b/modules/processing.py index cab79b4c..2830209e 100644 --- a/modules/processing.py +++ b/modules/processing.py @@ -282,7 +282,7 @@ def fill(image, mask): class StableDiffusionProcessingImg2Img(StableDiffusionProcessing):
sampler = None
- def __init__(self, init_images=None, resize_mode=0, denoising_strength=0.75, mask=None, mask_blur=4, inpainting_fill=0, inpaint_full_res=True, **kwargs):
+ def __init__(self, init_images=None, resize_mode=0, denoising_strength=0.75, mask=None, mask_blur=4, inpainting_fill=0, inpaint_full_res=True, inpainting_mask_invert=0, **kwargs):
super().__init__(**kwargs)
self.init_images = init_images
@@ -294,6 +294,7 @@ class StableDiffusionProcessingImg2Img(StableDiffusionProcessing): self.mask_blur = mask_blur
self.inpainting_fill = inpainting_fill
self.inpaint_full_res = inpaint_full_res
+ self.inpainting_mask_invert = inpainting_mask_invert
self.mask = None
self.nmask = None
@@ -302,8 +303,13 @@ class StableDiffusionProcessingImg2Img(StableDiffusionProcessing): crop_region = None
if self.image_mask is not None:
+ self.image_mask = self.image_mask.convert('L')
+
+ if self.inpainting_mask_invert:
+ self.image_mask = ImageOps.invert(self.image_mask)
+
if self.mask_blur > 0:
- self.image_mask = self.image_mask.filter(ImageFilter.GaussianBlur(self.mask_blur)).convert('L')
+ self.image_mask = self.image_mask.filter(ImageFilter.GaussianBlur(self.mask_blur))
if self.inpaint_full_res:
self.mask_for_overlay = self.image_mask
|