Guida rapida a YOLOv5 🚀
Inizia il tuo viaggio nel dinamico mondo del object detection in tempo reale con Ultralytics YOLOv5! Questa guida è pensata per essere un punto di partenza completo per appassionati e professionisti di AI che mirano a padroneggiare YOLOv5. Dall'installazione iniziale alle tecniche di addestramento avanzate, abbiamo quello che fa per te. Alla fine di questa guida, avrai le conoscenze necessarie per implementare YOLOv5 nei tuoi progetti con sicurezza, utilizzando metodi di deep learning all'avanguardia. Accendiamo i motori e partiamo con YOLOv5!
Installa
Preparati al lancio clonando il repository di YOLOv5 e impostando l'ambiente. Questo assicura che tutti i requisiti necessari siano installati. Verifica di avere Python>=3.8.0 e PyTorch>=1.8 pronti al decollo. Questi strumenti fondamentali sono essenziali per eseguire YOLOv5 in modo efficace.
git clone https://github.com/ultralytics/yolov5 # clone repository
cd yolov5
pip install -r requirements.txt # install dependenciesInferenza con PyTorch Hub
Scopri la semplicità dell'inferenza con PyTorch Hub di YOLOv5, dove i modelli vengono scaricati senza problemi dall'ultima release di YOLOv5. Questo metodo sfrutta la potenza di PyTorch per un caricamento ed esecuzione agevole del modello, rendendo facile ottenere le previsioni.
import torch
# Model loading
model = torch.hub.load("ultralytics/yolov5", "yolov5s") # Can be 'yolov5n' - 'yolov5x6', or 'custom'
# Inference on images
img = "https://ultralytics.com/images/zidane.jpg" # Can be a file, Path, PIL, OpenCV, numpy, or list of images
# Run inference
results = model(img)
# Display results
results.print() # Other options: .show(), .save(), .crop(), .pandas(), etc. Explore these in the Predict mode documentation.Inferenza con detect.py
Sfrutta detect.py per un'inferenza versatile su diverse fonti. Recupera automaticamente i modelli dall'ultima release di YOLOv5 e salva i risultati con facilità. Questo script è ideale per l'utilizzo da riga di comando e per integrare YOLOv5 in sistemi più ampi, supportando input come immagini, video, directory, webcam e persino live streams.
python detect.py --weights yolov5s.pt --source 0 # webcam
python detect.py --weights yolov5s.pt --source image.jpg # image
python detect.py --weights yolov5s.pt --source video.mp4 # video
python detect.py --weights yolov5s.pt --source screen # screenshot
python detect.py --weights yolov5s.pt --source path/ # directory
python detect.py --weights yolov5s.pt --source list.txt # list of images
python detect.py --weights yolov5s.pt --source list.streams # list of streams
python detect.py --weights yolov5s.pt --source 'path/*.jpg' # glob pattern
python detect.py --weights yolov5s.pt --source 'https://youtu.be/LNwODJXcvt4' # YouTube video
python detect.py --weights yolov5s.pt --source 'rtsp://example.com/media.mp4' # RTSP, RTMP, HTTP streamAddestramento
Replica i benchmark del COCO dataset di YOLOv5 seguendo le istruzioni di addestramento qui sotto. I modelli e i dataset necessari (come coco128.yaml o il file coco.yaml completo) vengono prelevati direttamente dall'ultima release di YOLOv5. L'addestramento di YOLOv5n/s/m/l/x su una GPU V100 dovrebbe richiedere tipicamente 1/2/4/6/8 giorni rispettivamente (nota che le configurazioni per l'addestramento Multi-GPU funzionano più velocemente). Massimizza le prestazioni utilizzando il --batch-size più alto possibile oppure usa --batch-size -1 per la funzionalità AutoBatch di YOLOv5, che trova automaticamente la batch size ottimale. Le seguenti batch size sono ideali per GPU V100-16GB. Fai riferimento alla nostra guida alla configurazione per i dettagli sui file di configurazione del modello (*.yaml).
# Train YOLOv5n on COCO128 for 3 epochs
python train.py --data coco128.yaml --epochs 3 --weights yolov5n.pt --batch-size 128
# Train YOLOv5s on COCO for 300 epochs
python train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov5s.yaml --batch-size 64
# Train YOLOv5m on COCO for 300 epochs
python train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov5m.yaml --batch-size 40
# Train YOLOv5l on COCO for 300 epochs
python train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov5l.yaml --batch-size 24
# Train YOLOv5x on COCO for 300 epochs
python train.py --data coco.yaml --epochs 300 --weights '' --cfg yolov5x.yaml --batch-size 16
Per concludere, YOLOv5 non è solo uno strumento all'avanguardia per l'object detection, ma anche una testimonianza della potenza del machine learning nel trasformare il modo in cui interagiamo con il mondo attraverso la comprensione visiva. Mentre avanzi in questa guida e inizi ad applicare YOLOv5 ai tuoi progetti, ricorda che ti trovi in prima linea in una rivoluzione tecnologica, capace di compiere imprese straordinarie nella computer vision. Se dovessi aver bisogno di ulteriori approfondimenti o supporto da parte di altri visionari, sei invitato nel nostro repository GitHub, casa di una fiorente comunità di sviluppatori e ricercatori. Esplora ulteriori risorse come Ultralytics Platform per la gestione dei dataset e l'addestramento dei modelli senza codice, o dai un'occhiata alla nostra pagina Solutions per applicazioni reali e ispirazione. Continua a esplorare, continua a innovare e goditi le meraviglie di YOLOv5. Buona rilevazione! 🌠🔍