|
36 | 36 |
|
37 | 37 | sys.path.append('extensions/stable-diffusion-webui-depthmap-script/scripts') |
38 | 38 |
|
39 | | -from stereoimage_generation import apply_stereo_divergence, overlap_red_cyan |
| 39 | +from stereoimage_generation import create_stereoimages |
40 | 40 |
|
41 | 41 | # midas imports |
42 | 42 | from dmidas.dpt_depth import DPTDepthModel |
@@ -103,13 +103,13 @@ def main_ui_panel(is_depth_tab): |
103 | 103 |
|
104 | 104 | with gr.Group(): |
105 | 105 | with gr.Row(): |
106 | | - gen_stereo = gr.Checkbox(label="Generate stereoscopic image", value=False) |
| 106 | + gen_stereo = gr.Checkbox(label="Generate stereoscopic image(s)", value=False) |
107 | 107 | with gr.Group(visible=False) as stereo_options_row_0: |
108 | 108 | with gr.Row(variant="compact"): |
109 | 109 | stereo_mode_lr = gr.Checkbox(label="left-right", value=True) |
110 | | - stereo_mode_rl = gr.Checkbox(label="right-left", value=True) |
111 | | - stereo_mode_tb = gr.Checkbox(label="top-bottom", value=True) |
112 | | - stereo_mode_bt = gr.Checkbox(label="bottom-top", value=True) |
| 110 | + stereo_mode_rl = gr.Checkbox(label="right-left", value=False) |
| 111 | + stereo_mode_tb = gr.Checkbox(label="top-bottom", value=False) |
| 112 | + stereo_mode_bt = gr.Checkbox(label="bottom-top", value=False) |
113 | 113 | stereo_mode_an = gr.Checkbox(label="red-cyan-anaglyph", value=True) |
114 | 114 |
|
115 | 115 |
|
@@ -586,44 +586,27 @@ def run_depthmap(processed, outpath, inputimages, inputnames, |
586 | 586 |
|
587 | 587 | if gen_stereo: |
588 | 588 | print("Generating stereoscopic images..") |
589 | | - |
590 | | - original_image = np.asarray(inputimages[count]) |
591 | | - balance = (stereo_balance + 1) / 2 |
592 | | - left_eye = original_image if balance < 0.001 else \ |
593 | | - apply_stereo_divergence(original_image, img_output, -1 * stereo_divergence * (balance), stereo_fill) |
594 | | - right_eye = original_image if balance > 0.999 else \ |
595 | | - apply_stereo_divergence(original_image, img_output, +1 * stereo_divergence * (1 - balance), stereo_fill) |
596 | | - |
597 | | - stereoimages = [] |
598 | | - stereonames = [] |
599 | | - if stereo_mode_lr: |
600 | | - stereonames.append("left-right") |
601 | | - stereoimages.append(Image.fromarray(np.hstack([left_eye, right_eye]))) |
602 | | - if stereo_mode_rl: |
603 | | - stereonames.append("right-left") |
604 | | - stereoimages.append(Image.fromarray(np.hstack([right_eye, left_eye]))) |
605 | | - if stereo_mode_tb: |
606 | | - stereonames.append("top-bottom") |
607 | | - stereoimages.append(Image.fromarray(np.vstack([left_eye, right_eye]))) |
608 | | - if stereo_mode_bt: |
609 | | - stereonames.append("bottom-top") |
610 | | - stereoimages.append(Image.fromarray(np.vstack([right_eye, left_eye]))) |
611 | | - if stereo_mode_an: |
612 | | - stereonames.append("red-cyan-anaglyph") |
613 | | - stereoimages.append(Image.fromarray(overlap_red_cyan(left_eye, right_eye))) |
| 589 | + |
| 590 | + stereomodes = [] |
| 591 | + if stereo_mode_lr: stereomodes.append("left-right") |
| 592 | + if stereo_mode_rl: stereomodes.append("right-left") |
| 593 | + if stereo_mode_tb: stereomodes.append("top-bottom") |
| 594 | + if stereo_mode_bt: stereomodes.append("bottom-top") |
| 595 | + if stereo_mode_an: stereomodes.append("red-cyan-anaglyph") |
| 596 | + stereoimages = create_stereoimages(inputimages[count], img_output, stereo_divergence, stereomodes, stereo_balance, stereo_fill) |
614 | 597 |
|
615 | 598 | for c in range(0, len(stereoimages)): |
616 | 599 | outimages.append(stereoimages[c]) |
617 | 600 | if processed is not None: |
618 | 601 | images.save_image(stereoimages[c], outpath, "", processed.all_seeds[count], |
619 | 602 | processed.all_prompts[count], opts.samples_format, info=info, p=processed, |
620 | | - suffix=f"_{stereonames[c]}") |
| 603 | + suffix=f"_{stereomodes[c]}") |
621 | 604 | else: |
622 | 605 | # from tab |
623 | 606 | images.save_image(stereoimages[c], path=outpath, basename=basename, seed=None, |
624 | 607 | prompt=None, extension=opts.samples_format, info=info, short_filename=True, |
625 | 608 | no_prompt=True, grid=False, pnginfo_section_name="extras", existing_info=None, |
626 | | - forced_filename=None, suffix=f"_{stereonames[c]}") |
| 609 | + forced_filename=None, suffix=f"_{stereomodes[c]}") |
627 | 610 |
|
628 | 611 | if gen_normal: |
629 | 612 | # taken from @graemeniedermayer, hidden, for api use only, will remove in future. |
|
0 commit comments