Spaces:
Paused
Paused
| import gradio as gr | |
| from ultralytics import YOLO | |
| # Load the YOLO model | |
| model = YOLO('best.pt') | |
| def predict(img, confidence_threshold): | |
| # Perform inference | |
| results = model(img) | |
| # Filter predictions based on the confidence threshold | |
| # The results[0].boxes.data contains the detection results, including confidence scores | |
| filtered_boxes = [box for box in results[0].boxes.data if box[4] >= confidence_threshold] | |
| # Plot the results (with the filtered detections) | |
| annotated_frame = results[0].plot(labels=filtered_boxes) | |
| return annotated_frame | |
| # Create the Gradio interface | |
| iface = gr.Interface( | |
| fn=predict, | |
| inputs=[ | |
| gr.Image(label="Input Image", type="filepath"), | |
| gr.Slider(minimum=0, maximum=1, value=0.5, label="Confidence Threshold", step=0.01) | |
| ], | |
| outputs="image", | |
| title="Coin Detector", | |
| description="Upload an image to detect coins. Adjust the confidence threshold to filter results." | |
| ) | |
| # Launch the Gradio interface | |
| iface.launch(share=True) | |