![]() |
GestureRecognitionToolkit
Version: 1.0 Revision: 04-03-15
The Gesture Recognition Toolkit (GRT) is a cross-platform, open-source, c++ machine learning library for real-time gesture recognition.
|
Public Member Functions | |
TimeseriesBuffer (UINT bufferSize=5, UINT numDimensions=1) | |
TimeseriesBuffer (const TimeseriesBuffer &rhs) | |
virtual | ~TimeseriesBuffer () |
TimeseriesBuffer & | operator= (const TimeseriesBuffer &rhs) |
virtual bool | deepCopyFrom (const FeatureExtraction *featureExtraction) |
virtual bool | computeFeatures (const VectorDouble &inputVector) |
virtual bool | reset () |
virtual bool | saveModelToFile (string filename) const |
virtual bool | loadModelFromFile (string filename) |
virtual bool | saveModelToFile (fstream &file) const |
virtual bool | loadModelFromFile (fstream &file) |
bool | init (UINT bufferSize, UINT numDimensions) |
VectorDouble | update (double x) |
VectorDouble | update (const VectorDouble &x) |
bool | setBufferSize (UINT bufferSize) |
UINT | getBufferSize () |
vector< VectorDouble > | getDataBuffer () |
![]() | |
FeatureExtraction () | |
virtual | ~FeatureExtraction () |
bool | copyBaseVariables (const FeatureExtraction *featureExtractionModule) |
virtual bool | clear () |
string | getFeatureExtractionType () const |
UINT | getNumInputDimensions () const |
UINT | getNumOutputDimensions () const |
bool | getInitialized () const |
bool | getFeatureDataReady () const |
VectorDouble | getFeatureVector () const |
FeatureExtraction * | createNewInstance () const |
![]() | |
MLBase (void) | |
virtual | ~MLBase (void) |
bool | copyMLBaseVariables (const MLBase *mlBase) |
virtual bool | train (ClassificationData trainingData) |
virtual bool | train_ (ClassificationData &trainingData) |
virtual bool | train (RegressionData trainingData) |
virtual bool | train_ (RegressionData &trainingData) |
virtual bool | train (TimeSeriesClassificationData trainingData) |
virtual bool | train_ (TimeSeriesClassificationData &trainingData) |
virtual bool | train (TimeSeriesClassificationDataStream trainingData) |
virtual bool | train_ (TimeSeriesClassificationDataStream &trainingData) |
virtual bool | train (UnlabelledData trainingData) |
virtual bool | train_ (UnlabelledData &trainingData) |
virtual bool | train (MatrixDouble data) |
virtual bool | train_ (MatrixDouble &data) |
virtual bool | predict (VectorDouble inputVector) |
virtual bool | predict_ (VectorDouble &inputVector) |
virtual bool | predict (MatrixDouble inputMatrix) |
virtual bool | predict_ (MatrixDouble &inputMatrix) |
virtual bool | map (VectorDouble inputVector) |
virtual bool | map_ (VectorDouble &inputVector) |
virtual bool | print () const |
virtual bool | save (const string filename) const |
virtual bool | load (const string filename) |
virtual bool | getModel (ostream &stream) const |
double | scale (const double &x, const double &minSource, const double &maxSource, const double &minTarget, const double &maxTarget, const bool constrain=false) |
virtual string | getModelAsString () const |
UINT | getBaseType () const |
UINT | getNumInputFeatures () const |
UINT | getNumInputDimensions () const |
UINT | getNumOutputDimensions () const |
UINT | getMinNumEpochs () const |
UINT | getMaxNumEpochs () const |
UINT | getValidationSetSize () const |
UINT | getNumTrainingIterationsToConverge () const |
double | getMinChange () const |
double | getLearningRate () const |
double | getRootMeanSquaredTrainingError () const |
double | getTotalSquaredTrainingError () const |
bool | getUseValidationSet () const |
bool | getRandomiseTrainingOrder () const |
bool | getTrained () const |
bool | getModelTrained () const |
bool | getScalingEnabled () const |
bool | getIsBaseTypeClassifier () const |
bool | getIsBaseTypeRegressifier () const |
bool | getIsBaseTypeClusterer () const |
bool | enableScaling (bool useScaling) |
bool | setMaxNumEpochs (const UINT maxNumEpochs) |
bool | setMinNumEpochs (const UINT minNumEpochs) |
bool | setMinChange (const double minChange) |
bool | setLearningRate (double learningRate) |
bool | setUseValidationSet (const bool useValidationSet) |
bool | setValidationSetSize (const UINT validationSetSize) |
bool | setRandomiseTrainingOrder (const bool randomiseTrainingOrder) |
bool | registerTrainingResultsObserver (Observer< TrainingResult > &observer) |
bool | registerTestResultsObserver (Observer< TestInstanceResult > &observer) |
bool | removeTrainingResultsObserver (const Observer< TrainingResult > &observer) |
bool | removeTestResultsObserver (const Observer< TestInstanceResult > &observer) |
bool | removeAllTrainingObservers () |
bool | removeAllTestObservers () |
bool | notifyTrainingResultsObservers (const TrainingResult &data) |
bool | notifyTestResultsObservers (const TestInstanceResult &data) |
MLBase * | getMLBasePointer () |
const MLBase * | getMLBasePointer () const |
vector< TrainingResult > | getTrainingResults () const |
![]() | |
GRTBase (void) | |
virtual | ~GRTBase (void) |
bool | copyGRTBaseVariables (const GRTBase *GRTBase) |
string | getClassType () const |
string | getLastWarningMessage () const |
string | getLastErrorMessage () const |
string | getLastInfoMessage () const |
GRTBase * | getGRTBasePointer () |
const GRTBase * | getGRTBasePointer () const |
![]() | |
virtual void | notify (const TrainingResult &data) |
![]() | |
virtual void | notify (const TestInstanceResult &data) |
Protected Attributes | |
UINT | bufferSize |
CircularBuffer< VectorDouble > | dataBuffer |
A buffer used to store the timeseries data. | |
![]() | |
string | featureExtractionType |
bool | initialized |
bool | featureDataReady |
VectorDouble | featureVector |
![]() | |
bool | trained |
bool | useScaling |
UINT | baseType |
UINT | numInputDimensions |
UINT | numOutputDimensions |
UINT | numTrainingIterationsToConverge |
UINT | minNumEpochs |
UINT | maxNumEpochs |
UINT | validationSetSize |
double | learningRate |
double | minChange |
double | rootMeanSquaredTrainingError |
double | totalSquaredTrainingError |
bool | useValidationSet |
bool | randomiseTrainingOrder |
Random | random |
vector< TrainingResult > | trainingResults |
TrainingResultsObserverManager | trainingResultsObserverManager |
TestResultsObserverManager | testResultsObserverManager |
![]() | |
string | classType |
DebugLog | debugLog |
ErrorLog | errorLog |
InfoLog | infoLog |
TrainingLog | trainingLog |
TestingLog | testingLog |
WarningLog | warningLog |
Static Protected Attributes | |
static RegisterFeatureExtractionModule< TimeseriesBuffer > | registerModule |
Additional Inherited Members | |
![]() | |
typedef std::map< string, FeatureExtraction *(*)() > | StringFeatureExtractionMap |
![]() | |
enum | BaseTypes { BASE_TYPE_NOT_SET =0, CLASSIFIER, REGRESSIFIER, CLUSTERER } |
![]() | |
static FeatureExtraction * | createInstanceFromString (string const &featureExtractionType) |
![]() | |
static string | getGRTVersion (bool returnRevision=true) |
static string | getGRTRevison () |
![]() | |
bool | init () |
bool | saveFeatureExtractionSettingsToFile (fstream &file) const |
bool | loadFeatureExtractionSettingsFromFile (fstream &file) |
![]() | |
bool | saveBaseSettingsToFile (fstream &file) const |
bool | loadBaseSettingsFromFile (fstream &file) |
![]() | |
double | SQR (const double &x) const |
![]() | |
static StringFeatureExtractionMap * | getMap () |
Definition at line 36 of file TimeseriesBuffer.h.
GRT::TimeseriesBuffer::TimeseriesBuffer | ( | UINT | bufferSize = 5 , |
UINT | numDimensions = 1 |
||
) |
Constructor, sets the size of the timeseries buffer and number of input dimensions.
UINT | bufferSize: sets the size of the timeseries buffer. Default value = 5 |
UINT | numDimensions: sets the number of dimensions that will be input to the feature extraction. Default value = 1 |
Definition at line 28 of file TimeseriesBuffer.cpp.
GRT::TimeseriesBuffer::TimeseriesBuffer | ( | const TimeseriesBuffer & | rhs | ) |
Copy constructor, copies the TimeseriesBuffer from the rhs instance to this instance.
const | TimeseriesBuffer &rhs: another instance of the TimeseriesBuffer class from which the data will be copied to this instance |
Definition at line 39 of file TimeseriesBuffer.cpp.
|
virtual |
Default Destructor
Definition at line 51 of file TimeseriesBuffer.cpp.
|
virtual |
Sets the FeatureExtraction computeFeatures function, overwriting the base FeatureExtraction function. This function is called by the GestureRecognitionPipeline when any new input data needs to be processed (during the prediction phase for example). This function calls the TimeseriesBuffer's update function.
const | VectorDouble &inputVector: the inputVector that should be processed. Must have the same dimensionality as the FeatureExtraction module |
Reimplemented from GRT::FeatureExtraction.
Definition at line 82 of file TimeseriesBuffer.cpp.
|
virtual |
Sets the FeatureExtraction deepCopyFrom function, overwriting the base FeatureExtraction function. This function is used to deep copy the values from the input pointer to this instance of the FeatureExtraction module. This function is called by the GestureRecognitionPipeline when the user adds a new FeatureExtraction module to the pipeleine.
const | FeatureExtraction *featureExtraction: a pointer to another instance of a TimeseriesBuffer, the values of that instance will be cloned to this instance |
Reimplemented from GRT::FeatureExtraction.
Definition at line 65 of file TimeseriesBuffer.cpp.
UINT GRT::TimeseriesBuffer::getBufferSize | ( | ) |
Gets the buffer size.
Definition at line 264 of file TimeseriesBuffer.cpp.
vector< VectorDouble > GRT::TimeseriesBuffer::getDataBuffer | ( | ) |
Gets the current values in the timeseries buffer. An empty vector will be returned if the buffer has not been initialized.
Definition at line 269 of file TimeseriesBuffer.cpp.
bool GRT::TimeseriesBuffer::init | ( | UINT | bufferSize, |
UINT | numDimensions | ||
) |
Initializes the TimeseriesBuffer, setting the bufferSize and the dimensionality of the data it will buffer. The search bufferSize and numDimensions values must be larger than 0. Sets all the data buffer values to zero.
UINT | bufferSize: sets the size of the timeseries buffer |
UINT | numDimensions: sets the number of dimensions that will be input to the feature extraction |
Definition at line 190 of file TimeseriesBuffer.cpp.
|
virtual |
This saves the feature extraction settings to a file.
fstream | &file: a reference to the file to save the settings to |
Reimplemented from GRT::MLBase.
Definition at line 120 of file TimeseriesBuffer.cpp.
|
virtual |
This loads the feature extraction settings from a file. This overrides the loadSettingsFromFile function in the FeatureExtraction base class.
fstream | &file: a reference to the file to load the settings from |
Reimplemented from GRT::FeatureExtraction.
Definition at line 157 of file TimeseriesBuffer.cpp.
TimeseriesBuffer & GRT::TimeseriesBuffer::operator= | ( | const TimeseriesBuffer & | rhs | ) |
Sets the equals operator, copies the data from the rhs instance to this instance.
const | TimeseriesBuffer &rhs: another instance of the TimeseriesBuffer class from which the data will be copied to this instance |
Definition at line 55 of file TimeseriesBuffer.cpp.
|
virtual |
Sets the FeatureExtraction reset function, overwriting the base FeatureExtraction function. This function is called by the GestureRecognitionPipeline when the pipelines main reset() function is called. This function resets the feature extraction by re-initiliazing the instance.
Reimplemented from GRT::FeatureExtraction.
Definition at line 99 of file TimeseriesBuffer.cpp.
|
virtual |
This saves the feature extraction settings to a file.
const | string filename: the filename to save the settings to |
Reimplemented from GRT::MLBase.
Definition at line 106 of file TimeseriesBuffer.cpp.
|
virtual |
This saves the feature extraction settings to a file. This overrides the saveSettingsToFile function in the FeatureExtraction base class.
fstream | &file: a reference to the file to save the settings to |
Reimplemented from GRT::FeatureExtraction.
Definition at line 135 of file TimeseriesBuffer.cpp.
bool GRT::TimeseriesBuffer::setBufferSize | ( | UINT | bufferSize | ) |
Sets the timeseries buffer size. The buffer size must be larger than zero. Calling this function will reset the feature extraction.
UINT | bufferSize: sets the size of the timeseries buffer |
Definition at line 254 of file TimeseriesBuffer.cpp.
VectorDouble GRT::TimeseriesBuffer::update | ( | double | x | ) |
Updates the timeseries buffer with the new data x, this should only be called if the dimensionality of this instance was set to 1.
double | x: the value to add to the buffer, this should only be called if the dimensionality of the filter was set to 1 |
Definition at line 219 of file TimeseriesBuffer.cpp.
VectorDouble GRT::TimeseriesBuffer::update | ( | const VectorDouble & | x | ) |
Updates the timeseries buffer with the new data x, the dimensionality of x should match that of this instance.
const | VectorDouble &x: a vector containing the values to be processed, must be the same size as the numInputDimensions |
Definition at line 223 of file TimeseriesBuffer.cpp.