This module implements 1D noise reduction filters. There are currently two available:
-
median filter
-
rolling average with threshold
median
-
data
: An array of numbers. -
windowSize
: The size of the window over which the median is applied. Should be an odd number greater than one, defaults to3
.
Example
var median = median;var raw = 2 3 4 9 6 2 ;console;// => [ 2, 3, 4, 6, 6, 2 ]
average
-
data
: An array of numbers. -
windowSize
: The size of the rolling average window. Should be two or greater, defaults to3
. -
threshold
: Maximum difference between two numbers for the average still to be applied. Use this to smooth out small variations but large varitions through immediately. The difference between /a/ and /b/ is calculated as /(max(a, b) - min(a, b)) / max(a, b)/. No default.
Example
var median = average;var raw = 2 3 4 9 6 2 ;console;// => [ 2, 2.5, 3, 9, 7.5, 2 ]
License
MIT