ObjectDetectionApp / myapp.py
Wei-Meng's picture
Upload folder using huggingface_hub
6dc3cf1 verified
raw
history blame
1.01 kB
import gradio as gr
from PIL import Image, ImageDraw
from transformers import pipeline
objDetector = pipeline(task = "object-detection",
model = "facebook/detr-resnet-50")
def detect_objects(image): # image is a NumPy array
image = Image.fromarray(image) # convert from NumPy array to PIL image
draw = ImageDraw.Draw(image) # create a drawable image
results = objDetector(image) # detect objects in image
for obj in results:
if obj['score'] < 0.9:
continue
box = [
obj['box']['xmin'],
obj['box']['ymin'],
obj['box']['xmax'],
obj['box']['ymax']
]
draw.rectangle(box, outline='yellow', width=5)
draw.text((box[0], box[1] - 15), obj['label'], fill='white')
return image
demo = gr.Interface(
fn = detect_objects,
inputs = gr.Image(label = "Upload Image"),
outputs = gr.Image(label = "Detected Objects")
)
demo.launch()