Signal Processing Toolbox | Help Desk |
medfilt1
One-dimensional median filtering.
y = medfilt1(x,n) y = medfilt1(x,n,blksz)
y = medfilt1(x,n)
applies an order n
, one-dimensional median filter to vector x
. y
is the same length as x
; the function treats the signal as if it is 0 beyond the end points.
For n odd, y(k)
is the median of x(k-(n-1)/2:k+(n-1)/2)
.
For n even, y(k)
is the median of x(k-n/2)
,x(k-(n/2)+1)
,...,x(k+(n/2)-1)
. In this case, medfilt1
sorts the numbers, then takes the average of the (n-1)/2
and ((n-1)/2)+1
elements.
The default for n is 3.
y = medfilt1(x,n,blksz)
uses a for
-loop to compute blksz
(block size) output samples at a time. Use blksz << length(x)
if you are low on memory, since medfilt1
uses a working matrix of size n-by-blksz
. By default, blksz = length(x)
; this is the fastest execution if you have sufficient memory.
If x
is a matrix, medfilt1
median filters its columns using
y(:,i) = medfilt1(x(:,i),n,blksz)in a loop over the columns of
x
.
Filter data with a recursive (IIR) or nonrecursive (FIR) filter. |
|
Two-dimensional median filtering (see Image Processing Toolbox User's Guide). |
|