Developer Reference

  • 2020
  • 07/15/2020
  • Public Content
Contents

PyramidInit

Initializes the pyramid structure and calculates the ROI size for pyramid layers.

Syntax

IppStatus ippiPyramidInit(IppiPyramid**
pPyr
, int
level
, IppiSize
roiSize
, Ipp32f
rate
, Ipp8u*
pPyrBuffer
, Ipp8u*
pBuffer
);
Include Files
ippcv.h
Domain Dependencies
Headers:
ippcore.h
,
ippvm.h
,
ipps.h
,
ippi.h
Libraries:
ippcore.lib
,
ippvm.lib
,
ipps.lib
,
ippi.lib
Parameters
pPyr
Pointer to the pointer to the pyramid structure.
level
Maximum value for the pyramid level.
roiSize
Size of zero level image ROI, in pixels.
rate
Ratio between neighbouring levels (1 <
rate
10).
pPyrBuffer
Pointer to the buffer for the pyramid structure initialization.
pBuffer
Pointer to the work buffer.
Description
This function initializes the structure for pyramid with (
level
+1) levels. This structure is used by the
ippiOpticalFlowPyrLK
function for optical flow calculation. The
IppiPyramid
structure contains the following fields:
pImage
Pointer to the array of
(level+1)
layer images.
pStep
Pointer to the array of
(level+1)
image row step values.
pRoi
Pointer to the array of
(level+1)
layer image ROIs.
pRate
Pointer to the array of
(level+1)
ratios of
i
-th levels to the zero level (
rate
-i
).
pState
Pointer to the structure to compute the next pyramid layer.
level
Number of levels in the pyramid.
The
ippiPyramidInit
function fills the
pRoi
and
pRate
arrays and the
level
field. The value of the
level
field is equal to the minimum of the input value of the
level
parameter and the maximum possible number of layers of the pyramid with given
rate
and zero level size.
You need to specify other fields. To initialize the pyramid layer structure
pState
, use the
ippiPyramidLayerDownInit
or
ippiPyramidLayerUpInit
functions. To obtain the pyramid layer images, you can use the
ippiPyramidLayerDown
and
ippiPyramidLayerUp
functions.
For an example on how to use this function, refer to the example provided with the
ippiPyramidLayerDown
function description.
Return Values
ippStsNoErr
Indicates no error.
ippStsNullPtrErr
Indicates an error when at least one of the pointers is
NULL
.
ippStsSizeErr
Indicates an error when
roiSize
has a field with a zero or negative value.
ippStsBadArgErr
Indicates an error when
level
is equal to or less than 0, or when
rate
is out of the range.

Product and Performance Information

1

Intel's compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.

Notice revision #20110804