- Description:
- Computes a gaussian filter over the 5x5 neighborhood of each input pixel, then half scales the image in both horizontal and vertical using nearest neighbor interpolation.
- Method:
- This filter uses the following convolution matrix:
| 1 4 6 4 1 |
| 4 16 24 16 4 |
K = | 6 24 36 24 6 | * 1/256
| 4 16 24 16 4 |
| 1 4 6 4 1 |
- Parameters
-
[in] | src[] | Pointer to array containing input image (UQ8.0) |
[in] | src_addr[] | Pointer to structure containing dimensional information of src |
[out] | dst[] | Pointer to array containing output image (UQ8.0) |
[in] | dst_addr[] | Pointer to structure containing dimensional information of dst |
- Assumptions:
- I/O buffer pointers are assumed to be not aliased.
- Input width should be >= (Output width + 2) * 2
- Input height should be == (Output height + 2) * 2
When breaking input image processing into blocks, be sure to fetch enough overlap pixels from the input for interior edges for the rescale, or else the function may put a false border within the block edge of of the output image. For each dimension, the required fetch amount should be:
- input block width to fetch = (output block width + 2) * 2
- input block height to fetch = (output block height + 2) * 2
And the amount of left/top overlap to refetch should be:
- left edge overlap = 2
- top edge overlap = 2