Utilize este identificador para referenciar este registo:
https://hdl.handle.net/1822/79964
Título: | Development of an algorithm for counting vehicles and pedestrians based on video |
Autor(es): | Matos, Miguel |
Orientador(es): | Fernandes, António Ramires Ferreira, André Leite |
Palavras-chave: | Computer vision Deep learning Object detection Object fingerprint Object tracking Detecção de objectos Monitorização de objectos Visão por computador |
Data: | 30-Dez-2019 |
Resumo(s): | The population density in the urban environment has increased significantly, consequently
increasing the number of vehicles and people on the public road. Possible monitoring of
this flow allows better problem management, and the enhancement of solutions in a smart
city context, solutions that promote regular traffic in a city.
This work presents a solution for counting vehicles and people in a video to use the
solution developed in cities of Portugal. The solution combines deep learning techniques
and traditional computer vision techniques, combining object detection, classification, ob ject tracking, and fingerprint concepts. For each concept is presented the state of the art
techniques and techniques used in similar problems.
To choose the best fingerprint methods, a comparative study of different techniques was
produced. With a dataset of vehicle and people images, the following techniques were con sidered: Fourier Transform, Scale Invariant Feature Transform (SIFT), Color Co-occurrence
Histogram (CCoH), and Autoencoders, of which CCoH showed better results.
The solution pipeline consists of the YOLOv3 algorithm for the object detection part, hav ing the algorithm a convolutional neuronal network for object classification; Kalman Filter
for object tracking was chosen in conjunction with the CCoH technique for object finger print. The pipeline ends with the matching of the newly detected objects with previously
detected objects, using the Hungarian algorithm for this correspondence.
In order to extract features using the defined pipeline, a python library has been devel oped, allowing visualization of its operation and easy integration with video sources (video
files and cameras). Object counting, area definition, line intersection, heatmap’s, and object
collision are examples of features that can be obtained by the library.
As a global solution, a web application was developed, including a frontend application,
a backend, a relational database, and a service to perform video processing with the help
of the developed library. The web application is in use and in a production environment. A densidade populacional em contexto urbano tem aumentado significativamente, aumentando assim, o número de veículos e pessoas na via pública. Uma possível monitorização deste fluxo permite uma melhor gestão do problema e a potenciação de soluções em um contexto de smart city, soluções que promovam o normal tráfego em uma cidade. Este trabalho apresenta uma solução para a contagem de veículos e pessoas em vídeo com o objectivo de utilizar a solução desenvolvida em cidades de Portugal. A solução combina técnicas de deep learning e técnicas tradicionais de visão por computador, combinando conceitos de deteção de objetos, classificação, tracing de objectos e fingerprint, sendo que para cada conceito são apresentadas as técnicas estado de arte e as técnicas utilizadas em problemas semelhantes. Para escolher os melhores métodos de fingerprint um estudo comparativo de várias técnicas foi desenvolvido. Com um dataset de imagens de veículos e pessoas foram consideradas as técnicas: Fourier Transform, Scale Invariant Feature Transform (SIFT), Color Co-occurrence Histogram (CCoH) e Autoencoders, dos quais o CCoH apresentou melhores resultados. A pipeline da solução é composta pelo algoritmo YOLOv3 para a parte de deteção de objetos, tendo este algoritmo uma rede neuronal convolucional para a classificação de ob-jectos; foi escolhido o Kalman Filter para tracking de objectos em conjunto com a técnica de CCoH para fingerprint de objectos. A pipeline termina com a correspondência dos novos objectos detectados com objectos previamente detectados, sendo utilizado o algoritmo húngaro para esta correspondência. De modo a extrair features com o uso da pipeline definida, foi desenvolvida uma biblioteca python que permite a visualização do seu funcionamento e uma fácil integração com fontes de vídeo (ficheiros de vídeo e cameras). Contagem de objectos, definição de áreas, intersecção de linhas, heatmap's e a colisão de objectos são, entre outras, exemplos de features que podem ser obtidas pela biblioteca. Como solução global foi desenvolvida uma aplicação web, englobando assim, uma aplicação frontend, uma backend, uma base de dados relacional e um serviço para executar o processamento de vídeo com o auxílio da biblioteca desenvolvida. A aplicação web encontra-se em utilização e em ambiente de produção. |
Tipo: | Dissertação de mestrado |
Descrição: | Dissertação de mestrado em Computer Science |
URI: | https://hdl.handle.net/1822/79964 |
Acesso: | Acesso aberto |
Aparece nas coleções: | BUM - Dissertações de Mestrado DI - Dissertações de Mestrado |
Ficheiros deste registo:
Ficheiro | Descrição | Tamanho | Formato | |
---|---|---|---|---|
Miguel Filipe Carvalhais dos Santos de Matos.pdf | Dissertação de Mestrado | 5,2 MB | Adobe PDF | Ver/Abrir |
Este trabalho está licenciado sob uma Licença Creative Commons