Structures and Enumerators

This topic describes the structures and enumerators used by the Intel Integrated Performance Primitives for image and video processing.

The IppStatus constant enumerates the status code values returned by Intel IPP functions, indicating whether the operation was error-free or not.

See Error Reporting for more information on the set of valid status codes and corresponding error messages for image and video processing functions.

 

The structure IppiPoint for storing the geometric position of a point is defined as

typedef struct { int x; int y; } IppiPoint;

where x, y denote the coordinates of the point.

 

The structure IppPointPolar for storing the geometric position of a point in polar coordinates is defined as

typedef struct { Ipp32f rho; Ipp32f theta; } IppPointPolar;

where rho - a radial coordinate (radial distance from the origin), theta - an angular coordinate (counterclockwise angle from the x-axis).

 

The structure IppiSize for storing the size of a rectangle is defined as

typedef struct { int width; int height; } IppiSize;

where width and height denote the dimensions of the rectangle in the x- and y-directions, respectively.

 

The structure IppiRect for storing the geometric position and size of a rectangle is defined as

typedef struct { int x; int y; int width; int height; } IppiRect;

where x, y denote the coordinates of the top left corner of the rectangle that has dimensions width in the x-direction by height in the y-direction.

 

The ippiConnectedComp structure used in Computer Vision functions defines the connected component as follows:

typedef struct _IppiConnectedComp { Ipp64f area; Ipp64f value[3]; IppiRect rect; } IppiConnectedComp;

where area - area of the segmented component; value[3] - gray scale value of the segmented component; rect - bounding rectangle of the segmented component.

 

The IppiMaskSize enumeration defines the neighborhood area for some morphological and filtering functions:

typedef enum { ippMskSize1x3 = 13, ippMskSize1x5 = 15, ippMskSize3x1 = 31, ippMskSize3x3 = 33, ippMskSize5x1 = 51, ippMskSize5x5 = 55 } IppiMaskSize;

 

The IppCmpOp enumeration defines the type of compare operation to be used in image comparison functions:

typedef enum { ippCmpLess, ippCmpLessEq, ippCmpEq, ippCmpGreaterEq, ippCmpGreater } IppCmpOp;

 

The IppRoundMode enumeration defines the rounding mode to be used in some conversion, filtering and arithmetic functions:

typedef enum { ippRndZero, ippRndNear, ippRndFinancial } IppRoundMode;

 

The IppHintAlgorithm enumeration defines the type of code to be used in some image transform and statistics functions, that is, faster but less accurate, or vice-versa, more accurate but slower. For more information on using this enumerator, see Table Hint Arguments for Linear Transform Functions or Table Hint Arguments for Image Moment Functions.

typedef enum { ippAlgHintNone, ippAlgHintFast, ippAlgHintAccurate } IppHintAlgorithm;

 

The types of interpolation used by geometric transform functions are defined as follows:

enum { IPPI_INTER_NN = 1, IPPI_INTER_LINEAR = 2, IPPI_INTER_CUBIC = 4, IPPI_INTER_CUBIC2P_BSPLINE, IPPI_INTER_CUBIC2P_CATMULLROM, IPPI_INTER_CUBIC2P_B05C03, IPPI_INTER_SUPER = 8, IPPI_INTER_LANCZOS = 16, IPPI_ANTIALIASING =(1 << 29) IPPI_SUBPIXEL_EDGE =(1 << 30) IPPI_SMOOTH_EDGE =(1 << 31) };

 

The IppiAlphaType enumeration defines the type of the compositing operation to be used in the alpha composition functions:

typedef enum { ippAlphaOver, ippAlphaIn, ippAlphaOut, ippAlphaATop, ippAlphaXor, ippAlphaPlus, ippAlphaOverPremul, ippAlphaInPremul, ippAlphaOutPremul, ippAlphaATopPremul, ippAlphaXorPremul, ippAlphaPlusPremul } IppiAlphaType;

 

The IppiDitherType enumeration defines the type of dithering to be used by the ippiReduceBits function:

typedef enum { ippDitherNone, ippDitherFS, ippDitherJJN, ippDitherStucki, ippDitherBayer } IppiDitherType;

 

The layout of the image slices used in some image format conversion functions is defined as follows:

enum { IPP_UPPER = 1, IPP_LEFT = 2, IPP_CENTER = 4, IPP_RIGHT = 8, IPP_LOWER = 16, IPP_UPPER_LEFT = 32, IPP_UPPER_RIGHT = 64, IPP_LOWER_LEFT = 128, IPP_LOWER_RIGHT = 256 };

 

The IppiShape enumeration defines shapes of the structuring element used in some morphological functions:

typedef enum { ippiShapeRect = 0, ippiShapeCross = 1, ippiShapeEllipse = 2, ippiShapeCustom = 100 } IppiShape;

 

The IppiAxis enumeration defines the flip axes for the ippiMirror functions or direction of the image intensity ramp for the ippiImageRamp functions:

typedef enum { ippAxsHorizontal, ippAxsVertical, ippAxsBoth } IppiAxis;

 

The IppiBorderType enumeration defines the border type that is used by some Separable Filters and Fixed Filters with Border functions:

typedef enum _IppiBorderType { ippBorderConst = 0, ippBorderRepl = 1, ippBorderWrap = 2, ippBorderMirror = 3, ippBorderMirrorR = 4, ippBorderMirror2 = 5, ippBorderInMem = 6, ippBorderInMemTop = 0x0010, ippBorderInMemBottom = 0x0020 ippBorderInMemLeft = 0x0040 ippBorderInMemRoght = 0x0080 } IppiBorderType;

 

The IppiFraction enumeration defines shapes of the structuring element used in some decimate filter functions:

typedef enum { ippPolyphase_1_2, ippPolyphase_3_5, ippPolyphase_2_3, ippPolyphase_7_10, ippPolyphase_3_4, } IppiFraction;

 

The IppiWTSubband enumeration defines the appropriate wavelet transform subband used in the JPEG2000 coding functions:

typedef enum { ippWTSubbandLxLy, ippWTSubbandLxHy, ippWTSubbandHxLy, ippWTSubbandHxHy } IppiWTSubband;

 

The IppiMQTermination enumeration defines how the MQ-coder will be terminated during the operation of the JPEG2000 coding functions:

typedef enum { ippMQTermSimple, ippMQTermNearOptimal, ippMQTermPredictable } IppiMQTermination;

 

The IppiMQRateAppr enumeration defines the padding-approximation model in the estimation of rate and distortion procedures performed by the JPEG2000 coding functions:

typedef enum { ippMQRateApprGood } IppiMQRateAppr;

 

The code flags used by the JPEG2000 coding functions are defined as follows:

enum { IPP_JPEG2K_VERTICALLY_CAUSAL_CONTEXT, IPP_JPEG2K_SELECTIVE_MQ_BYPASS, IPP_JPEG2K_TERMINATE_ON_EVERY_PASS, IPP_JPEG2K_RESETCTX_ON_EVERY_PASS, IPP_JPEG2K_USE_SEGMENTATION_SYMBOLS, IPP_JPEG2K_LOSSLESS_MODE, IPP_JPEG2K_DEC_CONCEAL_ERRORS, IPP_JPEG2K_DEC_DO_NOT_CLEAR_CB, IPP_JPEG2K_DEC_DO_NOT_RESET_LOW_BITS, IPP_JPEG2K_DEC_DO_NOT_CLEAR_SFBUFFER IPP_JPEG2K_DEC_CHECK_PRED_TERM };

 

The IppiVLCAdaptType enumeration defines the adaptive VLC model in the model adaptation procedure performed by the JPEG XR coding functions:

typedef enum { ippVLCAdaptLowpass, ippVLCAdaptHighpass } IppiVLCAdaptType;

The IppiVLCScanType enumeration defines the VLC scan type used by the JPEG XR coding functions:

typedef enum { ippVLCScanVert, ippVLCScanHoriz, ippVLCScanRaster } IppiVLCScanType;


Submit feedback on this help topic

Copyright © 2000 - 2011, Intel Corporation. All rights reserved.