Operator KernelRemap

The operator KernelRemap allows the remapping of kernel components between the input and the output. The output of the operator has the same kernel dimension as the input. Using the static parameter SourceSelect, it is possible to remap the kernel components. This can be useful to mirror a kernel or it can be useful for a rotation of the kernel components.

The remapping is done by allocating a new input kernel index to each output. Hence, for each output kernel component an input kernel component is selected using the parameter SourceSelect. It is also possible to allocate the same input kernel component to multiple output kernel components. If an input kernel component is not mapped to any output, the data is discarded.

I/O Properties

Property Value
Operator Type O
Input Link I, data input
Output Link O, data output

Supported Link Format

Link Parameter Input Link I Output Link O
Bit Width [1, 64]1 as I
Arithmetic {unsigned, signed} as I
Parallelism any as I
Kernel Columns any as I
Kernel Rows any as I
Color Format any as I
Color Flavor any as I
Max. Img Width any as I
Max. Img Height any as I


The range of the input bit width is [1, 64]. For signed inputs, the range is [2, 64]. For unsigned color inputs, the range is [3, 63] and for signed color, the range is [6, 63].


Type static parameter
Default index
Range [0, KernelRows * KernelCols - 1]

This parameter defines the remapping of the kernel. It represents the output kernel components. Hence, for every output kernel component an input kernel component is selected.

The kernel components are indexed from top-left to bottom-right.

Examples of Use

The use of operator KernelRemap is shown in the following examples: