diff --git a/extensions-builtin/sd_forge_controlnet/lib_controlnet/external_code.py b/extensions-builtin/sd_forge_controlnet/lib_controlnet/external_code.py index e7e76963..b3991482 100644 --- a/extensions-builtin/sd_forge_controlnet/lib_controlnet/external_code.py +++ b/extensions-builtin/sd_forge_controlnet/lib_controlnet/external_code.py @@ -211,25 +211,9 @@ class ControlNetUnit: **{k: v for k, v in d.items() if k in vars(ControlNetUnit)} ) if isinstance(unit.image, str): - img = np.array(api.decode_base64_to_image(unit.image)).astype('uint8') - unit.image = { - "image": img, - "mask": np.zeros_like(img), - } + unit.image = np.array(api.decode_base64_to_image(unit.image)).astype('uint8') if isinstance(unit.mask_image, str): - mask = np.array(api.decode_base64_to_image(unit.mask_image)).astype('uint8') - if unit.image is not None: - # Attach mask on image if ControlNet has input image. - assert isinstance(unit.image, dict) - unit.image["mask"] = mask - unit.mask_image = None - else: - # Otherwise, wire to standalone mask. - # This happens in img2img when using A1111 img2img input. - unit.mask_image = { - "image": mask, - "mask": np.zeros_like(mask), - } + unit.mask_image = np.array(api.decode_base64_to_image(unit.mask_image)).astype('uint8') return unit