Spaces:
Sleeping
Sleeping
| import gradio as gr | |
| import PIL.Image as Image | |
| from ultralytics import ASSETS, YOLO | |
| model = YOLO("yolov8n.pt") | |
| def predict_image(img, conf_threshold, iou_threshold): | |
| """Predicts objects in an image using a YOLOv8 model with adjustable confidence and IOU thresholds.""" | |
| results = model.predict( | |
| source=img, | |
| conf=conf_threshold, | |
| iou=iou_threshold, | |
| show_labels=True, | |
| show_conf=True, | |
| imgsz=640, | |
| ) | |
| for r in results: | |
| im_array = r.plot() | |
| im = Image.fromarray(im_array[..., ::-1]) | |
| return im | |
| with gr.Blocks() as demo: | |
| with gr.Row(): | |
| with gr.Column(): | |
| input_image = gr.Image(type="pil", label="Upload Image") | |
| conf = gr.Slider(minimum=0, maximum=1, value=0.25, label="Confidence threshold") | |
| iou = gr.Slider(minimum=0, maximum=1, value=0.45, label="IoU threshold") | |
| with gr.Row(): | |
| reset = gr.ClearButton([input_image]) | |
| submit = gr.Button("Submit") | |
| with gr.Column(): | |
| output_image = gr.Image(type="pil", label="Result") | |
| submit.click(fn=predict_image, inputs=[input_image, conf,iou], outputs=[output_image]) | |
| examples = gr.Examples(([ | |
| ['https://ultralytics.com/images/zidane.jpg', 0.25, 0.45], | |
| ['https://unsplash.com/photos/2pPw5Glro5I/download?ixid=M3wxMjA3fDB8MXxzZWFyY2h8Mnx8dXJsfGVufDB8fHx8MTcyMTgwNzkyMnww&force=true', 0.5, 0.3], | |
| ['https://unsplash.com/photos/5CUyfyde_io/download?ixid=M3wxMjA3fDB8MXxzZWFyY2h8OHx8dG9reW98ZW58MHx8fHwxNzIxODY4MzQzfDA&force=true', 0.3, 0.3] | |
| ]),[input_image,conf,iou]), | |
| if __name__ == "__main__": | |
| demo.launch() |