Spaces:
Running
Running
import gradio as gr | |
import cv2 | |
import numpy as np | |
# ์ด๋ฏธ์ง ์ ์ค์ผ์ผ ํจ์ | |
def upscale_image(input_image, radio_input): | |
upscale_factor = int(radio_input) # ์ ์ค์ผ์ผ ๋น์จ์ ์ ์ํ์ผ๋ก ๋ณํ | |
# ์ ๋ ฅ ์ด๋ฏธ์ง๋ฅผ ์ฃผ์ด์ง ์ ์ค์ผ์ผ ๋น์จ๋ก ํฌ๊ธฐ ๋ณ๊ฒฝ (๋ณด๊ฐ๋ฒ: INTER_CUBIC) | |
output_image = cv2.resize(input_image, None, fx=upscale_factor, fy=upscale_factor, interpolation=cv2.INTER_CUBIC) | |
# ์ ์ค์ผ์ผ๋ ์ด๋ฏธ์ง๋ฅผ PNG ํ์ผ๋ก ์ ์ฅ | |
output_file_path = "/mnt/data/upscaled_image.png" | |
cv2.imwrite(output_file_path, output_image) | |
return output_image, output_file_path | |
# ์ธํฐํ์ด์ค ์ค๋ช | |
DESCRIPTION = """ | |
์ด๋ฏธ์ง์ ํฌ๊ธฐ์ ํ์ง์ ํฅ์์์ผ ๋ณด์ธ์! (you can increase the size and quality of your images) | |
""" | |
# ์ ์ค์ผ์ผ ๋ ๋ฒจ ์ ํ ๋ผ๋์ค ๋ฒํผ | |
radio_input = gr.Radio(label="์ ์ค์ผ์ผ ๋ ๋ฒจ ์ ํ (Select Upscaling level)", choices=[2, 4, 6, 8, 10], value=2) | |
# Gradio ์ธํฐํ์ด์ค ์ ์ | |
demo = gr.Interface( | |
fn=upscale_image, | |
inputs=[gr.Image(label="์ ๋ ฅ ์ด๋ฏธ์ง (Input Image)", type="numpy"), radio_input], | |
outputs=[gr.Image(label="์ ์ค์ผ์ผ๋ ์ด๋ฏธ์ง(Upscaled Image)"), gr.File(label="PNG ํ์ผ ๋ค์ด๋ก๋ (Download PNG File)")], | |
title="Image Upscaler", | |
description=DESCRIPTION | |
) | |
# ์ธํฐํ์ด์ค ์คํ | |
demo.launch(show_api=False) | |