![]() |
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 Types | |
enum | PostprocessingInputModes { INPUT_MODE_NOT_SET =0, INPUT_MODE_PREDICTED_CLASS_LABEL, INPUT_MODE_CLASS_LIKELIHOODS } |
enum | PostprocessingOutputModes { OUTPUT_MODE_NOT_SET =0, OUTPUT_MODE_PREDICTED_CLASS_LABEL, OUTPUT_MODE_CLASS_LIKELIHOODS } |
typedef std::map< string, PostProcessing *(*)() > | StringPostProcessingMap |
![]() | |
enum | BaseTypes { BASE_TYPE_NOT_SET =0, CLASSIFIER, REGRESSIFIER, CLUSTERER } |
Public Member Functions | |
PostProcessing (void) | |
virtual | ~PostProcessing (void) |
virtual bool | deepCopyFrom (const PostProcessing *postProcessing) |
bool | copyBaseVariables (const PostProcessing *postProcessingModule) |
virtual bool | process (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) |
string | getPostProcessingType () const |
UINT | getPostProcessingInputMode () const |
UINT | getPostProcessingOutputMode () const |
UINT | getNumInputDimensions () const |
UINT | getNumOutputDimensions () const |
bool | getInitialized () const |
bool | getIsPostProcessingInputModePredictedClassLabel () const |
bool | getIsPostProcessingInputModeClassLikelihoods () const |
bool | getIsPostProcessingOutputModePredictedClassLabel () const |
bool | getIsPostProcessingOutputModeClassLikelihoods () const |
VectorDouble | getProcessedData () const |
PostProcessing * | 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 | clear () |
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) |
Static Public Member Functions | |
static PostProcessing * | createInstanceFromString (string const &postProcessingType) |
![]() | |
static string | getGRTVersion (bool returnRevision=true) |
static string | getGRTRevison () |
Protected Member Functions | |
bool | init () |
bool | savePostProcessingSettingsToFile (fstream &file) const |
bool | loadPostProcessingSettingsFromFile (fstream &file) |
![]() | |
bool | saveBaseSettingsToFile (fstream &file) const |
bool | loadBaseSettingsFromFile (fstream &file) |
![]() | |
double | SQR (const double &x) const |
Static Protected Member Functions | |
static StringPostProcessingMap * | getMap () |
Protected Attributes | |
string | postProcessingType |
bool | initialized |
UINT | postProcessingInputMode |
UINT | postProcessingOutputMode |
VectorDouble | processedData |
![]() | |
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 |
Definition at line 38 of file PostProcessing.h.
typedef std::map< string, PostProcessing*(*)() > GRT::PostProcessing::StringPostProcessingMap |
This typedef defines a map between a string and a PostProcessing pointer.
Definition at line 183 of file PostProcessing.h.
GRT::PostProcessing::PostProcessing | ( | void | ) |
Default Constructor
Definition at line 36 of file PostProcessing.cpp.
|
virtual |
Default Destructor
Definition at line 46 of file PostProcessing.cpp.
bool GRT::PostProcessing::copyBaseVariables | ( | const PostProcessing * | postProcessingModule | ) |
This copies the PostProcessing variables from postProcessingModule to the instance that calls the function.
const | PostProcessing *postProcessingModule: a pointer to a post processing module from which the values will be copied |
Definition at line 53 of file PostProcessing.cpp.
|
static |
This static function will dynamically create a new PostProcessing instance from a string.
string | const &postProcessingType: the name of the PostProcessing class you want to dynamically create |
Definition at line 27 of file PostProcessing.cpp.
PostProcessing * GRT::PostProcessing::createNewInstance | ( | ) | const |
This static function will dynamically create a new PostProcessing instance based on the type of this instance
Definition at line 168 of file PostProcessing.cpp.
|
inlinevirtual |
This is the base deepCopyFrom function for the PostProcessing modules. This function should be overwritten by the derived class.
const | PostProcessing *postProcessing: a pointer to the PostProcessing base class, this should be pointing to another instance of a matching derived class |
Reimplemented in GRT::ClassLabelTimeoutFilter, GRT::ClassLabelFilter, and GRT::ClassLabelChangeFilter.
Definition at line 57 of file PostProcessing.h.
bool GRT::PostProcessing::getInitialized | ( | ) | const |
Returns true if the post processing module has been initialized correctly.
Definition at line 192 of file PostProcessing.cpp.
bool GRT::PostProcessing::getIsPostProcessingInputModeClassLikelihoods | ( | ) | const |
Definition at line 200 of file PostProcessing.cpp.
bool GRT::PostProcessing::getIsPostProcessingInputModePredictedClassLabel | ( | ) | const |
Definition at line 196 of file PostProcessing.cpp.
bool GRT::PostProcessing::getIsPostProcessingOutputModeClassLikelihoods | ( | ) | const |
Definition at line 208 of file PostProcessing.cpp.
bool GRT::PostProcessing::getIsPostProcessingOutputModePredictedClassLabel | ( | ) | const |
Definition at line 204 of file PostProcessing.cpp.
UINT GRT::PostProcessing::getNumInputDimensions | ( | ) | const |
Returns the size of the input vector expected by the post processing module.
Definition at line 184 of file PostProcessing.cpp.
UINT GRT::PostProcessing::getNumOutputDimensions | ( | ) | const |
Returns the size of the vector that will be computed by the post processing module.
Definition at line 188 of file PostProcessing.cpp.
UINT GRT::PostProcessing::getPostProcessingInputMode | ( | ) | const |
Definition at line 176 of file PostProcessing.cpp.
UINT GRT::PostProcessing::getPostProcessingOutputMode | ( | ) | const |
Definition at line 180 of file PostProcessing.cpp.
string GRT::PostProcessing::getPostProcessingType | ( | ) | const |
Definition at line 172 of file PostProcessing.cpp.
vector< double > GRT::PostProcessing::getProcessedData | ( | ) | const |
Definition at line 212 of file PostProcessing.cpp.
|
protected |
Initializes the base postprocessing module, this will resize the processedData vector and get the instance ready for processing new data. The inheriting class must first initialize the module before calling this function.
Definition at line 77 of file PostProcessing.cpp.
|
virtual |
This saves the post processing settings to a file. This function should be overwritten by the derived class.
fstream | &file: a reference to the file to save the settings to |
Reimplemented from GRT::MLBase.
Reimplemented in GRT::ClassLabelTimeoutFilter, GRT::ClassLabelFilter, and GRT::ClassLabelChangeFilter.
Definition at line 108 of file PostProcessing.cpp.
|
inlinevirtual |
This loads the post processing settings from a file. This function should be overwritten by the derived class.
fstream | &file: a reference to the file to load the settings from |
Reimplemented from GRT::MLBase.
Reimplemented in GRT::ClassLabelTimeoutFilter, GRT::ClassLabelFilter, and GRT::ClassLabelChangeFilter.
Definition at line 117 of file PostProcessing.h.
|
protected |
Loads the core postprocessing settings from a file.
Definition at line 137 of file PostProcessing.cpp.
|
inlinevirtual |
This is the main processing interface for all the post processing modules and should be overwritten by the inheriting class.
const | VectorDouble &inputVector: a vector containing the data that should be processed |
Reimplemented in GRT::ClassLabelTimeoutFilter, GRT::ClassLabelFilter, and GRT::ClassLabelChangeFilter.
Definition at line 73 of file PostProcessing.h.
|
inlinevirtual |
This function is called by the GestureRecognitionPipeline's reset function and will reset the PostProcessing module. This function should be overwritten by the derived class.
Reimplemented from GRT::MLBase.
Reimplemented in GRT::ClassLabelTimeoutFilter, GRT::ClassLabelFilter, and GRT::ClassLabelChangeFilter.
Definition at line 81 of file PostProcessing.h.
|
virtual |
This saves the post processing settings to a file. This function should be overwritten by the derived class.
const | string filename: the filename to save the settings to |
Reimplemented from GRT::MLBase.
Reimplemented in GRT::ClassLabelTimeoutFilter, GRT::ClassLabelFilter, and GRT::ClassLabelChangeFilter.
Definition at line 94 of file PostProcessing.cpp.
|
inlinevirtual |
This saves the post processing settings to a file. This function should be overwritten by the derived class.
fstream | &file: a reference to the file to save the settings to |
Reimplemented from GRT::MLBase.
Reimplemented in GRT::ClassLabelTimeoutFilter, GRT::ClassLabelFilter, and GRT::ClassLabelChangeFilter.
Definition at line 108 of file PostProcessing.h.
|
protected |
Saves the core postprocessing settings to a file.
Definition at line 123 of file PostProcessing.cpp.