How to get 2D matrix of pixels from visionhdl.frame2pixels to operate with blocks?

1 view (last 30 days)
I would like to operate with pixels around the center with radius of 7. But frame2pixels interface gives only 1D vector of pixels and control signals. I would like to know how such thing is made in Edge Detector or Image Filter (Vision HDL toolbox).

Answers (2)

Walter Roberson
Walter Roberson on 2 Apr 2016
You need frametopixels or the equivalent in order to pass an array of pixels through an I/O interface, as those have a limited number of pins. However, on the other side of the I/O interface, you can convert back to frames for 2D work.
  2 Comments
Vladislav Chencov
Vladislav Chencov on 2 Apr 2016
No, my question is about how to work with output of frame2pixels, if i want something like nlfilter from image processing toolbox. I need to process pixel and its neighborhood.
Walter Roberson
Walter Roberson on 2 Apr 2016
You work with it by converting back to a 2D array. Or you fake a 2D array using linear indexing.

Sign in to comment.


Brian Ogilvie
Brian Ogilvie on 4 Apr 2016
Hi Vladislav
The output of the Vision HDL Toolbox is a pixel stream that can be realized in an FPGA or ASIC using VHDL or Verilog with HDL Coder. The way to use a 7 by 7 image kernel is by using the Vision HDL Toolbox block or system object called Image Filter. This will allow you to specify a 7x7 kernel for two dimensional filtering on the stream data.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!