Spaces:
Running
on
Zero
Running
on
Zero
import gradio as gr | |
from ultralytics import YOLOv10 | |
import supervision as sv | |
MODEL_PATH = 'yolov10n.pt' | |
model = YOLOv10(MODEL_PATH) | |
box_annotator = sv.BoxAnnotator() | |
def detect(image): | |
results = model(source=image, conf=0.25, verbose=False)[0] | |
detections = sv.Detections.from_ultralytics(results) | |
labels = [ | |
f"{model.model.names[class_id]} {confidence:.2f}" | |
for class_id, confidence in zip(detections.class_id, detections.confidence) | |
] | |
annotated_image = box_annotator.annotate(image, detections=detections, labels=labels) | |
return annotated_image | |
gradio_app = gr.Blocks() | |
with gradio_app: | |
gr.HTML( | |
""" | |
<h1 style='text-align: center'> | |
YOLOv10: Real-Time End-to-End Object Detection | |
</h1> | |
""") | |
gr.HTML( | |
""" | |
<h3 style='text-align: center'> | |
Follow me for more! | |
<a href='https://twitter.com/kadirnar_ai' target='_blank'>Twitter</a> | <a href='https://github.com/kadirnar' target='_blank'>Github</a> | <a href='https://www.linkedin.com/in/kadir-nar/' target='_blank'>Linkedin</a> | <a href='https://www.huggingface.co/kadirnar/' target='_blank'>HuggingFace</a> | |
</h3> | |
""") | |
input_image = gr.inputs.Image(type="numpy") | |
output_image = gr.outputs.Image(type="numpy", label="Annotated Image") | |
gr.Interface( | |
fn=detect, | |
inputs=input_image, | |
outputs=output_image, | |
title='YOLOv10 Object Detection', | |
description='Detect objects in images using the YOLOv10 model' | |
) | |
gradio_app.launch() |