Programmable Devices
CPLDs, FPGAs, SoC FPGAs, Configuration, and Transceivers
20705 Discussions

Digital imaging processing with FPGA

Altera_Forum
Honored Contributor II
995 Views

Hi all, 

 

I am currently studying and working with linear and non-linear image filters (convolution and morphological filters).  

 

The implementation of such filters in high-level languages (C for instance) is more or less straightforward once you have understood the algorithm. Moreover, I can use some library or API for opening, closing and saving an image and easily manipulate it in a matrix pixel-by-pixel form. 

 

What I would like to know is the best to do it in an FPGA device (DE-2 board to be more specific): saving the image in a memory block, manipulating (through filters) and visualization.  

 

I have been reading about the embedded NIOSII processor and the HAL driver, but I am still kind of lost here. 

 

Also, I have been thinking in an hybrid solution: using the NIOS II for opening, saving, displaying the image and other I/O tasks and a HDL (Verilog) algorithm for the filter operation. Is is even possible? 

 

Thanks in advance!
0 Kudos
3 Replies
Altera_Forum
Honored Contributor II
305 Views

Filters in FPGAs are quite common. 2d convolution is also pretty straight forward, but IP filters tend to only be 1D.  

 

Your task sounds perfectly doable on an FPGA, and has been done with real time video. FPGAs are ideal for filters and can quite easily store and control (and display) any image. A Processor like NIOS can be useful for comms and Data IO.
0 Kudos
Altera_Forum
Honored Contributor II
305 Views

Thanks for your answer! 

 

Do you have any links that I could use to study more about Altera FPGA design, such as data I/O, image processing techniques and design and NIOS integration? 

 

Thanks!
0 Kudos
Altera_Forum
Honored Contributor II
305 Views

Take a look at altera documentation, www.altera.com 

also it's not that trivial to work with images on FPGA..
0 Kudos
Reply