Vector3 Modified
Dependents: optWingforHAPS_Eigen hexaTest_Eigen
MedianFilter.cpp@1:7e434a01533c, 2016-09-26 (annotated)
- Committer:
- Kerneels Bezuidenhout
- Date:
- Mon Sep 26 20:45:46 2016 +0200
- Revision:
- 1:7e434a01533c
- Parent:
- 0:49e6de85e2fb
- Child:
- 2:269c66e647f8
Initial Version
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Kerneels Bezuidenhout |
1:7e434a01533c | 1 | #include "MedianFilter.hpp" |
Kerneels Bezuidenhout |
1:7e434a01533c | 2 | |
Kerneels Bezuidenhout |
1:7e434a01533c | 3 | MedianFilter::MedianFilter(int size) |
Kerneels Bezuidenhout |
1:7e434a01533c | 4 | { |
Kerneels Bezuidenhout |
1:7e434a01533c | 5 | _size = size; |
Kerneels Bezuidenhout |
1:7e434a01533c | 6 | _n = 0; |
Kerneels Bezuidenhout |
1:7e434a01533c | 7 | } |
Kerneels Bezuidenhout |
1:7e434a01533c | 8 | |
Kerneels Bezuidenhout |
1:7e434a01533c | 9 | float MedianFilter::Process(float val) |
Kerneels Bezuidenhout |
1:7e434a01533c | 10 | { |
Kerneels Bezuidenhout |
1:7e434a01533c | 11 | if( _n < size ) |
Kerneels Bezuidenhout |
1:7e434a01533c | 12 | { |
Kerneels Bezuidenhout |
1:7e434a01533c | 13 | _n++; |
Kerneels Bezuidenhout |
1:7e434a01533c | 14 | _window.push_back(val); |
Kerneels Bezuidenhout |
1:7e434a01533c | 15 | } |
Kerneels Bezuidenhout |
1:7e434a01533c | 16 | else |
Kerneels Bezuidenhout |
1:7e434a01533c | 17 | { |
Kerneels Bezuidenhout |
1:7e434a01533c | 18 | _window.pop_front(); |
Kerneels Bezuidenhout |
1:7e434a01533c | 19 | _window.push_back(val); |
Kerneels Bezuidenhout |
1:7e434a01533c | 20 | } |
Kerneels Bezuidenhout |
1:7e434a01533c | 21 | |
Kerneels Bezuidenhout |
1:7e434a01533c | 22 | deque<float> _temp(_window); |
Kerneels Bezuidenhout |
1:7e434a01533c | 23 | |
Kerneels Bezuidenhout |
1:7e434a01533c | 24 | sor(_temp.begin(), temp.end()); |
Kerneels Bezuidenhout |
1:7e434a01533c | 25 | |
Kerneels Bezuidenhout |
1:7e434a01533c | 26 | return _temp[n/2]; |
Kerneels Bezuidenhout |
1:7e434a01533c | 27 | |
Kerneels Bezuidenhout |
1:7e434a01533c | 28 | } |