Apckeyl_RealESRGAN / mode_manager.py
evgeniy778's picture
Create mode_manager.py
420f295 verified
Raw
History Blame Contribute Delete
2.01 kB
# =====================================================
# Apckeyl_RealESRGAN
# Version 1.0
# mode_manager.py
# =====================================================
from PIL import Image
class ModeManager:
"""
Управляет режимами обработки изображения.
Пока выполняет только изменение
итогового размера изображения.
В следующих версиях именно здесь
будут подключаться:
• детализация
• шумоподавление
• модели
• Face Restore
• Anime
• и т.д.
"""
def __init__(self):
pass
# -------------------------------------------------
def apply(
self,
image,
mode,
quality,
denoise,
):
width, height = image.size
# ---------------------------------------------
# Улучшить качество
# ---------------------------------------------
if mode == "Улучшить качество (рекомендуется)":
return image.resize(
(
width // 4,
height // 4,
),
Image.Resampling.LANCZOS,
)
# ---------------------------------------------
# ×2
# ---------------------------------------------
if mode == "Увеличить ×2":
return image.resize(
(
width // 2,
height // 2,
),
Image.Resampling.LANCZOS,
)
# ---------------------------------------------
# ×4
# ---------------------------------------------
if mode == "Увеличить ×4":
return image
# ---------------------------------------------
return image