Developer Reference

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

ResizeGetSize

Computes the size of the specification structure and the size of the external temporary buffer for the resize transform initialization.

Syntax

Case 1: Processing images of 32-bit sizes
IppStatus ippiResizeGetSize_<mod>(IppiSize
srcSize
, IppiSize
dstSize
, IppiInterpolationType
interpolation
, Ipp32u
antialiasing
, int*
pSpecSize
, int*
pInitBufSize
);
Supported values for
mod
:
8u
16u
32f
64f
IppStatus ippiResizeGetSize_16s(IppiSize
srcSize
, IppiSize
dstSize
, IppiInterpolationType
interpolation
, Ipp32u
antialiasing
, int*
pSpecSize
, Ipp32s*
pInitBufSize
);
Case 2: Processing images with platform-aware functions
IppStatus ippiResizeGetSize_L(IppiSizeL
srcSize
, IppiSizeL
dstSize
, IppDataType
dataType
, IppiInterpolationType
interpolation
, Ipp32u
antialiasing
, IppSizeL*
pSpecSize
, IppSizeL*
pInitBufSize
);
Case 3: Processing images with threading layer (TL) functions
IppStatus ippiResizeGetSize_LT(IppiSizeL
srcSize
, IppiSizeL
dstSize
, IppDataType
dataType
, IppiInterpolationType
interpolation
, Ipp32u
antialiasing
, IppSizeL*
pSpecSize
, IppSizeL*
pInitBufSize
);
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
srcSize
Size, in pixels, of the source image.
dstSize
Size, in pixels, of the destination image.
interpolation
Interpolation method. Supported values:
ippNearest
,
ippLinear
,
ippCubic
,
ippLanczos
, and
ippSuper
.
antialiasing
Supported values: 1- resizing with antialiasing, 0 - resizing without antialiasing.
dataType
Data type of the image. Supported values:
ipp8u
,
ipp16u
,
ipp16s
,
ipp32f
,
ipp64f
(only for linear interpolation).
pSpecSize
Pointer to the size, in bytes, of the specification structure.
pInitBufSize
Pointer to the size, in bytes, of the temporary buffer required for initialization of the specification structure.
Description
This function computes the size of the specification structure and the size of the external buffer for the following functions depending on the
interpolation
parameter value:
Interpolation algorithms have the following filter sizes:
Nearest Neighbor
1x1
Linear
2x2
Cubic
4x4
2-lobed Lanczos
4x4
The
ippiResizeGetSize
function always returns non-zero value for the
pInitBufSize
parameter, even if the temporary buffer is not required for the specification structure initialization. The temporary buffer is only required when initializing the specification structure for the following functions:
ippiResizeAntialiasingCubic
,
ippiResizeAntialiasingLanczos
,
ippiResizeAntialiasingLanczos
,
ippiResizeLanczos
, and
ippiResizeCubic
.
Return Values
ippStsNoErr
Indicates no error.
ippStsNullPtrErr
Indicates an error if one of the specified pointers is
NULL
.
ippStsResizeNoOperation
Indicates an error if width or height of the image is equal to zero.
ippStsSizeErr
Indicates an error in the following cases:
  • If the source image size is less than the filter size of the chosen interpolation method (except
    ippSuper
    ).
  • If one of the specified dimensions of the source image is less than the corresponding dimension of the destination image (for
    ippSuper
    method only).
  • If the width or height of the source or destination image is negative.
ippStsExceededSizeErr
Indicates an error in the following cases:
  • If at least one of the computed values exceeds the maximum of the data type positive value pointed by
    pSpecSize
    or
    pInitBufSize
    correspondingly (the size of one of the processed images is too large).
  • If width or height of the destination image or the source image exceeds 33554431 (0x1FFFFFF) (only for platform-aware and TL functions).
ippStsInterpolationErr
Indicates an error if
interpolation
has an illegal value.
ippStsNoAntialising
Indicates a warning if the specified interpolation method does not support antialiasing.
ippStsNotSupportedModeErr
Indicates an error if the requested mode is not supported.
ippStsDataTypeErr
Indicates an error if
dataType
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