diff --git a/modules/processing.py b/modules/processing.py index cb64d352e..f6732e50d 100644 --- a/modules/processing.py +++ b/modules/processing.py @@ -1089,8 +1089,7 @@ class StableDiffusionProcessingImg2Img(StableDiffusionProcessing): image = np.array(image).astype(np.float32) / 255.0 image = np.moveaxis(image, 2, 0) imgs.append(image) - if shared.backend == shared.Backend.DIFFUSERS: - self.init_images = unprocessed # assign early for diffusers + self.init_images = unprocessed if shared.backend == shared.Backend.DIFFUSERS else imgs if len(imgs) == 1: batch_images = np.expand_dims(imgs[0], axis=0).repeat(self.batch_size, axis=0) if self.overlay_images is not None: diff --git a/modules/processing_diffusers.py b/modules/processing_diffusers.py index 9686f9ae3..b0dccfbfd 100644 --- a/modules/processing_diffusers.py +++ b/modules/processing_diffusers.py @@ -162,7 +162,7 @@ def process_diffusers(p: StableDiffusionProcessing, seeds, prompts, negative_pro sd_samplers.create_sampler(sampler.name, shared.sd_model) # TODO(Patrick): For wrapped pipelines this is currently a no-op cross_attention_kwargs={} - if p.init_images is not None and len(p.init_images) > 0: + if len(getattr(p, 'init_images', [])) > 0: while len(p.init_images) < len(prompts): p.init_images.append(p.init_images[-1]) if lora_state['active']: