MATLAB Function Reference    
filter2

Two-dimensional digital filtering

Syntax

Description

Y = filter2(h,X) filters the data in X with the two-dimensional FIR filter in the matrix h. It computes the result, Y, using two-dimensional correlation, and returns the central part of the correlation that is the same size as X.

Y = filter2(h,X,shape) returns the part of Y specified by the shape parameter. shape is a string with one of these values:

'full'
Returns the full two-dimensional correlation. In this case, Y is larger than X.
'same'
(default) Returns the central part of the correlation. In this case, Y is the same size as X.
'valid'
Returns only those parts of the correlation that are computed without zero-padded edges. In this case, Y is smaller than X.

Remarks

Two-dimensional correlation is equivalent to two-dimensional convolution with the filter matrix rotated 180 degrees. See the Algorithm section for more information about how filter2 performs linear filtering.

Algorithm

Given a matrix X and a two-dimensional FIR filter h, filter2 rotates your filter matrix 180 degrees to create a convolution kernel. It then calls conv2, the two-dimensional convolution function, to implement the filtering operation.

filter2 uses conv2 to compute the full two-dimensional convolution of the FIR filter with the input matrix. By default, filter2 then extracts the central part of the convolution that is the same size as the input matrix, and returns this as the result. If the shape parameter specifies an alternate part of the convolution for the result, filter2 returns the appropriate part.

See Also

conv2, filter


  filter find