Ultralytics YOLO27:
Get Started

Domande frequenti (FAQ) su Ultralytics YOLO#

Questa sezione di FAQ risponde alle domande e ai problemi più comuni che gli utenti possono incontrare lavorando con i repository Ultralytics YOLO.

Domande frequenti#

  • Ultralytics è un'azienda di AI specializzata in computer vision e modelli all'avanguardia per il rilevamento di oggetti e la segmentazione delle immagini, con un'attenzione particolare alla famiglia YOLO (You Only Look Once). La sua offerta comprende:

  • No. YOLO27 è nelle fasi finali di ricerca e sviluppo in vista del lancio previsto entro la fine dell'anno, ma non è stata fissata una data. La documentazione presenta in anteprima le funzionalità, i benchmark preliminari e gli esempi per l'utilizzo dopo il rilascio. Per i progetti attuali, continua a usare YOLO26.

  • Installare il pacchetto Ultralytics con pip è semplice:

    pip install ultralytics

    Per installare la versione di sviluppo più recente, installala direttamente dal repository GitHub:

    pip install git+https://github.com/ultralytics/ultralytics.git

    Le istruzioni dettagliate per l'installazione sono disponibili nella guida rapida.

  • Requisiti minimi:

    • Python 3.8+
    • PyTorch 1.8+
    • GPU compatibile con CUDA (per l'accelerazione GPU)

    Configurazione consigliata:

    • Python 3.8+
    • PyTorch 1.10+
    • GPU NVIDIA con CUDA 11.2+
    • 8 GB+ di RAM
    • 50 GB+ di spazio libero su disco (per archiviare i dataset e addestrare i modelli)

    Per risolvere i problemi più comuni, visita la pagina Problemi comuni di YOLO.

  • Per addestrare un modello YOLO personalizzato:

    1. Prepara il dataset in formato YOLO (immagini e i corrispondenti file di etichette txt).

    2. Crea un file YAML che descriva la struttura e le classi del dataset (vedi esempio di YAML per un dataset).

    3. Usa il seguente codice Python per avviare l'addestramento:

      from ultralytics import YOLO
      
      # Carica un modello
      model = YOLO("yolo26n.yaml")  # crea un nuovo modello da zero
      model = YOLO("yolo26n.pt")  # carica un modello preaddestrato (consigliato per l'addestramento)
      
      # Addestra il modello
      results = model.train(data="path/to/your/data.yaml", epochs=100, imgsz=640)

    Per una guida più approfondita, che include la preparazione dei dati e opzioni di addestramento avanzate, consulta la guida completa all'addestramento.

  • Ultralytics offre un'ampia gamma di modelli preaddestrati per varie attività:

    • Rilevamento di oggetti: YOLO26n, YOLO26s, YOLO26m, YOLO26l, YOLO26x
    • Segmentazione di istanze: YOLO26n-seg, YOLO26s-seg, YOLO26m-seg, YOLO26l-seg, YOLO26x-seg
    • Segmentazione semantica: YOLO26n-sem, YOLO26s-sem, YOLO26m-sem, YOLO26l-sem, YOLO26x-sem
    • Stima della profondità: YOLO26n-depth, YOLO26s-depth, YOLO26m-depth, YOLO26l-depth, YOLO26x-depth
    • Classificazione: YOLO26n-cls, YOLO26s-cls, YOLO26m-cls, YOLO26l-cls, YOLO26x-cls
    • Stima della posa: YOLO26n-pose, YOLO26s-pose, YOLO26m-pose, YOLO26l-pose, YOLO26x-pose
    • Rilevamento orientato (OBB): YOLO26n-obb, YOLO26s-obb, YOLO26m-obb, YOLO26l-obb, YOLO26x-obb

    Questi modelli variano per dimensioni e complessità, offrendo diversi compromessi tra velocità e accuratezza. Esplora l'intera gamma di modelli preaddestrati per trovare quello più adatto al tuo progetto.

  • Per eseguire inferenze con un modello addestrato:

    from ultralytics import YOLO
    
    # Carica un modello
    model = YOLO("path/to/your/model.pt")
    
    # Esegui l'inferenza
    results = model("path/to/image.jpg")
    
    # Elabora i risultati
    for r in results:
        print(r.boxes)  # stampa le predizioni dei bbox
        print(r.masks)  # stampa le predizioni delle maschere
        print(r.probs)  # stampa le probabilità delle classi

    Per le opzioni di inferenza avanzate, tra cui l'elaborazione in batch e l'inferenza su video, consulta la guida dettagliata alle predizioni.

  • Certamente! I modelli Ultralytics sono progettati per essere distribuiti su diverse piattaforme:

    • Dispositivi edge: ottimizza l'inferenza su dispositivi come NVIDIA Jetson o Raspberry Pi usando TensorRT, ONNX o OpenVINO.
    • Dispositivi mobili: distribuisci i modelli su Android o iOS convertendoli in LiteRT o CoreML.
    • Cloud: sfrutta framework come TensorFlow Serving o TorchServe per distribuzioni scalabili nel cloud.
    • Web: implementa l'inferenza nel browser usando ONNX Runtime Web.

    Ultralytics offre funzioni di esportazione per convertire i modelli in vari formati per la distribuzione. Esplora l'ampia gamma di opzioni di distribuzione per trovare la soluzione migliore per il tuo caso d'uso.

  • Le principali differenze includono:

    • Inferenza end-to-end senza NMS: YOLO26 offre inferenza senza NMS con nms=False. Il percorso predefinito one-to-many usa NMS per garantire la precisione.
    • Rimozione di DFL: YOLO26 rimuove il modulo Distribution Focal Loss, semplificando l'esportazione e migliorando la compatibilità con i dispositivi edge e a basso consumo.
    • Ottimizzatore MuSGD: un ibrido di SGD e Muon (ispirato a Kimi K2 di Moonshot AI) per un addestramento più stabile e una convergenza più rapida.
    • Prestazioni CPU: YOLO26n è fino al 43% più veloce di YOLO11n nell'inferenza CPU ONNX (Intel Xeon CPU @ 2.00 GHz), ed è quindi ideale per i dispositivi senza GPU.
    • Ottimizzazioni specifiche per attività: segmentazione migliorata con loss semantica e prototipi multiscala, RLE per la stima precisa della posa e decodifica OBB migliorata con loss angolare.
    • Attività: entrambi i modelli supportano il rilevamento di oggetti e la segmentazione di istanze, mentre YOLO26 aggiunge anche la segmentazione semantica per la predizione densa a livello di pixel e la stima monoculare della profondità per la profondità di ogni pixel. Entrambi i modelli supportano inoltre classificazione, stima della posa e rilevamento di oggetti orientati (OBB) in un framework unificato.

    Per un confronto approfondito delle funzionalità e delle metriche prestazionali, visita la pagina della documentazione di YOLO26.

  • Contribuire a Ultralytics è un ottimo modo per migliorare il progetto e ampliare le tue competenze. Ecco come puoi partecipare:

    1. Crea un fork del repository Ultralytics su GitHub.
    2. Crea un nuovo branch per la tua funzionalità o correzione di bug.
    3. Apporta le modifiche e assicurati che tutti i test vengano superati.
    4. Invia una pull request con una descrizione chiara delle modifiche.
    5. Partecipa al processo di revisione del codice.

    Puoi contribuire anche segnalando bug, suggerendo funzionalità o migliorando la documentazione. Per indicazioni dettagliate e buone pratiche, consulta la guida ai contributi.

  • Ultralytics YOLO offre un ricco insieme di funzionalità per le attività avanzate di computer vision:

    • Rilevamento in tempo reale: rileva e classifica gli oggetti in modo efficiente negli scenari in tempo reale.
    • Funzionalità multitasking: esegui il rilevamento di oggetti, la segmentazione di istanze, la segmentazione semantica, la stima monoculare della profondità, la classificazione, la stima della posa e il rilevamento di oggetti orientati (OBB) con un framework unificato.
    • Modelli preaddestrati: accedi a una varietà di modelli preaddestrati che bilanciano velocità e precisione per diversi casi d'uso.
    • Addestramento personalizzato: ottimizza facilmente i modelli sui tuoi dataset personalizzati con la pipeline di addestramento flessibile.
    • Ampie opzioni di distribuzione: esporta i modelli in vari formati, come TensorRT, ONNX e CoreML, per distribuirli su piattaforme diverse.
    • Documentazione completa: approfitta della documentazione esaustiva e di una community disponibile per i tuoi flussi di lavoro di computer vision.
  • Puoi migliorare le prestazioni del tuo modello YOLO con diverse tecniche:

    1. Ottimizzazione degli iperparametri: prova diversi iperparametri usando la guida all'ottimizzazione degli iperparametri per ottimizzare le prestazioni del modello.
    2. Aumento dei dati: applica tecniche come ribaltamento, ridimensionamento, rotazione e regolazione dei colori per arricchire il dataset di addestramento e migliorare la generalizzazione del modello.
    3. Transfer learning: sfrutta i modelli preaddestrati e ottimizzali sul tuo dataset specifico usando la guida all'addestramento.
    4. Esportazione in formati efficienti: converti il tuo modello in formati ottimizzati come TensorRT o ONNX per velocizzare l'inferenza usando la guida all'esportazione.
    5. Benchmark: usa la modalità Benchmark per misurare e migliorare sistematicamente la velocità e la precisione dell'inferenza.
  • Ultralytics mette a disposizione numerose risorse per aiutarti a iniziare e a padroneggiare i suoi strumenti:

    Queste risorse offrono esempi di codice, casi d'uso reali e guide dettagliate per svolgere diverse attività usando i modelli Ultralytics.

    Se hai bisogno di ulteriore assistenza, consulta la documentazione Ultralytics o contatta la community tramite GitHub Issues o il forum di discussione ufficiale.

Commenti