Construis un système de gestion de parking avec Ultralytics YOLO26 🚀#
Qu'est-ce qu'un système de gestion de parking ?#
Un système de gestion de parking construit avec Ultralytics YOLO26 détecte les véhicules en temps réel pour suivre quelles places de stationnement sont occupées ou disponibles, puis rapporte l'occupation du terrain en direct. Il associe la détection d'objets YOLO26 à un agencement de parking défini en JSON afin que tu puisses surveiller un parking entier à partir d'un seul flux vidéo ou d'une seule source de caméra.
Watch: How to Build a Parking Management System with Ultralytics YOLO26 | Real-Time Spot Detection 🚗
Avantages du système de gestion de stationnement#
- Efficacité : Optimise l'utilisation des places de stationnement et réduit la congestion dans tout le parking.
- Sécurité : Améliore la sécurité des personnes et des véhicules grâce à une surveillance continue.
- Réduction des émissions : Gère le flux de circulation pour minimiser le temps d'attente et les émissions dans les parkings.
Applications dans le monde réel#
| Système de gestion de stationnement | Système de gestion de stationnement |
|---|---|
![]() | ![]() |
| Vue aérienne de gestion de stationnement avec Ultralytics YOLO26 | Vue de dessus de gestion de stationnement avec Ultralytics YOLO26 |
Flux de travail du code du système de gestion de stationnement#
La sélection des points est désormais facile
Choisir les emplacements de stationnement est une tâche critique et complexe dans les systèmes de gestion. Ultralytics simplifie ce processus en fournissant un outil, « Parking slots annotator », qui te permet de définir les zones du parking, lesquelles pourront être utilisées ultérieurement pour un traitement supplémentaire.
Étape 1 : Capture une image depuis la vidéo ou le flux de la caméra où tu souhaites gérer le parking.
Étape 2 : Utilise le code fourni pour lancer une interface graphique, où tu peux sélectionner une image et commencer à délimiter les zones de stationnement par clic de souris pour créer des polygones.
Étape supplémentaire pour l'installation de `tkinter`
En général, tkinter est préinstallé avec Python. Cependant, si ce n'est pas le cas, tu peux l'installer en suivant les étapes surlignées :
- Linux : (Debian/Ubuntu) :
sudo apt install python3-tk - Fedora :
sudo dnf install python3-tkinter - Arch :
sudo pacman -S tk - Windows : Réinstalle Python et coche la case
tcl/tk and IDLEdans Optional Features lors de l'installation - MacOS : Réinstalle Python depuis https://www.python.org/downloads/macos/ ou
brew install python-tk
from ultralytics import solutions
solutions.ParkingPtsSelection()Étape 3 : Après avoir défini les zones de stationnement avec des polygones, clique sur save pour enregistrer les données sous le nom de bounding_boxes.json dans ton répertoire de travail — le même nom de fichier que le script de gestion charge ci-dessous.

Étape 4 : Tu peux maintenant exécuter la solution de gestion de parking avec le code ci-dessous.
import cv2
from ultralytics import solutions
# Video capture
cap = cv2.VideoCapture("path/to/video.mp4")
assert cap.isOpened(), "Error reading video file"
# 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("parking management.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h))
# Initialize parking management object
parkingmanager = solutions.ParkingManagement(
model="yolo26n.pt", # path to model file
json_file="bounding_boxes.json", # path to parking annotations file
)
while cap.isOpened():
ret, im0 = cap.read()
if not ret:
break
results = parkingmanager(im0)
# print(results) # access the output
video_writer.write(results.plot_im) # write the processed frame.
cap.release()
video_writer.release()
cv2.destroyAllWindows() # destroy all opened windowsArguments de ParkingManagement#
Voici un tableau avec les arguments de ParkingManagement :
| Argument | Type | Défaut | Description |
|---|---|---|---|
model | str | None | Chemin d'accès vers un fichier de modèle YOLO d'Ultralytics. |
json_file | str | None | Chemin d'accès au fichier JSON qui contient toutes les données de coordonnées de stationnement. |
line_width | int | 2 | Épaisseur de ligne pour les boîtes, les points clés et les comptes tracés par la solution. |
verbose | bool | True | Active le journal par trame de la solution concernant la forme d'entrée, les comptes de classes et la vitesse de traitement. L'appel de suivi reste toujours silencieux. |
La solution ParkingManagement permet l'utilisation de plusieurs paramètres track :
| Argument | Type | Défaut | Description |
|---|---|---|---|
tracker | str | 'botsort.yaml' | Spécifie l'algorithme de suivi à utiliser. Options intégrées : botsort.yaml, bytetrack.yaml, ocsort.yaml, deepocsort.yaml, fasttrack.yaml, tracktrack.yaml. |
conf | float | 0.25 | Définit le seuil de confiance pour les détections ; des valeurs plus faibles permettent de suivre plus d'objets, mais peuvent inclure des faux positifs. |
iou | float | 0.7 | Définit le seuil d'Intersection over Union (IoU) pour filtrer les détections qui se chevauchent. |
classes | list | None | Filtre les résultats par index de classe. Par exemple, classes=[0, 2, 3] ne suit que les classes spécifiées. |
device | str | None | Spécifie le périphérique pour l'inférence (par exemple, cpu, cuda:0 ou 0). Permet aux utilisateurs de choisir entre le CPU, un GPU spécifique ou d'autres périphériques de calcul pour l'exécution du modèle. |
De plus, les options de visualisation suivantes sont prises en charge :
| Argument | Type | Défaut | Description |
|---|---|---|---|
show | bool | False | Si True, affiche les images ou vidéos annotées dans une fenêtre. Utile pour un retour visuel immédiat pendant le développement ou les tests. |
FAQ#
Utiliser Ultralytics YOLO26 pour le stationnement intelligent offre de nombreux avantages :
- Efficacité : Optimise l'utilisation des espaces de stationnement et diminue la congestion.
- Sécurité : Améliore la surveillance et garantit la sécurité des véhicules et des piétons.
- Impact environnemental : Aide à réduire les émissions en minimisant les temps d'inactivité des véhicules. Explore plus d'avantages dans la section Avantages du système de gestion de parking.
Définir des espaces de stationnement est simple avec Ultralytics YOLO26 :
- Capture une image depuis une vidéo ou un flux de caméra.
- Utilise le code fourni pour lancer une interface graphique afin de sélectionner une image et dessiner des polygones pour définir les espaces.
- Enregistre les données étiquetées au format JSON pour un traitement ultérieur. Pour des instructions complètes, consulte la section sur la sélection des points ci-dessus.
Le paramètre le plus spécifique au parking est
json_file: pointe-le vers le JSON de la région de parking que tu crées avec l'annoteur de points pour adapter la solution à un nouvel agencement. Tu peux l'affiner davantage via les autres arguments — définismodelsur un détecteur entraîné sur mesure, restreins les détections à desclassesde véhicules spécifiques, ajuste les seuilsconfetiou, change letracker, utiliseline_widthpour mettre à l'échelle les étiquettes sur l'image et l'affichage de l'occupation, ou sélectionne l'inférencedevice. Pour une surveillance connexe basée sur des zones, consulte le guide du comptage d'objets.Ultralytics YOLO26 est utilisé dans diverses applications réelles pour la gestion de parkings, notamment :
- Détection d'espaces de stationnement : Identification précise des places disponibles et occupées.
- Surveillance : Amélioration de la sécurité grâce à une surveillance en temps réel.
- Gestion du flux de circulation : Réduction des temps d'inactivité et des embouteillages grâce à une gestion efficace du trafic. Des images illustrant ces applications se trouvent dans les applications du monde réel.


Ultralytics YOLO26 fournit une détection de véhicules en temps réel et une surveillance pour les systèmes de stationnement, ce qui optimise l'utilisation des places de parking, réduit les embouteillages et améliore la sécurité grâce à une surveillance continue. L'exécuter sur un flux de caméra en direct aide également à gérer le flux de circulation et à minimiser le temps d'inactivité des véhicules. Pour la configuration complète, consulte le flux de travail du code de gestion de parking.