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() |