Efficient hardware implementation of 2D convolutions, optimized for point cloud and adjustable to the 3D model requirements for object detection and classification

Detalhes bibliográficos
Autor(a) principal: Pereira, Pedro Miguel Coelho
Data de Publicação: 2021
Tipo de documento: Dissertação
Idioma: eng
Título da fonte: Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
Texto Completo: http://hdl.handle.net/1822/77532
Resumo: Dissertação de mestrado em Engenharia Eletrónica Industrial e Computadores (área de especialização em Sistemas Embebidos e Computadores)
id RCAP_c565b90a1569c90b7f3feba22a5a7237
oai_identifier_str oai:repositorium.sdum.uminho.pt:1822/77532
network_acronym_str RCAP
network_name_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository_id_str 7160
spelling Efficient hardware implementation of 2D convolutions, optimized for point cloud and adjustable to the 3D model requirements for object detection and classificationImplementaçã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 objetosCNN (Convolutional neural network)ConvolutionFPGA (Field programmable gate array)LiDAR (Light detection and ranging)Point cloudConvoluçãoNuvem de pontosEngenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e InformáticaDissertação de mestrado em Engenharia Eletrónica Industrial e Computadores (área de especialização em Sistemas Embebidos e Computadores)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.Machado, Rui Pedro OliveiraFernandes, Duarte Manuel AzevedoUniversidade do MinhoPereira, Pedro Miguel Coelho20212021-01-01T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttp://hdl.handle.net/1822/77532eng202951707info:eu-repo/semantics/openAccessreponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãoinstacron:RCAAP2023-07-21T12:48:16Zoai:repositorium.sdum.uminho.pt:1822/77532Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-19T19:46:27.455409Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãofalse
dc.title.none.fl_str_mv Efficient hardware implementation of 2D convolutions, optimized for point cloud and adjustable to the 3D model requirements for object detection and classification
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
title Efficient hardware implementation of 2D convolutions, optimized for point cloud and adjustable to the 3D model requirements for object detection and classification
spellingShingle Efficient hardware implementation of 2D convolutions, optimized for point cloud and adjustable to the 3D model requirements for object detection and classification
Pereira, Pedro Miguel Coelho
CNN (Convolutional neural network)
Convolution
FPGA (Field programmable gate array)
LiDAR (Light detection and ranging)
Point cloud
Convolução
Nuvem de pontos
Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática
title_short Efficient hardware implementation of 2D convolutions, optimized for point cloud and adjustable to the 3D model requirements for object detection and classification
title_full Efficient hardware implementation of 2D convolutions, optimized for point cloud and adjustable to the 3D model requirements for object detection and classification
title_fullStr Efficient hardware implementation of 2D convolutions, optimized for point cloud and adjustable to the 3D model requirements for object detection and classification
title_full_unstemmed Efficient hardware implementation of 2D convolutions, optimized for point cloud and adjustable to the 3D model requirements for object detection and classification
title_sort Efficient hardware implementation of 2D convolutions, optimized for point cloud and adjustable to the 3D model requirements for object detection and classification
author Pereira, Pedro Miguel Coelho
author_facet Pereira, Pedro Miguel Coelho
author_role author
dc.contributor.none.fl_str_mv Machado, Rui Pedro Oliveira
Fernandes, Duarte Manuel Azevedo
Universidade do Minho
dc.contributor.author.fl_str_mv Pereira, Pedro Miguel Coelho
dc.subject.por.fl_str_mv CNN (Convolutional neural network)
Convolution
FPGA (Field programmable gate array)
LiDAR (Light detection and ranging)
Point cloud
Convolução
Nuvem de pontos
Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática
topic CNN (Convolutional neural network)
Convolution
FPGA (Field programmable gate array)
LiDAR (Light detection and ranging)
Point cloud
Convolução
Nuvem de pontos
Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática
description Dissertação de mestrado em Engenharia Eletrónica Industrial e Computadores (área de especialização em Sistemas Embebidos e Computadores)
publishDate 2021
dc.date.none.fl_str_mv 2021
2021-01-01T00:00:00Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://hdl.handle.net/1822/77532
url http://hdl.handle.net/1822/77532
dc.language.iso.fl_str_mv eng
language eng
dc.relation.none.fl_str_mv 202951707
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.source.none.fl_str_mv reponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron:RCAAP
instname_str Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
instacron_str RCAAP
institution RCAAP
reponame_str Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
collection Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)
repository.name.fl_str_mv Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação
repository.mail.fl_str_mv
_version_ 1799133033721233408