GestureRecognitionToolkit  Version: 0.2.0
The Gesture Recognition Toolkit (GRT) is a cross-platform, open-source, c++ machine learning library for real-time gesture recognition.
MedianFilter.h
Go to the documentation of this file.
1 
31 #ifndef GRT_MEDIAN_FILTER_HEADER
32 #define GRT_MEDIAN_FILTER_HEADER
33 
34 #include "../CoreModules/PreProcessing.h"
35 
36 GRT_BEGIN_NAMESPACE
37 
38 class GRT_API MedianFilter : public PreProcessing {
39  public:
46  MedianFilter(UINT filterSize = 5,UINT numDimensions = 1);
47 
53  MedianFilter(const MedianFilter &rhs);
54 
58  virtual ~MedianFilter();
59 
66  MedianFilter& operator=(const MedianFilter &rhs);
67 
76  virtual bool deepCopyFrom(const PreProcessing *preProcessing);
77 
86  virtual bool process(const VectorFloat &inputVector);
87 
95  virtual bool reset();
96 
104  virtual bool save( std::fstream &file) const;
105 
113  virtual bool load( std::fstream &file );
114 
122  bool init(UINT filterSize,UINT numDimensions);
123 
130  Float filter(const Float x);
131 
138  VectorFloat filter(const VectorFloat &x);
139 
145  UINT getFilterSize() const { return filterSize; }
146 
152  VectorFloat getFilteredData() const { return processedData; }
153 
162  Vector< VectorFloat > getDataBuffer() const;
163 
164  //Tell the compiler we are using the following functions from the MLBase class to stop hidden virtual function warnings
165  using MLBase::save;
166  using MLBase::load;
167 
168  protected:
169  UINT filterSize;
172 
173  static RegisterPreProcessingModule< MedianFilter > registerModule;
174 };
175 
176 GRT_END_NAMESPACE
177 
178 #endif //GRT_MEDIAN_FILTER_HEADER
179 
VectorFloat getFilteredData() const
Definition: MedianFilter.h:152
virtual bool deepCopyFrom(const PreProcessing *rhs)
Definition: PreProcessing.h:57
CircularBuffer< VectorFloat > dataBuffer
A buffer to store the previous N values, N = filterSize.
Definition: MedianFilter.h:171
UINT filterSize
The size of the filter.
Definition: MedianFilter.h:169
virtual bool save(const std::string filename) const
Definition: MLBase.cpp:143
virtual bool reset()
virtual bool load(const std::string filename)
Definition: MLBase.cpp:167
UINT inputSampleCounter
A counter to keep track of the number of input samples.
Definition: MedianFilter.h:170
UINT getFilterSize() const
Definition: MedianFilter.h:145
virtual bool process(const VectorFloat &inputVector)
Definition: PreProcessing.h:73