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.
LowPassFilter.h
Go to the documentation of this file.
1 
31 #ifndef GRT_LOW_PASS_FILTER_HEADER
32 #define GRT_LOW_PASS_FILTER_HEADER
33 
34 #include "../CoreModules/PreProcessing.h"
35 
36 GRT_BEGIN_NAMESPACE
37 
38 class GRT_API LowPassFilter : public PreProcessing{
39 public:
53  LowPassFilter(Float filterFactor = 0.1,Float gain = 1,UINT numDimensions = 1,Float cutoffFrequency = -1,Float delta = -1);
54 
60  LowPassFilter(const LowPassFilter &rhs);
61 
65  virtual ~LowPassFilter();
66 
73  LowPassFilter& operator=(const LowPassFilter &rhs);
74 
83  virtual bool deepCopyFrom(const PreProcessing *preProcessing);
84 
93  virtual bool process(const VectorFloat &inputVector);
94 
102  virtual bool reset();
103 
111  virtual bool save( std::fstream &file ) const;
112 
120  virtual bool load( std::fstream &file );
121 
131  bool init(Float filterFactor,Float gain,UINT numDimensions);
132 
139  Float filter(const Float x);
140 
147  VectorFloat filter(const VectorFloat &x);
148 
156  bool setGain(Float gain);
157 
166  bool setFilterFactor(Float filterFactor);
167 
176  bool setCutoffFrequency(Float cutoffFrequency,Float delta);
177 
183  Float getFilterFactor(){ if( initialized ){ return filterFactor; } return 0; }
184 
190  Float getGain(){ if( initialized ){ return gain; } return 0; }
191 
197  VectorFloat getFilteredValues(){ if( initialized ){ return yy; } return VectorFloat(); }
198 
199  //Tell the compiler we are using the following functions from the MLBase class to stop hidden virtual function warnings
200  using MLBase::save;
201  using MLBase::load;
202 
203 protected:
204  Float filterFactor;
205  Float gain;
207 
208  static RegisterPreProcessingModule< LowPassFilter > registerModule;
209 };
210 
211 GRT_END_NAMESPACE
212 
213 #endif //GRT_LOW_PASS_FILTER_HEADER
214 
virtual bool deepCopyFrom(const PreProcessing *rhs)
Definition: PreProcessing.h:57
Float gain
The gain factor of the filter.
Float filterFactor
The filter factor (alpha) of the filter.
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
VectorFloat getFilteredValues()
VectorFloat yy
The previous output value(s)
virtual bool process(const VectorFloat &inputVector)
Definition: PreProcessing.h:73
Float getFilterFactor()