Spaces:
Runtime error
Runtime error
| import os | |
| import cv2 | |
| import gradio as gr | |
| from ultralytics import YOLO | |
| # Load model | |
| MODEL_PATH = "yolov8_model.pt" | |
| if not os.path.exists(MODEL_PATH): | |
| raise FileNotFoundError(f"Model file {MODEL_PATH} not found. Please upload it to your Space.") | |
| model = YOLO(MODEL_PATH) | |
| def detect_defects(image): | |
| """Run detection and return annotated image + detection data""" | |
| try: | |
| results = model(image) | |
| annotated_img = results[0].plot(line_width=2) | |
| return cv2.cvtColor(annotated_img, cv2.COLOR_BGR2RGB) | |
| except Exception as e: | |
| print(f"Error: {e}") | |
| return image | |
| # Simple UI | |
| interface = gr.Interface( | |
| fn=detect_defects, | |
| inputs=gr.Image(label="Upload Steel Surface Image", type="numpy"), | |
| outputs=gr.Image(label="Detected Defects"), | |
| title="🔧 Steel Surface Defect Detector", | |
| description="Upload an image to detect surface defects (crazing, scratches, etc.)", | |
| allow_flagging="never" | |
| ) | |
| if __name__ == "__main__": | |
| interface.launch() |