Ultralytics YOLO27:
Get Started

Rilevamento interattivo degli oggetti: Gradio e Ultralytics YOLO26#

Introduzione al rilevamento interattivo degli oggetti#

Questa interfaccia Gradio offre un modo semplice e interattivo per eseguire il rilevamento degli oggetti usando il modello Ultralytics YOLO26. Gli utenti possono 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.



Guarda: Distribuisci Ultralytics YOLO26 nel browser con Gradio | Tutorial completo | IA per la visione 🌐

Perché usare Gradio per il rilevamento degli oggetti?#

  • Interfaccia intuitiva: Gradio offre una piattaforma semplice che permette agli utenti 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 modificati al volo, consentendo di ottenere riscontri immediati e ottimizzare i risultati del rilevamento.
  • Ampia accessibilità: chiunque può accedere all'interfaccia web di Gradio, rendendola uno strumento eccellente per dimostrazioni, attività didattiche e rapidi esperimenti.

Gradio YOLO detection interface

Come installare Gradio#

pip install gradio

Come usare l'interfaccia#

  1. Carica un'immagine: fai clic su 'Upload Image' per scegliere un file immagine da usare per il rilevamento degli oggetti.
  2. Regola i parametri:
    • Soglia di confidenza: cursore per impostare il livello minimo di confidenza per il rilevamento degli oggetti.
    • Soglia IoU: cursore per impostare la soglia IoU per distinguere gli oggetti.
  3. Visualizza i risultati: verranno mostrate l'immagine elaborata, 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 in un'immagine sportiva con le soglie predefinite.

Esempio d'uso#

Questa sezione contiene il codice Python usato per creare un'interfaccia Gradio per il rilevamento degli oggetti con Ultralytics YOLO26. L'esempio può essere adattato per attività di classificazione, segmentazione di istanze, 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 su cui verrà eseguito il rilevamento degli oggetti.
conf_thresholdfloatSoglia di confidenza per il rilevamento degli oggetti.
iou_thresholdfloatSoglia di intersezione su unione per separare gli oggetti.

Componenti dell'interfaccia Gradio#

ComponenteDescrizione
Input immaginePer caricare l'immagine da usare per il rilevamento.
CursoriPer regolare le soglie di confidenza e IoU.
Output immaginePer visualizzare i risultati del rilevamento.

Domande frequenti#

  • Per usare Gradio con Ultralytics YOLO26 per il rilevamento degli oggetti, segui 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 i dettagli, consulta l'esempio di codice nella documentazione.
    3. Carica e regola: carica l'immagine e regola le soglie di confidenza e IoU nell'interfaccia Gradio per ottenere risultati di rilevamento degli oggetti in tempo reale.

    Ecco un breve frammento di codice di esempio:

    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(pil=True)  # Immagine RGB PIL; plot() senza pil=True restituisce un array BGR
    
    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 offre un'interfaccia facile da usare che permette di caricare immagini e visualizzare i risultati del rilevamento senza dover scrivere codice.
    • Regolazioni in tempo reale: puoi modificare dinamicamente parametri di rilevamento come le soglie di confidenza e IoU e osservarne subito gli effetti.
    • Accessibilità: chiunque può accedere all'interfaccia web, utile per rapidi esperimenti, attività didattiche e dimostrazioni.

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

  • Sì, Gradio e Ultralytics YOLO26 possono essere usati efficacemente insieme a 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 illustrare i concetti fondamentali del rilevamento degli oggetti e della visione artificiale, poiché Gradio fornisce un riscontro 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 usando gli appositi cursori. Queste soglie aiutano a controllare la precisione delle previsioni e la separazione degli oggetti:

    • Soglia di confidenza: determina il livello minimo di confidenza per il rilevamento degli oggetti. Sposta il cursore per aumentare o diminuire il livello di confidenza richiesto.
    • Soglia IoU: imposta la soglia di intersezione su unione per distinguere gli oggetti sovrapposti. Regola questo valore per perfezionare la separazione degli oggetti.

    Per maggiori informazioni su questi parametri, visita la sezione dedicata alla spiegazione dei parametri.

  • Tra le applicazioni pratiche dell'uso combinato di Ultralytics YOLO26 e Gradio figurano:

    • Dimostrazioni di 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: permettono di sviluppare e testare rapidamente ed efficacemente applicazioni prototipo per il rilevamento degli oggetti.
    • Community e collaborazioni: facilitano la condivisione dei modelli con la community per ricevere feedback e collaborare.

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

Commenti