aboutsummaryrefslogtreecommitdiff
path: root/modules/realesrgan_model.py
diff options
context:
space:
mode:
authorhitomi <huahuohe@foxmail.com>2023-03-25 13:58:53 -0700
committerhitomi <huahuohe@foxmail.com>2023-04-04 20:39:51 +0800
commit539a69860bafe1c922029722a50462f3ef0db5e4 (patch)
tree7539a782d0f32e592c0ceb897f9fbd8bfe2f1313 /modules/realesrgan_model.py
parent22bcc7be428c94e9408f589966c2040187245d81 (diff)
fix `--realesrgan-models-path` not working
Diffstat (limited to 'modules/realesrgan_model.py')
-rw-r--r--modules/realesrgan_model.py14
1 files changed, 12 insertions, 2 deletions
diff --git a/modules/realesrgan_model.py b/modules/realesrgan_model.py
index aad4a629..d6079433 100644
--- a/modules/realesrgan_model.py
+++ b/modules/realesrgan_model.py
@@ -9,7 +9,7 @@ from realesrgan import RealESRGANer
from modules.upscaler import Upscaler, UpscalerData
from modules.shared import cmd_opts, opts
-
+from modules import modelloader
class UpscalerRealESRGAN(Upscaler):
def __init__(self, path):
@@ -23,7 +23,15 @@ class UpscalerRealESRGAN(Upscaler):
self.enable = True
self.scalers = []
scalers = self.load_models(path)
+
+ local_model_paths = self.find_models(ext_filter=[".pth"])
for scaler in scalers:
+ if scaler.local_data_path.startswith("http"):
+ filename = modelloader.friendly_name(scaler.local_data_path)
+ local = next(iter([local_model for local_model in local_model_paths if local_model.endswith(filename + '.pth')]), None)
+ if local:
+ scaler.local_data_path = local
+
if scaler.name in opts.realesrgan_enabled_models:
self.scalers.append(scaler)
@@ -64,7 +72,9 @@ class UpscalerRealESRGAN(Upscaler):
print(f"Unable to find model info: {path}")
return None
- info.local_data_path = load_file_from_url(url=info.data_path, model_dir=self.model_path, progress=True)
+ if info.local_data_path.startswith("http"):
+ info.local_data_path = load_file_from_url(url=info.data_path, model_dir=self.model_path, progress=True)
+
return info
except Exception as e:
print(f"Error making Real-ESRGAN models list: {e}", file=sys.stderr)