Ultralytics YOLO27:
Get Started

Crie 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 desenvolvido com Ultralytics YOLO26 detecta veículos em tempo real para acompanhar quais vagas estão ocupadas ou disponíveis e, em seguida, informa a ocupação atual do estacionamento. Ele combina a detecção de objetos do YOLO26 com um layout de estacionamento definido em JSON, para que você possa monitorar todo o estacionamento usando um único fluxo de vídeo ou câmera.



Assista: Como criar um sistema de gerenciamento de estacionamento com Ultralytics YOLO26 | Detecção de vagas em tempo real 🚗

Vantagens do sistema de gestão de estacionamento#

  • Eficiência: Otimiza o uso das vagas de estacionamento e reduz o congestionamento em todo o estacionamento.
  • Segurança: Melhora a segurança de pessoas e veículos por meio de vigilância contínua.
  • Redução de emissões: Gerencia o fluxo de tráfego para minimizar o tempo de marcha lenta e as emissões nos estacionamentos.

Aplicações no mundo real#

Sistema de gestão de estacionamentoSistema de gestão de estacionamento
Análise de estacionamentos com Ultralytics YOLO26Visão superior da gestão de estacionamento com Ultralytics YOLO26
Visão aérea da gestão de estacionamento com Ultralytics YOLO26Visão superior da gestão de estacionamento com Ultralytics YOLO26

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

Agora é fácil selecionar pontos

Escolher os pontos das vagas é uma tarefa fundamental e complexa nos sistemas de gestão de estacionamento. O Ultralytics simplifica esse processo com a ferramenta "Anotador de vagas de estacionamento", que permite definir áreas do estacionamento para uso em processamentos posteriores.

Etapa 1: Capture um frame do vídeo ou do fluxo da câmera no local onde você quer gerenciar o estacionamento.

Etapa 2: Use o código fornecido para abrir uma interface gráfica, selecionar uma imagem e começar a delimitar as áreas de estacionamento com cliques do mouse para criar polígonos.

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

Em geral, tkinter já vem incluído no Python. Caso contrário, você pode instalá-lo seguindo as etapas destacadas:

  • 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 tcl/tk and IDLE em Recursos opcionais 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()

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

Demonstração da seleção de pontos do Ultralytics YOLO26

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

Gestão de estacionamento com Ultralytics YOLO
import cv2

from ultralytics import solutions

# Captura de vídeo
cap = cv2.VideoCapture("path/to/video.mp4")
assert cap.isOpened(), "Error reading video file"

# Gravador de vídeo
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))

# Inicializar o objeto de gestão de estacionamento
parkingmanager = solutions.ParkingManagement(
    model="yolo26n.pt",  # caminho para o arquivo do modelo
    json_file="bounding_boxes.json",  # caminho para o arquivo de anotações do estacionamento
)

while cap.isOpened():
    ret, im0 = cap.read()
    if not ret:
        break

    results = parkingmanager(im0)

    # print(results)  # acessa a saída

    video_writer.write(results.plot_im)  # escreve o quadro processado.

cap.release()
video_writer.release()
cv2.destroyAllWindows()  # fecha todas as janelas abertas

Argumentos de ParkingManagement#

Aqui está uma tabela com os argumentos de ParkingManagement:

ArgumentoTipoPadrãoDescrição
modelstrNoneCaminho para um arquivo de modelo Ultralytics YOLO.
json_filestrNoneCaminho para o arquivo JSON que contém todos os dados de coordenadas das vagas de estacionamento.
line_widthint2Espessura das linhas das caixas, dos pontos-chave e das contagens desenhados pela solução.
verboseboolTrueAtiva o registro por quadro da solução, com o formato da entrada, as contagens por classe e a velocidade de processamento. A chamada de rastreamento em si é sempre silenciosa.

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

ArgumentoTipoPadrãoDescrição
trackerstr'tracktrack.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 das deteções; valores mais baixos permitem rastrear mais objetos, mas podem incluir falsos positivos.
ioufloat0.7Define o limiar de interseção sobre união (IoU) para filtrar deteções sobrepostas.
classeslistNoneFiltra os resultados pelo índice da classe. Por exemplo, classes=[0, 2, 3] rastreia apenas as classes especificadas.
devicestrNoneEspecifica o dispositivo para a inferência (por exemplo, cpu, cuda:0 ou 0). Permite escolher entre CPU, uma GPU específica ou outros dispositivos de computação para executar o modelo.
imgszint or tuple640Tamanho da imagem de destino para a inferência: um número inteiro para uma imagem quadrada ou um par (height, width). As dimensões são ajustadas ao stride do modelo.
max_detint300Número máximo de deteções mantidas por fotograma antes do rastreamento, limitando os objetos que uma solução processa em cenas densas.
quantizeint or strNonePrecisão da inferência: 16 (FP16) ou 32/não definido (FP32) para modelos PyTorch e TorchScript; os outros formatos calculam com a precisão selecionada pelo artefacto e pelo ambiente de execução. Substitui a opção half, obsoleta.

Além disso, há suporte para as seguintes opções de visualização:

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

Perguntas frequentes#

  • O Ultralytics YOLO26 oferece detecção de veículos em tempo real e monitoramento para sistemas de estacionamento, otimizando o uso das vagas, reduzindo o congestionamento e melhorando 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 de marcha lenta dos veículos. Para ver a configuração completa, consulte o fluxo de trabalho do código de gestão de estacionamento.

  • Usar Ultralytics YOLO26 em estacionamentos inteligentes oferece vários benefícios:

    • Eficiência: Otimiza o uso das vagas de estacionamento e reduz o congestionamento.
    • Segurança: Aprimora a vigilância e garante a segurança de veículos e pedestres.
    • Impacto ambiental: Ajuda a reduzir as emissões ao minimizar o tempo de marcha lenta dos veículos. Saiba mais sobre os benefícios na seção Vantagens do sistema de gestão de estacionamento.
  • Definir vagas de estacionamento é simples com Ultralytics YOLO26:

    1. Capture um frame de um vídeo ou fluxo de câmera.
    2. Use o código fornecido para abrir uma GUI, selecionar uma imagem e desenhar polígonos que definem as vagas de estacionamento.
    3. Salve os dados anotados no formato JSON para processamento posterior. Para obter instruções completas, consulte a seção sobre seleção de pontos acima.
  • A configuração mais específica para cada estacionamento é json_file: indique o JSON das regiões de estacionamento criado com o anotador de pontos para adaptar a solução a um novo layout. Você também pode personalizá-la usando os outros argumentos — defina model para usar um detector treinado sob medida, restrinja as detecções a classes de veículos específicos, ajuste os limiares conf e iou, alterne o tracker, use line_width para ajustar o tamanho dos rótulos exibidos no frame e da indicação 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 é usado em várias aplicações reais de gestão de estacionamentos, incluindo:

    • Detecção de vagas de estacionamento: Identificação precisa de vagas disponíveis e ocupadas.
    • Vigilância: Reforço da segurança por meio de monitoramento em tempo real.
    • Gestão do fluxo de trânsito: Redução do tempo ocioso e dos congestionamentos com uma gestão eficiente do trânsito. Imagens que ilustram essas aplicações podem ser encontradas em aplicações reais.

Comentários