Linoy Tsaban
commited on
Commit
•
8575e70
1
Parent(s):
c2870fd
Update app.py
Browse fileschanged default value for SEGA edit_momentum_scale to 0.3
app.py
CHANGED
@@ -14,7 +14,6 @@ import re
|
|
14 |
|
15 |
|
16 |
|
17 |
-
|
18 |
def invert(x0, prompt_src="", num_diffusion_steps=100, cfg_scale_src = 3.5, eta = 1):
|
19 |
|
20 |
# inverts a real image according to Algorihm 1 in https://arxiv.org/pdf/2304.06140.pdf,
|
@@ -185,7 +184,7 @@ def edit(input_image,
|
|
185 |
edit_warmup_steps=[warmup_1, warmup_2, warmup_3,],
|
186 |
edit_guidance_scale=[guidnace_scale_1,guidnace_scale_2,guidnace_scale_3],
|
187 |
edit_threshold=[threshold_1, threshold_2, threshold_3],
|
188 |
-
edit_momentum_scale=0.
|
189 |
edit_mom_beta=0.6,
|
190 |
eta=1,
|
191 |
)
|
@@ -296,9 +295,8 @@ with gr.Blocks(css='style.css') as demo:
|
|
296 |
placeholder="Enter your 1st edit prompt",
|
297 |
)
|
298 |
with gr.TabItem('2. Add SEGA edit concepts', id=1):
|
299 |
-
|
300 |
with gr.Row().style(mobile_collapse=False, equal_height=True):
|
301 |
-
# tar_prompt = gr.Textbox(lines=1, label="Target Prompt", interactive=True, placeholder="")
|
302 |
neg_guidance_1 = gr.Checkbox(
|
303 |
label='Negative Guidance')
|
304 |
warmup_1 = gr.Slider(label='Warmup', minimum=0, maximum=50, value=1, step=1, interactive=True)
|
@@ -310,10 +308,9 @@ with gr.Blocks(css='style.css') as demo:
|
|
310 |
max_lines=1,
|
311 |
placeholder="Enter your 1st edit prompt",
|
312 |
)
|
313 |
-
|
|
|
314 |
with gr.Row(visible=False) as row2:
|
315 |
-
|
316 |
-
# tar_prompt = gr.Textbox(lines=1, label="Target Prompt", interactive=True, placeholder="")
|
317 |
neg_guidance_2 = gr.Checkbox(
|
318 |
label='Negative Guidance',visible=True)
|
319 |
warmup_2 = gr.Slider(label='Warmup', minimum=0, maximum=50, value=1, step=1, visible=True,interactive=True)
|
@@ -325,10 +322,8 @@ with gr.Blocks(css='style.css') as demo:
|
|
325 |
max_lines=1,
|
326 |
placeholder="Enter your 2st edit prompt",
|
327 |
)
|
328 |
-
|
329 |
with gr.Row(visible=False) as row3:
|
330 |
-
|
331 |
-
# tar_prompt = gr.Textbox(lines=1, label="Target Prompt", interactive=True, placeholder="")
|
332 |
neg_guidance_3 = gr.Checkbox(
|
333 |
label='Negative Guidance',visible=True)
|
334 |
warmup_3 = gr.Slider(label='Warmup', minimum=0, maximum=50, value=1, step=1, visible=True,interactive=True)
|
@@ -349,8 +344,6 @@ with gr.Blocks(css='style.css') as demo:
|
|
349 |
with gr.Column(scale=1, min_width=100):
|
350 |
run_button = gr.Button("Run")
|
351 |
reconstruct_button = gr.Button("Show me the reconstruction", visible=False)
|
352 |
-
# with gr.Column(scale=1, min_width=100):
|
353 |
-
# edit_button = gr.Button("Edit")
|
354 |
|
355 |
with gr.Accordion("Advanced Options", open=False):
|
356 |
with gr.Row():
|
@@ -369,23 +362,11 @@ with gr.Blocks(css='style.css') as demo:
|
|
369 |
with gr.Accordion("Help", open=False):
|
370 |
gr.Markdown(help_text)
|
371 |
|
372 |
-
|
373 |
|
374 |
add_concept_button.click(fn = add_concept, inputs=sega_concepts_counter,
|
375 |
outputs= [row2, row3, add_concept_button, sega_concepts_counter], queue = False)
|
376 |
|
377 |
-
reconstruct_button.click(
|
378 |
-
fn = show_reconstruction,
|
379 |
-
outputs = [ddpm_edited_image]
|
380 |
-
).then(
|
381 |
-
fn = reconstruct,
|
382 |
-
inputs = [tar_prompt,
|
383 |
-
tar_cfg_scale,
|
384 |
-
skip,
|
385 |
-
wts, zs],
|
386 |
-
outputs = [ddpm_edited_image]
|
387 |
-
)
|
388 |
-
|
389 |
|
390 |
run_button.click(
|
391 |
fn = randomize_seed_fn,
|
@@ -405,7 +386,6 @@ with gr.Blocks(css='style.css') as demo:
|
|
405 |
tar_cfg_scale
|
406 |
],
|
407 |
outputs=[wts, zs, do_inversion],
|
408 |
-
|
409 |
).success(
|
410 |
fn=edit,
|
411 |
inputs=[input_image,
|
@@ -427,7 +407,18 @@ with gr.Blocks(css='style.css') as demo:
|
|
427 |
outputs = [reconstruct_button]
|
428 |
)
|
429 |
|
430 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
431 |
|
432 |
# Automatically start inverting upon input_image change
|
433 |
input_image.change(
|
|
|
14 |
|
15 |
|
16 |
|
|
|
17 |
def invert(x0, prompt_src="", num_diffusion_steps=100, cfg_scale_src = 3.5, eta = 1):
|
18 |
|
19 |
# inverts a real image according to Algorihm 1 in https://arxiv.org/pdf/2304.06140.pdf,
|
|
|
184 |
edit_warmup_steps=[warmup_1, warmup_2, warmup_3,],
|
185 |
edit_guidance_scale=[guidnace_scale_1,guidnace_scale_2,guidnace_scale_3],
|
186 |
edit_threshold=[threshold_1, threshold_2, threshold_3],
|
187 |
+
edit_momentum_scale=0.3,
|
188 |
edit_mom_beta=0.6,
|
189 |
eta=1,
|
190 |
)
|
|
|
295 |
placeholder="Enter your 1st edit prompt",
|
296 |
)
|
297 |
with gr.TabItem('2. Add SEGA edit concepts', id=1):
|
298 |
+
# 1st SEGA concept
|
299 |
with gr.Row().style(mobile_collapse=False, equal_height=True):
|
|
|
300 |
neg_guidance_1 = gr.Checkbox(
|
301 |
label='Negative Guidance')
|
302 |
warmup_1 = gr.Slider(label='Warmup', minimum=0, maximum=50, value=1, step=1, interactive=True)
|
|
|
308 |
max_lines=1,
|
309 |
placeholder="Enter your 1st edit prompt",
|
310 |
)
|
311 |
+
|
312 |
+
# 2nd SEGA concept
|
313 |
with gr.Row(visible=False) as row2:
|
|
|
|
|
314 |
neg_guidance_2 = gr.Checkbox(
|
315 |
label='Negative Guidance',visible=True)
|
316 |
warmup_2 = gr.Slider(label='Warmup', minimum=0, maximum=50, value=1, step=1, visible=True,interactive=True)
|
|
|
322 |
max_lines=1,
|
323 |
placeholder="Enter your 2st edit prompt",
|
324 |
)
|
325 |
+
# 3rd SEGA concept
|
326 |
with gr.Row(visible=False) as row3:
|
|
|
|
|
327 |
neg_guidance_3 = gr.Checkbox(
|
328 |
label='Negative Guidance',visible=True)
|
329 |
warmup_3 = gr.Slider(label='Warmup', minimum=0, maximum=50, value=1, step=1, visible=True,interactive=True)
|
|
|
344 |
with gr.Column(scale=1, min_width=100):
|
345 |
run_button = gr.Button("Run")
|
346 |
reconstruct_button = gr.Button("Show me the reconstruction", visible=False)
|
|
|
|
|
347 |
|
348 |
with gr.Accordion("Advanced Options", open=False):
|
349 |
with gr.Row():
|
|
|
362 |
with gr.Accordion("Help", open=False):
|
363 |
gr.Markdown(help_text)
|
364 |
|
365 |
+
|
366 |
|
367 |
add_concept_button.click(fn = add_concept, inputs=sega_concepts_counter,
|
368 |
outputs= [row2, row3, add_concept_button, sega_concepts_counter], queue = False)
|
369 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
370 |
|
371 |
run_button.click(
|
372 |
fn = randomize_seed_fn,
|
|
|
386 |
tar_cfg_scale
|
387 |
],
|
388 |
outputs=[wts, zs, do_inversion],
|
|
|
389 |
).success(
|
390 |
fn=edit,
|
391 |
inputs=[input_image,
|
|
|
407 |
outputs = [reconstruct_button]
|
408 |
)
|
409 |
|
410 |
+
reconstruct_button.click(
|
411 |
+
fn = show_reconstruction,
|
412 |
+
outputs = [ddpm_edited_image]
|
413 |
+
).then(
|
414 |
+
fn = reconstruct,
|
415 |
+
inputs = [tar_prompt,
|
416 |
+
tar_cfg_scale,
|
417 |
+
skip,
|
418 |
+
wts, zs],
|
419 |
+
outputs = [ddpm_edited_image]
|
420 |
+
)
|
421 |
+
|
422 |
|
423 |
# Automatically start inverting upon input_image change
|
424 |
input_image.change(
|