Function File: fspecial (type, …)

Create spatial filters for image processing.

type is a string specifying the filter name. The input arguments that follow are type specific. The return value is a correlation kernel, often to be used by imfilter.

See also: conv2, convn, filter2, imfilter.

Function File: fspecial ("average")
Function File: fspecial ("average", lengths)

Rectangular averaging filter.

The optional argument lengths controls the size of the filter. If lengths is an integer N, a N by N filter is created. If it is a two-vector with elements N and M, the resulting filter will be N by M. By default a 3 by 3 filter is created.

Function File: fspecial ("disk")
Function File: fspecial ("disk", radius)

Circular averaging filter.

The optional argument radius controls the radius of the filter. If radius is an integer R, a 2 R + 1 filter is created. By default a radius of 5 is used. If the returned matrix corresponds to a Cartesian grid, each element of the matrix is weighted by how much of the corresponding grid square is covered by a disk of radius R and centred at the middle of the element R+1,R+1.

Function File: fspecial ("gaussian")
Function File: fspecial ("gaussian", lengths)
Function File: fspecial ("gaussian", lengths, sigma)

Create Gaussian filter.

Returns a N dimensional Gaussian distribution with standard deviation sigma and centred in an array of size lengths.

lengths defaults to [3 3] and sigma to 0.5. If lengths is a scalar, it returns a square matrix of side lengths, .i.e., its value defines both the number of rows and columns.

Function File: fspecial ("log")
Function File: fspecial ("log", lengths)
Function File: fspecial ("log", lengths, std)

Laplacian of Gaussian.

The optional argument lengths controls the size of the filter. If lengths is an integer N, a N by N filter is created. If it is a two-vector with elements N and M, the resulting filter will be N by M. By default a 5 by 5 filter is created. The optional argument std sets spread of the filter. By default a spread of 0.5 is used.

Function File: fspecial ("laplacian")
Function File: fspecial ("laplacian", alpha)

3x3 approximation of the laplacian.

The filter is approximated as

(4/(alpha+1)) * [   alpha/4   (1-alpha)/4     alpha/4
                 (1-alpha)/4   -1          (1-alpha)/4
                    alpha/4   (1-alpha)/4     alpha/4 ];

where alpha is a number between 0 and 1. By default it is 0.2.

Function File: fspecial ("unsharp")
Function File: fspecial ("unsharp", alpha)

Sharpening filter.

The following filter is returned

(1/(alpha+1)) * [-alpha   alpha-1 -alpha
                  alpha-1 alpha+5  alpha-1
                 -alpha   alpha-1 -alpha];

where alpha is a number between 0 and 1. By default it is 0.2.

Function File: fspecial ("motion")
Function File: fspecial ("motion", lengths)
Function File: fspecial ("motion", lengths, angle)

Motion blur filter of width 1 pixel.

The optional input argument lengths controls the length of the filter, which by default is 9. The argument angle controls the angle of the filter, which by default is 0 degrees.

Function File: fspecial ("sobel")

Horizontal Sobel edge filter.

The following filter is returned

[ 1  2  1
  0  0  0
 -1 -2 -1 ]
Function File: fspecial ("prewitt")

Horizontal Prewitt edge filter.

The following filter is returned

[ 1  1  1
  0  0  0
 -1 -1 -1 ]
Function File: fspecial ("kirsch")

Horizontal Kirsch edge filter.

The following filter is returned

[ 3  3  3
  3  0  3
 -5 -5 -5 ]

Package: image