20160814
Fork of MEDIAN_FILTER by
MEDIAN_FILTER.cpp@1:a46f56a22432, 2016-04-22 (annotated)
- Committer:
- adam_z
- Date:
- Fri Apr 22 16:19:03 2016 +0000
- Revision:
- 1:a46f56a22432
- Parent:
- 0:4487376ead1c
make it more like a class
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
adam_z | 0:4487376ead1c | 1 | #include "mbed.h" |
adam_z | 0:4487376ead1c | 2 | #include <algorithm> |
adam_z | 0:4487376ead1c | 3 | #include "MEDIAN_FILTER.h" |
adam_z | 0:4487376ead1c | 4 | |
adam_z | 0:4487376ead1c | 5 | |
adam_z | 1:a46f56a22432 | 6 | MedianFilter::MedianFilter(int windowSize):windowSize_(windowSize) |
adam_z | 0:4487376ead1c | 7 | { |
adam_z | 0:4487376ead1c | 8 | |
adam_z | 0:4487376ead1c | 9 | } |
adam_z | 1:a46f56a22432 | 10 | float MedianFilter::MedianValue(float data) |
adam_z | 0:4487376ead1c | 11 | { |
adam_z | 0:4487376ead1c | 12 | int i; |
adam_z | 0:4487376ead1c | 13 | for(i=0; i<windowSize_-1; i++) { |
adam_z | 0:4487376ead1c | 14 | array[i] = array[i+1]; |
adam_z | 0:4487376ead1c | 15 | } |
adam_z | 0:4487376ead1c | 16 | array[windowSize_-1] = data; |
adam_z | 0:4487376ead1c | 17 | |
adam_z | 0:4487376ead1c | 18 | int j=0; |
adam_z | 0:4487376ead1c | 19 | float x[windowSize_]; |
adam_z | 0:4487376ead1c | 20 | for(j=0;j<windowSize_;j++) x[j] = array[j]; |
adam_z | 0:4487376ead1c | 21 | sort(x, x + windowSize_ - 1); |
adam_z | 0:4487376ead1c | 22 | |
adam_z | 0:4487376ead1c | 23 | return(x[windowSize_/2]); // return median value |
adam_z | 0:4487376ead1c | 24 | |
adam_z | 0:4487376ead1c | 25 | } |