Complutense University Library

Procesado de imágenes digitales sobre un sistema hardware dinámicamente reconfigurable

Álvarez Gallego , Isaac and Bernabé Villalobos, Sergio and Robledillo Gómez, Gerardo and Rodríguez Crespo, Mª Pilar (2003) Procesado de imágenes digitales sobre un sistema hardware dinámicamente reconfigurable. [Coursework] (Unpublished)

[img] PDF
1MB
View download statistics for this eprint

==>>> Export to other formats

Abstract

El objetivo principal de nuestro proyecto era implementar sobre la FPGA de una placa XSV-800, un circuito de visualización y procesamiento de imágenes. Este procesamiento consistía en aplicar una serie de filtros a las imágenes.
Como complemento al circuito de visualización, fue necesario crear una herramienta software que transformara imágenes de formato .BMP a un formato propio. Estas imágenes en el nuevo formato, se guardan en la RAM mediante otra herramienta software (heredada de un proyecto anterior) de comunicación entre el PC y la XSV-800 usando el puerto paralelo. Luego las imágenes se leerán de la RAM para ser mostradas en la pantalla por medio de una RAMDAC, un dispositivo contenido en la placa.
En cuanto al procesamiento de las imágenes, se carga en la FPGA el filtro deseado, que trata la imagen, y la almacena de nuevo en la RAM para su posterior visualización. Los filtros disponibles son binarización, escala de grises, negativización, reducción del espectro de color a 8, suavizado y cálculos de los bordes una imagen.
Como objetivo secundario también estaba conseguir reconfigurar dinámicamente la placa de una forma total. Para ello, guardamos en la memoria Flash de la placa dos configuraciones, con distintos filtros, y permitimos configurar la FPGA en cualquier momento con cualquiera de éstas, en función de las peticiones del usuario.
En esta documentación se detalla el proceso de desarrollo seguido, las herramientas utilizadas, los conocimientos necesarios para trabajar con imágenes sobre FPGAs, además de incluir y explicar todos los circuitos y código fuente desarrollados por nosotros durante este proyecto.

[ABSTRACT]

Project Outline
The main goal of this project is to implement on the FPGA of a XSV-800 board, a visualization and image processing circuit. This processing is based on the application of several image filters.
As a complement to the visualization circuit, it was necessary to create a software tool that transforms .BMP images into an own format. Images in this new format will be stored inside the RAM through another software tool (inherited from a past SI project) that communicates the PC and the XSV-800 by the parallel port. The images stored inside the RAM memory will afterwards be showed in a VGA monitor through a RAMDAC, which is embedded in the board.
For the image processing, the desired filter is downloaded into the FPGA, and then the image is managed and stored again into the RAM memory for its further visualization. The different filters that are available include: binarization, grey scale, negative effect, reduction of the colour spectrum to 8, softening of the image, and border settings.
A secondary goal was making a total reconfiguration of the board dynamically. Therefore, two settings, with two filters, to reconfigure the FPGA are saved inside the Flash RAM, allowing configuring the FPGA with one or the other of the configurations at any point in time, depeding on user’s requests.
This document shows a detailed description of the process, all the tools used to achieve the goals, and the required knowledge to manage images on a FPGA, as well as showing and explaining all the different circuits and codes developed during the project execution.

Item Type:Coursework
Additional Information:Trabajo de la asignatura Sistemas Informáticos (Facultad de Informática, Curso 2002-2003)
Uncontrolled Keywords:FPGA, Reconfiguración, Imágenes digitales, Filtrado, Vhdl, Vga
Subjects:Sciences > Computer science > Expert systems (Computer science)
ID Code:8902
Deposited On:02 Jun 2009 11:47
Last Modified:02 Jun 2009 11:47

Repository Staff Only: item control page