Scopri come il riconoscimento delle azioni identifica i comportamenti nei video. Impara a utilizzare Ultralytics per la stima delle pose e crea sistemi di IA intelligenti per attività HAR.
Il riconoscimento delle azioni, comunemente noto anche come Human Activity Recognition (HAR), è un sotto-campo dinamico della visione artificiale (CV) che si occupa di identificare e classificare comportamenti o movimenti specifici eseguiti da soggetti in dati video. Mentre il tradizionale rilevamento degli oggetti risponde alla domanda "cosa c'è nell'immagine?", il riconoscimento delle azioni affronta la domanda più complessa "cosa sta succedendo nel tempo?". Analizzando sequenze di fotogrammi anziché immagini statiche, i modelli di machine learning (ML) sono in grado di distinguere tra attività complesse come "camminare", "andare in bicicletta", "cadere" o "stringere la mano ", rendendoli una componente fondamentale per la creazione di sistemi intelligenti in grado di comprendere le intenzioni e il contesto umani.
Il riconoscimento delle azioni richiede un modello in grado di elaborare sia le informazioni spaziali (l'aspetto degli oggetti o delle persone) sia quelle temporali (il modo in cui si muovono nel tempo). Per ottenere questo risultato, i moderni sistemi di intelligenza artificiale (AI) utilizzano spesso architetture specializzate che vanno oltre le standard reti neurali convoluzionali (CNN).
La capacità di interpretare automaticamente i movimenti umani ha un potenziale trasformativo in vari settori, migliorando la sicurezza, l'efficienza e l'esperienza dell'utente.
Un flusso di lavoro comune prevede prima il rilevamento delle persone e della loro posa scheletrica, quindi l'analisi del movimento di tali articolazioni. Il modello Ultralytics offre velocità e precisione all'avanguardia per la fase iniziale di stima della posa, che è alla base di molte pipeline di riconoscimento delle azioni .
Il seguente esempio mostra come estrarre i punti chiave dello scheletro da un fotogramma video utilizzando Python:
from ultralytics import YOLO
# Load the YOLO26 pose estimation model
model = YOLO("yolo26n-pose.pt")
# Run inference on an image to detect person keypoints
results = model("https://ultralytics.com/images/bus.jpg")
# Process results
for result in results:
# Access the keypoints (x, y, visibility)
if result.keypoints is not None:
print(f"Detected keypoints shape: {result.keypoints.data.shape}")
È importante differenziare il riconoscimento delle azioni da attività simili di visione artificiale per garantire che vengano applicati i metodi corretti .
Lo sviluppo di modelli di riconoscimento delle azioni robusti presenta delle sfide, in particolare per quanto riguarda la necessità di grandi set di dati video annotati come Kinetics-400 o UCF101. L'etichettatura dei dati video richiede molto più tempo rispetto all'etichettatura delle immagini statiche. Per ovviare a questo problema, strumenti come la Ultralytics aiutano a semplificare il flusso di lavoro di annotazione e formazione .
Inoltre, l'efficienza computazionale è fondamentale. L'elaborazione di video ad alta risoluzione in tempo reale richiede notevoli risorse hardware. Il settore si sta orientando sempre più verso l' Edge AI, ottimizzando i modelli per l'esecuzione diretta su telecamere e dispositivi mobili al fine di ridurre la latenza e l'utilizzo della larghezza di banda. I progressi futuri mirano a migliorare la generalizzazione dei modelli, consentendo ai sistemi di riconoscere le azioni anche da punti di vista su cui non sono stati esplicitamente addestrati.