Developer Reference for Intel® Integrated Performance Primitives
Computes the size of the bilateral context structure and the size of the work buffer for bilateral filtering with user-defined borders.
Processing images of 32-bit sizes
IppStatus ippiFilterBilateralBorderGetBufferSize(IppiFilterBilateralType filter, IppiSize dstRoiSize, int radius, IppDataType dataType, int numChannels, IppiDistanceMethodType distMethodType, int* pSpecSize, int* pBufferSize);
Platform-aware function
IppStatus ippiFilterBilateralBorderGetBufferSize_L(IppiFilterBilateralType filter, IppiSizeL dstRoiSize, int radius, IppDataType dataType, int numChannels, IppiDistanceMethodType distMethodType, IppSizeL* pSpecSize, IppSizeL* pBufferSize);
Threading layer function
IppStatus ippiFilterBilateralBorderGetBufferSize_LT(IppiFilterBilateralType filter, IppiSizeL dstRoiSize, int radius, IppDataType dataType, int numChannels, IppiDistanceMethodType distMethodType, IppSizeL* pSpecSize, IppSizeL* pBufferSize);
ippi.h
Flavors with the _LT suffix: ippi_tl.h
Flavors with the _L suffix: ippi_l.h
Flavors declared in ippi.h:
Headers: ippcore.h, ippvm.h, ipps.h
Libraries: ippcore.lib, ippvm.lib, ipps.lib
Flavors declared in ippi_tl.h:
Libraries: ippcore.lib, ippvm.lib, ipps.lib, ippi.lib, ippcore_tl.lib, ippi_tl.lib
filter |
Type of the bilateral filter. Possible value is ippiFilterBilateralGauss - Gaussian bilateral filter. |
dstRoiSize |
Size of the destination ROI in pixels. |
radius |
Radius of the round kernel. The radius value equal to 1 corresponds to distance between the closest pixels. |
dataType |
Data type of the source and destination images. Possible values are ipp8u and ipp32f. |
numChannels |
Number of channels in the images. |
distMethodType |
Method of defining intensive distance between pixels. Possible value is ippDistNormL1. |
pSpecSize |
Pointer to the computed size of the specification structure. |
pBufferSize |
Pointer to the computed size of the external buffer. |
This function computes the size of the bilateral context structure and external work buffer for the FilterBilateralBorder function. The results are stored in pSpecSize and pBufferSize.
Use the computed pBufferSize and pSpecSize values to allocate the memory using the ippMalloc or ippsMalloc functions. The allocated memory can be freed only by the ippFree or ippsFree functions, respectively. For more information about the memory allocation functions, refer to the "Support Functions" section of the Intel IPP Developer Reference, vol. 1.
For an example on how to use this function, refer to the example provided with the FilterBilateralBorder function description.
ippStsNoErr |
Indicates no error. Any other value indicates an error. |
ippStsNullPtrErr |
Indicates an error when pSpecSize or pBufferSize is NULL. |
ippStsSizeErr |
Indicates an error when dstRoiSize has a field with a zero or negative value. |
ippStsMaskSizeErr |
Indicates an error when radius is less than, or equal to zero. |
ippStsNotSupportedModeErr |
Indicates an error when the filter or distMethodType value is not supported. |
ippStsDataTypeErr |
Indicates an error when dataType has an illegal value. |
ippStsNumChannelsErr |
Indicates an error when numChannels has an illegal value. |