- JavaScript 100%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| lib | ||
| test | ||
| .gitignore | ||
| .travis.yml | ||
| index.js | ||
| LICENSE | ||
| package.json | ||
| README.md | ||
This project is not actively maintained
Issues and pull requests on this repository may not be acted on in a timely manner, or at all. You are of course welcome to use it anyway. You are even more welcome to fork it and maintain the results.
filters 
This module implements 1D noise reduction filters. There are currently two available:
-
median filter
-
rolling average with threshold
median
median(data, windowSize)
-
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 = require('filters').median;
var raw = [ 2, 3, 4, 9, 6, 2 ];
console.log(median(raw));
// => [ 2, 3, 4, 6, 6, 2 ]
average
average(data, windowSize, threshold)
-
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 = require('filters').average;
var raw = [ 2, 3, 4, 9, 6, 2 ];
console.log(average(raw, 3, 0.5));
// => [ 2, 2.5, 3, 9, 7.5, 2 ]
License
MIT
