The Paintmask function replace the pixel intensity value with given color value when mask is not zero or the corresponding pixel from the input image.
API Syntax
template< int SRC_T,int MASK_T, int ROWS, int COLS,int NPC=1, int XFCVDEPTH_IN = _XFCVDEPTH_DEFAULT, int XFCVDEPTH_MASK_IN = _XFCVDEPTH_DEFAULT, int XFCVDEPTH_OUT = _XFCVDEPTH_DEFAULT>
void paintmask(xf::cv::Mat<SRC_T, ROWS, COLS, NPC, XFCVDEPTH_IN> & _src_mat, xf::cv::Mat<MASK_T, ROWS, COLS, NPC, XFCVDEPTH_MASK_IN> & in_mask, xf::cv::Mat<SRC_T, ROWS, COLS, NPC, XFCVDEPTH_OUT> & _dst_mat, unsigned char _color[XF_CHANNELS(SRC_T,NPC)])
Parameter Descriptions
The following table describes the template and the function parameters.
Parameter | Description |
---|---|
SRC_T | Input pixel type. 8-bit, unsigned, 1 channel is supported (XF_8UC1). |
MASK_T | Mask value type. 8-bit, unsigned, 1 channel is supported (XF_8UC1). |
ROWS | Maximum height of input and output image |
COLS | Maximum width of input and output image. In case of N-pixel parallelism, width should be multiple of N. |
NPC | Number of pixels to be processed per cycle; possible options are XF_NPPC1 and XF_NPPC8 for 1 pixel and 8 pixel operations respectively. |
XFCVDEPTH_IN | Depth of the input image. |
XFCVDEPTH_MASK_IN | Depth of the input mask image. |
XFCVDEPTH_OUT | Depth of the output image. |
_src_mat | Input image |
_in_mask | Input mask image |
_dst_mat | Output image |
_color | Color value to be filled when mask is not zero |
Resource Utilization
The following table summarizes the resource utilization of the Paintmask Resource optimized (8 pixel) mode and normal mode as generated using Vivado HLS 2019.1 version tool for the Xczu9eg-ffvb1156-1-i-es1 FPGA.
Name | Resource Utilization | |
---|---|---|
1 pixel per clock operation | 8 pixel per clock operation | |
300 MHz | 150 MHz | |
BRAM_18K | 0 | 0 |
DSP48E | 0 | 0 |
FF | 95 | 163 |
LUT | 57 | 121 |
CLB | 14 | 33 |
Performance Estimate
The following table summarizes a performance estimate of the kernel in different configurations, generated using Vivado HLS 2019.1 tool for Xczu9eg-ffvb1156-1-i-es1 FPGA to process a grayscale HD (1080x1920) image.
Operating Mode | Latency Estimate | |
---|---|---|
Operating Frequency (MHz) | Latency (ms) | |
1 pixel | 300 | 6.9 |
8 pixel | 150 | 1.7 |