Pyramid Down
The

xFPyrDown function is an image down-sampling algorithm which smoothens
the image before down-scaling it. The image is smoothened using a Gaussian filter with the
following kernel:Down-scaling is performed by dropping pixels in the even rows and the even columns. The
resulting image size is
API Syntax
template<int TYPE, int ROWS, int COLS, int NPC>
void xFPyrDown (xF::Mat<TYPE, ROWS, COLS, NPC> & _src, xF::Mat<TYPE, ROWS, COLS, NPC> & _dst)
Parameter Descriptions
The following table describes the template and the function parameters.
| Parameter | Description |
|---|---|
| TYPE | Pixel type. XF_8UC1 is the only supported pixel type. |
| ROWS | Maximum Height or number of input rows to build the hardware for this kernel |
| COLS | Maximum Width or number of input columns to build the hardware for this kernel |
| NPC | Number of pixels to process per cycle. Currently, the kernel supports only 1 pixel per cycle processing (XF_NPPC1). |
| _src | Input image stream |
| _dst | Output image stream |
Resource Utilization
The following table summarizes the resource utilization of xFPyrDown for 1 pixel per cycle implementation, for a maximum input image size of 1920x1080 pixels. The results are after synthesis in Vivado HLS 2017.1 for the Xilinx xczu9eg-ffvb1156-1-i-es1 FPGA at 300 MHz.
| Operating Mode |
Operating Frequency (MHz) |
Utilization Estimate | |||
|---|---|---|---|---|---|
| LUTs | FFs | DSPs | BRAMs | ||
| 1 Pixel | 300 | 1171 | 1238 | 1 | 5 |
Performance Estimate
The following table summarizes performance estimates of xFPyrDown function in Vivado HLS 2017.1 for the Xilinx xczu9eg-ffvb1156-1-i-es1 FPGA.
| Operating Mode |
Operating Frequency (MHz) |
Input Image Size | Latency Estimate |
|---|---|---|---|
| Max (ms) | |||
| 1 pixel | 300 | 1920x1080 | 6.99 |