Ao clicar em "Aceitar todos os cookies", concorda com o armazenamento de cookies no seu dispositivo para melhorar a navegação no site, analisar a utilização do site e ajudar nos nossos esforços de marketing. Mais informações
Definições de cookies
Ao clicar em "Aceitar todos os cookies", concorda com o armazenamento de cookies no seu dispositivo para melhorar a navegação no site, analisar a utilização do site e ajudar nos nossos esforços de marketing. Mais informações
Descubra como o modelo Ultralytics YOLOv8 pode ser utilizado para estimar a velocidade nos seus projectos de visão computacional. Experimente você mesmo com um exemplo simples de codificação.
Provavelmente, todos nós já vimos sinais de limite de velocidade nas estradas. Alguns de nós podem até ter recebido uma notificação automática de violação do limite de velocidade por correio ou correio eletrónico. Os sistemas de gestão de tráfego com inteligência artificial (IA) podem assinalar automaticamente as infracções por excesso de velocidade graças à visão por computador. As imagens em tempo real captadas por câmaras nos semáforos e nas auto-estradas são utilizadas para estimar a velocidade e reforçar a segurança rodoviária.
A estimativa da velocidade não se limita apenas à segurança rodoviária. Pode ser utilizada em desportos, veículos autónomos e várias outras aplicações. Neste artigo, discutiremos como você pode usar o modelo Ultralytics YOLOv8 para estimativa de velocidade em seus projetos de visão computacional. Também vamos acompanhar passo a passo um exemplo de codificação para que você possa experimentar. Vamos começar!
A estimativa da velocidade facilita a gestão do tráfego
De acordo com a Organização Mundial de Saúde (OMS), cerca de 1,19 milhões de pessoas morrem anualmente em acidentes de viação devido ao excesso de velocidade. Além disso, mais 20 a 50 milhões de pessoas sofrem lesões não mortais, muitas das quais resultam em incapacidades. A importância da segurança rodoviária não pode ser sobrestimada, especialmente quando a estimativa da velocidade ajuda a evitar acidentes, salva vidas e mantém as nossas estradas seguras e eficientes.
A estimativa da velocidade utilizando a visão por computador envolve a deteção e o seguimento de objectos em fotogramas de vídeo para calcular a velocidade a que se movem. Algoritmos como o YOLOv8 podem identificar e seguir objectos, como veículos, em fotogramas consecutivos. O sistema mede a distância que estes objectos percorrem utilizando câmaras calibradas ou pontos de referência para medir as distâncias no mundo real. Ao cronometrar o tempo que os objectos demoram a deslocar-se entre dois pontos, o sistema calcula a sua velocidade utilizando o rácio distância-tempo.
Fig. 1. Estimativa da velocidade utilizando o modelo YOLOv8 da Ultralytics
Para além de apanharem os velocistas, os sistemas de estimativa de velocidade integrados na IA podem recolher dados para fazer previsões sobre o tráfego. Estas previsões podem apoiar tarefas de gestão do tráfego, como a otimização dos tempos dos sinais e a atribuição de recursos. As informações sobre os padrões de tráfego e as causas do congestionamento podem ser utilizadas para planear novas estradas para reduzir o congestionamento do tráfego.
Aplicações da estimativa de velocidade noutras indústrias
As aplicações de estimativa da velocidade vão para além da monitorização das estradas. Também pode ser útil para monitorizar o desempenho dos atletas, ajudar os veículos autónomos a compreender a velocidade dos objectos que se deslocam à sua volta, detetar comportamentos suspeitos, etc. Sempre que uma câmara possa ser utilizada para medir a velocidade de um objeto, pode ser utilizada a estimativa de velocidade utilizando a visão por computador.
Eis alguns exemplos de utilização da estimativa de velocidade:
A visão computorizada e a estimativa da velocidade serão utilizadas nos Jogos Olímpicos de 2024 para melhorar a análise do desempenho nas provas de atletismo.
As cidades inteligentes estão a investigar a análise da marcha dos peões para monitorizar as velocidades de marcha e aumentar a mobilidade e a segurança urbanas. Estes sistemas podem alertar os condutores para a presença de peões e evitar acidentes.
Os sistemas de monitorização do comportamento dos animais utilizam a estimativa da velocidade para seguir o movimento dos animais e detetar sinais de aflição ou doença.
Fig. 2. A estimativa da velocidade pode medir a velocidade de deslocação de uma pessoa.
As vantagens de estimar a velocidade utilizando a visão por computador
Os sistemas de estimativa de velocidade baseados na visão estão a substituir os métodos tradicionais baseados em sensores devido à sua maior precisão, rentabilidade e flexibilidade. Ao contrário dos sistemas que dependem de sensores dispendiosos como o LiDAR, a visão computacional utiliza câmaras padrão para monitorizar e analisar a velocidade em tempo real. As soluções de visão computacional para estimativa de velocidade podem ser perfeitamente integradas na infraestrutura de tráfego existente. Além disso, esses sistemas podem ser construídos para executar uma série de tarefas complexas, como identificação de tipo de veículo e análise de padrão de tráfego para melhorar o fluxo geral de tráfego e a segurança.
Experimente você mesmo: Estimativa de velocidade utilizando o YOLOv8
Agora que temos uma compreensão clara da estimativa de velocidade e das suas aplicações, vamos analisar mais detalhadamente como pode integrar a estimativa de velocidade nos seus projectos de visão computacional através de código. Vamos detetar veículos em movimento e estimar sua velocidade usando o modelo YOLOv8.
Este exemplo utiliza um vídeo de carros numa estrada descarregado da Internet. Pode utilizar o mesmo vídeo ou qualquer outro vídeo relevante. O modelo YOLOv8 identifica o centro de cada veículo e calcula a sua velocidade com base na rapidez com que este centro atravessa uma linha horizontal no fotograma do vídeo.
Fig. 3. Vídeo de entrada de carros numa estrada
Antes de começarmos, é importante notar que, neste caso, o cálculo da distância é aproximado e baseado na distância euclidiana. A calibração da câmara não é tida em conta, pelo que a estimativa de velocidade pode não ser totalmente exacta. Além disso, a velocidade estimada pode variar consoante a velocidade do seu GPU.
Passo 1: Vamos começar por instalar o pacote Ultralytics. Abra seu prompt de comando ou terminal e execute o comando mostrado abaixo.
Consulte o nosso Guia de instalação do Ultralytics para obter instruções passo a passo e práticas recomendadas sobre o processo de instalação. Se tiver algum problema ao instalar os pacotes necessários para o YOLOv8, o nosso guia de Problemas comuns tem soluções e dicas úteis.
Passo 2: De seguida, vamos importar as bibliotecas necessárias. A biblioteca OpenCV ajudar-nos-á a lidar com o processamento de vídeo.
Passo 3: Em seguida, podemos carregar o modelo YOLOv8 e obter os nomes das classes que o modelo pode detetar.
Consulte todos os modelos que suportamos para perceber qual o modelo que melhor se adequa ao seu projeto.
Passo 4: Neste passo, abriremos o ficheiro de vídeo de entrada utilizando o módulo VideoCapture do OpenCV. Também extrairemos a largura, a altura e os quadros por segundo (fps) do vídeo.
Passo 5: Aqui, vamos inicializar o gravador de vídeo para guardar os nossos resultados finais da estimativa de velocidade. O ficheiro de vídeo de saída será guardado como "speed_estimation.avi".
Passo6: De seguida, podemos definir os pontos de linha para a estimativa da velocidade. Para o nosso vídeo de entrada, esta linha será colocada horizontalmente no meio do quadro. Sinta-se à vontade para brincar com os valores para colocar a linha nas posições mais adequadas, dependendo do seu vídeo de entrada.
Passo 7: Agora, podemos inicializar o objeto de estimativa de velocidade utilizando os pontos de linha definidos e os nomes das classes.
Passo 8: O núcleo do guião processa o vídeo fotograma a fotograma. Lemos cada fotograma e detectamos e seguimos os objectos. A velocidade dos objectos seguidos é estimada e o fotograma anotado é escrito no vídeo de saída.
Passo 9: Por fim, libertamos os objectos de captura e gravação de vídeo e fechamos todas as janelas do OpenCV.
Passo 10: Guarde o seu script. Se estiver a trabalhar a partir do seu terminal ou prompt de comando, execute o script utilizando o seguinte comando:
Se o seu código for executado com êxito, o ficheiro de vídeo de saída terá o seguinte aspeto.
Fig. 4. O resultado da estimativa de velocidade utilizando o YOLOv8.
Os desafios da estimativa de velocidade baseada na visão
É também importante compreender os desafios envolvidos na implementação da estimativa de velocidade utilizando a visão por computador. Condições climatéricas desfavoráveis, como chuva, nevoeiro ou neve, podem causar problemas ao sistema, uma vez que podem obstruir a visibilidade da estrada. Do mesmo modo, as oclusões causadas por outros veículos ou objectos podem dificultar o rastreio e a estimativa precisa da velocidade de um veículo-alvo por parte destes sistemas. As más condições de iluminação, que causam sombras ou reflexos do sol, também podem complicar ainda mais a tarefa de estimativa da velocidade.
Outro desafio diz respeito à capacidade de computação. Para estimar a velocidade em tempo real, temos de processar uma grande quantidade de dados visuais provenientes de câmaras de trânsito de alta qualidade. A sua solução pode exigir hardware dispendioso para lidar com tudo isto e garantir que tudo funciona rapidamente e sem atrasos.
Depois, há a questão da privacidade. Os dados recolhidos por estes sistemas podem incluir os detalhes do veículo de um indivíduo, como a marca, o modelo e a matrícula, que são recolhidos sem o seu consentimento. Algumas câmaras HD modernas podem até captar imagens dos ocupantes dentro do carro. Esta recolha de dados pode levantar sérias questões éticas e jurídicas que devem ser tratadas com o máximo cuidado.
Acelerar em direção ao futuro
A utilização do modelo Ultralytics YOLOv8 para a estimativa da velocidade proporciona uma solução flexível e eficiente para muitas utilizações. Embora existam desafios, como a precisão em condições difíceis e a abordagem de questões de privacidade, as vantagens são múltiplas. A estimativa de velocidade com visão por computador é mais económica, adaptável e precisa em comparação com as formas mais antigas. É útil em vários sectores, como os transportes, o desporto, a vigilância e os automóveis autónomos. Com todos os benefícios e aplicações, está destinada a ser uma parte fundamental dos futuros sistemas inteligentes.
Interessado em IA? Ligue-se à nossa comunidade! Explore o nosso repositório GitHub para saber mais sobre como estamos a utilizar a IA para criar soluções inovadoras em vários sectores, como os cuidados de saúde e a agricultura. Colabore, inove e aprenda connosco! 🚀