Utilize este identificador para referenciar este registo: https://hdl.handle.net/1822/77532

TítuloEfficient hardware implementation of 2D convolutions, optimized for point cloud and adjustable to the 3D model requirements for object detection and classification
Outro(s) título(s)Implementação eficiente em hardware de convoluções 2D, otimizadas para nuvem de pontos e ajustáveis aos requisitos dos modelos 3D de deteção e classificação de objetos
Autor(es)Pereira, Pedro Miguel Coelho
Orientador(es)Machado, Rui Pedro Oliveira
Fernandes, Duarte Manuel Azevedo
Palavras-chaveCNN (Convolutional neural network)
Convolution
FPGA (Field programmable gate array)
LiDAR (Light detection and ranging)
Point cloud
Convolução
Nuvem de pontos
Data2021
Resumo(s)With the growing interest in LiDAR sensor integration in the construction of autonomous vehicles, the academic community and industry have contributed to an increase in LiDAR-based algorithms for object detection. Given the success of CNNs in complex tasks such as object recognition, variants have emerged for 3D data processing, however, the sparse and unstructured nature of the point cloud has forced the literature to increase the complexity of the models. The increase in complexity and the need for distributed computing leads to the need for platforms capable of executing and accelerating these models to enable their use in real-time applications. Considering the performance and power consumption requirements, several FPGA-based solutions have been presented, however, generally, the models are not efficiently designed for platforms with limited resources. This dissertation fits into the need to apply CNN-based solutions optimized for point cloud in devices with reduced resources. The design and implementation of a convolutional module were proposed to implement CNNs in hardware. In terms of configurability, it is possible to adjust all typical parameters and explore parallelism depending on the resource constraints, making it a solution capable of performing any convolution found in the literature. Using the PointPillars model as a case study, the use of the module allowed to reduce the processing time up to 25% without compromising the detections performance. Given the sparseness found in the LiDAR data and the need for a study dedicated to the potential of sparse convolutions, this dissertation compares the performance of traditional CNNs with an optimized solution for 3D points, called voting schemes. Compared to dense convolution, voting convolution proved to be faster for data with sparsity greater than 89%. Pipeline processing allowed to consume only two DSPs and take advantage of spatially close data dependency to reduce the processing time by up to 30%. For stride operations, the voting convolution is able to decrease memory communication and also reduce the processing time by 55%. From the integration with PointPillars, it was possible to reduce the processing time up to 80.44% in the first layers of the Backbone.
Com o crescente interesse na integração do sensor LiDAR na construção de veículos autónomos, a comunidade académica e indústria têm contribuído para um aumento de algoritmos baseados em dados LiDAR para deteção de objetos. Dado o sucesso das CNNs em tarefas complexas, variantes têm surgido para o processamento de dados 3D, contudo, a natureza esparsa e não estruturada da nuvem de pontos forçou a literatura a aumentar a complexidade dos modelos. O aumento de complexidade e a necessidade de uma computação distribuída, leva à necessidade de plataformas capazes de executar e acelerar os modelos de forma a viabilizar o seu uso em aplicações de tempo real. Considerando os requisitos de desempenho e consumo de potência, várias soluções baseadas em FPGA têm sido apresentadas, porém, geralmente os modelos não são eficientemente desenhados para plataformas com limitação de recursos. A presente dissertação enquadra-se na necessidade da aplicação de soluções baseadas em CNN otimizadas para nuvem de pontos em dispositivos com recursos reduzidos. O desenho e implementação de um módulo convolucional foi proposto para implementar CNNs em hardware. Ao nível da configurabilidade, é possível ajustar todos os parâmetros típicos e explorar o paralelismo consoante a restrição de recursos, tornando-se uma solução capaz de executar qualquer convolução encontrada na literatura. Usando como caso de estudo o modelo PointPillars, o uso do módulo permitiu diminuir o tempo de processamento até 25% sem comprometer o desempenho nas deteções. Dada a esparsidade encontrada nos dados LiDAR e a necessidade de um estudo dedicado ao potencial das convoluções esparsas, esta dissertação compara o desempenho de CNNs tradicionais com uma solução otimizada para pontos 3D, chamada esquemas voting. Comparativamente com a convolução densa, a convolução voting provou ser mais rápida para dados com esparsidade superior a 89%. O processamento em pipeline permite consumir apenas duas DSPs e aproveitar a dependência de dados espacialmente próximos para reduzir o tempo de processamento até 30%. Para operações com stride, a convolução de voting é capaz de diminuir a comunicação com a memória e também reduzir o tempo de processamento em 55%. Já a sua integração no modelo PointPillars demonstrou que a convolução voting é capaz de dimiuir o tempo de processamento até 80.44% nas primeiras camadas do Backbone.
TipoDissertação de mestrado
DescriçãoDissertação de mestrado em Engenharia Eletrónica Industrial e Computadores (área de especialização em Sistemas Embebidos e Computadores)
URIhttps://hdl.handle.net/1822/77532
AcessoAcesso aberto
Aparece nas coleções:BUM - Dissertações de Mestrado

Ficheiros deste registo:
Ficheiro Descrição TamanhoFormato 
81756-Dissertation_PedroPereira.pdf6,82 MBAdobe PDFVer/Abrir

Este trabalho está licenciado sob uma Licença Creative Commons Creative Commons

Partilhe no FacebookPartilhe no TwitterPartilhe no DeliciousPartilhe no LinkedInPartilhe no DiggAdicionar ao Google BookmarksPartilhe no MySpacePartilhe no Orkut
Exporte no formato BibTex mendeley Exporte no formato Endnote Adicione ao seu ORCID