Developer Reference

  • 2020
  • 07/15/2020
  • Public Content
Contents

FilterBilateralBorderGetBufferSize

Computes the size of the bilateral context structure and the size of the work buffer for bilateral filtering with user-defined borders.

Syntax

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
);
Include Files
ippi.h
Flavors with the
_LT
suffix:
ippi_tl.h
Flavors with the
_L
suffix:
ippi_l.h
Domain Dependencies
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
Parameters
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.
Description
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.
Return Values
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.

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804