diff options
author | AUTOMATIC1111 <16777216c@gmail.com> | 2023-01-24 06:51:53 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-01-24 06:51:53 +0000 |
commit | 848ef919b37bd43a576628d300bd27f203f71ac5 (patch) | |
tree | a82bb0175babc1799449f21d562a6e7c68d0bc70 | |
parent | 393e09c1c3217ad58a39c125fe2f46723a2fc11b (diff) | |
parent | 3c47b050367ee220dcfed7be7883878417735614 (diff) | |
download | stable-diffusion-webui-gfx803-848ef919b37bd43a576628d300bd27f203f71ac5.tar.gz stable-diffusion-webui-gfx803-848ef919b37bd43a576628d300bd27f203f71ac5.tar.bz2 stable-diffusion-webui-gfx803-848ef919b37bd43a576628d300bd27f203f71ac5.zip |
Merge pull request #7144 from catboxanon/swinir-interrupt
Make SwinIR upscaler interruptible and skippable
-rw-r--r-- | extensions-builtin/SwinIR/scripts/swinir_model.py | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/extensions-builtin/SwinIR/scripts/swinir_model.py b/extensions-builtin/SwinIR/scripts/swinir_model.py index 9a74b253..e8783bca 100644 --- a/extensions-builtin/SwinIR/scripts/swinir_model.py +++ b/extensions-builtin/SwinIR/scripts/swinir_model.py @@ -8,7 +8,7 @@ from basicsr.utils.download_util import load_file_from_url from tqdm import tqdm from modules import modelloader, devices, script_callbacks, shared -from modules.shared import cmd_opts, opts +from modules.shared import cmd_opts, opts, state from swinir_model_arch import SwinIR as net from swinir_model_arch_v2 import Swin2SR as net2 from modules.upscaler import Upscaler, UpscalerData @@ -145,7 +145,13 @@ def inference(img, model, tile, tile_overlap, window_size, scale): with tqdm(total=len(h_idx_list) * len(w_idx_list), desc="SwinIR tiles") as pbar: for h_idx in h_idx_list: + if state.interrupted or state.skipped: + break + for w_idx in w_idx_list: + if state.interrupted or state.skipped: + break + in_patch = img[..., h_idx: h_idx + tile, w_idx: w_idx + tile] out_patch = model(in_patch) out_patch_mask = torch.ones_like(out_patch) |