Spaces:
Runtime error
Runtime error
import gradio as gr | |
import cv2 | |
import requests | |
import os | |
from ultralytics import YOLO | |
model = YOLO('best_gd.pt') | |
image_paths = ['pothole_example.jpg', 'pothole_screenshot.png'] | |
def show_preds_image(image): | |
# Save the uploaded image temporarily | |
image_path = "uploaded_image.jpg" | |
cv2.imwrite(image_path, image[:, :, ::-1]) # Convert BGR to RGB and save the image | |
image = cv2.imread(image_path) | |
outputs = model.predict(source=image_path) | |
#print("output>>>>>>>>>>>>>>>>>>>>>>>>", outputs) | |
results = outputs[0].boxes.xyxy.cpu().numpy() | |
for det in results: | |
x1, y1, x2, y2 = det[:4] | |
label = "Pothole" | |
cv2.rectangle( | |
image, | |
(int(x1), int(y1)), | |
(int(x2), int(y2)), | |
color=(0, 0, 255), | |
thickness=2, | |
lineType=cv2.LINE_AA, | |
) | |
cv2.putText( | |
image, | |
label, | |
(int(x1), int(y1) - 10), | |
cv2.FONT_HERSHEY_SIMPLEX, | |
0.9, | |
(0, 0, 255), | |
2, | |
cv2.LINE_AA, | |
) | |
os.remove(image_path) # Remove the temporary image file | |
return cv2.cvtColor(image, cv2.COLOR_BGR2RGB) | |
inputs_image = [ | |
gr.inputs.Image(label="Upload Image"), | |
] | |
outputs_image = [ | |
gr.outputs.Image(type="numpy"), | |
] | |
interface_image = gr.Interface( | |
fn=show_preds_image, | |
inputs=inputs_image, | |
outputs=outputs_image, | |
title="Pothole detector", | |
examples=[], | |
cache_examples=False, | |
) | |
interface_image.launch() | |