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 ofi-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 isNULL.
- ippStsSizeErr
- Indicates an error whenroiSizehas a field with a zero or negative value.
- ippStsBadArgErr
- Indicates an error whenlevelis equal to or less than 0, or whenrateis out of the range.