Estimating Optical Flow using Convolutional Neural Networks in Reconfigurable Logic

Detalhes bibliográficos
Autor(a) principal: Rodrigues, Rodrigo Pedrosa
Data de Publicação: 2020
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/10316/90110
Resumo: Dissertação de Mestrado Integrado em Engenharia Electrotécnica e de Computadores apresentada à Faculdade de Ciências e Tecnologia
id RCAP_98958c1df2f400a0a9668d4b52699a0e
oai_identifier_str oai:estudogeral.uc.pt:10316/90110
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 Estimating Optical Flow using Convolutional Neural Networks in Reconfigurable LogicEstimação de Fluxo Óptico utilizando uma Rede Neuronal Convolucional num Sistema Digital ReconfigurávelFluxo óticoRedes neuronais convolucionais (RNC)Lógica Reconfigurável (FPGA)PipeCNNOptical FlowConvolutional Neural Networks (CNN)Field-programmable gate array (FPGA)PipeCNNDissertação de Mestrado Integrado em Engenharia Electrotécnica e de Computadores apresentada à Faculdade de Ciências e TecnologiaEsta dissertação explora o mapeamento da arquitetura de uma rede neuronal convolucional(RNC) em lógica reconfigurável. O objetivo final é existir computação de Fluxo Ótico (FO) atravésde RNCs numa FPGA. Esta plataforma não está limitada a esta RCN específica, é open-source epode ser expandida para funcionalidades extra e diferentes tipos de RCN.Fluxo ótico é o mapeamento de movimento entre duas imagens da mesma cena e pode ser muitoimportante para várias aplicações no campo de Visão por Computador. Dar a capacidade the ”ver”movimento a uma máquina pode ser muito útil. A exatidão de resultados é importante, mas dadoos requisitos de tempo-real de muitas aplicações, o tempo de computação é um fator chave. O objetivoé explorar diferentes compromissos entre complexidade de hardware, tempo de computaão,consumo de potência e precisão ao usar uma FPGA. Recentemente RCNs têm superado métodostradicionais. FPGAs têm vindo a emergir como uma plataforma crescente e neste trabalho,vamos explorar se existe vantagem numa plataforma destas em vez da mais convencional PlacaGráfica (GPU). Ao providenciar um framework que permite flexibilidade entre diferentes arquiteturasde RCNs estamos a permitir uma maneira mais fácil de trabalhar neste campo ao usarem estetipo de plataforma. Como objetivo final de computar flúxo ótico com RCNs, o nosso trabalhofoca-se numa arquitetura específica base, a FlowNet-S, que fornece uma arquitetura simples masrobusta para o seu tamanho. Ao usar um projeto open-source previamente desenvolvido chamadoPipeCNN, a expansão de algumas das suas funcionalidades fez que fosse possível usar em estimaçãode fluxo ótico. O PipeCNN é um framework baseado em OpenCL para FPGAs que permitea implantação de RCNs de classificação em placas suportadas pela Intel ou Xilinx. Usa o Caffecomo base para extraír os pesos e informação relativa à sua estrutura. Uma RCN que consigaestimar fluxo ótico necessita de diferentes tipos de camadas que não estavam contempladas noframework original. As novas camadas, Transposta de Convolução e Concatenação abrem novaspossibilidades no uso do PipeCNN.Aprendemos que o flúxo ótico pode ser computado numa FPGA and que é uma plataformapromissória. Apesar de ainda não conseguir atingir os tempos de computação de Placas Gráficas,consegue ter precisão similar e consumir menos potência. Ainda existem otimizações possíveisque podem reduzir a lacuna entre ambas as plataformas.This dissertation explores the mapping of a convolutional neural network (CNN) architectureonto reconfigurable logic. The end goal is to enable the computation of optical flow using CNNson an FPGA. This platform is not constrained to a specific CNN, it is open-source and can beextended for extra functionality and different CNN types.Optical flow is the mapping of movement between two images of the same scene and can bevery important for several applications in the Computer Vision field. Giving the ability of ”seeing”movement to a machine can be very useful. The results accuracy is important, but given thereal-time requirements of many applications, computation time is a key factor. The goal is to exploretrade-offs between hardware complexity, computation time, power, energy consumption andprecision using an FPGA.Recently CNNs have surpassed traditional computer vision methods. FPGAs have been emergingas a rising platform and in this work, we’re exploring if there’s advantages to a platform likethis instead of the more conventional Graphical Power Unit (GPU). By providing a frameworkthat allows flexibility between different CNN architectures we are allowing an easier way for peopleto work in this field using this type of platform. With the end goal of computing optical flowwith CNNs, our work focuses on a specific base architecture, the FlowNet-S, that provides a simplebut robust architecture for its size. Using a previously developed open-sourced project calledPipeCNN, the expansion of some of its functionalities made it possible to use in optical flow estimation.PipeCNN is an FPGA OpenCL based framework that allows the deployment of classificationCNNs in Intel or Xilinx supported boards. It uses Caffe as its base to extract weight and layerdeployment information. A CNN that can estimate optical flow requires different types of layerswhich were not contemplated in the original framework. The added Transposed Convolution layerand the Concatenation layer open new possibilities for the use of PipeCNN.We have learned that optical flow can be computed with an FPGA and that there are advantages tothis system. Although it still doesn’t meet the computation timings of GPUs, it can have similaraccuracy while spending less power. There are still optimizations possible which could reduce theexisting gap between both platforms.2020-03-03info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesishttp://hdl.handle.net/10316/90110http://hdl.handle.net/10316/90110TID:202491021engRodrigues, Rodrigo Pedrosainfo: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:RCAAP2022-05-25T04:27:55Zoai:estudogeral.uc.pt:10316/90110Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-19T21:10:18.759480Repositó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 Estimating Optical Flow using Convolutional Neural Networks in Reconfigurable Logic
Estimação de Fluxo Óptico utilizando uma Rede Neuronal Convolucional num Sistema Digital Reconfigurável
title Estimating Optical Flow using Convolutional Neural Networks in Reconfigurable Logic
spellingShingle Estimating Optical Flow using Convolutional Neural Networks in Reconfigurable Logic
Rodrigues, Rodrigo Pedrosa
Fluxo ótico
Redes neuronais convolucionais (RNC)
Lógica Reconfigurável (FPGA)
PipeCNN
Optical Flow
Convolutional Neural Networks (CNN)
Field-programmable gate array (FPGA)
PipeCNN
title_short Estimating Optical Flow using Convolutional Neural Networks in Reconfigurable Logic
title_full Estimating Optical Flow using Convolutional Neural Networks in Reconfigurable Logic
title_fullStr Estimating Optical Flow using Convolutional Neural Networks in Reconfigurable Logic
title_full_unstemmed Estimating Optical Flow using Convolutional Neural Networks in Reconfigurable Logic
title_sort Estimating Optical Flow using Convolutional Neural Networks in Reconfigurable Logic
author Rodrigues, Rodrigo Pedrosa
author_facet Rodrigues, Rodrigo Pedrosa
author_role author
dc.contributor.author.fl_str_mv Rodrigues, Rodrigo Pedrosa
dc.subject.por.fl_str_mv Fluxo ótico
Redes neuronais convolucionais (RNC)
Lógica Reconfigurável (FPGA)
PipeCNN
Optical Flow
Convolutional Neural Networks (CNN)
Field-programmable gate array (FPGA)
PipeCNN
topic Fluxo ótico
Redes neuronais convolucionais (RNC)
Lógica Reconfigurável (FPGA)
PipeCNN
Optical Flow
Convolutional Neural Networks (CNN)
Field-programmable gate array (FPGA)
PipeCNN
description Dissertação de Mestrado Integrado em Engenharia Electrotécnica e de Computadores apresentada à Faculdade de Ciências e Tecnologia
publishDate 2020
dc.date.none.fl_str_mv 2020-03-03
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/10316/90110
http://hdl.handle.net/10316/90110
TID:202491021
url http://hdl.handle.net/10316/90110
identifier_str_mv TID:202491021
dc.language.iso.fl_str_mv eng
language eng
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
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_ 1799133997001867264