|
import gradio as gr |
|
import cv2 |
|
import torch |
|
import numpy as np |
|
|
|
|
|
model = torch.hub.load('ultralytics/yolov5', 'yolov5s', pretrained=True) |
|
|
|
|
|
def run_inference(image): |
|
|
|
image = np.array(image) |
|
|
|
|
|
results = model(image) |
|
|
|
|
|
annotated_image = results.render()[0] |
|
annotated_image = cv2.cvtColor(annotated_image, cv2.COLOR_BGR2RGB) |
|
|
|
return annotated_image |
|
|
|
|
|
interface = gr.Interface( |
|
fn=run_inference, |
|
inputs=gr.Image(type="pil"), |
|
outputs=gr.Image(type="pil"), |
|
title="YOLOv5 Object Detection", |
|
description="Upload an image to run YOLOv5 object detection and see the results." |
|
) |
|
|
|
|
|
interface.launch() |
|
|