Intel® Integrated Performance Primitives (Intel® IPP) Developer Guide and Reference

ID 790148
Date 3/22/2024
Public
Document Table of Contents

ResizeCubicInit

Initializes the specification structure for image resizing using interpolation with two-parameter cubic filters.

Syntax

IppStatus ippiResizeCubicInit_<mod>(IppiSize srcSize, IppiSize dstSize, Ipp32f valueB, Ipp32f valueC, IppiResizeSpec_32f* pSpec, Ipp8u* pInitBuf);

Supported values for mod:

8u

16u

16s

32f

Platform-aware functions

IppStatus ippiResizeCubicInit_L(IppiSizeL srcSize, IppiSizeL dstSize, IppDataType dataType, Ipp32f valueB, Ipp32f valueC, IppiResizeSpec* pSpec, Ipp8u* pInitBuf);

IppStatus ippiResizeCubicInit_8u_L(IppiSizeL srcSize, IppiSizeL dstSize, Ipp32f valueB, Ipp32f valueC, IppHintAlgorithm hint, IppiResizeSpec* pSpec, Ipp8u* pInitBuf);

Threading layer (TL) functions

IppStatus ippiResizeCubicInit_LT(IppiSizeL srcSize, IppiSizeL dstSize, IppDataType dataType, Ipp32u numChannels, Ipp32f valueB, Ipp32f valueC, IppiResizeSpec_LT* pSpec, Ipp8u* pInitBuf);

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.

dataType

Data type of the image. Supported values: ipp8u, ipp16u, ipp16s, ipp32f, ipp64f.

hint

Computation algorithm for processing Ipp8u data. Possible values are:

ippAlgHintNone

The hint is absent. Equivalent toippAlgHintFast.

ippAlgHintFast

A faster but less accurate algorithm.

ippAlgHintAccurate

A slower but more accurate algorithm.

numChannels

Number of channels, possible values: 1, 3, or 4.

valueB

The first parameter for cubic filters.

valueC

The second parameter for cubic filters.

pSpec

Pointer to the specification structure for the resize filter.

pInitBuf

Pointer to the temporary buffer for the cubic filter initialization.

Description

This function initializes the specification structure for the resize algorithm with interpolation with two-parameter cubic filters. To calculate the size of the specification structure, call the ippiResizeGetSize function.

Before using this function, you need to calculate the size of the specification structure and the external buffer pInitBuf using the ippiResizeGetSize function for the corresponding flavor.

NOTE:

The function with the parameter hint allows users to choose between a faster but less accurate algorithm and a slower but more accurate one. Without the parameter hint this function initializes the specification structure for the faster but less accurate algorithm for Ipp8u data type.

Return Values

ippStsNoErr

Indicates no error.

ippStsNullPtrErr

Indicates an error when one of the specified pointers is NULL.

ippStsNoOperation

Indicates a warning when width or height of the image is equal to zero.

ippStsSizeErr

Indicates an error if:
  • width or height of the source or destination image is negative

  • the source image size is less than the size of a 2x2 linear filter

ippStsDataTypeErr

Indicates an error if dataType has an illegal value.

ippStsExceededSizeErr

Indicates an error If width or height of the source or destination image exceeds 33554431 (0x1FFFFFF) (only for platform-aware and TL functions).

ippStsNumChannelErr

Indicates an error if numChannel has an illegal value.

See Also