Intel IPP Integration Wrappers Developer Guide and Reference

ID 751823
Date 1/18/2023
Public
Document Table of Contents

iwiWarpAffine

Syntax

IW_DECL(IppStatus) iwiWarpAffine(
    const IwiImage             *pSrcImage,
    IwiImage                   *pDstImage,
    const double                coeffs[2][3],
    IwTransDirection            direction,
    IppiInterpolationType       interpolation,
    const IwiWarpAffineParams  *pAuxParams,
    IwiBorderType               border,
    const Ipp64f               *pBorderVal,
    const IwiTile              *pTile
);

Parameters

pSrcImage

Pointer to the source image.

pDstImage

Pointer to the destination image.

coeffs[2][3]

Coefficients for the affine transform.

direction

Direction of the affine transformation .

interpolation

Interpolation method. Supported values are ippNearest, ippLinear, and ippCubic.

pParams

Pointer to the optional parameters structure. If NULL, default parameters are used.

border

Extrapolation algorithm for out of image pixels processing. Supported values:

ippBorderConst

Values of all border pixels are set to a constant.

ippBorderRepl

Border is replicated from the edge pixels.

ippBorderTransp

Out of image pixels are not processed.

ippBorderInMem

Border is obtained from the source image pixels in memory.

pBorderVal

Pointer to an array of values to assign to pixels of the constant border, one element of the array for each channel of the image. This parameter is applicable only to the ippBorderConst border type and can be NULL for other border types.

pTile

Pointer to the IwiTile structure for tiling. If NULL, the whole image is processed.

Description

This function is a simplified version of the iwiWarpAffine_Process function without the specification structure and the need for initialization.

This function supports the following features:

Feature Support
Internal threading No
Manual tiling No
IwiTile simple tiling Yes
IwiTile pipeline tiling No

Return Values

ippStsNoErr

No errors.

ippWarpDirectionErr

The direction value is illegal.

ippCoeffErr

The affine transformation is singular.

ippStsInterpolationErr

The interpolation value is illegal.

ippStsDataTypeErr

The dataType value is illegal.

ippStsBorderErr

The border value is illegal.

ippStsNumChannelsErr

The channels value is illegal.

ippStsNotEvenStepErr

The srcStep and/or dstStep value is not divisible by size of elements.

ippStsNotSupportedModeErr

Specified combination of parameters' values is not supported.

ippStsNoMemErr

Failed to allocate memory.

ippStsNullPtrErr

At least one of the pointers (except pTile and pBorderVal) is NULL.

ippStsSizeErr

Values of the srcSize and/or dstSize fields are illegal.

ippStsNoOperation

Warning: width and/or height of the image is equal to zero.

ippStsWrongIntersectQuad

Warning: transformed source image has no intersection with the destination image.