Spaces:
Sleeping
Sleeping
import gradio as gr | |
import os | |
os.system("git clone https://github.com/megvii-research/NAFNet") | |
os.system("mv NAFNet/* ./") | |
os.system("mv *.pth experiments/pretrained_models/") | |
os.system("python3 setup.py develop --no_cuda_ext --user") | |
def inference(image, task): | |
if not os.path.exists('tmp'): | |
os.system('mkdir tmp') | |
image.save("tmp/lq_image.png", "PNG") | |
if task == 'Denoising': | |
os.system("python basicsr/demo.py -opt options/test/SIDD/NAFNet-width64.yml --input_path ./tmp/lq_image.png --output_path ./tmp/image.png") | |
if task == 'Deblurring': | |
os.system("python basicsr/demo.py -opt options/test/REDS/NAFNet-width64.yml --input_path ./tmp/lq_image.png --output_path ./tmp/image.png") | |
return 'tmp/image.png' | |
title = "NAFNet" | |
description = "Gradio demo for <b>NAFNet: Nonlinear Activation Free Network for Image Restoration</b>. NAFNet achieves state-of-the-art performance on three tasks: image denoising, image debluring and stereo image super-resolution (SR). See the paper and project page for detailed results below. Here, we provide a demo for image denoise and deblur. To use it, simply upload your image, or click one of the examples to load them." | |
article = "<p style='text-align: center'><a href='https://arxiv.org/abs/2204.04676' target='_blank'>Simple Baselines for Image Restoration</a> | <a href='https://arxiv.org/abs/2204.08714' target='_blank'>NAFSSR: Stereo Image Super-Resolution Using NAFNet</a> | <a href='https://github.com/megvii-research/NAFNet' target='_blank'> Github Repo</a></p>" | |
examples = [['demo/noisy.png', 'Denoising'], | |
['demo/blurry.jpg', 'Deblurring']] | |
iface = gr.Interface( | |
inference, | |
[gr.inputs.Image(type="pil", label="Input"), | |
gr.inputs.Radio(["Denoising", "Deblurring"], default="Denoising", label='task'),], | |
gr.outputs.Image(type="file", label="Output"), | |
title=title, | |
description=description, | |
article=article, | |
enable_queue=True, | |
examples=examples | |
) | |
iface.launch(debug=True,enable_queue=True) |