WarpAffineGetSize
Computes the size of the specification structure and the size of the external work buffer for the warp affine transform.
Syntax
IppStatus ippiWarpAffineGetSize(IppiSize
srcSize
, IppiSize
dstSize
, IppDataType
dataType
, const double
coeffs[2][3]
, IppiInterpolationType
interpolation
, IppiWarpDirection
direction
, IppiBorderType
borderType
, int*
pSpecSize
, int*
pInitBufSize
);
Include Files
ippi.h
Flavors with the
_L
suffix: ippi_l.h
Domain Dependencies
Headers:
ippcore.h
,
ippvm.h
,
ipps.h
Libraries:
ippcore.lib
,
ippvm.lib
,
ipps.lib
Parameters
- srcSize
- Size of the source image, in pixels.
- dstSize
- Size of the destination image, in pixels.
- dataType
- Data type of the source and destination images. Supported values:ipp8u,ipp16u,ipp16s,ipp32f, andipp64f.
- coeffs
- Coefficients for the affine transform.
- interpolation
- Interpolation method. Supported values:ippNearest,ippLinear, andippCubic.
- direction
- Transformation direction. Supported values:
- ippWarpForward
- Forward transformation
- ippWarpBackward
- Backward transformation
- borderType
- Type of border. Possible values are:
- ippBorderConst
- Values of all border pixels are set to constant.
- ippBorderRepl
- Border is replicated from the edge pixels.
- ippBorderTransp
- Outer pixels are not processed.
- ippBorderInMem
- Border is obtained from the source image pixels in memory.
Mixed borders are also supported. They can be obtained by the bitwise operationORbetweenippBorderTranspand theippBorderInMemTop,ippBorderInMemBottom,ippBorderInMemLeft,ippBorderInMemRightvalues. - pSpecSize
- Pointer to the size, in bytes, of the specification structure.
- pInitBufSize
- Pointer to the size, in bytes, of the temporary buffer.
Description
This function computes the size of the specification structure and the external work buffer for the following functions, depending on the
interpolation
parameter: WarpAffineNearestInit, WarpAffineLinearInit, or WarpAffineCubicInit.Return Values
- ippStsNoErr
- Indicates no error.
- ippStsNullPtrErr
- Indicates an error when one of the specified pointers isNULL.
- ippStsNoOperation
- Indicates a warning if width or height of any image is zero.
- ippStsSizeErr
- Indicates an error If the width or height of the source or destination image is less than, or equal to one.
- ippStsDataTypeErr
- Indicates an error whendataTypehas an illegal value.
- ippStsWarpDirectionErr
- Indicates an error whendirectionhas an illegal value.
- ippStsInterpolationErr
- Indicates an error wheninterpolationhas an illegal value.
- ippStsNotSupportedModeErr
- Indicates an error if the requested mode is not supported.
- ippStsCoeffErr
- Indicates an error when affine transformation is singular.
- ippStsBorderErr
- Indicates an error whenborderTypehas an illegal value.
- ippStsWrongIntersectQuad
- Indicates a warning that no operation is performed if the transformed source image extended with borders has no intersection with the destination image.
- ippStsExceededSizeErr
- Indicates an error in the following cases:
- If one of the calculated sizes exceeds maximum of thepSpecSizevariable data type positive value (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) .