Machine Intelligence Laboratory

Cambridge University Department of Engineering

Dr Graham Treece, Department of Engineering


Image processing controls

These controls are all associated with how the current image is processed. They can be accessed from the 'Process' tab in the control area on the right. The display image updates automatically when any of these controls are changed.

Controls are only visible if they are relevant to the currently selected filter.

The Structurally varying bitonic filter has recently been developed:

A description is available as a technical report at https://mi.eng.cam.ac.uk/reports/abstracts/biomed/treece_tr705.html

The Bitonic filter is described in a paper:

G. M. Treece. The bitonic filter: linear filtering in an edge-preserving morphological framework. IEEE Transactions on Image Processing, Vol. 25, No. 11, pp. 5199-5211, November 2016.

And is also available as a technical report at https://www.repository.cam.ac.uk/handle/1810/252987

Filter type
This determines how the image is filtered, with options as follows:
No filtering
Just display the original image.
Mean filter
A mean filter applied over whatever mask has been selected, with radius given by the filter range.
Gaussian filter
A Gaussian filter with standard deviation given by 0.65 times the filter range, and applied over the range +/- two standard deviations. These values are designed to result in a similar blur as the mean filter when the filter range slider is set to the same value.
Median filter
A median filter applied over whatever mask has been selected, with radius given by the filter range.
Opening filter
A morphological opening, using the selected mask as the structuring element, with radius given by the filter range.
Closing filter
A morphological closing, using the selected mask as the structuring element, with radius given by the filter range.
OCCO filter
A morphologial opening-closing averaged with a closing-opening, using the selected mask as the structuring element, with radius given by the filter range.
Grain filter
A self-dual area filter which will eliminate any components (grains) which have area less then a square with half-length given by the filter range.
OCCO levelling
A self-dual levelling based on reconstruction, with a mask based on an OCCO filter as above.
Gaussian levelling
A self-dual levelling based on reconstruction, with a mask based on a Gaussian filter as above.
Image-guided filter
An image-guided filter with physical extent given by the filter range, but also has a data extent, i.e. how similar the data values should be in order to combine them.
Anisotropic filter
A directional Gaussian filter which has a shape and orientation determined by the local anisotropy in the image. The extent is determined by the filter range, but the amount of anisotropy can also be adjusted.
Bitonic filter
An edge-preserving Bitonic filter, with extent given by the filter range, and a specified centile. This can either be fixed or structurally varying, according to the choice of masks, below.
Filter range
The extent of the filters as defined above, where the filter width is two times the filter range plus one.
Filter data level
If enabled, this sets either a maximum or a guidance data level for restricting processing to relative differences below this level. The 'auto' button attempts to set this level directly from the data: this works better for images with visible noise.
Filter centile
If enabled, this controls the centile for any filters involving morphological operations. Should normally be set to 10 for fixed masks, or 4 for varying masks.
Filter anisotropy
If enabled, this controls the extent of anisotropy for the anisotropic filter.
Filter mask
The selection mask which is used to determine what local pixels are involved in the filtering process, particularly for morphological operations. Not all the following options are used for all the types of filters:
Use circular mask
Circular selection, which is the default for the fixed bitonic filter.
Use varying masks
Use structurally varying (adaptive) morphology, which automatically chooses the appropriate mask from a set of thin and fat ellipses with various orientations.
Use square mask
Square selection.
Use cross mask
Horizontal-vertical cross selection.
Use line mask
Line selection, with orientation given by the following slider.
Use ellipse mask
Ellipse selection, with orientation given by the following slider.
Use area attribute
Instead of using a mask of fixed shape, filter depending on the number of connected pixels. In this case the area is given by the square of (two times the filter range plus 1).
Mask orientation
If enabled, the orientation of the fixed mask.
Filter iterations
If this slider is greater than one, then the filter above will be applied in a multi-resolution framework with this number of levels. This works better if the filter data level has been set appropriately.
High-pass or enhance
Checking this box will display the difference between the filtered output and the original image. Otherwise, the following slider controls the level of enhancement. If this slider is set to zero, the image processing is applied in the normal manner. If it is greater than zero, some of the difference between the initial image and filtered result is added back to the filtered image. When using filters which tend to blur the image, the result is to accentuate small details in the image without changing the background levels.