Operator Library: Filter
The operator FIRoperatorNxM calculates the sum of the multiplication of the input kernel elements with parameterizable coefficients. The coefficients can be defined using parameter Coefficients.
Lets have a look at an example. Assume the following Sobel filter coefficients H to detect vertical edges
This filter is applied to the following image I
For the pixel at position I(2,2) = 31 we get the following result at output O
To generate the required input kernel use operators such as FIRkernelNxM, LineNeighboursNx1 or PixelNeighbours1xM.
Operator Restrictions
-
ImageWidth < 2*Parallelism are not allowed
-
Empty images i.e. images with no pixels are not allowed.
-
Empty lines or varying line lengths are not allowed.
The required output bit width is automatically determined from the input bit width, arithmetic and coefficients. The output bit width must not exceed 64 bit. |
|
The output arithmetic is automatically determined from the input arithmetic and the coefficients. The output is signed if either the input is signed or at least one coefficient is signed. |
Coefficients | |
---|---|
Type | static parameter |
Default | identity |
Range | |
This parameter defines the coefficients of the filter kernel. Signed and unsigned integer values are allowed. If the input kernel size of the operator is changed, the coefficients will also change. Check the coefficients after changing the input kernel size. The coefficient values may not cause the output bit width to exceed 64 bit. |
The use of operator FIRoperatorNxM is shown in the following examples:
-
Examples - A convolution with high intensity spot coefficients is made. For results above threshold, the respective pixels are dyed in red.
-
A binarization example for local adaptive thresholding. A kernel size of 8 by 8 pixel is used.
-
'Edge Sensitive Bayer De-Mosaicing Algorithm'
Examples - Edge Sensitive Laplace Bayer De-Mosaicing filter
-
'Bayer De-Mosaicing Algorithm According to Laroche'
Examples - Laroche Bayer De-Mosaicing filter
-
'Modified Laroche Bayer De-Mosaicing Algorithm '
Examples - Ressource Optimized Laroche Bayer De-Mosaicing filter
-
'Co-Processor Large Filter Calculation'
Examples - The coprocessor feature of the microEnable IV VD1-CL is shown. As an example, a large filter kernel is calculated.
-
Examples - The average of two acquired images is calculated to reduce noise.
-
Examples - The Kirsch filter is a good edge detection filter for non directional edges.
-
Examples - A Sobel filter in x-direction only.
-
Examples - A Sobel filter in all 4 directions.
-
Examples - A simple 3x3 box filter.
-
Examples - A Gauss filter using a 5x5 kernel.
-
Examples - Explains the implementation of filters.
-
Examples - An example of the use of two filters in parallel.
-
Examples - Shows how to extract a sub kernel from a filter to obtain the original image data. This example performs a simple local adaptive binarization.
-
'Filter for Line Scan Cameras'
Examples - Explains how to implement a filter for line scan cameras.
-
'High Boost Sharpening Filter'
Examples - A high boost Laplace filter for sharpening
-
Examples - A 3x3 Laplace filter.
-
Examples - Downsampling by factor 3x3 without the use of operator SampleDn.
-
'Depth From Focus Using Loops'
Examples - Depth From Focus using Loops
-
'Normalized Cross Correlation'
Examples-
-
Examples - The examples shows an automatic dead pixel detection and replacement.