File size: 3,135 Bytes
e09ba31 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
import gradio as gr
import torch
from sahi.classification import ImageClassification
from sahi.utils.cv import visualize_object_predictions, read_image
from ultralyticsplus import YOLO
def yolov8_inference(
image: gr.Image = None,
model_path: gr.Dropdown = None,
image_size: gr.Slider = 640,
conf_threshold: gr.Slider = 0.25,
iou_threshold: gr.Slider = 0.45,
):
"""
YOLOv8 inference function
Args:
image: Input image
model_path: Path to the model
image_size: Image size
conf_threshold: Confidence threshold
iou_threshold: IOU threshold
"""
model = YOLO(model_path)
model.overrides['conf'] = conf_threshold
model.overrides['iou']= iou_threshold
model.overrides['agnostic_nms'] = False # NMS class-agnostic
model.overrides['max_det'] = 1000
# observe results
top_class_index = torch.argmax(results[0].probs).item()
Class = model.names[top_class_index]
print(Class)
inputs = [
gr.Image(type="filepath", label="Input Image"),
gr.Dropdown(["foduucom/Tyre-Quality-Classification-AI"],
default="foduucom/Tyre-Quality-Classification-AI", label="Model"),
gr.Slider(minimum=320, maximum=1280, default=640, step=32, label="Image Size"),
gr.Slider(minimum=0.0, maximum=1.0, default=0.25, step=0.05, label="Confidence Threshold"),
gr.Slider(minimum=0.0, maximum=1.0, default=0.45, step=0.05, label="IOU Threshold"),
]
outputs = gr.Image(type="filepath", label="Output Image")
title = "AI-Powered Tire Quality Inspection: YOLOv8s Enhanced Classification"
description ="""
π₯ Unveiling ThermalFoduu: Spot Objects with Thermal Vision! ππΈ Lost your keys in the dark? ποΈπ ThermalFoduu's got you covered! Powered by Foduu AI, our app effortlessly detects objects in thermal images. No more blurry blobs β just pinpoint accuracy! π¦
π―
Love the thermal world? Give us a thumbs up! π Questions or suggestions? Contact us at info@foduu. Let's decode the thermal universe together! π§π‘οΈ
"""
π Space Description:"""
Welcome to our π€ AI-Powered Tire Quality Inspection Space β a cutting-edge solution harnessing the capabilities of YOLOv8s to revolutionize π tire quality control processes.
"""
π About This Space: """
This interactive platform empowers you to classify tires with unparalleled precision, utilizing a fine-tuned YOLOv8s model π― specifically developed for identifying defects in tire manufacturing. By submitting an image of a tire, you can instantly determine whether it meets the rigorous quality standards required in the industry, helping to ensure safety and reliability in automotive products.
"""
examples = [['samples/1.jpeg', 'foduucom/thermal-image-object-detection', 640, 0.25, 0.45], ['samples/2.jpg', 'foduucom/thermal-image-object-detection', 640, 0.25, 0.45]]
demo_app = gr.Interface(
fn=yolov8_inference,
inputs=inputs,
outputs=outputs,
title=title,
description=description,
examples=examples,
cache_examples=True,
theme='huggingface',
)
demo_app.queue().launch(debug=True) |