image thumbnail

Locally Adaptive Bitonic X Filter

version 1.0.3 (2.47 MB) by Graham Treece
A competitive morphology-based filter for removal of image noise.


Updated 14 Sep 2021

View License

This filter combines locally adaptive threshold-based morphological operations and an adaptive anisotropic Gaussian. It also includes specific options for reducing noise in images with real sensor noise instead of additive Gaussian noise. On such images it is competitive with all but the learning-based approaches, and only when they are specifically trained on data sets from the same source as the test images.
The filter only has two main parameters - a threshold and a filter length - and functions are included to estimate both of these from the input image. It neither requires any training nor prior knowledge.
Also included are very efficient functions for performing locally adaptive opening and closing, the adaptive anisotropic Gaussian, associated functions for calculating image anisotropy and orientation from the structure tensor, and functions for inverting and applying standard RGB gamma curves.
See the mxbitonic_demo script for examples.
More information is available from a technical report:
Treece, G. (2021). Real image denoising with a locally-adaptive bitonic filter (Technical Report ENG-TR.006).

Cite As

Graham Treece (2022). Locally Adaptive Bitonic X Filter (, MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2020b
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!