IMAGE_TO_TEXT / app.py
ABANDA-OMGBA-Ulrich-Michel's picture
Create app.py
fcb253a verified
import requests
from PIL import Image
from io import BytesIO
import numpy as np
import gradio as gr
from transformers import pipeline
image_to_text = pipeline("image-to-text", model="nlpconnect/vit-gpt2-image-captioning")
def process_image(image):
if isinstance(image, str): # Si l'entrée est une URL
response = requests.get(image)
image = Image.open(BytesIO(response.content))
elif isinstance(image, np.ndarray): # Si l'entrée est un tableau numpy
image = Image.fromarray(image)
else: # Si l'entrée est un fichier local
image = Image.open(image.name)
result = image_to_text(image)
text_description = result[0]["generated_text"]
return text_description
imager = gr.Interface(process_image, inputs="image", outputs="text")
imager.launch(debug=True)