Updated 14 Nov 2008
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.
Arash Salarian (2023). Rank-Order Filter (https://www.mathworks.com/matlabcentral/fileexchange/22111-rank-order-filter), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform CompatibilityWindows macOS Linux
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!Start Hunting!
Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.