UpscaleThis / app.py
Doubleupai's picture
Update app.py
8cbbe9e verified
raw
history blame
1.61 kB
import gradio as gr
from PIL import Image
import numpy as np
from realesrgan import RealESRGANer
import os
# Проверка наличия модели
def check_model_path(model_path):
if not os.path.exists(model_path):
raise FileNotFoundError(f"Модель не найдена по пути: {model_path}. Скачайте модель и поместите её в папку 'weights'.")
# Инициализация модели Real-ESRGAN
def load_model():
model_path = "weights/RealESRGAN_x4plus.pth" # Путь к модели
check_model_path(model_path) # Проверка наличия модели
model = RealESRGANer(
scale=4,
model_path=model_path,
model=None,
tile=0,
tile_pad=10,
pre_pad=0,
half=False
)
return model
# Функция для увеличения разрешения изображения
def upscale_image(image):
img = np.array(image)
output, _ = model.enhance(img, outscale=4)
return Image.fromarray(output)
# Загрузка модели
model = load_model()
# Создание интерфейса Gradio
iface = gr.Interface(
fn=upscale_image,
inputs=gr.Image(type="pil", label="Входное изображение"),
outputs=gr.Image(type="pil", label="Увеличенное изображение"),
title="AI Image Upscaler",
description="Загрузите изображение, чтобы увеличить его разрешение с помощью Real-ESRGAN."
)
# Запуск интерфейса
iface.launch()