Note that,for images, this filter has been superceded by the Locally Adaptive Bitonic X Filter, also available on file exchange.
This is a filter for removing noise in signals and images whilst preserving edges and other bitonic data, ie. anything with either one local maximum or minimum within the range of the filter. It has better edge-preserving properties than a median filter, whilst also removing noise similarly to a Gaussian filter. It has wide applicability and very few parameters, with no need for training or prior knowledge of the noise variance, and is hence particularly suited to situations where the noise is varying.
See the bitonic_demo script for an example.
Also included is RANKFILT2, which is a faster replacement for ORDFILT2 when the data is of type uint8.
More information is available from a technical report at: