sunder-ali's picture
Update app.py
adea002
raw
history blame contribute delete
No virus
1.73 kB
import streamlit as st
import requests
import os.path
import torch
from PIL import Image
from utils import utils_model
from utils import utils_image as util
import numpy as np
import cv2
st.set_page_config(layout="wide", page_title="Image Denoising Demo")
st.title("Image Real Denoising Demo")
st.write("The model removes the noise from real world images.")
st.sidebar.write("## Upload and download :gear:")
# Create the columns
col1, col2 = st.columns(2)
upfile = st.file_uploader("Upload an image", type=["png", "jpg", "jpeg"])
if upfile is not None:
img = Image.open(upfile)
img.save('test1.png')
n_channels = 3
img_U = util.imread_uint('test1.png', n_channels=n_channels)
#img = Image.open(upfile)
col1.write("Original Noisy Image")
col1.image(upfile)
model_name = 'team15_SAKDNNet'
model_path = os.path.join('model_zoo', model_name+'.pth')
device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')
from models.team15_SAKDNNet import SAKDNNet as net
model = net(in_nc=n_channels,config=[4,4,4,4,4,4,4],dim=64)
model.load_state_dict(torch.load(model_path), strict=True)
model.eval()
for k, v in model.named_parameters():
v.requires_grad = False
model = model.to(device)
img_N = util.uint2tensor4(img_U)
img_N = img_N.to(device)
img_DN = utils_model.inference(model, img_N, refield=64, min_size=512, mode=2)
img_DN = model(img_N)
img_DN = util.tensor2uint(img_DN)
col2.write("Denoised Image")
col2.image(img_DN)
#st.sidebar.markdown("\\n")
st.write("The method Dense Residual Swin Transformer is included in NTIRE 2023 Image Denoising Challenge at CVPR 2023")