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( """

YOLOv10: Real-Time End-to-End Object Detection

""") gr.HTML( """

Follow me for more! Twitter | Github | Linkedin | HuggingFace

""") input_image = gr.Image(type="numpy") output_image = gr.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()