Spaces:
Build error
Build error
| import gradio as gr | |
| from ultralytics import YOLO | |
| import json | |
| model = YOLO("best.pt") | |
| def predict(img): | |
| results = model(img) | |
| annotated_img = results[0].plot() | |
| detections = [] | |
| # Safely extract boxes if they exist | |
| if len(results) > 0 and len(results[0].boxes) > 0: | |
| for box in results[0].boxes: | |
| # Use .item() to safely convert PyTorch tensors to standard Python numbers | |
| class_id = int(box.cls.item()) | |
| label = model.names[class_id] | |
| conf = float(box.conf.item()) | |
| detections.append({ | |
| "label": label, | |
| "confidence": conf | |
| }) | |
| return annotated_img, json.dumps(detections) | |
| demo = gr.Interface( | |
| fn=predict, | |
| inputs=gr.Image(type="pil"), | |
| outputs=[ | |
| gr.Image(type="pil"), | |
| gr.Textbox(label="Detections") | |
| ] | |
| ) | |
| demo.launch() | |