Image Filters dialog

collection of image filters arranged into 4 categories:

A demonstration is available in the following video:
https://youtu.be/QZU3jSoEXJM

Back to Index --> User Guide --> Menu --> Image

Contents

Options

Prior filtering of images the following options may be tweaked:

The filtered image may additionally be post-processed (a dropdown at the bottom of the dialog window) as

Basic image filtering in the spacial domain

table with the list of available filters

Average filter
average image signal using a rectanlular filter; the filtering is done with imfilter function and the "average" predefined filter from fspecial
2D/3D
Circular averaging filter (pillbox)
average image signal using a disk-shaped filter; the filtering is done with imfilter function and the "disk" predefined filter from fspecial
2D
Distance map filter
Calculate distance map from seeds provided in the "Source Layer" dropdown.
The 2D map is calculated using MATLAB bwdist, while 3D using bwdistsc by Yuriy Mishchenko

The Source Layer should be one of these options: "selection", "mask", "material".
Four calculations methods are available for the 2D mode, while in the 3D mode only the "euclidean" method is used.
2D/3D
Elastic distortion filter
Elastic distortion filter, based on Best Practices for Convolutional Neural Networks Applied to Visual Document Analysis by Patrice Y. Simard, Dave Steinkraus, John C. Platt (link)

and codes available:
stackoverflow
Elastic Distortion Transformation by David Franco
2D
Entropy filter
Local entropy filter, returns an image, where each output pixel contains the entropy (-sum(p.*log2(p), where p contains the normalized histogram counts) of the defined neighborhood around the corresponding pixel, see details in entropyfilt
2D
Frangi filter
Frangi filter to enhance elongated or tubular structures using Hessian-based multiscale filtering
The filtering is done with fibermetric
2D/3D
Gaussian smoothing filter
Rotationally symmetric Gaussian lowpass filter of size (Hsize) with standard deviation (Sigma).
The 2D filtering is done with imgaussfilt and 3D with imgaussfilt3
2D/3D
Gradient filter
Calculate image gradient
The filtering is done with gradient function and the acquired X,Y,Z components are converted to the resulting image as sqrt(X2 + Y2 + Z2)
2D/3D
Laplacian of Gaussian filter
Filter the image using the Laplacian of Gaussian filter, which highlights the edges
The resulting image is converted to unsigned integers by its multiplying with the NormalizationFactor and adding half of max class integer value. The filtering is done with imfilter function and the "log" predefined filter from fspecial
2D/3D
Mathematical operations
Apply standard mathematical operations: add, subtract, multiply, or divide to the image. During the operation it is possible to convert image class to a different type.
2D
Mode filter (R2020a or newer)
the filtering is done with modefilt function. Each output pixel contains the mode (most frequently occurring value) in the neighborhood around the corresponding pixel in the input image
2D/3D
Motion filter
the filtering is done with imfilter function and the "motion" predefined filter from fspecial
2D
Prewitt filter
Prewitt filter for edge enhancement
the filtering is done with imfilter function and the "prewitt" predefined filter from fspecial
2D/3D
Range filter
Local range filter, returns an image, where each output pixel contains the range value (maximum value - minimum value) of the defined neighborhood around the corresponding pixel. See details in rangefilt
2D/3D
Salt and pepper filter
Remove salt & pepper noise from image
The images are filtered using the median filter, after that a difference between the original and the median filtered images is taken. Pixels that have threshold higher than IntensityThreshold are considered as noise and removed
2D
Sobel filter
Sobel filter for edge enhancement
the filtering is done with imfilter function and the "sobel" predefined filter from fspecial
2D
Std filter
Local standard deviation of image. The value of each output pixel is the standard deviation of a neighborhood around the corresponding input pixel. The borders are extimated via symmetric padding: i.e. the values of padding pixels are a mirror reflection of the border pixels. See details in stdfilt
2D

Edge-preserving filtering

Remove noise while preserve the edges of the objects using one of the following filters

Anisotropic diffusion filter
Edge preserving anisotropic diffusion filtering of images with Perona-Malik algorithm
The filtering is done with imdiffusefilt
2D
Bilateral filter
Edge preserving bilateral filtering of images with Gaussian kernels
The filtering is done with imbilatfilt
2D
DNNdenoise filter
Denoise image using deep neural network
The filtering is done with denoiseImage
2D
Median filter
Median filtering of images in 2D or 3D. Each output pixel contains the median value in the specified neighborhood
The 2D filtering is done with medfilt2 and 3D with medfilt3
2D
Non-local means filter
The filtering is done with imnlmfilt
2D
BMxD filter
Filtering image using the block-matching and 3D collaborative algorithm, please note that this filter is only licensed to be used in non-profit organizations
Please follow the system requirements page on details how to install it.
2D

Contrast adjustment

Here the list of filters that are intended to adjust the contrast of images

Add noise filter
Add noise to image
The filtering is done with imnoise

    Several noising schemes are available:
  • gaussian - Gaussian white noise
  • poisson - Poisson noise from the data
  • salt & pepper - adds salt and pepper noise
  • speckle - multiplicative noise using the equation J = I+n*I, where n is uniformly distributed random noise with mean 0 and variance 0.05.
2D
Fast Local Laplacian filter
Fast local Laplacian filtering of images to enhance contrast, remove noise or smooth image details
The filtering is done with locallapfilt
2D
Flat-field correction
Flat-field correction to the grayscale or RGB image. The correction uses Gaussian smoothing with a standard deviation of sigma to approximate the shading component of the image
The filtering is done with imflatfield
2D
Local Brighten filter
Brighten low-light image
The filtering is done with imlocalbrighten
2D
Local Contrast filter
Edge-aware local contrast manipulation of images
The filtering is done with localcontrast
2D
Reduce Haze filter
Reduce atmospheric haze
The filtering is done with imreducehaze
2D
Unsharp mask filter
Sharpen image using unsharp masking: when an image is sharpened by subtracting a blurred (unsharp) version of the image from itself
The filtering is done with imsharpen
2D


Image binarization

The image binarization filters process the image and generate bitmap mask that can be assigned to the selection or mask layers of MIB (use the DestinationLayer dropdown to specify it)

Edge filter
Find edges in intensity image;
the filtering is done with edge

    Several edge detection schemes are available:
  • approxcanny - finds edges using an approximate version of the Canny edge detection algorithm that provides faster execution time at the expense of less precise detection
  • Canny - finds edges by looking for local maxima of the gradient of I. The edge function calculates the gradient using the derivative of a Gaussian filter. This method uses two thresholds to detect strong and weak edges, including weak edges in the output if they are connected to strong edges. By using two thresholds, the Canny method is less likely than the other methods to be fooled by noise, and more likely to detect true weak edges
  • log - finds edges by looking for zero-crossings after filtering I with a Laplacian of Gaussian (LoG) filter
  • Prewitt - finds edges at those points where the gradient of I is maximum, using the Prewitt approximation to the derivative
  • Roberts - finds edges at those points where the gradient of I is maximum, using the Roberts approximation to the derivative
  • Sobel - Finds edges at those points where the gradient of the image I is maximum, using the Sobel approximation to the derivative
2D
SLIC clustering filter
Cluster together pixels of similar intensity using the SLIC (Simple Linear Iterative Clustering) algorithm

    Options and settings:
  • Cluster size - approximate size of each cluster in pixels
  • Compactness - a value specifying how much the cluster shape is closer to square (100) or extremely flexible (0)
  • ChopX - as computations are memory intense, it is possible to split the dataset into a number of sub-blocks. Use this field to define number of horizontal blocks
  • ChopY - use this field to define number of vertical blocks
2D
Watershed clustering filter
Cluster together pixels based on presence of ridges using the watershed algorithm

    Options and settings:
  • DestinationLayer - calculation results can be assigned to different layers of MIB
  • ClusterSize - a parameter that defines size of the generated clusters, the larger the value, the bigger the clusters
  • TypeOfSignal - define color of the ridges: for electron microscopy use "black-on-white", while for light microscopy "white-on-black"
  • GapPolicy - cental line of the watershed ridge forms a gap. The gap can be preserved or filled using the neighbouring clusters
  • ResultingShape - produce as result clusters ("clusters") or gaps between the clusters ("ridges")
2D

Back to Index --> User Guide --> Menu --> Image