Intel® Integrated Performance Primitives (Intel® IPP) Developer Guide and Reference

ID 790148
Date 3/22/2024
Public
Document Table of Contents

FilterGaussianGetSpecSize

Computes the size of the Gaussian specification structure.

Syntax

IppStatus ippiFilterGaussianGetSpecSize(int kernelSize, IppDataType dataType, int numChannels, int* pSpecSize, int* pInitBufferSize);

IppStatus ippiFilterGaussianGetSpecSize_L(int kernelSize, IppDataType dataType, int numChannels, IppSizeL* pSpecSize, IppSizeL* pInitBufferSize);

Include Files

ippcv.h

ippcv_l.h

Domain Dependencies

Headers: ippcore.h, ippvm.h, ipps.h, ippi.h

Libraries: ippcore.lib, ippvm.lib, ipps.lib, ippi.lib

Parameters

kernelSize

Size of the Gaussian filter kernel. The value must be odd and greater, or equal to 3.

dataType

Data type of the source and destination images.

numChannels

Number of channels in the images. Possible values are 1 and 3.

pSpecSize

Pointer to the computed size (in bytes) of the Gaussian specification structure.

pInitBufferSize

Pointer to the computed size (in bytes) of the external buffer.

Description

This function computes the size of the Gaussian context structure and the size of the initialization external work buffer for the FilterGaussianBorder function or for the platform-aware functions FilterGaussianInit and FilterGaussian. The results are stored in pSpecSize and pInitBufferSize. The buffer with the length pInitBufferSize[0] can be used to initialize the specification structure for the Gaussian filter.

Use the computed pInitBufferSize and pSpecSize values to allocate the memory using the ippMalloc or ippsMalloc functions. The allocated memory can be freed only by the ippFree or ippsFree functions, respectively. For more information about the memory allocation functions, refer to the "Support Functions" section of the Intel IPP Developer Reference, vol. 1.

Return Values

ippStsNoErr

Indicates no error. Any other value indicates an error.

ippStsNullPtrErr

Indicates an error when one of the specified pointers is NULL.

ippStsBadArgErr

Indicates an error when kernelSize is even, or less than 3.

ippStsDataTypeErr

Indicates an error when dataType has an illegal value.

ippStsNumChannelErr

Indicates an error when numChannels has an illegal value.

See Also