Filtering Functions

Intel® IPP implements image processing functions that perform linear and non-linear filtering operations on an image.

Filtering can be used in a variety of image processing operations; for example, edge detection, blurring, noise removal, and feature detection.

Table Filtering Functions lists the Intel IPP filtering functions described in more detail later in this chapter:

Filtering functions
Function Base Name Operation

FilterBox

Blurs an image using a box filter.

SumWindowRow

Sums pixel values in the row mask applied to the image.

SumWindowColumn

Sums pixel values in the column mask applied to the image.

FilterMin

Filters an image using a min filter.

FilterMax

Filters an image using a max filter.

FilterMinGetBufferSize

Computes the size of the working buffer for the minimum filter.

FilterMaxGetBufferSize

Computes the size of the working buffer for the maximum filter.

FilterMinBorderReplicate

Filters an image using a min filter with border replication.

FilterMaxBorderReplicate

Filters an image using a max filter with border replication.

FilterBilateralGetBufSize

Computes the size of the buffer for the bilateral filter.

FilterBilateralInit

Initializes the bilateral filter structure.

FilterBilateral

Performs bilateral filtering of the image.

DecimateFilterRow, DecimateFilterColumn

Decimates an image using the specified filter.

Median Filters

FilterMedianGetBufferSize

Compute the size of the external buffer.

FilterMedian

Applies a median filter to an image.

FilterMedianHoriz

Filters an image using a median filter with a horizontal mask.

FilterMedianVert

Filters an image using a median filter with a vertical mask.

FilterMedianCross

Filters an image using a cross median filter.

FilterMedianWeightedCenter3x3

Filters an image using a median filter with weighted center pixel.

FilterMedianColor

Applies a color median filter to an image.

General Linear Filters

Filter

Filters an image using a general rectangular convolution kernel.

FilterGetBufSize

Compute the size of working buffer for 64f general linear filter.

Filter32f

Filters an image with integer data using a floating-point rectangular convolution kernel.

Filter_Round16s, Filter_Round32s, Filter_Round32f

Perform filtering an image and rounding the result.

FilterRoundGetBufSize16s, FilterRoundGetBufSize32s, FilterRoundGetBufSize32f

Computes the size of the working buffer for filters with rounding mode.

Separable Filters

FilterColumn

Filters an image using an integer column convolution kernel.

FilterColumn32f

Filters an image using a floating-point column convolution kernel.

FilterRow

Filters an image using an integer row convolution kernel.

FilterRow32f

Filters an image using a floating-point row convolution kernel.

FilterRowBorderPipelineGetBufferSize, FilterRowBorderPipelineGetBufferSize_Low

Compute the size of working buffer for rows filter with border.

FilterColumnPipelineGetBufferSize, FilterColumnPipelineGetBufferSize_Low

Compute the size of working buffer for columns filter with border.

FilterRowBorderPipeline, FilterRowBorderPipeline_Low

Applies the filter with border to image rows.

FilterColumnPipeline, FilterColumnPipeline_Low

Applies the filter with border to image columns.

DotProdCol

Calculates the dot product of taps vector and columns of the specified set of rows.

Wiener Filters

FilterWienerGetBufferSize

Computes the size of the external buffer for ippiFilterWiener function.

FilterWiener

Filters an image using the Wiener algorithm.

Convolution

ConvFull

Performs full convolution of two images.

ConvValid

Performs valid convolution of two images.

Deconvolution

DeconvFFTInitAlloc

Allocates and initializes state structure for FFT deconvolution.

DeconvFFTFree

Frees memory allocated for the FFT deconvolution state structure.

DeconvFFT

Performs FFT deconvolution of an image.

DeconvLRInitAlloc

Allocates and initializes state structure for LR deconvolution.

DeconvLRFree

Frees memory allocated for the LR deconvolution state structure.

DeconvLR

Performs LR deconvolution of an image.

Fixed Filters

FilterPrewittHoriz

Filters an image using a horizontal Prewitt operator.

FilterPrewittVert

Filters an image using a vertical Prewitt operator.

FilterScharrHoriz

Filters an image using a horizontal Scharr operator.

FilterScharrVert

Filters an image using a vertical Scharr operator.

FilterSobelHoriz, FilterSobelHorizMask

Filters an image using a horizontal Sobel operator.

FilterSobelVert, FilterSobelVertMask

Filters an image using a vertical Sobel operator.

FilterSobelHorizSecond

Filters an image using a second derivative horizontal Sobel operator.

FilterSobelVertSecond

Filters an image using a second derivative vertical Sobel operator.

FilterSobelCross

Filters an image using a second cross derivative Sobel operator.

FilterRobertsDown

Filters an image using a horizontal Roberts cross-gradient operator.

FilterRobertsUp

Filters an image using a vertical Roberts cross-gradient operator.

FilterLaplace

Filters an image using a Laplacian kernel.

FilterGauss

Filters an image using a Gaussian kernel.

FilterHipass

Applies a highpass filter to an image.

FilterLowpass

Applies a lowpass filter to an image.

FilterSharpen

Applies a sharpening filter to an image.

Fixed Filters with Borders

FilterScharrHorizGetBufferSize

Computes the size of the external buffer for the horizontal Scharr filter with border.

FilterScharrVertGetBufferSize

Computes the size of the external buffer for the vertical Scharr filter with border.

FilterSobelHorizGetBufferSize

Computes the size of the external buffer for the horizontal Sobel filter with border.

FilterSobelVertGetBufferSize, FilterSobelNegVertGetBufferSize

Computes the size of the external buffer for the vertical Sobel filter with border.

FilterSobelHorizSecondGetBufferSize

Computes the size of the external buffer for the second derivative horizontal Sobel filter with border.

FilterSobelVertSecondGetBufferSize

Computes the size of the external buffer for the second derivative vertical Sobel filter with border.

FilterSobelCrossGetBufferSize

Computes the size of the external buffer for the cross Sobel filter with border.

FilterLaplacianGetBufferSize

Computes the size of the external buffer for the Laplace filter with border.

FilterGaussGetBufferSize

Computes the size of the external buffer for the Gaussian filter with border.

FilterLowpassGetBufferSize

Computes the size of the external buffer for the lowpass filter with border.

GenSobelKernel

Computes kernel for the Sobel filter to an image.

FilterScharrHorizBorder

Applies horizontal Scharr filter with border to an image.

FilterScharrVertBorder

Applies vertical Scharr filter with border to an image.

FilterSobelHorizBorder

Applies horizontal Sobel filter with border to an image.

FilterSobelVertBorder, FilterSobelNegVertBorder

Applies vertical Sobel filter with border to an image.

FilterSobelHorizSecondBorder

Applies horizontal (second derivative) Sobel filter with border to an image.

FilterSobelVertSecondBorder

Applies vertical (second derivative) Sobel filter with border to an image.

FilterSobelCrossBorder

Applies second derivative cross Sobel filter with border to an image.

FilterLaplacianBorder

Applies Laplacian filter with border to an image.

FilterGaussBorder

Applies Gauss filter with border.

FilterLowpassBorder

Applies lowpass filter with border to an image.

Most of filtering function operate with ROI (see Regions of Interest in Intel IPP). The size of the source image ROI is equal to dstRoiSize, the destination image ROI size. Most of the functions use different source and destination image buffers, that is, they are not in-place.


Submit feedback on this help topic

Copyright © 2000 - 2011, Intel Corporation. All rights reserved.