demo-image-completion / gradio_imagecompletion.py
jaekookang
test gradio template with image examples
eb6c57c
raw
history blame
1.48 kB
'''Image Completion Demo (ImageGPT)
- 2021-12-10
- taken from https://huggingface.co/spaces/nielsr/imagegpt-completion
'''
from PIL import Image
import matplotlib.pyplot as plt
import os
import requests
from glob import glob
import gradio as gr
from loguru import logger
import torch
from transformers import ImageGPTFeatureExtractor, ImageGPTForCausalImageModeling
# ========== Settings ==========
EXAMPLE_DIR = 'examples'
examples = sorted(glob(os.path.join(EXAMPLE_DIR, '*.jpg')))
# ========== Logger ==========
logger.add('app.log', mode='a')
logger.info('===== APP RESTARTED =====')
# ========== Models ==========
feature_extractor = ImageGPTFeatureExtractor.from_pretrained(
"openai/imagegpt-medium")
model = ImageGPTForCausalImageModeling.from_pretrained(
"openai/imagegpt-medium")
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
model.to(device)
def process_image(image):
logger.info('--- image file received')
return image.name
iface = gr.Interface(
process_image,
title="์ด๋ฏธ์ง€์˜ ์ ˆ๋ฐ˜์„ ์ง€์šฐ๊ณ  ์ ˆ๋ฐ˜์„ ์ฑ„์›Œ ๋„ฃ์–ด์ฃผ๋Š” Image Completion ๋ฐ๋ชจ์ž…๋‹ˆ๋‹ค (ImageGPT)",
description='์ฃผ์–ด์ง„ ์ด๋ฏธ์ง€์˜ ์ ˆ๋ฐ˜ ์•„๋ž˜๋ฅผ AI๊ฐ€ ์ฑ„์›Œ ๋„ฃ์–ด์ค๋‹ˆ๋‹ค',
inputs=gr.inputs.Image(type="pil"),
outputs=gr.outputs.Image(type="pil", label="Model input + completions"),
examples=examples,
enable_queue=True,
article='<p style="text-align:center">i-Scream AI</p>',
)
iface.launch()