Spaces:
Running
on
Zero
Running
on
Zero
rm debugging code
Browse files
app.py
CHANGED
@@ -435,10 +435,6 @@ def super_resolution_image(lr_image, prompt_text, fixed_seed_value, use_random_s
|
|
435 |
# add some noise to the input image
|
436 |
noise_std = current_sr_config.get("degradation", {}).get("kwargs", {}).get("noise_std", 0.0)
|
437 |
y_tensor += torch.randn_like(y_tensor) * noise_std
|
438 |
-
# save for debugging purposes
|
439 |
-
# first convert to PIL
|
440 |
-
pil_y = postprocess_image(y_tensor)# Remove batch dimension and convert to PIL
|
441 |
-
pil_y.save("debug_input_image.png") # Save the input image for debugging
|
442 |
|
443 |
|
444 |
print("Running SR inference...")
|
@@ -455,8 +451,6 @@ def super_resolution_image(lr_image, prompt_text, fixed_seed_value, use_random_s
|
|
455 |
upscaled_input = POSTERIOR_MODEL.forward_operator.nn(upscaled_input) # Use nearest neighbor upscaling
|
456 |
upscaled_input = postprocess_image(upscaled_input)
|
457 |
# save for debugging purposes
|
458 |
-
upscaled_input.save("debug_upscaled_input.png") # Save the upscaled input image for debugging
|
459 |
-
# upscaled_input = upscaled_input.resize((hr_resolution, hr_resolution), resample=Image.NEAREST)
|
460 |
return (upscaled_input, output_pil), current_sr_config["seed"]
|
461 |
|
462 |
except gr.Error as e:
|
@@ -734,55 +728,57 @@ Use the slider to compare the low resolution input image with the super-resolved
|
|
734 |
|
735 |
gr.Markdown("---") # Separator
|
736 |
gr.Markdown("### Click an example to load:")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
737 |
|
738 |
-
# --- GALLERY FOR SUPER RESOLUTION EXAMPLES ---
|
739 |
-
sr_gallery_items = [[ex[0], f"Prompt: {ex[1]} Steps: {ex[3]}"] for ex in example_list_sr]
|
740 |
-
sr_gallery = gr.Gallery(
|
741 |
-
value=sr_gallery_items,
|
742 |
-
label="Super Resolution Examples",
|
743 |
-
columns=4,
|
744 |
-
height="auto",
|
745 |
-
visible=True
|
746 |
-
)
|
747 |
-
|
748 |
-
# --- GALLERY FOR INPAINTING EXAMPLES ---
|
749 |
-
inp_gallery_items = [[ex[0]["background"], f"Prompt: {ex[1]} Steps: {ex[3]}"] for ex in example_list_inp]
|
750 |
-
inp_gallery = gr.Gallery(
|
751 |
-
value=inp_gallery_items,
|
752 |
-
label="Inpainting Examples",
|
753 |
-
columns=4,
|
754 |
-
height="auto",
|
755 |
-
visible=True
|
756 |
-
)
|
757 |
-
|
758 |
-
def on_sr_gallery_select(evt: gr.SelectData):
|
759 |
-
idx = evt.index
|
760 |
-
ex = example_list_sr[idx]
|
761 |
-
image_input.value = ex[0]
|
762 |
-
prompt_text.value = ex[1]
|
763 |
-
task_selector.value = ex[2]
|
764 |
-
num_steps_slider.value = ex[3]
|
765 |
-
update_visibility(ex[2])
|
766 |
-
return [image_input, prompt_text, task_selector, num_steps_slider]
|
767 |
-
|
768 |
-
def on_inp_gallery_select(evt: gr.SelectData):
|
769 |
-
idx = evt.index
|
770 |
-
ex = example_list_inp[idx]
|
771 |
-
image_editor.value = ex[0]
|
772 |
-
prompt_text.value = ex[1]
|
773 |
-
task_selector.value = ex[2]
|
774 |
-
num_steps_slider.value = ex[3]
|
775 |
-
update_visibility(ex[2])
|
776 |
-
return [image_editor, prompt_text, task_selector, num_steps_slider]
|
777 |
-
|
778 |
-
sr_gallery.select(
|
779 |
-
fn=on_sr_gallery_select,
|
780 |
-
outputs=[image_input, prompt_text, task_selector, num_steps_slider]
|
781 |
-
)
|
782 |
-
inp_gallery.select(
|
783 |
-
fn=on_inp_gallery_select,
|
784 |
-
outputs=[image_editor, prompt_text, task_selector, num_steps_slider]
|
785 |
-
)
|
786 |
|
787 |
# --- End of Gradio UI definition ---
|
788 |
|
|
|
435 |
# add some noise to the input image
|
436 |
noise_std = current_sr_config.get("degradation", {}).get("kwargs", {}).get("noise_std", 0.0)
|
437 |
y_tensor += torch.randn_like(y_tensor) * noise_std
|
|
|
|
|
|
|
|
|
438 |
|
439 |
|
440 |
print("Running SR inference...")
|
|
|
451 |
upscaled_input = POSTERIOR_MODEL.forward_operator.nn(upscaled_input) # Use nearest neighbor upscaling
|
452 |
upscaled_input = postprocess_image(upscaled_input)
|
453 |
# save for debugging purposes
|
|
|
|
|
454 |
return (upscaled_input, output_pil), current_sr_config["seed"]
|
455 |
|
456 |
except gr.Error as e:
|
|
|
728 |
|
729 |
gr.Markdown("---") # Separator
|
730 |
gr.Markdown("### Click an example to load:")
|
731 |
+
def load_inp_example(input_data):
|
732 |
+
for ex in example_list_inp:
|
733 |
+
if ex[0]["background"] == input_data:
|
734 |
+
prompt_value, task, num_steps = ex[1], ex[2], ex[3]
|
735 |
+
# Load inpainting example into ImageEditor
|
736 |
+
image_editor.clear()
|
737 |
+
if input_data and input_data.get("background"):
|
738 |
+
image_editor.upload_image(input_data["background"])
|
739 |
+
if input_data and input_data.get("layers"):
|
740 |
+
for layer in input_data["layers"]:
|
741 |
+
image_editor.upload_mask(layer)
|
742 |
+
# Update other UI controls
|
743 |
+
prompt_text.value = prompt_value
|
744 |
+
task_selector.value = task
|
745 |
+
num_steps_slider.value = num_steps
|
746 |
+
seed_slider.value = random.randint(0, 2**32 - 1)
|
747 |
+
guidance_scale_slider.value = default_guidance_scale
|
748 |
+
update_visibility(task)
|
749 |
+
|
750 |
+
def load_sr_example(input_data):
|
751 |
+
for ex in example_list_sr:
|
752 |
+
if ex[0] == input_data:
|
753 |
+
prompt_value, task, num_steps = ex[1], ex[2], ex[3]
|
754 |
+
# Load super-resolution example into Image component
|
755 |
+
image_input.clear()
|
756 |
+
image_input.upload_image(input_data)
|
757 |
+
# Update other UI controls
|
758 |
+
prompt_text.value = prompt_value
|
759 |
+
task_selector.value = task
|
760 |
+
num_steps_slider.value = num_steps
|
761 |
+
seed_slider.value = random.randint(0, 2**32 - 1)
|
762 |
+
guidance_scale_slider.value = default_guidance_scale
|
763 |
+
update_visibility(task)
|
764 |
+
# Examples for both tasks, loading via load_example (mutates components directly)
|
765 |
+
with gr.Row():
|
766 |
+
gr.Examples(
|
767 |
+
examples=example_list_sr,
|
768 |
+
inputs=[image_input, prompt_text, task_selector, num_steps_slider],
|
769 |
+
fn=load_sr_example,
|
770 |
+
label="Super Resolution Examples",
|
771 |
+
cache_examples=True
|
772 |
+
)
|
773 |
+
with gr.Row():
|
774 |
+
gr.Examples(
|
775 |
+
examples=example_list_inp,
|
776 |
+
inputs=[image_editor, prompt_text, task_selector, num_steps_slider],
|
777 |
+
fn=load_inp_example,
|
778 |
+
label="Inpainting Examples",
|
779 |
+
cache_examples=True
|
780 |
+
)
|
781 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
782 |
|
783 |
# --- End of Gradio UI definition ---
|
784 |
|