Yolo Vision Shenzhen
Shenzhen
Junte-se agora

Ultralytics YOLOv8 para sistemas de gestão de estacionamento mais inteligentes

Abirami Vina

Leitura de 6 min

13 de junho de 2024

O modelo Ultralytics YOLOv8 pode tornar os sistemas de gestão de estacionamento mais inteligentes. Aprenda a gerir os lugares de estacionamento em tempo real para criar a sua própria solução de estacionamento inteligente.

Pode ser stressante dar voltas à procura de um lugar de estacionamento, especialmente quando se está atrasado. A forma tradicional de procurar um lugar para estacionar pode ser tediosa e demorada. No entanto, um sistema de gestão de estacionamento impulsionado por inteligência artificial (IA) e visão computacional pode simplificar as coisas. Pode tornar a disponibilidade de estacionamento mais previsível e reduzir o congestionamento do tráfego.

Neste artigo, vamos aprender a atualizar os sistemas de gestão de estacionamento com inteligência artificial e visão computacional. Iremos também analisar um exemplo de codificação passo a passo para mostrar como pode utilizar a aplicação Ultralytics YOLOv8 para criar um sistema de gestão de estacionamento com visão computacional. Vamos mergulhar de cabeça!

Problemas com a gestão tradicional de parques de estacionamento

Antes de discutirmos os sistemas de gestão de estacionamento inteligente aprimorados por IA, vamos analisar os problemas com os sistemas de gestão de estacionamento tradicionais.

Um dos principais problemas dos sistemas tradicionais são os espaços de estacionamento sobrelotados; há mais carros nos parques de estacionamento do que vagas disponíveis. Além de perder tempo à procura de espaço, a sobrelotação leva ao consumo excessivo de combustível e à poluição do ar. Outro problema é o stress do condutor. De acordo com um inquérito, cerca de 27% das pessoas gastam pelo menos 30 minutos à procura de lugares de estacionamento. Além disso, 43% das pessoas admitiram ter-se envolvido em discussões verbais com estranhos por causa de lugares de estacionamento.

Fig 1. Um condutor stressado. Fonte da imagem: Envato Elements.

A IA facilita a gestão de parques de estacionamento

Os parques de estacionamento integrados com IA têm como objetivo resolver os problemas que os sistemas de gestão de estacionamento tradicionais enfrentam. Os modelos de visão por computador, como o modeloUltralytics YOLOv8 , e as câmaras de alta definição podem monitorizar os parques de estacionamento e obter actualizações em tempo real sobre os lugares de estacionamento disponíveis e ocupados. 

Como é que isto funciona? Um modelo de visão por computador pode analisar imagens de câmaras de alta definição para detect veículos, track os seus movimentos e identificar lugares de estacionamento disponíveis. O modelo Ultralytics YOLOv8 suporta tarefas de visão por computador, como a deteção e o seguimento de objectos, e pode identificar e classify com precisão os veículos num vídeo. Ao comparar as localizações detectadas dos veículos com os lugares de estacionamento predefinidos, o sistema pode determinar se um lugar de estacionamento está ocupado ou não.

Fig 2. YOLOv8 a detetar lugares de estacionamento.

As informações sobre a disponibilidade de estacionamento do sistema baseado em visão podem ser integradas e estendidas a diferentes aplicações:

  • Aplicações móveis: As aplicações móveis podem exibir a disponibilidade de estacionamento em tempo real e ajudar os condutores a encontrar lugares disponíveis de forma rápida e fácil.
  • Sinalização digital: Os sinais digitais nas entradas dos parques de estacionamento podem mostrar o número de lugares disponíveis e direcionar os condutores para o lugar vago mais próximo.
  • Sistemas de estacionamento automatizados: Os dados podem ser usados para controlar barreiras e portões automatizados, permitindo a entrada apenas quando houver vagas disponíveis e guiando os condutores para o lugar livre mais próximo.

As vantagens de um sistema de gestão de estacionamento

As informações sobre a disponibilidade de estacionamento podem proporcionar muitas vantagens. As atualizações em tempo real ajudam os condutores a irem diretamente para os lugares abertos, tornando o fluxo de tráfego mais suave e reduzindo o stress de encontrar estacionamento. Para os operadores, entender como os espaços são usados significa que podem gerir melhor o parque, melhorar a segurança com monitorização em tempo real e responder rapidamente a quaisquer incidentes.

A automatização das funções de estacionamento reduz os custos, diminuindo a necessidade de mão de obra manual. Os sistemas de IA facilitam a reserva de lugares de estacionamento através de aplicações móveis ou web, permitindo que os condutores recebam notificações sobre a disponibilidade e poupem tempo e dinheiro. Os planeadores urbanos podem usar estes dados para projetar melhores traçados de estradas, aplicar regulamentos de estacionamento eficazes e desenvolver novas instalações de estacionamento que tornem as cidades mais eficientes e fáceis de navegar.

Fig 3. Reserve lugares de estacionamento através de uma aplicação móvel.

Experimente você mesmo: Gestão de estacionamento com YOLOv8

Agora que compreendemos claramente o que é a gestão de estacionamento e as suas vantagens, vamos ver como se pode construir um sistema de gestão de estacionamento baseado na visão. Iremos utilizar o software YOLOv8 para detect veículos, monitorizar lugares de estacionamento e determinar o seu estado de ocupação.

Neste exemplo, você pode usar um vídeo ou fluxo de câmera de um estacionamento. Observe que o tamanho máximo de imagem suportado por este exemplo é 1920 * 1080. Antes de começarmos, lembre-se de que este sistema depende da detecção precisa de veículos e das coordenadas predefinidas das vagas de estacionamento. 

A calibração da câmara e os factores ambientais podem afetar a precisão da deteção do espaço e do estado de ocupação. A velocidade de processamento e a precisão também podem variar com base no desempenho da sua GPU.

Passo 1: Vamos começar por instalar o pacote Ultralytics . Abra seu prompt de comando ou terminal e execute o seguinte comando.

pip install ultralytics

Consulte o nosso Guia de instalaçãoUltralytics para obter instruções detalhadas e práticas recomendadas sobre o processo de instalação. Se encontrar algum problema ao instalar os pacotes necessários para o YOLOv8, o nosso guia de problemas comuns oferece soluções e dicas úteis.

Passo 2: Precisamos pré-selecionar as vagas de estacionamento para que possamos marcar as áreas de interesse em sua filmagem. Execute este código para abrir a interface do usuário para pré-selecionar as vagas de estacionamento.

from ultralytics import solutions
solutions.ParkingPtsSelection()

Como mostrado abaixo, uma interface de usuário será aberta quando você executar este código. Tire um frame ou screenshot do seu vídeo de entrada de um estacionamento e carregue-o. Depois de desenhar bounding boxes ao redor das vagas de estacionamento, clique na opção de salvar. As informações da vaga de estacionamento selecionada serão salvas em um arquivo JSON chamado ‘bounding_boxes.json.’

Fig 4. Selecionando vagas de estacionamento em sua filmagem.

Passo 3: Agora, podemos pular para o código principal para gerenciamento de estacionamento. Comece importando todas as bibliotecas necessárias e inicializando o arquivo JSON que criamos no passo 2.

import cv2
from ultralytics import solutions

polygon_json_path = "bounding_boxes.json"

Passo 4: Crie um objeto VideoCapture para ler o arquivo de vídeo de entrada e certifique-se de que o arquivo de vídeo seja aberto com sucesso.

cap = cv2.VideoCapture("Path/to/video/file.mp4")
assert cap.isOpened(), "Error reading video file"

Passo 5: Inicialize todas as propriedades de vídeo necessárias, como a largura, a altura e os frames por segundo.

w, h, fps = (int(cap.get(x)) for x in (cv2.CAP_PROP_FRAME_WIDTH, cv2.CAP_PROP_FRAME_HEIGHT, cv2.CAP_PROP_FPS))

Passo 6: Em seguida, podemos criar um objeto VideoWriter para salvar o arquivo de vídeo processado final.

video_writer = cv2.VideoWriter("parking management.avi", cv2.VideoWriter_fourcc(*"mp4v"), fps, (w, h)) 

Passo 7: Aqui, inicializamos o sistema de gestão de estacionamento com o modelo Ultralytics YOLOv8 para a deteção de lugares de estacionamento.

management = solutions.ParkingManagement(model_path="yolov8n.pt") 

Passo 8: Agora, percorremos o arquivo de vídeo, frame por frame, para processamento. Se nenhum frame for lido, o loop será interrompido.

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

Passo 9: Dentro do ciclo, extraímos as regiões de estacionamento pré-selecionadas do ficheiro JSON e track os objectos no quadro utilizando o modelo YOLOv8 .

 json_data = management.parking_regions_extraction(polygon_json_path)
   results = management.model.track(im0, persist=True, show=False)

Passo 10: Esta parte do loop processa os resultados do rastreamento e obtém as coordenadas da bounding box e os rótulos de classe dos objetos detectados.

if results[0].boxes.id is not None:
       boxes = results[0].boxes.xyxy.cpu().tolist()
       clss = results[0].boxes.cls.cpu().tolist()
       management.process_data(json_data, im0, boxes, clss)

Passo 11: A última parte do loop envolve exibir o frame atual com anotações e gravar o frame processado no arquivo de vídeo de saída “parking management.avi.”

management.display_frames(im0)
video_writer.write(im0)

Passo 12: Finalmente, podemos liberar os objetos VideoCapture e VideoWriter e destruir quaisquer janelas.

cap.release()
video_writer.release()
cv2.destroyAllWindows()

Passo 13: Salve seu script. Se você estiver trabalhando a partir do seu terminal ou prompt de comando, execute o script usando o seguinte comando:

python your_script_name.py

Pode consultar a documentação oficial do Ultralytics se quiser saber mais sobre o código.

Desafios de um sistema automatizado de gestão de estacionamento

Os sistemas de estacionamento inteligentes oferecem muitas vantagens tanto para motoristas quanto para empresas. No entanto, eles também apresentam alguns desafios que devem ser levados em consideração antes de implementar tais soluções. Vamos dar uma olhada em alguns deles.

  • Preocupações com a Privacidade: Estes sistemas coletam informações como a marca e o modelo do carro de um indivíduo, o número da placa, a hora de entrada e saída, etc.
  • Alto Custo de Instalação: Sensores, câmeras, máquinas de bilhetes automatizadas e software de IA podem ser caros para instalar. 
  • Requisitos de Manutenção: A frequência da manutenção depende do sistema de IA, mas a maioria dos sistemas requer manutenção mensal.

O futuro dos sistemas de estacionamento inteligentes

A gestão inovadora de estacionamento no futuro envolverá o uso de tecnologias de ponta, como IA, carros autônomos e realidade virtual, para melhorar a experiência geral de estacionamento e apoiar a sustentabilidade. Quando integrados a esses sistemas, os carros autônomos poderão navegar até os locais de estacionamento sem interferência humana e estacionar. Esses sistemas também ajudam as empresas a preencher mais vagas de estacionamento e a anunciar seus serviços em vários aplicativos e sites. Eles também reduzem o número de emissões de carbono provenientes de motoristas que dirigem à procura de uma vaga de estacionamento.

Acabando com os problemas de estacionamento

Modelos de IA, como Ultralytics YOLOv8e a visão por computador podem transformar o seu parque de estacionamento. Reduzem drasticamente a procura de lugares, poupando-lhe tempo e reduzindo as emissões. Estes sistemas inteligentes de gestão do estacionamento resolvem problemas comuns como o congestionamento, o estacionamento ilegal e a frustração dos condutores. Embora haja um investimento inicial, os benefícios a longo prazo são significativos. Investir em estacionamento inteligente é fundamental para criar cidades sustentáveis e uma experiência de estacionamento mais fácil para todos.

Quer saber mais sobre IA? Conecte-se com a nossa comunidade! Explore o nosso repositório GitHub para saber mais sobre como estamos usando a IA para criar soluções inovadoras em vários setores, como saúde e agricultura. Colabore, inove e aprenda conosco! 🚀

Vamos construir o futuro
da IA juntos!

Comece sua jornada com o futuro do aprendizado de máquina

Comece gratuitamente