Operator Library: Filter
The operator LineNeighboursNx1 creates kernel window of N rows and 1 column. The N pixel are located on the top of each input image pixel.
The operator is comparable to FIRkernelNxM but comprises other functionality. The key feature of this operator is that it is of O-type what strongly simplifies synchronizations in the design process. However, the price to pay for the O-type functionality are some restrictions.
The first difference to FIRkernelNxM is that the operator does not center the current pixel in the kernel. Suppose a kernel of size 3x1 is defined. At kernel index 0 of the output image O(x, y), the current pixel at position I(x, y) is provided. At kernel index 1 of the output image, the pixel of the input image at input position I(x, y-1) is provided. Thus, at kernel row index n the output image is
In other words, the operator cannot output pixel of 'future' lines i.e. pixels which have not been processed yet. That's the reason why the operator is of O-type and will not cause line or pixel delays.
Because the operator cannot provide information prior to the current line, there is no mirrored edge handling like in FIRkernelNxM. Instead all pixels in the output link which origin is outside image borders are set to the value of parameter Constant.
To generate a two dimensional kernel, use this operator together with a successive module of operator PixelNeighbours1xM in the image processing pipeline.
Constant | |
---|---|
Type | static parameter |
Default | 0 |
Range | range of input link I |
This parameter defines the default value for pixel outside the image borders. The value is always unsigned. If you want to set the parameter to a signed value you need to reinterpret the value as unsigned. For color formats, the value is a combined value for all components. |
The use of operator LineNeighboursNx1 is shown in the following examples:
-
Example - Line Shear example with linear interpolation.