Back to Search Start Over

Metodología de diseño y síntesis sobre hardware reconfigurable de arquitecturas de procesamiento de imágenes en tiempo real

Authors :
Rubio Ibáñez, Pablo
Doménech Asensi, Ginés
Martínez Álvarez, José Javier
Electrónica, Tecnología de Computadoras y Proyectos
Source :
Repositorio Digital de la Universidad Politécnica de Cartagena, instname
Publication Year :
2022
Publisher :
Universidad Politecnica de Cartagena, 2022.

Abstract

[SPA] El diseño de sistemas por computador embebido es un campo de investigación con un enorme potencial de crecimiento. Cada vez se precisan más sistemas capaces de realizar tareas de identificación o reconocimiento de personas, animales u objetos sobre imágenes de gran tamaño y, en el caso de los sistemas portátiles, con el menor consumo de energía posible. Sin embargo, algunos de estos algoritmos son complejos y su integración sobre hardware no es sencilla, puesto que requieren, en una etapa previa, una simplificación que permita adaptarlos a las características propias y a las limitaciones de los recursos hardware de la tecnología electrónica sobre la que se van a implementar. Por otra parte, el diseño de sistemas electrónicos de visión por computador es un proceso que requiere cada vez más de la participación de ingenieros cualificados tanto en el campo del diseño electrónico como en el de la inteligencia artificial, y más concretamente en el ámbito de las redes neuronales de aprendizaje profundo. Durante la última década hemos asistido a la expansión de este tipo de redes que han comenzado a reemplazar, en algunas aplicaciones, a técnicas clásicas de extracción de características. Este hecho se debe en parte a la flexibilidad que presentan para resolver diferentes problemas de visión por computador en aplicaciones tan diversas como la robótica, la medicina, los sistemas de transporte autónomos, etc. exhibiendo, en muchos casos, una eficiencia superior al de los algoritmos clásicos de identificación o reconocimiento de patrones. Al amparo de esta expansión, se ha desarrollado igualmente un ecosistema de lenguajes y bibliotecas de programación orientados a facilitar y acelerar el diseño de este tipo de redes y su aplicación sobre bases de datos de imágenes de tamaño ingente. Sin embargo, el paso de generar diseños electrónicos a partir de los diseños obtenidos con estas herramientas no es trivial y depende de la experiencia del ingeniero y, sobre todo, de un largo proceso de diseño. Esta Tesis Doctoral aborda el estudio y la propuesta de arquitecturas hardware digitales para la realización de tareas de visión por computador. En concreto, la Tesis se centra en el diseño a nivel de registro tanto de módulos empleados en algoritmos de extracción de características como de módulos utilizados para la construcción de redes neuronales de aprendizaje profundo empleadas para el reconocimiento e identificación de objetos. En el caso de las técnicas de extracción de características, tras una revisión bibliográfica de los algoritmos más utilizados, esta Tesis toma como referencia el algoritmo SIFT, basado en la extracción y etiquetado de puntos característicos de una imagen, cuya primera etapa es común a otros algoritmos de este tipo como el SURF. Las diferentes implementaciones hardware de este algoritmo propuestas en la bibliografía científica tienden a obviar, debido a su complejidad, dos etapas que aumentan el número de puntos característicos y la precisión de la localización de los mismos sobre la imagen. En este trabajo se ha planteado la implementación hardware de dichas etapas como hipótesis para mejorar el rendimiento de las implementaciones digitales del algoritmo. Con respecto a las redes neuronales, esta Tesis propone el uso de una herramienta software de síntesis automática capaz de generar diseños hardware a nivel de registro a partir de las descripciones de alto nivel de redes neuronales de aprendizaje profundo. La hipótesis planteada es que el uso de esta herramienta puede generalizar y abaratar la implementación de este tipo de redes sobre dispositivos embebidos debido a la reducción del tiempo de diseño y la facilidad de su implementación. Los principales resultados obtenidos durante la realización de esta Tesis Doctoral han sido los siguientes: i) el desarrollo e implementación a nivel de registro de dos de los módulos hardware empleados en la primera etapa del algoritmo SIFT. Por una parte, se ha desarrollado el escalado de imágenes en tiempo real para su aplicación tanto en la primera etapa del algoritmo SIFT como en cualquier otro algoritmo que precise esta operación. Por otra parte, se ha creado un módulo más complejo capaz de realizar el refinamiento sub-pixel que permite incrementar la precisión de la localización de los puntos característicos de una imagen. Ambos módulos han sido diseñados a nivel de registro empleando VHDL y se han sintetizado sobre una FPGA; ii) la creación de una biblioteca de módulos hardware útil para la creación de sistemas de visión por computador basados en redes neuronales de aprendizaje profundo. Estos módulos son parametrizables, no solo para poder ser empleados en redes neuronales de diferentes topologías, sino también para dotar al diseñador de la capacidad de toma de decisiones respecto al equilibrio entre la latencia del sistema digital o la cantidad de recursos hardware necesarios para una tecnología de destino determinada; iii) La integración de dicha biblioteca de módulos en una herramienta software capaz de traducir descripciones de alto nivel de redes neuronales en diseños a nivel de registro aptos para ser sintetizados sobre una FPGA o un ASIC. Esta herramienta se ha complementado con otra dedicada a optimizar la cuantización de los parámetros de la red neuronal como paso previo a su síntesis, proceso imprescindible para reducir el tamaño de la red y la enorme cantidad de recursos de memoria y de procesamiento que requiere este tipo de algoritmos. El trabajo realizado en esta Tesis sobre las técnicas de implementación hardware de algoritmos de visión complejos sienta las bases para profundizar en el diseño de la denominada computación en el borde, en la que el procesamiento de los datos captados por un sensor se realiza en el propio sensor o sobre un dispositivo anexo cuya capacidad de cómputo es varias órdenes de magnitud inferior a la de un servidor central. En esta línea, los resultados obtenidos son igualmente aplicables al desarrollo de nuevos dispositivos de visión implementados sobre hardware embebido o sobre dispositivos portátiles que precisan de algoritmos de procesamiento adaptados a sus requisitos característicos de pequeño tamaño o bajo consumo energético. Finalmente, la contribución en el campo de la automatización del diseño electrónico abre la vía a la profundización en el desarrollo de herramientas CAD que reduzcan el tiempo del ciclo de desarrollo de un producto, haciendo que éste sea más competitivo. [ENG] [ENG] The design of embedded computer systems is a field of research with enormous growth potential. There is an increasing need for systems capable of performing identification or recognition tasks of people, animals or objects on large images and, in the case of portable systems, with the lowest possible power consumption. However, some of these algorithms are complex and their integration on hardware is not simple, since they require, at a previous stage, a simplification that allows them to be adapted to the characteristics and limitations of the hardware resources of the electronic technology on which they are going to be implemented. On the other hand, the design of electronic computer vision systems is a process that increasingly requires the participation of engineers qualified both in the field of electronic design and artificial intelligence, and more specifically in the field of deep learning neural networks. During the last decade we have witnessed the expansion of this type of networks that have begun to replace, in some applications, classical feature extraction techniques. This fact is due in part to the flexibility they present to solve different computer vision problems in applications as diverse as robotics, medicine, autonomous transportation systems, etc. exhibiting, in many cases, an efficiency superior to that of classical identification or pattern recognition algorithms. As a result of this expansion, an ecosystem of programming languages and libraries has also been developed to facilitate and accelerate the design of this type of networks and their application on image databases of enormous size. However, the step of generating electronic designs from the designs obtained with these tools is not trivial and depends on the engineer's experience and, above all, on a long design process. This PhD Thesis deals with the study and proposal of digital hardware architectures for computer vision tasks. Specifically, the Thesis focuses on the register-level design of both modules used in feature extraction algorithms and modules used for the construction of deep learning neural networks used for object recognition and identification. In the case of feature extraction techniques, after a literature review of the most widely used algorithms, this Thesis takes as a reference the SIFT algorithm, based on the extraction and labeling of characteristic points of an image, whose first stage is common to other algorithms of this type such as SURF. The different hardware implementations of this algorithm proposed in the scientific literature tend to omit, due to its complexity, two stages that increase the number of characteristic points and the accuracy of their localization on the image. In this work, the hardware implementation of these stages has been proposed as a hypothesis to improve the performance of digital implementations of the algorithm. With respect to neural networks, this Thesis proposes the use of an automatic synthesis software tool capable of generating register-level hardware designs from the high-level descriptions of deep learning neural networks. The hypothesis proposed is that the use of this tool can generalize and make cheaper the implementation of this type of networks on embedded devices due to the reduction of the design time and the ease of implementation. The main results obtained during this PhD Thesis have been the following: i) the development and implementation at register level of two of the hardware modules used in the first stage of the SIFT algorithm. On the one hand, real-time image scaling has been developed for its application both in the first stage of the SIFT algorithm and in any other algorithm that requires this operation. On the other hand, a more complex module capable of performing sub-pixel refinement has been created to increase the accuracy of the location of the characteristic points of an image. Both modules have been designed at the register level using VHDL and synthesized on an FPGA; ii) the creation of a library of hardware modules useful for the creation of computer vision systems based on Deep learning neural networks. These modules are parameterizable, not only to be used in neural networks of different topologies, but also to provide the designer with the ability to make decisions regarding the balance between the latency of the digital system or the amount of hardware resources required for a given target technology; iii) The integration of this library of modules in a software tool capable of translating high-level descriptions of neural networks into register-level designs suitable to be synthesized on an FPGA or an ASIC. This tool has been complemented with another one dedicated to optimize the quantification of the neural network parameters as a previous step to its synthesis, an essential process to reduce the size of the network and the enormous amount of memory and processing resources required by this type of algorithms. The work carried out in this Thesis on the hardware implementation techniques of complex vision algorithms lays the foundations to deepen in the design of the so-called edge computing, in which the processing of the data captured by a sensor is performed in the sensor itself or on an attached device whose computational capacity is several orders of magnitude lower than that of a central server. In this line, the results obtained are equally applicable to the development of new vision devices implemented on embedded hardware or on portable devices that need processing algorithms adapted to their characteristic requirements of small size or low energy consumption. Finally, the contribution in the field of electronic design automation opens the way to deepening the development of CAD tools that reduce the development cycle time of a product, making it more competitive. Escuela Internacional de Doctorado de la Universidad Politécnica de Cartagena Universidad Politécnica de Cartagena Programa Doctorado en Tecnologías de la Información y las Comunicaciones

Details

Database :
OpenAIRE
Journal :
Repositorio Digital de la Universidad Politécnica de Cartagena, instname
Accession number :
edsair.doi.dedup.....89d16f3be673dbb50c1747eb03cf1c4d