Spaces:
Runtime error
Runtime error
| from ultralytics import YOLO | |
| import gradio as gr | |
| import cv2 | |
| import numpy as np | |
| # ========================= | |
| # Load trained YOLO model | |
| # ========================= | |
| # Make sure best.pt is in the same folder | |
| model = YOLO("best.pt") | |
| # ========================= | |
| # Prediction Function | |
| # ========================= | |
| def detect_mask(image): | |
| """ | |
| Takes an image from Gradio, | |
| runs YOLO prediction, | |
| returns annotated image | |
| """ | |
| # Convert RGB to BGR (OpenCV format) | |
| img = cv2.cvtColor(image, cv2.COLOR_RGB2BGR) | |
| # YOLO prediction | |
| results = model(img) | |
| # Draw bounding boxes | |
| annotated_img = results[0].plot() | |
| # Convert back to RGB for Gradio | |
| annotated_img = cv2.cvtColor(annotated_img, cv2.COLOR_BGR2RGB) | |
| return annotated_img | |
| # ========================= | |
| # Gradio Interface | |
| # ========================= | |
| interface = gr.Interface( | |
| fn=detect_mask, | |
| inputs=gr.Image(type="numpy", label="Upload Image"), | |
| outputs=gr.Image(type="numpy", label="Detection Result"), | |
| title="😷 Face Mask Detection System", | |
| description="YOLO-based Face Mask Detection (Mask / No Mask)" | |
| ) | |
| # ========================= | |
| # Launch App | |
| # ========================= | |
| interface.launch() | |