Ultralytics YOLO27:

Rilevamento di oggetti interattivo: Gradio e YOLO26 di Ultralytics#

Introduzione al rilevamento interattivo degli oggetti#

Questa interfaccia Gradio offre un modo semplice e interattivo per eseguire il rilevamento degli oggetti utilizzando il modello Ultralytics YOLO26. Puoi caricare immagini e regolare parametri come la soglia di confidenza e la soglia di intersezione su unione (IoU) per ottenere risultati di rilevamento in tempo reale.



Watch: Deploy Ultralytics YOLO26 in a Browser with Gradio | Complete Tutorial | Vision AI 🌐

Perché usare Gradio per il rilevamento degli oggetti?#

  • Interfaccia intuitiva: Gradio offre una piattaforma semplice che consente di caricare immagini e visualizzare i risultati del rilevamento senza dover scrivere codice.
  • Regolazioni in tempo reale: Parametri come le soglie di confidenza e IoU possono essere regolati al volo, consentendo di ottenere un feedback immediato e ottimizzare i risultati del rilevamento.
  • Ampia accessibilità: L'interfaccia web di Gradio è accessibile a chiunque, il che la rende uno strumento eccellente per dimostrazioni, scopi didattici e sperimentazioni rapide.

Gradio YOLO detection interface

Come installare Gradio#

pip install gradio

Come usare l'interfaccia#

  1. Carica immagine: Fai clic su 'Upload Image' per scegliere un file immagine per il rilevamento degli oggetti.
  2. Regola i parametri:
    • Soglia di confidenza: Slider per impostare il livello minimo di confidenza per il rilevamento degli oggetti.
    • Soglia IoU: Slider per impostare la soglia IoU per distinguere oggetti diversi.
  3. Visualizza i risultati: Verrà visualizzata l'immagine elaborata con gli oggetti rilevati e le relative etichette.

Esempi di utilizzo#

  • Immagine di esempio 1: Rilevamento di un autobus con le soglie predefinite.
  • Immagine di esempio 2: Rilevamento su un'immagine sportiva con le soglie predefinite.

Esempio di utilizzo#

Questa sezione contiene il codice Python utilizzato per creare un'interfaccia Gradio per il rilevamento degli oggetti con Ultralytics YOLO26. L'esempio può essere adattato per la classificazione, la segmentazione di istanze, la stima della posa e altre attività YOLO caricando il checkpoint del modello corrispondente.

import gradio as gr
from PIL import Image

from ultralytics import ASSETS, YOLO

model = YOLO("yolo26n.pt")

def predict_image(img, conf_threshold, iou_threshold):
    """Predicts objects in an image using a YOLO26 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

iface = gr.Interface(
    fn=predict_image,
    inputs=[
        gr.Image(type="pil", label="Upload Image"),
        gr.Slider(minimum=0, maximum=1, value=0.25, label="Confidence threshold"),
        gr.Slider(minimum=0, maximum=1, value=0.45, label="IoU threshold"),
    ],
    outputs=gr.Image(type="pil", label="Result"),
    title="Ultralytics Gradio",
    description="Upload images for inference. The Ultralytics YOLO26n model is used by default.",
    examples=[
        [ASSETS / "bus.jpg", 0.25, 0.45],
        [ASSETS / "zidane.jpg", 0.25, 0.45],
    ],
)

if __name__ == "__main__":
    iface.launch()

Spiegazione dei parametri#

Nome del parametroTipoDescrizione
imgImageL'immagine sulla quale verrà eseguito il rilevamento degli oggetti.
conf_thresholdfloatSoglia di confidenza per il rilevamento degli oggetti.
iou_thresholdfloatSoglia di intersezione su unione per la separazione degli oggetti.

Componenti dell'interfaccia Gradio#

ComponenteDescrizione
Input immaginePer caricare l'immagine da analizzare.
SliderPer regolare le soglie di confidenza e IoU.
Output immaginePer visualizzare i risultati del rilevamento.

FAQ#

  • Per usare Gradio con Ultralytics YOLO26 per il rilevamento degli oggetti, puoi seguire questi passaggi:

    1. Installa Gradio: Usa il comando pip install gradio.
    2. Crea l'interfaccia: Scrivi uno script Python per inizializzare l'interfaccia Gradio. Per maggiori dettagli, puoi fare riferimento all'esempio di codice fornito nella documentazione.
    3. Carica e regola: Carica la tua immagine e regola le soglie di confidenza e IoU nell'interfaccia Gradio per ottenere risultati di rilevamento degli oggetti in tempo reale.

    Ecco un frammento di codice minimo come riferimento:

    import gradio as gr
    
    from ultralytics import YOLO
    
    model = YOLO("yolo26n.pt")
    
    def predict_image(img, conf_threshold, iou_threshold):
        results = model.predict(
            source=img,
            conf=conf_threshold,
            iou=iou_threshold,
            show_labels=True,
            show_conf=True,
        )
        return results[0].plot() if results else None
    
    iface = gr.Interface(
        fn=predict_image,
        inputs=[
            gr.Image(type="pil", label="Upload Image"),
            gr.Slider(minimum=0, maximum=1, value=0.25, label="Confidence threshold"),
            gr.Slider(minimum=0, maximum=1, value=0.45, label="IoU threshold"),
        ],
        outputs=gr.Image(type="pil", label="Result"),
        title="Ultralytics Gradio YOLO26",
        description="Upload images for YOLO26 object detection.",
    )
    iface.launch()
  • Usare Gradio per il rilevamento degli oggetti con Ultralytics YOLO26 offre diversi vantaggi:

    • Interfaccia intuitiva: Gradio fornisce un'interfaccia intuitiva che consente di caricare immagini e visualizzare i risultati del rilevamento senza dover scrivere codice.
    • Regolazioni in tempo reale: Puoi regolare dinamicamente parametri di rilevamento come le soglie di confidenza e IoU e visualizzarne immediatamente gli effetti.
    • Accessibilità: L'interfaccia web è accessibile a chiunque, il che la rende utile per sperimentazioni rapide, scopi didattici e dimostrazioni.

    Per maggiori dettagli, puoi leggere questo articolo del blog sull'IA in radiologia, che illustra tecniche simili di visualizzazione interattiva.

  • Sì, Gradio e Ultralytics YOLO26 possono essere utilizzati efficacemente insieme per scopi didattici. L'interfaccia web intuitiva di Gradio consente a studenti e docenti di interagire facilmente con modelli di deep learning all'avanguardia come Ultralytics YOLO26 senza bisogno di competenze avanzate di programmazione. Questa configurazione è ideale per dimostrare i concetti chiave del rilevamento degli oggetti e della visione artificiale, poiché Gradio offre un feedback visivo immediato che aiuta a comprendere l'impatto dei diversi parametri sulle prestazioni del rilevamento.

  • Nell'interfaccia Gradio per YOLO26, puoi regolare le soglie di confidenza e IoU utilizzando gli slider disponibili. Queste soglie aiutano a controllare l'accuratezza delle predizioni e la separazione degli oggetti:

    • Soglia di confidenza: Determina il livello minimo di confidenza per il rilevamento degli oggetti. Sposta lo slider per aumentare o diminuire la confidenza richiesta.
    • Soglia IoU: Imposta la soglia di intersezione su unione per distinguere gli oggetti sovrapposti. Regola questo valore per perfezionare la separazione degli oggetti.

    Per ulteriori informazioni su questi parametri, visita la sezione sulla spiegazione dei parametri.

  • Le applicazioni pratiche della combinazione di Ultralytics YOLO26 e Gradio includono:

    • Dimostrazioni del rilevamento degli oggetti in tempo reale: Ideali per mostrare come funziona il rilevamento degli oggetti in tempo reale.
    • Strumenti didattici: Utili in ambito accademico per insegnare i concetti di rilevamento degli oggetti e visione artificiale.
    • Sviluppo di prototipi: Efficienti per sviluppare e testare rapidamente applicazioni prototipali di rilevamento degli oggetti.
    • Community e collaborazioni: Semplificano la condivisione dei modelli con la community per ricevere feedback e collaborare.

    Per esempi di casi d'uso simili, consulta l'articolo del blog di Ultralytics sul monitoraggio del comportamento animale, che mostra come la visualizzazione interattiva possa migliorare gli interventi di conservazione della fauna selvatica.

Commenti