GestureRecognitionToolkit
Version: 0.2.5
The Gesture Recognition Toolkit (GRT) is a cross-platform, open-source, c++ machine learning library for real-time gesture recognition.
|
Public Types | |
typedef std::map< std::string, Node *(*)() > | StringNodeMap |
Public Types inherited from MLBase | |
enum | BaseType { BASE_TYPE_NOT_SET =0, CLASSIFIER, REGRESSIFIER, CLUSTERER, PRE_PROCSSING, POST_PROCESSING, FEATURE_EXTRACTION, CONTEXT } |
Public Member Functions | |
Node (const std::string id="Node") | |
virtual | ~Node () |
virtual bool | predict_ (VectorFloat &x) override |
virtual bool | predict_ (VectorFloat &x, VectorFloat &y) |
virtual bool | computeFeatureWeights (VectorFloat &weights) const |
virtual bool | computeLeafNodeWeights (MatrixFloat &weights) const |
virtual bool | clear () override |
virtual bool | print () const override |
virtual bool | getModel (std::ostream &stream) const override |
virtual bool | save (std::fstream &file) const override |
virtual bool | load (std::fstream &file) override |
virtual Node * | deepCopy () const |
std::string | getNodeType () const |
UINT | getDepth () const |
UINT | getNodeID () const |
UINT | getPredictedNodeID () const |
UINT | getMaxDepth () const |
bool | getIsLeafNode () const |
bool | getHasParent () const |
bool | getHasLeftChild () const |
bool | getHasRightChild () const |
Node * | getParent () const |
Node * | getLeftChild () const |
Node * | getRightChild () const |
bool | initNode (Node *parent, const UINT depth, const UINT nodeID, const bool isLeafNode=false) |
bool | setParent (Node *parent) |
bool | setLeftChild (Node *leftChild) |
bool | setRightChild (Node *rightChild) |
bool | setDepth (const UINT depth) |
bool | setNodeID (const UINT nodeID) |
bool | setIsLeafNode (const bool isLeafNode) |
Node * | createNewInstance () const |
Public Member Functions inherited from MLBase | |
MLBase (const std::string &id="", const BaseType type=BASE_TYPE_NOT_SET) | |
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 (RegressionData trainingData, RegressionData validationData) |
virtual bool | train_ (RegressionData &trainingData, RegressionData &validationData) |
virtual bool | train (TimeSeriesClassificationData trainingData) |
virtual bool | train_ (TimeSeriesClassificationData &trainingData) |
virtual bool | train (ClassificationDataStream trainingData) |
virtual bool | train_ (ClassificationDataStream &trainingData) |
virtual bool | train (UnlabelledData trainingData) |
virtual bool | train_ (UnlabelledData &trainingData) |
virtual bool | train (MatrixFloat data) |
virtual bool | train_ (MatrixFloat &data) |
virtual bool | predict (VectorFloat inputVector) |
virtual bool | predict (MatrixFloat inputMatrix) |
virtual bool | predict_ (MatrixFloat &inputMatrix) |
virtual bool | map (VectorFloat inputVector) |
virtual bool | map_ (VectorFloat &inputVector) |
virtual bool | reset () |
virtual bool | save (const std::string &filename) const |
virtual bool | load (const std::string &filename) |
GRT_DEPRECATED_MSG ("saveModelToFile(std::string filename) is deprecated, use save(const std::string &filename) instead", virtual bool saveModelToFile(const std::string &filename) const ) | |
GRT_DEPRECATED_MSG ("saveModelToFile(std::fstream &file) is deprecated, use save(std::fstream &file) instead", virtual bool saveModelToFile(std::fstream &file) const ) | |
GRT_DEPRECATED_MSG ("loadModelFromFile(std::string filename) is deprecated, use load(const std::string &filename) instead", virtual bool loadModelFromFile(const std::string &filename)) | |
GRT_DEPRECATED_MSG ("loadModelFromFile(std::fstream &file) is deprecated, use load(std::fstream &file) instead", virtual bool loadModelFromFile(std::fstream &file)) | |
virtual std::string | getModelAsString () const |
DataType | getInputType () const |
DataType | getOutputType () const |
BaseType | getType () const |
UINT | getNumInputFeatures () const |
UINT | getNumInputDimensions () const |
UINT | getNumOutputDimensions () const |
UINT | getMinNumEpochs () const |
UINT | getMaxNumEpochs () const |
UINT | getBatchSize () const |
UINT | getNumRestarts () const |
UINT | getValidationSetSize () const |
UINT | getNumTrainingIterationsToConverge () const |
Float | getMinChange () const |
Float | getLearningRate () const |
Float | getRMSTrainingError () const |
GRT_DEPRECATED_MSG ("getRootMeanSquaredTrainingError() is deprecated, use getRMSTrainingError() instead", Float getRootMeanSquaredTrainingError() const ) | |
Float | getTotalSquaredTrainingError () const |
Float | getRMSValidationError () const |
Float | getValidationSetAccuracy () const |
VectorFloat | getValidationSetPrecision () const |
VectorFloat | getValidationSetRecall () const |
bool | getUseValidationSet () const |
bool | getRandomiseTrainingOrder () const |
bool | getTrained () const |
GRT_DEPRECATED_MSG ("getModelTrained() is deprecated, use getTrained() instead", bool getModelTrained() const ) | |
bool | getConverged () const |
bool | getScalingEnabled () const |
bool | getIsBaseTypeClassifier () const |
bool | getIsBaseTypeRegressifier () const |
bool | getIsBaseTypeClusterer () const |
bool | getTrainingLoggingEnabled () const |
bool | getTestingLoggingEnabled () const |
bool | enableScaling (const bool useScaling) |
bool | setMaxNumEpochs (const UINT maxNumEpochs) |
bool | setBatchSize (const UINT batchSize) |
bool | setMinNumEpochs (const UINT minNumEpochs) |
bool | setNumRestarts (const UINT numRestarts) |
bool | setMinChange (const Float minChange) |
bool | setLearningRate (const Float learningRate) |
bool | setUseValidationSet (const bool useValidationSet) |
bool | setValidationSetSize (const UINT validationSetSize) |
bool | setRandomiseTrainingOrder (const bool randomiseTrainingOrder) |
bool | setTrainingLoggingEnabled (const bool loggingEnabled) |
bool | setTestingLoggingEnabled (const bool loggingEnabled) |
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 |
Public Member Functions inherited from GRTBase | |
GRTBase (const std::string &id="") | |
virtual | ~GRTBase (void) |
bool | copyGRTBaseVariables (const GRTBase *GRTBase) |
GRT_DEPRECATED_MSG ("getClassType is deprecated, use getId() instead!", std::string getClassType() const ) | |
std::string | getId () const |
std::string | getLastWarningMessage () const |
std::string | getLastErrorMessage () const |
std::string | getLastInfoMessage () const |
bool | setInfoLoggingEnabled (const bool loggingEnabled) |
bool | setWarningLoggingEnabled (const bool loggingEnabled) |
bool | setErrorLoggingEnabled (const bool loggingEnabled) |
bool | setDebugLoggingEnabled (const bool loggingEnabled) |
GRTBase * | getGRTBasePointer () |
const GRTBase * | getGRTBasePointer () const |
Float | scale (const Float &x, const Float &minSource, const Float &maxSource, const Float &minTarget, const Float &maxTarget, const bool constrain=false) |
Float | SQR (const Float &x) const |
Public Member Functions inherited from Observer< TrainingResult > | |
virtual void | notify (const TrainingResult &data) |
Public Member Functions inherited from Observer< TestInstanceResult > | |
virtual void | notify (const TestInstanceResult &data) |
Static Public Member Functions | |
static Node * | createInstanceFromString (std::string const &nodeType) |
Static Public Member Functions inherited from GRTBase | |
static std::string | getGRTVersion (bool returnRevision=true) |
static std::string | getGRTRevison () |
Protected Member Functions | |
virtual bool | saveParametersToFile (std::fstream &file) const |
virtual bool | loadParametersFromFile (std::fstream &file) |
Protected Member Functions inherited from MLBase | |
bool | saveBaseSettingsToFile (std::fstream &file) const |
bool | loadBaseSettingsFromFile (std::fstream &file) |
Static Protected Member Functions | |
static StringNodeMap * | getMap () |
Protected Attributes | |
std::string | nodeType |
UINT | depth |
UINT | nodeID |
UINT | predictedNodeID |
bool | isLeafNode |
Node * | parent |
Node * | leftChild |
Node * | rightChild |
Protected Attributes inherited from MLBase | |
bool | trained |
bool | useScaling |
bool | converged |
DataType | inputType |
DataType | outputType |
BaseType | baseType |
UINT | numInputDimensions |
UINT | numOutputDimensions |
UINT | numTrainingIterationsToConverge |
UINT | minNumEpochs |
UINT | maxNumEpochs |
UINT | batchSize |
UINT | validationSetSize |
UINT | numRestarts |
Float | learningRate |
Float | minChange |
Float | rmsTrainingError |
Float | rmsValidationError |
Float | totalSquaredTrainingError |
Float | validationSetAccuracy |
bool | useValidationSet |
bool | randomiseTrainingOrder |
VectorFloat | validationSetPrecision |
VectorFloat | validationSetRecall |
Random | random |
Vector< TrainingResult > | trainingResults |
TrainingResultsObserverManager | trainingResultsObserverManager |
TestResultsObserverManager | testResultsObserverManager |
TrainingLog | trainingLog |
TestingLog | testingLog |
Protected Attributes inherited from GRTBase | |
std::string | classId |
Stores the name of the class (e.g., MinDist) | |
DebugLog | debugLog |
ErrorLog | errorLog |
InfoLog | infoLog |
WarningLog | warningLog |
typedef std::map< std::string, Node*(*)() > Node::StringNodeMap |
Defines a map between a string (which will contain the name of the node, such as DecisionTreeNode) and a function returns a new instance of that node.
Node::Node | ( | const std::string | id = "Node" | ) |
|
virtual |
|
overridevirtual |
This functions cleans up any dynamic memory assigned by the node. It will recursively clear the memory for the left and right child nodes.
Reimplemented from MLBase.
Reimplemented in ClusterTreeNode, RegressionTreeNode, DecisionTreeNode, DecisionTreeClusterNode, DecisionTreeThresholdNode, and DecisionTreeTripleFeatureNode.
|
virtual |
This function recursively computes the weights of features used for classification nodes and stores the results in the weights vector. This function should be overwritten by the inheriting class.
weights | the input vector that will be used to store the weights |
Reimplemented in DecisionTreeClusterNode.
|
virtual |
This function recursively computes the weights of features used for classification nodes and stores the results in the weights vector. This function should be overwritten by the inheriting class.
weights | the input matrix that will be used to store the weights, rows represent classes, columns represent features |
Reimplemented in DecisionTreeClusterNode.
|
static |
Creates a new classifier instance based on the input string (which should contain the name of a valid classifier such as ANBC).
string | const &classifierType: the name of the classifier |
Node * Node::createNewInstance | ( | ) | const |
|
virtual |
This function returns a deep copy of the Node and all it's children. The user is responsible for managing the dynamic data that is returned from this function as a pointer.
Reimplemented in RegressionTreeNode, ClusterTreeNode, DecisionTreeClusterNode, DecisionTreeNode, DecisionTreeThresholdNode, and DecisionTreeTripleFeatureNode.
UINT Node::getDepth | ( | ) | const |
bool Node::getHasLeftChild | ( | ) | const |
bool Node::getHasParent | ( | ) | const |
bool Node::getHasRightChild | ( | ) | const |
bool Node::getIsLeafNode | ( | ) | const |
|
overridevirtual |
This function adds the current model to the formatted stream. This function should be overwritten by the derived class.
file | a reference to the stream the model will be added to |
Reimplemented from MLBase.
Reimplemented in DecisionTreeClusterNode, DecisionTreeNode, DecisionTreeThresholdNode, and DecisionTreeTripleFeatureNode.
UINT Node::getNodeID | ( | ) | const |
std::string Node::getNodeType | ( | ) | const |
UINT Node::getPredictedNodeID | ( | ) | const |
|
overridevirtual |
|
inlineprotectedvirtual |
This loads the custom parameters to from file. This can be used by any class that inherits from the Node class to load the custom parameters from that class from a file by overridding this function.
file | a reference to the file the parameters will be loaded from |
Reimplemented in ClusterTreeNode, RegressionTreeNode, DecisionTreeNode, DecisionTreeClusterNode, DecisionTreeTripleFeatureNode, and DecisionTreeThresholdNode.
|
overridevirtual |
This function predicts if the input is greater than or equal to the nodes threshold. This function should be overwritten by the inheriting class.
x | the input vector that will be used for the prediction |
Reimplemented from MLBase.
Reimplemented in RegressionTreeNode, DecisionTreeClusterNode, DecisionTreeThresholdNode, ClusterTreeNode, and DecisionTreeTripleFeatureNode.
|
virtual |
This function recursively predicts if the probability of the input vector. This function should be overwritten by the inheriting class.
x | the input vector that will be used for the prediction |
y | a reference to a vector that will store the results |
Reimplemented in RegressionTreeNode, ClusterTreeNode, and DecisionTreeNode.
|
overridevirtual |
This functions prints the node data to std::out. It will recursively print all the child nodes.
Reimplemented from MLBase.
Reimplemented in ClusterTreeNode, RegressionTreeNode, DecisionTreeClusterNode, DecisionTreeThresholdNode, and DecisionTreeTripleFeatureNode.
|
overridevirtual |
|
inlineprotectedvirtual |
This saves the custom parameters to a file. This can be used by any class that inherits from the Node class to save the custom parameters from that class to a file by overridding this function.
file | a reference to the file the parameters will be saved to |
Reimplemented in ClusterTreeNode, RegressionTreeNode, DecisionTreeNode, DecisionTreeClusterNode, DecisionTreeTripleFeatureNode, and DecisionTreeThresholdNode.