spacial median filter rejecting abnormal signals.
Dependents: medianFilterTest WIPV
Diff: MEDIAN_FILTER.cpp
- Revision:
- 0:4487376ead1c
- Child:
- 1:a46f56a22432
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/MEDIAN_FILTER.cpp Fri Apr 22 13:40:21 2016 +0000 @@ -0,0 +1,25 @@ +#include "mbed.h" +#include <algorithm> +#include "MEDIAN_FILTER.h" + + +medianFilter::medianFilter(int windowSize):windowSize_(windowSize) +{ + +} +float medianFilter::medianValue(float data) +{ + int i; + for(i=0; i<windowSize_-1; i++) { + array[i] = array[i+1]; + } + array[windowSize_-1] = data; + + int j=0; + float x[windowSize_]; + for(j=0;j<windowSize_;j++) x[j] = array[j]; + sort(x, x + windowSize_ - 1); + + return(x[windowSize_/2]); // return median value + +} \ No newline at end of file