|
import streamlit as st |
|
from PIL import Image |
|
import torch |
|
|
|
from model import ModelColorization |
|
|
|
from utils import process_gs_image, inverse_transform_cs |
|
|
|
|
|
model = ModelColorization().from_pretrained("sebastiansarasti/AutoEncoderImageColorization") |
|
|
|
|
|
st.title("Image Colorization App") |
|
st.write("This is an app to colorize black and white images.") |
|
|
|
|
|
uploaded_file = st.file_uploader("Choose an image...", type="jpg") |
|
|
|
|
|
if uploaded_file is not None: |
|
|
|
image = Image.open(uploaded_file) |
|
st.image(image, caption="Uploaded Image.", use_container_width=True) |
|
|
|
|
|
if st.button("Colorize"): |
|
|
|
image, original_size = process_gs_image(image) |
|
|
|
model.eval() |
|
with torch.no_grad(): |
|
result = model(image) |
|
|
|
colorized_image = inverse_transform_cs(result.squeeze(0), original_size) |
|
|
|
st.image(colorized_image, caption="Colorized Image.", use_container_width=True) |