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

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

FilterILS

Filters an image using smoothing algorithm.

Syntax

IppStatus ippiFilterILS_<mod>(const Ipp8u* pSrc, int srcStep, Ipp8u* pDst, int dstStep, IppiSize dstRoiSize, int nIter, IppiFilterILSSpec* pSpec, Ipp8u* pBuffer);

Supported values for mod:

8u_C1R
8u_C3R

Include Files

ippi.h

Domain Dependencies

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

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

Parameters

pSrc

Pointer to the source image ROI.

srcStep

Step through the source image.

pDst

Pointer to the destination image ROI.

dstStep

Step in destination image.

dstRoiSize

Size of the source and destination ROI in pixels.

nIter

Number of iterations.

pSpec

Pointer to the internal data structure.

pBuffer

Pointer to the external work buffer.

Description

This function implements edge-preserving image smoothing via Iterative Least Squares algorithm.

This algorithm is described in the article "Real-time Image Smoothing via Iterative Least Squares. Wei Liu, Pingping Zhang, Xiaolin Huang, Jie Yang, Chunhua Shen, Ian Reid". Link to the publication: https://arxiv.org/abs/2003.07504.

The function ippiFilterILS uses the internal data structure pSpec and the work buffer pBuffer. Therefore, the work buffer pBuffer must be allocated and the internal data structure pSpec must be initialized before the function call.

Use the ippiFilterILSGetBufferSize function to allocate the work buffer pBuffer.

Use the ippiFilterILSInit function to initialize the internal data structure pSpec.

Return Values

ippStsNoErr

Indicates no error. Any other value indicates an error.

ippStsNullPtrErr

Indicates an error condition if any of the specified pointers is NULL.

ippStsStepErr

Indicates an error condition if one of the steps has a zero or negative value.

ippStsSizeErr

Indicates an error condition if one of the fields of dstRoiSize has a zero or negative value.