Spaces:
Sleeping
Sleeping
| import gradio as gr | |
| import numpy as np | |
| from ultralyticsplus import YOLO, render_result | |
| import cv2 | |
| from PIL import Image | |
| from cv2 import imshow | |
| from cv2 import imwrite | |
| #image=[gr.Image(label="Input Image", source="webcam") | |
| def PPE(image): | |
| # load model | |
| #model = YOLO('keremberke/yolov8m-protective-equipment-detection') | |
| model = YOLO('keremberke/yolov8m-hard-hat-detection') | |
| # set model parameters | |
| model.overrides['conf'] = 0.25 # NMS confidence threshold | |
| model.overrides['iou'] = 0.45 # NMS IoU threshold | |
| model.overrides['agnostic_nms'] = False # NMS class-agnostic | |
| model.overrides['max_det'] = 1000 # maximum number of detections per image | |
| # perform inference | |
| results = model.predict(image) | |
| # observe results | |
| print(results[0].boxes) | |
| render = render_result(model=model, image=image, result=results[0]) | |
| render.show() | |
| return render | |
| #demo = gr.Interface( | |
| # PPE, | |
| # gr.Image(source="webcam", streaming=True), | |
| # "image", | |
| # live=True | |
| #) | |
| #demo.launch() | |
| #def snap(image): | |
| # return np.flipud(image) | |
| #iface = gr.Interface(PPE, gr.inputs.Image(source="webcam", tool=None), "image") | |
| #iface.launch() | |
| #demo = gr.Interface( | |
| # fn=PPE, | |
| # inputs=gr.inputs.Image(source="webcam", tool=None), | |
| # outputs="image", | |
| #) | |
| #demo.launch() | |
| demo = gr.Interface( | |
| fn=PPE, | |
| inputs="image", | |
| outputs="image", | |
| ) | |
| demo.launch() | |