Rank-Order Filter

Rank-Order filtering for 1D signals
Updated 14 Nov 2008

View License

y = RankOrderFilter(x, window, thd) runs a rank-order filtering of order N on x. y is the same size as x. If x is a matrix, RankOrderFilter operates along the columns of x.

Rank-order filter calculates the p'th percentile of the data on an N sized window round each point of x. p can be a number between 0 and 100. To avoid edge effects, the x is expanded by repeating the first and the last samples N/2 times.

When p is equal to 50, the output of this function will be the same as MATLAB's MEDFILT1(x,N); however, RankOrderFilter is almost always much faster and needs less memory.

When p is close to 0 (or to 100), a RankOrderFilter calculates an approximate lower (or upper) envlope of the signal.

Cite As

Arash Salarian (2024). Rank-Order Filter (https://www.mathworks.com/matlabcentral/fileexchange/22111-rank-order-filter), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2008a
Compatible with any release
Platform Compatibility
Windows macOS Linux
Find more on Signal Processing Toolbox in Help Center and MATLAB Answers

Community Treasure Hunt

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

Start Hunting!
Version Published Release Notes