Conteggio di oggetti in diverse regioni utilizzando Ultralytics YOLO 🚀
Che cos'è il conteggio degli oggetti nelle regioni?
Il conteggio degli oggetti in regioni con Ultralytics YOLO11 consiste nel determinare con precisione il numero di oggetti all'interno di aree specifiche utilizzando una visione computerizzata avanzata. Questo approccio è utile per ottimizzare i processi, aumentare la sicurezza e migliorare l'efficienza in varie applicazioni.
Guarda: Conteggio di oggetti in diverse regioni utilizzando Ultralytics YOLO11 | Ultralytics Soluzioni 🚀
Vantaggi del conteggio degli oggetti nelle regioni?
- Precisione e accuratezza: Il conteggio degli oggetti in regioni con visione computerizzata avanzata garantisce conteggi precisi e accurati, riducendo al minimo gli errori spesso associati al conteggio manuale.
- Miglioramento dell'efficienza: Il conteggio automatico degli oggetti migliora l'efficienza operativa, fornendo risultati in tempo reale e semplificando i processi tra le diverse applicazioni.
- Versatilità e applicazione: La versatilità del conteggio degli oggetti nelle regioni lo rende applicabile in diversi ambiti, dalla produzione alla sorveglianza, fino al monitoraggio del traffico, contribuendo alla sua ampia utilità ed efficacia.
Applicazioni nel mondo reale
Vendita al dettaglio | Strade del mercato |
---|---|
![]() |
![]() |
Conteggio delle persone in diverse regioni utilizzando Ultralytics YOLO11 | Conteggio delle folle in diverse regioni utilizzando Ultralytics YOLO11 |
Conteggio delle regioni con Ultralytics YOLO
import cv2
from ultralytics import solutions
cap = cv2.VideoCapture("path/to/video.mp4")
assert cap.isOpened(), "Error reading video file"
# Pass region as list
# region_points = [(20, 400), (1080, 400), (1080, 360), (20, 360)]
# Pass region as dictionary
region_points = {
"region-01": [(50, 50), (250, 50), (250, 250), (50, 250)],
"region-02": [(640, 640), (780, 640), (780, 720), (640, 720)],
}
# Video writer
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("region_counting.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))
# Initialize region counter object
regioncounter = solutions.RegionCounter(
show=True, # display the frame
region=region_points, # pass region points
model="yolo11n.pt", # model for counting in regions i.e yolo11s.pt
)
# Process video
while cap.isOpened():
success, im0 = cap.read()
if not success:
print("Video frame is empty or processing is complete.")
break
results = regioncounter(im0)
# print(results) # access the output
video_writer.write(results.plot_im)
cap.release()
video_writer.release()
cv2.destroyAllWindows() # destroy all opened windows
Ultralytics Codice di esempio
Il modulo di conteggio delle regioni di Ultralytics è disponibile nella nostra sezione esempi. È possibile esplorare questo esempio per personalizzare il codice e modificarlo per adattarlo al proprio caso d'uso specifico.
RegionCounter
Argomenti
Ecco una tabella con i dati RegionCounter
argomenti:
Argomento | Tipo | Predefinito | Descrizione |
---|---|---|---|
model |
str |
None |
Percorso del file del modelloYOLO Ultralytics . |
region |
list |
[(20, 400), (1260, 400)] |
Elenco dei punti che definiscono la regione di conteggio. |
Il RegionCounter
consente di utilizzare i parametri di tracciamento degli oggetti:
Argomento | Tipo | Predefinito | Descrizione |
---|---|---|---|
tracker |
str |
'botsort.yaml' |
Specifica l'algoritmo di tracciamento da utilizzare, ad es, bytetrack.yaml o botsort.yaml . |
conf |
float |
0.3 |
Imposta la soglia di confidenza per i rilevamenti; valori più bassi consentono di tracciare un maggior numero di oggetti, ma possono includere falsi positivi. |
iou |
float |
0.5 |
Imposta la soglia Intersection over Union (IoU) per il filtraggio dei rilevamenti sovrapposti. |
classes |
list |
None |
Filtra i risultati per indice di classe. Ad esempio, classes=[0, 2, 3] tiene traccia solo delle classi specificate. |
verbose |
bool |
True |
Controlla la visualizzazione dei risultati del tracciamento, fornendo un output visivo degli oggetti tracciati. |
device |
str |
None |
Specifica il dispositivo per l'inferenza (ad es, cpu , cuda:0 o 0 ). Consente agli utenti di scegliere tra CPU, uno specifico GPU o altri dispositivi di calcolo per l'esecuzione del modello. |
Inoltre, sono supportate le seguenti impostazioni 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 |
None or int |
None |
Specifica la larghezza della linea delle caselle di delimitazione. Se None La larghezza della linea viene regolata automaticamente in base alle dimensioni dell'immagine. Fornisce una personalizzazione visiva per la chiarezza. |
FAQ
Che cos'è il conteggio degli oggetti in regioni specifiche utilizzando Ultralytics YOLO11 ?
Il conteggio degli oggetti in regioni specifiche con Ultralytics YOLO11 Il conteggio degli oggetti in aree specifiche con la visione computerizzata avanzata consiste nell'individuazione e nel conteggio del numero di oggetti all'interno di aree definite. Questo metodo preciso migliora l'efficienza e l'accuratezza in varie applicazioni come la produzione, la sorveglianza e il monitoraggio del traffico.
Come si esegue lo script di conteggio degli oggetti basato sulla regione con Ultralytics YOLO11 ?
Seguire questi passaggi per eseguire il conteggio degli oggetti in Ultralytics YOLO11 :
-
Clonare il repository Ultralytics e navigare nella directory:
-
Eseguire lo script di conteggio delle regioni:
Per ulteriori opzioni, visitare la sezione Conteggio delle regioni di esecuzione.
Perché utilizzare Ultralytics YOLO11 per il conteggio degli oggetti nelle regioni?
L'utilizzo di Ultralytics YOLO11 per il conteggio degli oggetti nelle regioni offre diversi vantaggi:
- Elaborazione in tempo reale: L'architettura di YOLO11 consente una rapida inferenza, rendendolo ideale per le applicazioni che richiedono risultati di conteggio immediati.
- Definizione flessibile delle regioni: La soluzione consente di definire più regioni personalizzate come poligoni, rettangoli o linee per soddisfare le specifiche esigenze di monitoraggio.
- Supporto multi-classe: Conta simultaneamente diversi tipi di oggetti all'interno delle stesse regioni, fornendo analisi complete.
- Capacità di integrazione: Facile integrazione con i sistemi esistenti attraverso l'APIPython di Ultralytics o l'interfaccia a riga di comando.
Esplorate i vantaggi più profondi nella sezione Vantaggi.
Quali sono le applicazioni reali del conteggio degli oggetti nelle regioni?
Il conteggio degli oggetti con Ultralytics YOLO11 può essere applicato a numerosi scenari reali:
- Analitica del commercio al dettaglio: Conta i clienti nelle diverse sezioni del negozio per ottimizzare il layout e il personale.
- Gestione del traffico: Monitoraggio del flusso di veicoli in specifici segmenti stradali o intersezioni.
- Produzione: Tracciare i prodotti che si spostano nelle diverse zone di produzione.
- Operazioni di magazzino: Contare gli articoli in inventario nelle aree di stoccaggio designate.
- Sicurezza pubblica: Monitorare la densità della folla in zone specifiche durante gli eventi.
Esplorate altri esempi nella sezione Applicazioni reali e la soluzione TrackZone per ulteriori funzionalità di monitoraggio a zone.