From 0031c0d14f5f05044300cfd249b798d07981e66c Mon Sep 17 00:00:00 2001 From: Jonas Klesen Date: Mon, 17 Apr 2023 01:55:25 +0200 Subject: [PATCH 1/2] allow for multiple generations per run --- scripts/inifnite-zoom.py | 52 ++++++++++++++++++++++++++++++++++++++-- 1 file changed, 50 insertions(+), 2 deletions(-) diff --git a/scripts/inifnite-zoom.py b/scripts/inifnite-zoom.py index 29e6f9a..f711674 100644 --- a/scripts/inifnite-zoom.py +++ b/scripts/inifnite-zoom.py @@ -117,6 +117,52 @@ def create_zoom( zoom_speed, outputsizeW, outputsizeH, + batchcount, +): + for i in range(batchcount): + print(f"Batch {i+1}/{batchcount}") + result = create_zoom_single( + prompts_array, + negative_prompt, + num_outpainting_steps, + guidance_scale, + num_inference_steps, + custom_init_image, + video_frame_rate, + video_zoom_mode, + video_start_frame_dupe_amount, + video_last_frame_dupe_amount, + inpainting_denoising_strength, + inpainting_mask_blur, + inpainting_fill_mode, + inpainting_full_res, + inpainting_padding, + zoom_speed, + outputsizeW, + outputsizeH + ) + return result + + +def create_zoom_single( + prompts_array, + negative_prompt, + num_outpainting_steps, + guidance_scale, + num_inference_steps, + custom_init_image, + video_frame_rate, + video_zoom_mode, + video_start_frame_dupe_amount, + video_last_frame_dupe_amount, + inpainting_denoising_strength, + inpainting_mask_blur, + inpainting_fill_mode, + inpainting_full_res, + inpainting_padding, + zoom_speed, + outputsizeW, + outputsizeH ): fix_env_Path_ffprobe() @@ -197,7 +243,7 @@ def create_zoom( current_image.paste(prev_image, mask=prev_image) - # interpolation steps bewteen 2 inpainted images (=sequential zoom and crop) + # interpolation steps between 2 inpainted images (=sequential zoom and crop) for j in range(num_interpol_frames - 1): interpol_image = current_image @@ -293,6 +339,7 @@ def on_ui_tabs(): with gr.Column(scale=1, variant="panel"): with gr.Tab("Main"): + batchcount_slider = gr.Slider(minimum=1, maximum=25,value=shared.opts.data.get("infzoom_batchcount",1),step=1,label="Batch Count") outsizeW_slider = gr.Slider(minimum=16, maximum=2048,value=shared.opts.data.get("infzoom_outsizeW",512),step=16,label="Output Width") outsizeH_slider = gr.Slider(minimum=16, maximum=2048,value=shared.opts.data.get("infzoom_outsizeH",512),step=16,label="Output Height") outpaint_prompts = gr.Dataframe( @@ -418,7 +465,8 @@ def on_ui_tabs(): inpainting_padding, zoom_speed_slider, outsizeW_slider, - outsizeH_slider + outsizeH_slider, + batchcount_slider, ], outputs=[output_video, out_image, generation_info, html_info, html_log], ) From 448d8d6e0a30d1dbf453afcad158e02998dd03d3 Mon Sep 17 00:00:00 2001 From: vahid khroasani <62482657+v8hid@users.noreply.github.com> Date: Tue, 18 Apr 2023 06:57:56 +0400 Subject: [PATCH 2/2] Update inifnite-zoom.py Moving `Batch Count` to bottom of setting Signed-off-by: vahid khroasani <62482657+v8hid@users.noreply.github.com> --- scripts/inifnite-zoom.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/inifnite-zoom.py b/scripts/inifnite-zoom.py index f711674..2b7e7b7 100644 --- a/scripts/inifnite-zoom.py +++ b/scripts/inifnite-zoom.py @@ -339,7 +339,6 @@ def on_ui_tabs(): with gr.Column(scale=1, variant="panel"): with gr.Tab("Main"): - batchcount_slider = gr.Slider(minimum=1, maximum=25,value=shared.opts.data.get("infzoom_batchcount",1),step=1,label="Batch Count") outsizeW_slider = gr.Slider(minimum=16, maximum=2048,value=shared.opts.data.get("infzoom_outsizeW",512),step=16,label="Output Width") outsizeH_slider = gr.Slider(minimum=16, maximum=2048,value=shared.opts.data.get("infzoom_outsizeH",512),step=16,label="Output Height") outpaint_prompts = gr.Dataframe( @@ -381,6 +380,7 @@ def on_ui_tabs(): label="Sampling Steps for each outpaint", ) init_image = gr.Image(type="pil", label="custom initial image") + batchcount_slider = gr.Slider(minimum=1, maximum=25,value=shared.opts.data.get("infzoom_batchcount",1),step=1,label="Batch Count") with gr.Tab("Video"): video_frame_rate = gr.Slider( label="Frames per second",