Main Content

Image Filtering

Convolution and correlation, predefined and custom filters, nonlinear filtering, edge-preserving filters

Filtering is a technique for modifying or enhancing an image. For example, you can filter an image to emphasize certain features or remove other features. Image processing operations implemented with filtering include smoothing, sharpening, and edge enhancement.


Image Region AnalyzerBrowse and filter connected components in an image


expand all

fspecialCreate predefined 2-D filter
fspecial3Create predefined 3-D filter
convmtx22-D convolution matrix
imfilterN-D filtering of multidimensional images
roifilt2Filter region of interest (ROI) in image
nlfilterGeneral sliding-neighborhood operations
imgaussfilt2-D Gaussian filtering of images
imgaussfilt33-D Gaussian filtering of 3-D images
wiener22-D adaptive noise-removal filtering
medfilt22-D median filtering
medfilt33-D median filtering
modefilt2-D and 3-D mode filtering
ordfilt22-D order-statistic filtering
stdfiltLocal standard deviation of image
rangefiltLocal range of image
entropyfiltLocal entropy of grayscale image
imboxfilt2-D box filtering of images
imboxfilt33-D box filtering of 3-D images
fibermetricEnhance elongated or tubular structures in image
maxhessiannormMaximum of Frobenius norm of Hessian of matrix
padarrayPad array
imbilatfiltBilateral filtering of images with Gaussian kernels
imdiffuseestEstimate parameters for anisotropic diffusion filtering
imdiffusefiltAnisotropic diffusion filtering of images
imguidedfilterGuided filtering of images
imnlmfiltNon-local means filtering of image
burstinterpolantCreate high-resolution image from set of low-resolution burst mode images
gaborCreate Gabor filter or Gabor filter bank
imgaborfiltApply Gabor filter or filter bank to 2-D image
bwareafiltExtract objects from binary image by size
bwpropfiltExtract objects from binary image using properties
integralImageCalculate 2-D integral image
integralImage3Calculate 3-D integral image
integralBoxFilter2-D box filtering of integral images
integralBoxFilter33-D box filtering of 3-D integral images
freqspaceFrequency spacing for frequency response
freqz22-D frequency response
fsamp22-D FIR filter using frequency sampling
ftrans22-D FIR filter using frequency transformation
fwind12-D FIR filter using 1-D window method
fwind22-D FIR filter using 2-D window method


Getting Started with Image Filtering in the Spatial Domain

What Is Image Filtering in the Spatial Domain?

In a spatially filtered image, the value of each output pixel is the weighted sum of neighboring input pixels. The weights are provided by a matrix called the convolution kernel or filter.

Filter Grayscale and Truecolor (RGB) Images using imfilter Function

This example shows how to filter an image with a 5-by-5 averaging filter containing equal weights.

Filter Images Using Predefined Filter

This example shows how to create a type of special filter called an unsharp masking filter, which makes edges and detail in an image appear sharper.

imfilter Boundary Padding Options

When a portion of the convolution or correlation kernel extends past the edge of an image, you can extrapolate image values by zero-padding the image or by replicating boundary pixels.

Denoising Filtering

Noise Removal

Noise refers to random error in pixel values acquired during image acquisition or transmission. Removing noise can improve image quality.

Apply Gaussian Smoothing Filters to Images

This example shows how to blur an image using Gaussian smoothing filters of different strengths. The example includes isotropic and anisotropic Gaussian filtering.

Reduce Noise in Image Gradients

This example shows how to reduce noise associated with computing image gradients.

Edge-Preserving Filtering

What is Guided Image Filtering?

Guided image filtering performs edge-preserving smoothing on an image. It uses the content of a second image, called a guidance image, to influence the filtering.

Perform Flash/No-flash Denoising with Guided Filter

This example shows how to reduce noise from an image while using a guidance image to preserve the sharpness of edges.

Segment Thermographic Image after Edge-Preserving Filtering

This example shows how to segment a hot object from the background in a thermographic image.

Integral Image Domain Filtering

Integral Image

Integral images are a quick way to represent images for filtering. In an integral image, the value of each pixel is the summation of the pixels above and to the left of it.

Apply Multiple Filters to Integral Image

This example shows how to smooth an image by different amounts by applying box filters of varying sizes to the integral image.

Frequency Domain Filtering

Design Linear Filters in the Frequency Domain

You can design filters that modify the frequency content of images. Filtering in the frequency domain is often faster than filtering in the spatial domain.

Featured Examples