Intel IPP Integration Wrappers Developer Guide and Reference

ID 751823
Date 1/18/2023
Public
Document Table of Contents

class IwiFilterGaussian

The IwiFilterGaussian class consists of the following Gaussian filter operation methods:

IwiFilterGaussian()

Default constructor.

    IwiFilterGaussian()
    {
        m_bInitialized = false;
    }

IwiFilterGaussian() with Initialization

Default constructor with initialization.

    IwiFilterGaussian(
        IwiSize                         size,                                       
        IppDataType                     dataType,                                   
        int                             channels,                                   
        int                             kernelSize,                                 
        double                          sigma,                                     
        const IwiFilterGaussianParams  &auxParams   = IwiFilterGaussianParams(),   
        const IwiBorderType            &border      = ippBorderRepl                 
    )
Parameters

size

Size of the image, in pixels.

dataType

Image pixel type.

channels

Number of image channels.

kernelSize

Size of the Gaussian kernel; must be odd, greater or equal to 3.

sigma

Standard deviation of the Gaussian kernel.

&auxParams

Reference to the auxiliary parameters structure.

&border

Extrapolation algorithm and value for out of image pixels processing. Supported values: ippBorderConst, ippBorderRepl, ippBorderInMem.

Exception Values

ippStsMaskSizeErr

The mask value is illegal.

ippStsDataTypeErr

The dataType value is illegal.

ippStsNumChannelsErr

The channels value is illegal.

ippStsNotEvenStepErr

Step value is not divisible by the size of elements.

ippStsBorderErr

The border value is illegal.

ippStsNotSupportedModeErr

Specified combination of parameters' values is not supported.

ippStsNoMemErr

Failed to allocate memory.

ippStsInterpolationErr

The interpolation value is illegal.

ippStsDataTypeErr

The dataType value is illegal.

ippStsNumChannelsErr

The channels value is illegal.

ippStsBorderErr

The border value is illegal.

ippStsNotSupportedModeErr

Specified combination of parameters' values is not supported.

ippStsNoMemErr

Failed to allocate memory.

ippStsSizeErr

Size fields values are illegal.

ippStsNullPtrErr

At least one of the pointers is NULL.

InitAlloc()

Method to allocate and initialize the internal data structure.

    IppStatus InitAlloc(
        IwiSize                         size,                                       
        IppDataType                     dataType,                                   
        int                             channels,                                   
        int                             kernelSize,                                 
        double                          sigma,                                     
        const IwiFilterGaussianParams  &auxParams   = IwiFilterGaussianParams(),   
        const IwiBorderType            &border      = ippBorderRepl                 
    )
Parameters

size

Size of the image, in pixels.

dataType

Image pixel type.

channels

Number of image channels.

kernelSize

Size of the Gaussian kernel; must be odd, greater or equal to 3.

sigma

Standard deviation of the Gaussian kernel.

&auxParams

Reference to the auxiliary parameters structure.

&border

Extrapolation algorithm and value for out of image pixels processing. Supported values: ippBorderConst, ippBorderRepl, ippBorderInMem.

Exception Values

ippStsMaskSizeErr

The mask value is illegal.

ippStsDataTypeErr

The dataType value is illegal.

ippStsNumChannelsErr

The channels value is illegal.

ippStsNotEvenStepErr

Step value is not divisible by the size of elements.

ippStsBorderErr

The border value is illegal.

ippStsNotSupportedModeErr

Specified combination of parameters' values is not supported.

ippStsNoMemErr

Failed to allocate memory.

ippStsInterpolationErr

The interpolation value is illegal.

ippStsDataTypeErr

The dataType value is illegal.

ippStsNumChannelsErr

The channels value is illegal.

ippStsBorderErr

The border value is illegal.

ippStsNotSupportedModeErr

Specified combination of parameters' values is not supported.

ippStsNoMemErr

Failed to allocate memory.

ippStsSizeErr

Size fields values are illegal.

ippStsNullPtrErr

At least one of the pointers is NULL.

Return Values

ippStsNoErr

No errors.

operator()

Method to perform the warp affine transformation on the specified image ROI.

IppStatus operator()(
        const IwiImage         &srcImage,                       
        IwiImage               &dstImage,                       
        const IwiBorderType    &border      = ippBorderRepl,    
        const IwiTile          &tile        = IwiTile()         
    ) 
Parameters

&srcImage

Reference to the source image.

&dstImage

Reference to the destination image.

&border

Extrapolation algorithm and value for out of image pixels processing. Supported values: ippBorderConst, ippBorderRepl, ippBorderInMem.

&tile

Reference to the IwiTile structure for tiling. By default, no tiling is used.
Exception Values

ippStsMaskSizeErr

The mask value is illegal.

ippStsDataTypeErr

The dataType value is illegal.

ippStsNumChannelsErr

The channels value is illegal.

ippStsNotEvenStepErr

Step value is not divisible by the size of elements.

ippStsBorderErr

The border value is illegal.

ippStsNotSupportedModeErr

Specified combination of parameters' values is not supported.

ippStsNoMemErr

Failed to allocate memory.

ippStsInterpolationErr

The interpolation value is illegal.

ippStsDataTypeErr

The dataType value is illegal.

ippStsNumChannelsErr

The channels value is illegal.

ippStsBorderErr

The border value is illegal.

ippStsNotSupportedModeErr

Specified combination of parameters' values is not supported.

ippStsNoMemErr

Failed to allocate memory.

ippStsSizeErr

Size fields values are illegal.

ippStsNullPtrErr

At least one of the pointers is NULL.

Return Values

ippStsNoErr

No errors.

~IwiFilterGaussian()

Default destructor.

       ~IwiFilterGaussian()
    {
        if(m_bInitialized)
        {
            ::iwiFilterGaussian_Free(m_pSpec);
            m_bInitialized = false;
        }
    }