File size: 2,050 Bytes
08e633b 0a07ad3 0e8d222 0a07ad3 08e633b 0a07ad3 78e67c7 0a07ad3 cf8ef53 af1a89a cf8ef53 f2f661d 0e8d222 f2f661d 0e8d222 cf8ef53 fb7ce20 0a07ad3 fb7ce20 78e67c7 fb7ce20 0a07ad3 20f44f5 0a07ad3 78e67c7 e31102e 0054ae5 78e67c7 0a07ad3 78e67c7 0a07ad3 e31102e 0a07ad3 af1a89a fb7ce20 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 |
import os
import warnings
from pathlib import Path
import gradio as gr
from gradio_imageslider import ImageSlider
import numpy as np
import torch
import fastai
from deoldify import device
from deoldify.device_id import DeviceId
from deoldify.visualize import *
from huggingface_hub import HfApi, HfFolder
os.system("pip freeze")
from collections.abc import Sized # Import Sized from collections.abc
# Suppress warnings
warnings.filterwarnings("ignore", category=UserWarning, message=".*?Your .*? set is empty.*?")
repo_id = "afondiel/image-colorizer-deoldify"
repo_type = "space"
# run on CPU
device.set(device=DeviceId.CPU)
# Initialize Hugging Face API
api = HfApi()
# Download the snapshot from the space repository
snapshot_folder = api.snapshot_download(repo_id=repo_id, repo_type=repo_type)
# if GPU available
device.set(device=DeviceId.GPU0)
# Load the pre-trained model
_colorizer = get_image_colorizer(root_folder=Path(snapshot_folder), artistic=True)
def colorizer_fn(input_img, render_factor):
"""
Colorize grayscale images/photos
- @param input_img old (grayscale) image
- @param render_factor render_factor
"""
if input_img is not None and input_img != '':
output_img = _colorizer.get_transformed_image(
path=input_img,
render_factor=render_factor,
watermarked=False,
post_process=True,
)
else:
print('Provide an image and try again.')
return (input_img, output_img) # Return a tuple of old and color Image to be plotted with ImageSlider()
title = "AI Image Colorizer"
description = "Colorize old images with AI"
examples = [["./demo.jpg"],]
demo = gr.Interface(
fn=colorizer_fn,
inputs=[gr.Image(type="filepath", label="Old image"), gr.Slider(minimum=0, maximum=40, step=1, label="Render Factor", value=10)],
outputs=ImageSlider(type="pil", label="Old vs Colored image"),
examples=examples,
title=title,
description=description,
)
# Launch the demo
if __name__ == "__main__":
demo.launch()
|