1_1_mono_img-3 / app.py
Kims12's picture
Update app.py
fdd6630 verified
raw
history blame
1.26 kB
import gradio as gr
from gradio_imageslider import ImageSlider
import cv2
import numpy as np
def convert_to_grayscale(image):
# ์ด๋ฏธ์ง€๋ฅผ ํ‘๋ฐฑ์œผ๋กœ ๋ณ€ํ™˜
gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
return gray_image
def convert_and_save(image):
# ์ด๋ฏธ์ง€๋ฅผ ํ‘๋ฐฑ์œผ๋กœ ๋ณ€ํ™˜ํ•˜๊ณ , ๋‹ค์šด๋กœ๋“œ ๊ฐ€๋Šฅํ•œ PNG ํŒŒ์ผ๋กœ ์ €์žฅ
gray_image = convert_to_grayscale(image)
output_path = "output.png"
cv2.imwrite(output_path, gray_image)
# Gradio๋Š” RGB ์ด๋ฏธ์ง€๋ฅผ ๊ธฐ๋Œ€ํ•˜๋ฏ€๋กœ ํ‘๋ฐฑ ์ด๋ฏธ์ง€๋ฅผ RGB๋กœ ๋ณ€ํ™˜
gray_rgb = cv2.cvtColor(gray_image, cv2.COLOR_GRAY2RGB)
original_rgb = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)
# ๋ณ€๊ฒฝ ์ „ํ›„ ์ด๋ฏธ์ง€๋ฅผ ์Šฌ๋ผ์ด๋“œ๋กœ ๋ฐ˜ํ™˜
return [gray_rgb, original_rgb], output_path
# Gradio ์ธํ„ฐํŽ˜์ด์Šค ์ •์˜
slider = ImageSlider(label="๋ณ€ํ™˜ ์ „ํ›„ ์ด๋ฏธ์ง€")
iface = gr.Interface(
fn=convert_and_save,
inputs="image",
outputs=[slider, "file"],
examples=["1.png", "2.jpg", "3.png"], # ์ƒ˜ํ”Œ ์ด๋ฏธ์ง€ ์ถ”๊ฐ€
title="์ด๋ฏธ์ง€ ํ‘๋ฐฑ ๋ณ€ํ™˜๊ธฐ",
description="์ด๋ฏธ์ง€๋ฅผ ์—…๋กœ๋“œํ•˜๋ฉด ํ‘๋ฐฑ์œผ๋กœ ๋ณ€ํ™˜ํ•˜๊ณ , PNG ํŒŒ์ผ์œผ๋กœ ๋‹ค์šด๋กœ๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค."
)
if __name__ == "__main__":
iface.launch()