Stima della velocità con Ultralytics YOLO26 🚀
Cos'è la stima della velocità?
La stima della velocità è il processo di calcolo della velocità di movimento di un oggetto all'interno di un determinato contesto, spesso impiegato in applicazioni di computer vision. Utilizzando Ultralytics YOLO26, ora puoi calcolare la velocità degli oggetti sfruttando il tracciamento degli oggetti insieme ai dati di distanza e tempo, fondamentali per compiti come il monitoraggio del traffico e la sorveglianza. L'accuratezza della stima della velocità influenza direttamente l'efficienza e l'affidabilità di varie applicazioni, rendendola una componente chiave nell'avanzamento dei sistemi intelligenti e dei processi decisionali in tempo reale.
Watch: Speed Estimation using Ultralytics YOLO26
Per approfondimenti sulla stima della velocità, consulta il nostro post sul blog: Ultralytics YOLO for Speed Estimation in Computer Vision Projects
Vantaggi della stima della velocità
- Controllo efficace del traffico: Una stima accurata della velocità aiuta a gestire il flusso del traffico, migliorando la sicurezza e riducendo la congestione sulle strade.
- Navigazione autonoma precisa: In sistemi autonomi come le auto a guida autonoma, una stima affidabile della velocità garantisce una navigazione sicura e precisa del veicolo.
- Maggiore sicurezza nella sorveglianza: La stima della velocità nell'analisi della sorveglianza aiuta a identificare comportamenti insoliti o potenziali minacce, migliorando l'efficacia delle misure di sicurezza.
Applicazioni nel mondo reale
| Trasporti | Trasporti |
|---|---|
![]() | ![]() |
| Stima della velocità su strada con Ultralytics YOLO26 | Stima della velocità su ponte con Ultralytics YOLO26 |
La velocità è una stima
La velocità sarà una stima e potrebbe non essere completamente accurata. Inoltre, la stima può variare in base alle specifiche della fotocamera e a fattori correlati.
# Run a speed example
yolo solutions speed show=True
# Pass a source video
yolo solutions speed source="path/to/video.mp4"
# Adjust meter per pixel value based on camera configuration
yolo solutions speed meter_per_pixel=0.05Argomenti di SpeedEstimator
Ecco una tabella con gli argomenti di SpeedEstimator:
| Argomento | Tipo | Predefinito | Descrizione |
|---|---|---|---|
model | str | None | Percorso verso un file modello Ultralytics YOLO. |
fps | float | 30.0 | Fotogrammi al secondo utilizzati per i calcoli della velocità. |
max_hist | int | 5 | Punti storici massimi da tracciare per oggetto per i calcoli di velocità/direzione. |
meter_per_pixel | float | 0.05 | Fattore di scala utilizzato per convertire la distanza in pixel in unità del mondo reale. |
max_speed | int | 120 | Limite massimo di velocità nelle sovrapposizioni visive (utilizzato negli avvisi). |
La soluzione SpeedEstimator consente l'uso dei parametri di track:
| Argomento | Tipo | Predefinito | Descrizione |
|---|---|---|---|
tracker | str | 'botsort.yaml' | Specifica l'algoritmo di tracciamento da utilizzare, ad esempio bytetrack.yaml o botsort.yaml. |
conf | float | 0.1 | Imposta la soglia di confidenza per i rilevamenti; valori più bassi consentono il tracciamento di più oggetti ma potrebbero includere falsi positivi. |
iou | float | 0.7 | Imposta la soglia di Intersection over Union (IoU) per filtrare i rilevamenti sovrapposti. |
classes | list | None | Filtra i risultati per indice di classe. Ad esempio, classes=[0, 2, 3] traccia solo le classi specificate. |
verbose | bool | True | Controlla la visualizzazione dei risultati di tracciamento, fornendo un output visivo degli oggetti tracciati. |
device | str | None | Specifica il dispositivo per l'inferenza (ad esempio cpu, cuda:0 o 0). Consente agli utenti di scegliere tra CPU, una specifica GPU o altri dispositivi di calcolo per l'esecuzione del modello. |
Inoltre, sono supportate le seguenti opzioni di visualizzazione:
| Argomento | Tipo | Predefinito | Descrizione |
|---|---|---|---|
show | bool | False | Se True, visualizza le immagini o i video annotati in una finestra. Utile per un feedback visivo immediato durante lo sviluppo o il test. |
line_width | int or None | None | Specifica lo spessore della linea dei riquadri di delimitazione. Se None, lo spessore viene regolato automaticamente in base alla dimensione dell'immagine. Fornisce personalizzazione visiva per maggiore chiarezza. |
show_conf | bool | True | Visualizza il punteggio di confidenza per ogni rilevamento accanto all'etichetta. Offre informazioni sulla certezza del modello per ogni rilevamento. |
show_labels | bool | True | Visualizza le etichette per ogni rilevamento nell'output visivo. Fornisce una comprensione immediata degli oggetti rilevati. |
FAQ
Come posso stimare la velocità di un oggetto utilizzando Ultralytics YOLO26?
Stimare la velocità di un oggetto con Ultralytics YOLO26 comporta la combinazione di tecniche di rilevamento oggetti e tracciamento. Per prima cosa, devi rilevare gli oggetti in ogni fotogramma utilizzando il modello YOLO26. Quindi, traccia questi oggetti tra i vari fotogrammi per calcolare il loro movimento nel tempo. Infine, utilizza la distanza percorsa dall'oggetto tra i fotogrammi e il frame rate per stimarne la velocità.
Esempio:
import cv2
from ultralytics import solutions
cap = cv2.VideoCapture("path/to/video.mp4")
w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))
video_writer = cv2.VideoWriter("speed_estimation.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))
# Initialize SpeedEstimator
speedestimator = solutions.SpeedEstimator(
model="yolo26n.pt",
show=True,
)
while cap.isOpened():
success, im0 = cap.read()
if not success:
break
results = speedestimator(im0)
video_writer.write(results.plot_im)
cap.release()
video_writer.release()
cv2.destroyAllWindows()Per maggiori dettagli, consulta il nostro post ufficiale sul blog.
Quali sono i vantaggi dell'utilizzo di Ultralytics YOLO26 per la stima della velocità nella gestione del traffico?
L'utilizzo di Ultralytics YOLO26 per la stima della velocità offre vantaggi significativi nella gestione del traffico:
- Maggiore sicurezza: Stima con precisione la velocità dei veicoli per rilevare l'eccesso di velocità e migliorare la sicurezza stradale.
- Monitoraggio in tempo reale: Sfrutta la capacità di rilevamento oggetti in tempo reale di YOLO26 per monitorare efficacemente il flusso del traffico e la congestione.
- Scalabilità: Distribuisci il modello su varie configurazioni hardware, dai dispositivi edge ai server, garantendo soluzioni flessibili e scalabili per implementazioni su larga scala.
Per ulteriori applicazioni, consulta i vantaggi della stima della velocità.
YOLO26 può essere integrato con altri framework IA come TensorFlow o PyTorch?
Sì, YOLO26 può essere integrato con altri framework IA come TensorFlow e PyTorch. Ultralytics fornisce supporto per l'esportazione dei modelli YOLO26 in vari formati come ONNX, TensorRT e CoreML, garantendo un'interoperabilità fluida con altri framework ML.
Per esportare un modello YOLO26 nel formato ONNX:
yolo export model=yolo26n.pt format=onnxScopri di più sull'esportazione dei modelli nella nostra guida all'esportazione.
Quanto è accurata la stima della velocità utilizzando Ultralytics YOLO26?
L'accuratezza della stima della velocità utilizzando Ultralytics YOLO26 dipende da diversi fattori, tra cui la qualità del tracciamento degli oggetti, la risoluzione e il frame rate del video e variabili ambientali. Sebbene lo stimatore di velocità fornisca stime affidabili, potrebbe non essere accurato al 100% a causa di variazioni nella velocità di elaborazione dei fotogrammi e dell'occlusione degli oggetti.
Nota: Considera sempre un margine di errore e valida le stime con i dati di ground truth quando possibile.
Per ulteriori suggerimenti sul miglioramento dell'accuratezza, consulta la sezione Argomenti SpeedEstimator.

