Ultralytics YOLO Domande frequenti (FAQ)
Questa sezione di FAQ affronta le domande e i problemi più comuni che gli utenti possono incontrare lavorando con i repository. Ultralytics YOLO repository.
FAQ
Cos'è Ultralytics e cosa offre?
Ultralytics è un'azienda di computer vision AI specializzata in modelli all'avanguardia per il rilevamento degli oggetti e la segmentazione delle immagini, con particolare attenzione alla famiglia YOLO (You Only Look Once). Le sue offerte comprendono:
- Le implementazioni open-source di YOLO11 e YOLO11
- Un'ampia gamma di modelli pre-addestrati per vari compiti di computer vision
- Un pacchetto completo di Python per una perfetta integrazione dei modelli di YOLO nei progetti
- Strumenti versatili per la formazione, il test e la distribuzione dei modelli
- Ampia documentazione e comunità di supporto
Come si installa il pacchetto Ultralytics ?
L'installazione del pacchetto Ultralytics è semplice utilizzando pip:
Per la versione di sviluppo più recente, installare direttamente dal repository GitHub:
Le istruzioni dettagliate per l'installazione sono contenute nella guida rapida.
Quali sono i requisiti di sistema per l'esecuzione dei modelli Ultralytics ?
Requisiti minimi:
- Python 3.7+
- PyTorch 1.7+
- CUDA-compatibile GPU (per l'accelerazione di GPU )
Configurazione consigliata:
- Python 3.8+
- PyTorch 1.10+
- NVIDIA GPU con CUDA 11.2+
- 8GB+ DI RAM
- Spazio libero su disco di oltre 50 GB (per l'archiviazione dei set di dati e l'addestramento del modello)
Per la risoluzione dei problemi più comuni, visitate la pagina YOLO Problemi comuni.
Come posso addestrare un modello YOLO11 personalizzato sul mio set di dati?
Per addestrare un modello personalizzato YOLO11 :
- Preparare il set di dati in formato YOLO (immagini e file txt con le etichette corrispondenti).
- Creare un file YAML che descriva la struttura e le classi del dataset.
- Utilizzate il seguente codice Python per iniziare la formazione:
from ultralytics import YOLO
# Load a model
model = YOLO("yolov8n.yaml") # build a new model from scratch
model = YOLO("yolov8n.pt") # load a pretrained model (recommended for training)
# Train the model
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 le opzioni di formazione avanzata, consultare la guida completa alla formazione.
Quali modelli preaddestrati sono disponibili in Ultralytics?
Ultralytics offre una vasta gamma di modelli preaddestrati di YOLO11 per vari compiti:
- Rilevamento degli oggetti: YOLO11n, YOLO11s, YOLO11m, YOLO11l, YOLO11x
- Segmentazione dell'istanza: YOLO11n-seg, YOLO11s-seg, YOLO11m-seg, YOLO11l-seg, YOLO11x-seg
- Classificazione: YOLO11n-cls, YOLO11s-cls, YOLO11m-cls, YOLO11l-cls, YOLO11x-cls
Questi modelli variano per dimensione e complessità, offrendo diversi compromessi tra velocità e precisione. Esplorate l'intera gamma di modelli preaddestrati per trovare quello più adatto al vostro progetto.
Come si esegue l'inferenza utilizzando un modello Ultralytics addestrato?
Eseguire l'inferenza con un modello addestrato:
from ultralytics import YOLO
# Load a model
model = YOLO("path/to/your/model.pt")
# Perform inference
results = model("path/to/image.jpg")
# Process results
for r in results:
print(r.boxes) # print bbox predictions
print(r.masks) # print mask predictions
print(r.probs) # print class probabilities
Per le opzioni di inferenza avanzate, tra cui l'elaborazione in batch e l'inferenza video, consultate la guida dettagliata alla predizione.
I modelli Ultralytics possono essere implementati su dispositivi edge o in ambienti di produzione?
Assolutamente sì! I modelli Ultralytics sono progettati per una distribuzione versatile su diverse piattaforme:
- Dispositivi edge: Ottimizzare l'inferenza su dispositivi come NVIDIA Jetson o Intel Neural Compute Stick utilizzando TensorRT, ONNX, o OpenVINO.
- Mobile: Distribuite su dispositivi Android o iOS convertendo i modelli in TFLite o Core ML.
- Cloud: Sfruttare framework come TensorFlow Serving o PyTorch Serve per implementazioni cloud scalabili.
- Web: Implementare l'inferenza nel browser utilizzando ONNX.js o TensorFlow.js.
Ultralytics offre funzioni di esportazione per convertire i modelli in vari formati per la distribuzione. Esplorate l'ampia gamma di opzioni di distribuzione per trovare la soluzione migliore per il vostro caso d'uso.
Qual è la differenza tra YOLOv8 e YOLO11?
Le distinzioni principali includono:
- Architettura: YOLO11 è caratterizzato da un design migliorato della spina dorsale e della testa, per prestazioni superiori.
- Prestazioni: YOLO11 offre generalmente una precisione e una velocità superiori rispetto a YOLOv8.
- Attività: YOLO11 supporta in modo nativo il rilevamento degli oggetti, la segmentazione delle istanze e la classificazione in un quadro unificato.
- Codebase: YOLO11 è implementato con un'architettura più modulare ed estensibile, che facilita la personalizzazione e l'estensione.
- Formazione: YOLO11 incorpora tecniche di formazione avanzate come la formazione multi-dataset e l'evoluzione degli iperparametri per migliorare i risultati.
Per un confronto approfondito delle caratteristiche e delle metriche delle prestazioni, visitate la YOLO pagina di confronto.
Come posso contribuire al progetto open-source Ultralytics ?
Contribuire a Ultralytics è un ottimo modo per migliorare il progetto e ampliare le proprie competenze. Ecco come partecipare:
- Sostituire il repository Ultralytics su GitHub.
- Create un nuovo ramo per la vostra funzione o correzione di bug.
- Apportare le modifiche e assicurarsi che tutti i test siano superati.
- Inviate una richiesta di pull con una descrizione chiara delle vostre modifiche.
- Partecipare al processo di revisione del codice.
È possibile contribuire anche segnalando bug, suggerendo funzionalità o migliorando la documentazione. Per le linee guida dettagliate e le migliori pratiche, consultare la guida alla contribuzione.
Come si installa il pacchetto Ultralytics in Python?
L'installazione del pacchetto Ultralytics in Python è semplice. Utilizzate pip eseguendo il seguente comando nel vostro terminale o prompt dei comandi:
Per la versione di sviluppo più avanzata, installare direttamente dal repository GitHub:
Per le istruzioni di installazione specifiche per l'ambiente e i suggerimenti per la risoluzione dei problemi, consultare la guida rapida completa.
Quali sono le caratteristiche principali di Ultralytics YOLO ?
Ultralytics YOLO vanta un ricco set di funzioni per il rilevamento avanzato degli oggetti e la segmentazione delle immagini:
- Rilevamento in tempo reale: Rilevamento e classificazione efficiente di oggetti in scenari in tempo reale.
- Modelli pre-addestrati: Accesso a una serie di modelli preaddestrati che bilanciano velocità e precisione per diversi casi d'uso.
- Formazione personalizzata: È facile perfezionare i modelli su set di dati personalizzati grazie alla pipeline di addestramento flessibile.
- Ampie opzioni di distribuzione: Esportazione dei modelli in vari formati come TensorRT, ONNX e CoreML per la distribuzione su diverse piattaforme.
- Documentazione completa: Approfittate di una documentazione completa e di una comunità di supporto che vi guiderà nel vostro viaggio nella computer vision.
Esplorate la pagina dei modelliYOLO per un'analisi approfondita delle capacità e delle architetture delle diverse versioni di YOLO .
Come posso migliorare le prestazioni del mio modello YOLO ?
Il miglioramento delle prestazioni del modello YOLO può essere ottenuto con diverse tecniche:
- Regolazione degli iperparametri: Sperimentare con diversi iperparametri utilizzando la Guida alla regolazione degli iperparametri per ottimizzare le prestazioni del modello.
- Aumento dei dati: Implementare tecniche come il flip, la scala, la rotazione e le regolazioni del colore per migliorare il set di dati di addestramento e la generalizzazione del modello.
- Apprendimento per trasferimento: Sfruttate i modelli pre-addestrati e metteteli a punto sul vostro set di dati specifico utilizzando la guida Train YOLO11.
- Esportazione in formati efficienti: Convertite il vostro modello in formati ottimizzati come TensorRT o ONNX per un'inferenza più rapida utilizzando la guida all'esportazione.
- Benchmarking: Utilizzate la modalità Benchmark per misurare e migliorare sistematicamente la velocità e l'accuratezza dell'inferenza.
È possibile distribuire i modelli Ultralytics YOLO su dispositivi mobili ed edge?
Sì, i modelli Ultralytics YOLO sono progettati per una distribuzione versatile, compresi i dispositivi mobili ed edge:
- Mobile: Convertire i modelli in TFLite o CoreML per una perfetta integrazione nelle app Android o iOS . Per le istruzioni specifiche della piattaforma, consultare la Guida all'integrazione di TFLite e la Guida all'integrazione diCoreML .
- Dispositivi edge: Ottimizzare l'inferenza su dispositivi come NVIDIA Jetson o altro hardware edge utilizzando TensorRT o ONNX. La Guida all'integrazione di Edge TPU fornisce i passaggi dettagliati per l'implementazione edge.
Per una panoramica completa delle strategie di distribuzione su varie piattaforme, consultare la guida alle opzioni di distribuzione.
Come si può eseguire un'inferenza utilizzando un modello addestrato Ultralytics YOLO ?
Eseguire l'inferenza con un modello Ultralytics YOLO addestrato è semplice:
- Caricare il modello:
- Eseguire l'inferenza:
results = model("path/to/image.jpg")
for r in results:
print(r.boxes) # print bounding box predictions
print(r.masks) # print mask predictions
print(r.probs) # print class probabilities
Per le tecniche di inferenza avanzate, tra cui l'elaborazione in batch, l'inferenza video e la preelaborazione personalizzata, consultare la guida dettagliata alla predizione.
Dove posso trovare esempi e tutorial per l'utilizzo di Ultralytics?
Ultralytics fornisce un'ampia gamma di risorse per aiutarvi a iniziare e a padroneggiare i loro strumenti:
- 📚 Documentazione ufficiale: Guide complete, riferimenti alle API e best practice.
- 💻 Repository GitHub: Codice sorgente, script di esempio e contributi della comunità.
- ✍️ Ultralytics blog: Articoli approfonditi, casi d'uso e approfondimenti tecnici.
- 💬 Forum della comunità: Connettetevi con altri utenti, fate domande e condividete le vostre esperienze.
- Canale YouTube 🎥: Video tutorial, demo e webinar su vari argomenti di Ultralytics .
Queste risorse forniscono esempi di codice, casi d'uso reali e guide passo-passo per varie attività che utilizzano i modelli Ultralytics .
Se avete bisogno di ulteriore assistenza, non esitate a consultare la documentazione di Ultralytics o a contattare la comunità attraverso GitHub Issues o il forum di discussione ufficiale.