YOLO Vision 2026:

Constrói um Sistema de Gestão de Estacionamento com Ultralytics YOLO26 🚀#

O que é um Sistema de Gestão de Estacionamento?#

Um sistema de gestão de estacionamento construído com Ultralytics YOLO26 detecta veículos em tempo real para rastrear quais vagas estão ocupadas ou disponíveis, relatando em seguida a ocupação ao vivo do lote. Ele combina a detecção de objetos do YOLO26 com um layout de estacionamento definido em JSON, permitindo monitorar um lote inteiro a partir de um único fluxo de vídeo ou câmera.



Watch: How to Build a Parking Management System with Ultralytics YOLO26 | Real-Time Spot Detection 🚗

Vantagens do sistema de gestão de estacionamento#

  • Eficiência: Otimiza a utilização dos lugares de estacionamento e reduz o congestionamento no parque.
  • Segurança e Proteção: Melhora a segurança das pessoas e veículos através de vigilância contínua.
  • Redução de Emissões: Gere o fluxo de tráfego para minimizar o tempo de inatividade e as emissões nos parques de estacionamento.

Aplicações no mundo real#

Sistema de gestão de estacionamentoSistema de gestão de estacionamento
Parking lots Analytics Using Ultralytics YOLO26Parking management top view using Ultralytics YOLO26
Gestão de estacionamento vista aérea usando Ultralytics YOLO26Gestão de estacionamento vista de cima usando Ultralytics YOLO26

Fluxo de trabalho do código do sistema de gestão de estacionamento#

A seleção de pontos é agora fácil

Escolher pontos de estacionamento é uma tarefa crítica e complexa nos sistemas de gestão de estacionamento. A Ultralytics simplifica este processo fornecendo uma ferramenta "Parking slots annotator" que permite definir áreas de estacionamento, que podem ser utilizadas posteriormente para processamento adicional.

Passo 1: Capture um frame do vídeo ou fluxo da câmara onde pretende gerir o parque de estacionamento.

Passo 2: Utilize o código fornecido para iniciar uma interface gráfica, onde pode selecionar uma imagem e começar a delinear as regiões de estacionamento clicando com o rato para criar polígonos.

Anotador de vagas de estacionamento Ultralytics YOLO
Passo adicional para instalar `tkinter`

Geralmente, o tkinter já vem pré-instalado com Python. No entanto, caso não esteja, você pode instalá-lo usando os passos destacados:

  • Linux: (Debian/Ubuntu): sudo apt install python3-tk
  • Fedora: sudo dnf install python3-tkinter
  • Arch: sudo pacman -S tk
  • Windows: Reinstale o Python e marque a caixa de seleção tcl/tk and IDLE em Optional Features durante a instalação
  • MacOS: Reinstale o Python a partir de https://www.python.org/downloads/macos/ ou brew install python-tk
from ultralytics import solutions

solutions.ParkingPtsSelection()

Passo 3: Após definir as áreas de estacionamento com polígonos, clique em save para armazenar os dados como bounding_boxes.json no seu diretório de trabalho — o mesmo nome de arquivo que o script de gestão carrega abaixo.

Ultralytics YOLO26 Points Selection Demo

Passo 4: Agora você pode executar a solução de gestão de estacionamento com o código abaixo.

Gestão de estacionamento usando Ultralytics YOLO
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 windows

Argumentos do ParkingManagement#

Aqui tens uma tabela com os argumentos do ParkingManagement:

ArgumentoTipoPredefiniçãoDescrição
modelstrNoneCaminho para um ficheiro de modelo YOLO da Ultralytics.
json_filestrNoneCaminho para o ficheiro JSON que contém todos os dados de coordenadas de estacionamento.
line_widthint2Espessura da linha para as caixas, pontos-chave e contagens que a solução desenha.
verboseboolTrueAtiva o registro por quadro da solução contendo formato de entrada, contagens de classes e velocidade de processamento. A chamada de rastreamento em si é sempre silenciosa.

A solução ParkingManagement permite o uso de vários parâmetros track:

ArgumentoTipoPredefiniçãoDescrição
trackerstr'botsort.yaml'Especifica o algoritmo de rastreamento a utilizar. Opções integradas: botsort.yaml, bytetrack.yaml, ocsort.yaml, deepocsort.yaml, fasttrack.yaml, tracktrack.yaml.
conffloat0.25Define o limiar de confiança para as deteções; valores mais baixos permitem que mais objetos sejam rastreados, mas podem incluir falsos positivos.
ioufloat0.7Define o limiar de Intersection over Union (IoU) para filtrar deteções sobrepostas.
classeslistNoneFiltra resultados por índice de classe. Por exemplo, classes=[0, 2, 3] rastreia apenas as classes especificadas.
devicestrNoneEspecifica o dispositivo para inferência (por exemplo, cpu, cuda:0 ou 0). Permite aos utilizadores selecionar entre CPU, uma GPU específica ou outros dispositivos de computação para a execução do modelo.

Além disso, as seguintes opções de visualização são suportadas:

ArgumentoTipoPredefiniçãoDescrição
showboolFalseSe True, exibe as imagens ou vídeos anotados em uma janela. Útil para feedback visual imediato durante o desenvolvimento ou teste.

FAQ#

  • O Ultralytics YOLO26 fornece detecção de veículos em tempo real e monitoramento para sistemas de estacionamento, o que otimiza o uso das vagas, reduz congestionamentos e melhora a segurança por meio de vigilância contínua. Executá-lo em um fluxo de câmera ao vivo também ajuda a gerenciar o fluxo de tráfego e minimizar o tempo ocioso dos veículos. Para a configuração completa, consulte o fluxo de trabalho do código de gestão de estacionamento.

  • Utilizar o Ultralytics YOLO26 para estacionamento inteligente oferece inúmeros benefícios:

    • Eficiência: Otimiza a utilização dos lugares de estacionamento e diminui o congestionamento.
    • Segurança: Melhora a vigilância e garante a segurança de veículos e peões.
    • Impacto Ambiental: Ajuda a reduzir emissões ao minimizar os tempos ociosos dos veículos. Explore mais benefícios na seção Vantagens do Sistema de Gestão de Estacionamento.
  • Definir lugares de estacionamento é simples com o Ultralytics YOLO26:

    1. Capture um frame de um vídeo ou fluxo da câmara.
    2. Utilize o código fornecido para iniciar uma GUI para selecionar uma imagem e desenhar polígonos para definir os lugares de estacionamento.
    3. Guarde os dados rotulados em formato JSON para processamento posterior. Para instruções completas, consulte a secção de seleção de pontos acima.
  • A configuração mais específica do lote é json_file: aponte-a para o JSON de região de estacionamento que você criou com o anotador de pontos para adaptar a solução a um novo layout. Você pode ajustá-la ainda mais por meio dos outros argumentos — defina model para um detector treinado de forma personalizada, restrinja detecções a classes específicos de veículos, ajuste os limiares de conf e iou, altere o tracker, use line_width para dimensionar os rótulos no quadro e a leitura de ocupação, ou selecione o device de inferência. Para monitoramento relacionado baseado em zonas, consulte o guia de contagem de objetos.

  • O Ultralytics YOLO26 é utilizado em várias aplicações reais para a gestão de parques de estacionamento, incluindo:

    • Deteção de lugares de estacionamento: Identificação precisa de lugares disponíveis e ocupados.
    • Vigilância: Melhoria da segurança através de monitorização em tempo real.
    • Gestão do Fluxo de Tráfego: Redução de tempos ociosos e congestionamentos com tratamento eficiente de tráfego. Imagens que mostram essas aplicações podem ser encontradas em aplicações do mundo real.

Comentários