diff options
author | AUTOMATIC <16777216c@gmail.com> | 2023-01-09 11:57:47 +0000 |
---|---|---|
committer | AUTOMATIC <16777216c@gmail.com> | 2023-01-09 11:57:47 +0000 |
commit | d4fd2418efb0986a8226add0b800fb5c73ffb58c (patch) | |
tree | fb9e9f66ce779f87e0d783e8e00a7f1fbbdc60e1 /modules/generation_parameters_copypaste.py | |
parent | 8850fc23b6e8a8e210bdfe4aade81516fb5770f3 (diff) | |
download | stable-diffusion-webui-gfx803-d4fd2418efb0986a8226add0b800fb5c73ffb58c.tar.gz stable-diffusion-webui-gfx803-d4fd2418efb0986a8226add0b800fb5c73ffb58c.tar.bz2 stable-diffusion-webui-gfx803-d4fd2418efb0986a8226add0b800fb5c73ffb58c.zip |
add an option to use old hiresfix width/height behavior
add a visual effect to inactive hires fix elements
Diffstat (limited to 'modules/generation_parameters_copypaste.py')
-rw-r--r-- | modules/generation_parameters_copypaste.py | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/modules/generation_parameters_copypaste.py b/modules/generation_parameters_copypaste.py index 12a9de3d..f7f68b67 100644 --- a/modules/generation_parameters_copypaste.py +++ b/modules/generation_parameters_copypaste.py @@ -197,6 +197,15 @@ def restore_old_hires_fix_params(res): firstpass_width = res.get('First pass size-1', None)
firstpass_height = res.get('First pass size-2', None)
+ if shared.opts.use_old_hires_fix_width_height:
+ hires_width = int(res.get("Hires resize-1", None))
+ hires_height = int(res.get("Hires resize-2", None))
+
+ if hires_width is not None and hires_height is not None:
+ res['Size-1'] = hires_width
+ res['Size-2'] = hires_height
+ return
+
if firstpass_width is None or firstpass_height is None:
return
@@ -205,12 +214,8 @@ def restore_old_hires_fix_params(res): height = int(res.get("Size-2", 512))
if firstpass_width == 0 or firstpass_height == 0:
- # old algorithm for auto-calculating first pass size
- desired_pixel_count = 512 * 512
- actual_pixel_count = width * height
- scale = math.sqrt(desired_pixel_count / actual_pixel_count)
- firstpass_width = math.ceil(scale * width / 64) * 64
- firstpass_height = math.ceil(scale * height / 64) * 64
+ from modules import processing
+ firstpass_width, firstpass_height = processing.old_hires_fix_first_pass_dimensions(width, height)
res['Size-1'] = firstpass_width
res['Size-2'] = firstpass_height
|