Fix "masked content" in loopback script

The loopback script did not set masked content to original after first loop. So each loop would apply a fill, or latent mask. This would essentially reset progress each loop.

The desired behavior is to use the mask for the first loop, then continue to iterate on the results of the previous loop.
master
James Railton 3 years ago
parent 33b8539147
commit a9eef1fbb1

@ -42,6 +42,7 @@ class Script(scripts.Script):
all_images = [] all_images = []
original_init_image = p.init_images original_init_image = p.init_images
original_prompt = p.prompt original_prompt = p.prompt
original_inpainting_fill = p.inpainting_fill
state.job_count = loops * batch_count state.job_count = loops * batch_count
initial_color_corrections = [processing.setup_color_correction(p.init_images[0])] initial_color_corrections = [processing.setup_color_correction(p.init_images[0])]
@ -112,6 +113,7 @@ class Script(scripts.Script):
last_image = processed.images[0] last_image = processed.images[0]
p.init_images = [last_image] p.init_images = [last_image]
p.inpainting_fill = 1 # Set "masked content" to "original" for next loop.
if batch_count == 1: if batch_count == 1:
history.append(last_image) history.append(last_image)
@ -120,6 +122,8 @@ class Script(scripts.Script):
if batch_count > 1 and not state.skipped and not state.interrupted: if batch_count > 1 and not state.skipped and not state.interrupted:
history.append(last_image) history.append(last_image)
all_images.append(last_image) all_images.append(last_image)
p.inpainting_fill = original_inpainting_fill
if state.interrupted: if state.interrupted:
break break

Loading…
Cancel
Save