mirror of
https://github.com/lllyasviel/Fooocus.git
synced 2026-08-16 13:13:16 +02:00
sync with original main Fooocus repo
This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
import os
|
||||
import torch
|
||||
import modules.core as core
|
||||
|
||||
from ldm_patched.pfn.architecture.RRDB import RRDBNet as ESRGAN
|
||||
from ldm_patched.contrib.external_upscale_model import ImageUpscaleWithModel
|
||||
from collections import OrderedDict
|
||||
from modules.config import path_upscale_models
|
||||
|
||||
model_filename = os.path.join(path_upscale_models, 'fooocus_upscaler_s409985e5.bin')
|
||||
opImageUpscaleWithModel = ImageUpscaleWithModel()
|
||||
model = None
|
||||
|
||||
|
||||
def perform_upscale(img):
|
||||
global model
|
||||
|
||||
print(f'Upscaling image with shape {str(img.shape)} ...')
|
||||
|
||||
if model is None:
|
||||
sd = torch.load(model_filename)
|
||||
sdo = OrderedDict()
|
||||
for k, v in sd.items():
|
||||
sdo[k.replace('residual_block_', 'RDB')] = v
|
||||
del sd
|
||||
model = ESRGAN(sdo)
|
||||
model.cpu()
|
||||
model.eval()
|
||||
|
||||
img = core.numpy_to_pytorch(img)
|
||||
img = opImageUpscaleWithModel.upscale(model, img)[0]
|
||||
img = core.pytorch_to_numpy(img)[0]
|
||||
|
||||
return img
|
||||
Reference in New Issue
Block a user