Crea un sistema di gestione dei parcheggi con Ultralytics YOLO26#
Che cos'è un sistema di gestione dei parcheggi?#
Un sistema di gestione dei parcheggi basato su Ultralytics YOLO26 rileva i veicoli in tempo reale per monitorare quali posti auto sono occupati o liberi, quindi comunica l'occupazione attuale del parcheggio. Combina la rilevazione degli oggetti di YOLO26 con una disposizione del parcheggio definita in JSON, così puoi monitorare un'intera area da un unico flusso video o feed della telecamera.
Guarda: Come creare un sistema di gestione dei parcheggi con Ultralytics YOLO26 | Rilevamento dei posti in tempo reale 🚗
Vantaggi di un sistema di gestione dei parcheggi#
- Efficienza: ottimizza l'uso dei posti auto e riduce la congestione in tutto il parcheggio.
- Sicurezza: migliora la sicurezza di persone e veicoli grazie alla videosorveglianza continua.
- Riduzione delle emissioni: gestisce il flusso del traffico per ridurre al minimo i tempi di inattività e le emissioni nei parcheggi.
Applicazioni nel mondo reale#
| Sistema di gestione dei parcheggi | Sistema di gestione dei parcheggi |
|---|---|
![]() | ![]() |
| Vista aerea della gestione dei parcheggi con Ultralytics YOLO26 | Vista dall'alto della gestione dei parcheggi con Ultralytics YOLO26 |
Flusso di lavoro del codice del sistema di gestione dei parcheggi#
Selezionare i punti è ora facile
La scelta dei punti del parcheggio è un'attività fondamentale e complessa nei sistemi di gestione dei parcheggi. Ultralytics semplifica questo processo con lo strumento "Annotatore dei posti auto", che ti permette di definire le aree del parcheggio da utilizzare in seguito per ulteriori elaborazioni.
Passaggio 1: acquisisci un frame dal video o dal flusso della telecamera in cui vuoi gestire il parcheggio.
Passaggio 2: usa il codice fornito per avviare un'interfaccia grafica, selezionare un'immagine e iniziare a delineare le aree di parcheggio facendo clic con il mouse per creare poligoni.
Passaggio aggiuntivo per installare `tkinter`
In genere, tkinter è preinstallato con Python. Se però non è presente, puoi installarlo seguendo i passaggi evidenziati:
- Linux: (Debian/Ubuntu):
sudo apt install python3-tk - Fedora:
sudo dnf install python3-tkinter - Arch:
sudo pacman -S tk - Windows: reinstalla Python e durante l'installazione seleziona la casella
tcl/tk and IDLEin Funzionalità facoltative - MacOS: reinstalla Python da https://www.python.org/downloads/macos/ o tramite
brew install python-tk
from ultralytics import solutions
solutions.ParkingPtsSelection()Passaggio 3: dopo aver definito le aree di parcheggio con i poligoni, fai clic su save per salvare i dati come bounding_boxes.json nella directory di lavoro: lo stesso nome di file caricato dallo script di gestione qui sotto.

Passaggio 4: ora puoi eseguire la soluzione di gestione dei parcheggi con il codice seguente.
import cv2
from ultralytics import solutions
# Acquisizione video
cap = cv2.VideoCapture("path/to/video.mp4")
assert cap.isOpened(), "Error reading video file"
# Scrittore video
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("parking management.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))
# Inizializza l'oggetto per la gestione dei parcheggi
parkingmanager = solutions.ParkingManagement(
model="yolo26n.pt", # percorso del file del modello
json_file="bounding_boxes.json", # percorso del file delle annotazioni del parcheggio
)
while cap.isOpened():
ret, im0 = cap.read()
if not ret:
break
results = parkingmanager(im0)
# print(results) # accedi all'output
video_writer.write(results.plot_im) # scrivi il fotogramma elaborato.
cap.release()
video_writer.release()
cv2.destroyAllWindows() # chiudi tutte le finestre aperteArgomenti di ParkingManagement#
Ecco una tabella con gli argomenti di ParkingManagement:
| Argomento | Tipo | Predefinito | Descrizione |
|---|---|---|---|
model | str | None | Percorso a un file modello Ultralytics YOLO. |
json_file | str | None | Percorso al file JSON che contiene tutti i dati sulle coordinate dei parcheggi. |
line_width | int | 2 | Spessore delle linee dei riquadri, dei punti chiave e dei conteggi disegnati dalla soluzione. |
verbose | bool | True | Abilita il log per frame della soluzione, con forma dell'input, conteggi per classe e velocità di elaborazione. La chiamata di tracking è sempre silenziosa. |
La soluzione ParkingManagement consente di usare diversi parametri track:
| Argomento | Tipo | Predefinito | Descrizione |
|---|---|---|---|
tracker | str | 'tracktrack.yaml' | Specifica l'algoritmo di tracciamento da usare. Opzioni integrate: botsort.yaml, bytetrack.yaml, ocsort.yaml, deepocsort.yaml, fasttrack.yaml, tracktrack.yaml. |
conf | float | 0.25 | Imposta la soglia di confidenza per le rilevazioni; valori più bassi consentono di tracciare più oggetti, ma possono includere falsi positivi. |
iou | float | 0.7 | Imposta la soglia di Intersezione sull'unione (IoU) per filtrare le rilevazioni sovrapposte. |
classes | list | None | Filtra i risultati in base all'indice della classe. Ad esempio, classes=[0, 2, 3] traccia solo le classi specificate. |
device | str | None | Specifica il dispositivo per l'inferenza (ad es. cpu, cuda:0 o 0). Consente di scegliere tra CPU, una GPU specifica o altri dispositivi di calcolo per l'esecuzione del modello. |
imgsz | int or tuple | 640 | Dimensione dell'immagine di destinazione per l'inferenza: un intero per un'immagine quadrata o una coppia (height, width). Le forme vengono adattate allo stride del modello. |
max_det | int | 300 | Numero massimo di rilevazioni da mantenere per fotogramma prima del tracciamento, che limita gli oggetti elaborati da una soluzione nelle scene dense. |
quantize | int or str | None | Precisione dell'inferenza: 16 (FP16) oppure 32/non impostata (FP32) per i modelli PyTorch e TorchScript; gli altri formati eseguono i calcoli con la precisione scelta dall'artefatto e dal runtime. Sostituisce il flag deprecato half. |
Sono inoltre supportate le seguenti opzioni di visualizzazione:
| Argomento | Tipo | Predefinito | Descrizione |
|---|---|---|---|
show | bool | False | Se True, mostra le immagini o i video annotati in una finestra. Utile per ottenere un riscontro visivo immediato durante lo sviluppo o i test. |
Domande frequenti#
Ultralytics YOLO26 offre la rilevazione dei veicoli in tempo reale e il monitoraggio per i sistemi di parcheggio, ottimizzando l'uso dei posti auto, riducendo la congestione e migliorando la sicurezza tramite la videosorveglianza continua. L'esecuzione su un feed di una telecamera in diretta aiuta anche a gestire il flusso del traffico e a ridurre al minimo i tempi di inattività dei veicoli. Per la configurazione completa, consulta il flusso di lavoro del codice per la gestione dei parcheggi.
Usare Ultralytics YOLO26 per i parcheggi intelligenti offre numerosi vantaggi:
- Efficienza: ottimizza l'uso dei posti auto e riduce la congestione.
- Sicurezza: migliora la videosorveglianza e garantisce la sicurezza di veicoli e pedoni.
- Impatto ambientale: aiuta a ridurre le emissioni diminuendo i tempi di inattività dei veicoli. Scopri altri vantaggi nella sezione Vantaggi di un sistema di gestione dei parcheggi.
Definire i posti auto con Ultralytics YOLO26 è semplice:
- Acquisisci un frame da un video o da un flusso della telecamera.
- Usa il codice fornito per avviare un'interfaccia grafica, selezionare un'immagine e disegnare poligoni per definire i posti auto.
- Salva i dati etichettati in formato JSON per ulteriori elaborazioni. Per istruzioni complete, consulta la sezione sulla selezione dei punti qui sopra.
L'impostazione più specifica per il parcheggio è
json_file: indirizzala al file JSON delle regioni di parcheggio che crei con l'annotatore dei punti per adattare la soluzione a una nuova disposizione. Puoi personalizzarla ulteriormente tramite gli altri argomenti: impostamodelsu un rilevatore addestrato su misura, limita i rilevamenti a specificheclassesdi veicoli, regola le soglieconfeiou, cambiatracker, usaline_widthper ridimensionare le etichette sovrapposte al frame e la visualizzazione dell'occupazione, oppure selezionadevicedi inferenza. Per il monitoraggio correlato basato sulle zone, consulta la guida al conteggio degli oggetti.Ultralytics YOLO26 viene utilizzato in diverse applicazioni reali per la gestione dei parcheggi, tra cui:
- Rilevamento dei posti auto: identificazione accurata dei posti liberi e occupati.
- Sorveglianza: maggiore sicurezza grazie al monitoraggio in tempo reale.
- Gestione del flusso del traffico: riduzione dei tempi di inattività e della congestione grazie a una gestione efficiente del traffico. Le immagini che mostrano queste applicazioni sono disponibili nelle applicazioni reali.

