spacial median filter rejecting abnormal signals.

Dependents:   medianFilterTest WIPV

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers MEDIAN_FILTER.cpp Source File

MEDIAN_FILTER.cpp

00001 #include "mbed.h"
00002 #include <algorithm>
00003 #include "MEDIAN_FILTER.h"
00004 
00005 
00006 MedianFilter::MedianFilter(int windowSize):windowSize_(windowSize)
00007 {
00008     
00009 }
00010 float MedianFilter::MedianValue(float data)
00011 {
00012     int i;
00013     for(i=0; i<windowSize_-1; i++) {
00014         array[i] = array[i+1];
00015     }
00016     array[windowSize_-1] = data;
00017     
00018     int j=0;
00019     float x[windowSize_];
00020     for(j=0;j<windowSize_;j++) x[j] = array[j];
00021     sort(x, x + windowSize_ - 1);
00022     
00023     return(x[windowSize_/2]);           // return median value
00024     
00025 }