Intel IPP Integration Wrappers Developer Guide and Reference

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

class IwiWarpAffine

The IwiWarpAffine class consists of the following WarpAffine operation methods:

IwiWarpAffine()

Default constructor.

IwiWarpAffine();

IwiWarpAffine() with Initialization

Default constructor with initialization.

IwiWarpAffine(
        IwSize                     srcSize,                               
        IwSize                     dstSize,                             
        IppDataType                dataType,                             
        int                        channels,                               
        const double               coeffs[2][3],                           
        IppiWarpDirection          direction,                              
        IppiInterpolationType      interpolation,                          
        const IwiWarpAffineParams &params      = IwiWarpAffineParams(),    
        const IwiBorderType       &border      = ippBorderRepl
    );
Parameters

srcSize

Size of the source image, in pixels.

dstSize

Size of the destination image, in pixels.

dataType

Image pixel type.

channels

Number of image channels.

coeffs[2][3]

Coefficients for the affine transform.

direction

Transformation direction.

interpolation

Interpolation method. Supported values: ippNearest, ippLinear, ippCubic.

params

Optional parameters.

border

Extrapolation algorithm for out of image pixels processing. Supported values: ippBorderConst, ippBorderRepl, ippBorderTransp, ippBorderInMem.

Exception Values

ippStsWarpDirectionErr

The direction value is illegal.

ippStsCoeffErr

Affine transformation is singular.

ippStsInterpolationErr

The interpolation value is illegal.

ippStsDataTypeErr

The dataType value is illegal.

ippStsNumChannelsErr

The channels value is illegal.

ippStsBorderErr

The border value is illegal.

ippStsNotSupportedModeErr

Specified combination of parameters' values is not supported.

ippStsNoMemErr

Failed to allocate memory.

ippStsSizeErr

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

ippStsNullPtrErr

At least one of the pointers is NULL.

InitAlloc()

Method to allocate and initialize the internal data structure.

IppStatus InitAlloc(
        IwSize                     srcSize,                               
        IwSize                     dstSize,                                
        IppDataType                dataType,                               
        int                        channels,                               
        const double               coeffs[2][3],                          
        IppiWarpDirection          direction,                            
        IppiInterpolationType      interpolation,                         
        const IwiWarpAffineParams &params      = IwiWarpAffineParams(),    
        const IwiBorderType       &border      = ippBorderRepl
    );
Parameters

srcSize

Size of the source image, in pixels.

dstSize

Size of the destination image, in pixels.

dataType

Image pixel type.

channels

Number of image channels.

coeffs[2][3]

Coefficients for the affine transform.

direction

Transformation direction.

interpolation

Interpolation method. Supported values: ippNearest, ippLinear, ippCubic.

params

Optional parameters.

border

Extrapolation algorithm for out of image pixels processing. Supported values: ippBorderConst, ippBorderRepl, ippBorderTransp, ippBorderInMem.

Exception Values

ippStsWarpDirectionErr

The direction value is illegal.

ippStsCoeffErr

Affine transformation is singular.

ippStsInterpolationErr

The interpolation value is illegal.

ippStsDataTypeErr

The dataType value is illegal.

ippStsNumChannelsErr

The channels value is illegal.

ippStsBorderErr

The border value is illegal.

ippStsNotSupportedModeErr

Specified combination of parameters' values is not supported.

ippStsNoMemErr

Failed to allocate memory.

ippStsSizeErr

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

ippStsNullPtrErr

At least one of the pointers is NULL.

Return Values

ippStsNoErr

No errors.

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.

operator()

Method to perform the warp affine transformation on the specified image ROI.

    IppStatus operator()(
        const IwiImage &srcImage,    
        IwiImage       &dstImage,   
        const IwiTile  &tile = IwiTile()     
    );
Parameters

pSrcImage

Reference to the source image.

pDstImage

Reference to the destination image.

tile

Reference to the IwiTile object for tiling. By default, no tiling is used.
Exception Values

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 is NULL.

ippStsSizeErr

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

Return Values

ippStsNoErr

No errors.

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.

~IwiWarpAffine()

Default destructor.

     ~IwiWarpAffine();