Spaces:
CodingTeading
/
Runtime error

CU-GAN / app.py
CodingTeading's picture
Update app.py
78603bb
from upcunet_v3 import RealWaifuUpScaler
import gradio as gr
import time
import logging
import os
from PIL import ImageOps
import numpy as np
import math
def greet(input_img, input_model_name, input_tile_mode):
# if input_img.size[0] * input_img.size[1] > 256 * 256:
# y = int(math.sqrt(256*256/input_img.size[0]*input_img.size[1]))
# x = int(input_img.size[0]/input_img.size[1]*y)
# input_img = ImageOps.fit(input_img, (x, y))
input_img = np.array(input_img)
if input_model_name not in model_cache:
t1 = time.time()
upscaler = RealWaifuUpScaler(input_model_name[2], ModelPath + input_model_name, half=False, device="cpu")
t2 = time.time()
logger.info(f'load model time, {t2 - t1}')
model_cache[input_model_name] = upscaler
else:
upscaler = model_cache[input_model_name]
logger.info(f'load model from cache')
start = time.time()
result = upscaler(input_img, tile_mode=input_tile_mode)
end = time.time()
logger.info(f'input_model_name, {input_model_name}')
logger.info(f'input_tile_mode, {input_tile_mode}')
logger.info(f'input shape, {input_img.shape}')
logger.info(f'output shape, {result.shape}')
logger.info(f'speed time, {end - start}')
return result
if __name__ == '__main__':
logging.basicConfig(level=logging.INFO, format="[%(asctime)s] [%(process)d] [%(levelname)s] %(message)s")
logger = logging.getLogger()
ModelPath = "weights_v3/"
model_cache = {}
input_model_name = gr.inputs.Dropdown(os.listdir(ModelPath), default="up2x-latest-denoise2x.pth", label='๋ชจ๋ธ ์„ ํƒ')
input_tile_mode = gr.inputs.Dropdown([0, 1, 2, 3, 4], default=2, label='ํƒ€์ผ ๋ชจ๋“œ ์„ ํƒ')
input_img = gr.inputs.Image(label='image', type='pil')
inputs = [input_img, input_model_name, input_tile_mode]
outputs = "image"
iface = gr.Interface(fn=greet,
inputs=inputs,
outputs=outputs,
allow_screenshot=False,
allow_flagging='never',
examples=[['test-img.jpg', "up2x-latest-denoise2x.pth", 2]],
article='[https://github.com/bilibili/ailab/tree/main/Real-CUGAN](https://github.com/bilibili/ailab/tree/main/Real-CUGAN)<br>'
'์‚ฌ์ง„์ด ๋„ˆ๋ฌด ํฌ๋ฉด ๋ฉ”๋ชจ๋ฆฌ ๋ถ€์กฑ์œผ๋กœ ์ด์–ด์งˆ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ์‚ฌ์ง„์„ ์ž‘๊ฒŒ ์ž๋ฅด๊ณ  ํฐ ์‚ฌ์ง„์˜ ํšจ๊ณผ๋ฅผ ๊ฒฝํ—˜ํ•˜๊ณ  ์‹ถ์œผ์‹œ๋ฉด ์œ„์˜ ๋งํฌ๋กœ ์ง์ ‘ ์ด๋™ํ•ด์ฃผ์„ธ์š”.<br>'
'The large image will lead to memory limit exceeded. So I crop and resize image. '
'If you want to experience the large image, please go to the link above.')
iface.launch()