Developer Reference for Intel® Integrated Performance Primitives
Initializes the structure for creating an upper pyramid layer.
Case 1: Operating on integer data
IppStatus ippiPyramidLayerUpInit_8u_C1R(IppiPyramidUpState_8u_C1R** ppState, IppiSize dstRoi, Ipp32f rate, Ipp16s* pKernel, int kerSize, int mode, Ipp8u* pStateBuf);
IppStatus ippiPyramidLayerUpInit_8u_C3R(IppiPyramidUpState_8u_C3R** ppState, IppiSize dstRoi, Ipp32f rate, Ipp16s* pKernel, int kerSize, int mode, Ipp8u* pStateBuf);
IppStatus ippiPyramidLayerUpInit_16u_C1R(IppiPyramidUpState_16u_C1R** ppState, IppiSize dstRoi, Ipp32f rate, Ipp16s* pKernel, int kerSize, int mode, Ipp8u* pStateBuf);
IppStatus ippiPyramidLayerUpInit_16u_C3R(IppiPyramidUpState_16u_C3R** ppState, IppiSize dstRoi, Ipp32f rate, Ipp16s* pKernel, int kerSize, int mode, Ipp8u* pStateBuf);
Case 2: Operating on floating point data
IppStatus ippiPyramidLayerUpInit_32f_C1R(IppiPyramidUpState_32f_C1R** ppState, IppiSize dstRoi, Ipp32f rate, Ipp32f* pKernel, int kerSize, int mode, Ipp8u* pStateBuf, Ipp8u* pBuffer);
IppStatus ippiPyramidLayerUpInit_32f_C3R(IppiPyramidDownState_32f_C3R** ppState, IppiSize dstRoi, Ipp32f rate, Ipp32f* pKernel, int kerSize, int mode, Ipp8u* pStateBuf, Ipp8u* pBuffer);
Platform-aware functions
IppStatus ippiPyramidLayerUpInit_32f_C1R_L(IppiPyramidUpState_32f_C1R_L** ppState, IppiSizeL dstRoi, Ipp32f rate, const Ipp32f* pKernel, int kerSize, int mode, Ipp8u* StateBuf);
ippcv.h
Flavors with the _L suffix: ippcv_l.h
Headers: ippcore.h, ippvm.h, ipps.h, ippi.h
Libraries: ippcore.lib, ippvm.lib, ipps.lib, ippi.lib
IPPI_INTER_LINEAR |
Bilinear interpolation. |
This function operates with ROI (see Regions of Interest in Intel IPP).
This function allocates memory and initializes the pState structure to build an upper pyramid layer. This structure is used by the ippiPyramidLayerUp function and can be applied to process images with size not greater than dstRoi.
The specified kernel pKernel should be symmetric. If it is not symmetric, the function builds the symmetric kernel using the first part of the specified kernel and returns a warning. The symmetric separable kernel can be not Gaussian. If the sum of kernel elements is not equal to zero, the kernel is normalized.
For integer rates, the function performs upsampling by inserting zero rows and columns that are not multiples of the rate value. For non-integer rates, the function uses bilinear interpolation (see Linear Interpolation for more information) to calculate kernel coefficients for pixels with non-integer coordinates.
For an example on how to use this function, refer to the example provided with the ippiPyramidLayerDown function description.
ippStsNoErr |
Indicates no error. |
ippStsNullPtrErr |
Indicates an error when at least one of the pointers is NULL. |
ippStsSizeErr |
Indicates an error when the width or height of images is less than, or equal to zero. |
ippStsBadArgErr |
Indicates an error when kerSize is even, or equal to or less than 0; or when rate is out of the range. |