pcl::SVMTrain Class Reference

SVM (Support Vector Machines) training class for the SVM machine learning. More...

`#include <pcl/ml/svm_wrapper.h>`

Inheritance diagram for pcl::SVMTrain:

## Public Member Functions

| SVMTrain ()
| Constructor. More...
| ~SVMTrain ()
| Destructor. More...
void | setParameters (SVMParam param)
| Change default training parameters (pcl::SVMParam). More...
SVMParam | getParameters ()
| Return the current training parameters. More...
SVMModel | getClassifierModel ()
| Return the result of the training. More...
void | setInputTrainingSet (std::vector< SVMData > training_set)
| It adds/store the training set with labelled data. More...
std::vector< SVMData > | getInputTrainingSet ()
| Return the current training set. More...
void | resetTrainingSet ()
| Reset the training set. More...
bool | trainClassifier ()
| Start the training of the SVM classifier. More...
bool | loadProblem (const char *filename)
| Read in a problem (in svmlight format). More...
void | setDebugMode (bool in)
| Set to 1 for debugging info. More...
bool | saveTrainingSet (const char *filename)
| Save the raw training set in a file (in svmlight format). More...
bool | saveNormTrainingSet (const char *filename)
| Save the normalized training set in a file (in svmlight format). More...
Public Member Functions inherited from pcl::SVM
| SVM ()
| Constructor. More...
| ~SVM ()
| Destructor. More...
void | getLabel (std::vector< int > &labels)
| Return the labels order from the classifier model. More...
void | saveClassifierModel (const char *filename)
| Save the classifier model in an extern file (in svmlight format). More...

## Protected Member Functions

void | doCrossValidation ()
| To cross validate the classifier. More...
void | scaleFactors (std::vector< SVMData > training_set, svm_scaling &scaling)
| It extracts scaling factors from the input training_set. More...
Protected Member Functions inherited from pcl::SVM
char * | readline (FILE *input)
| To read a line from the input file. More...
void | exitInputError (int line_num)
| Outputs an error in file reading. More...
const std::string & | getClassName () const
| Get a string representation of the name of this class. More...
void | adaptInputToLibSVM (std::vector< SVMData > training_set, svm_problem &prob)
| Convert the input format (vector of SVMData) into a readable format for libSVM. More...
void | adaptLibSVMToInput (std::vector< SVMData > &training_set, svm_problem prob)
| Convert the libSVM format (svm_problem) into a easier output format. More...
bool | loadProblem (const char *filename, svm_problem &prob)
| Load a problem from an extern file. More...
bool | saveProblem (const char *filename, bool labelled)
| Save the raw problem in an extern file. More...
bool | saveProblemNorm (const char *filename, svm_problem prob_, bool labelled)
| Save the problem (with normalized values) in an extern file. More...

## Protected Attributes

bool | debug_
| Set to 1 to see the training output. More...
int | cross_validation_
| Set too 1 for cross validating the classifier. More...
int | nr_fold_
| Number of folds to be used during cross validation. More...
std::string | class_name_
bool | labelled_training_set_
char * | line_
int | max_line_len_
SVMModel | model_
SVMParam | param_
svm_problem | prob_
svm_scaling | scaling_
std::vector< SVMData > | training_set_
Protected Attributes inherited from pcl::SVM
std::vector< SVMData > | training_set_
svm_problem | prob_
SVMModel | model_
svm_scaling | scaling_
SVMParam | param_
std::string | class_name_
char * | line_
int | max_line_len_
bool | labelled_training_set_

## Additional Inherited Members

Static Protected Member Functions inherited from pcl::SVM
static void | printNull (const char *)
| Set for output printings during classification. More...

## Detailed Description

SVM (Support Vector Machines) training class for the SVM machine learning.

It creates a model for the classifier from a labelled input dataset.

OPTIONAL: pcl::SVMParam has to be given as input to vary the default training method and parameters.

Definition at line 235 of file svm_wrapper.h.

## Constructor & Destructor Documentation

## SVMTrain()

pcl::SVMTrain::SVMTrain | ( |  | ) |

inline

Constructor.

Definition at line 268 of file svm_wrapper.h.

References pcl::SVM::class_name_, and pcl::SVM::printNull().

## ~SVMTrain()

pcl::SVMTrain::~SVMTrain | ( |  | ) |

inline

Destructor.

Definition at line 276 of file svm_wrapper.h.

References svm_model::l, and pcl::SVM::model_.

## Member Function Documentation

## doCrossValidation()

void pcl::SVMTrain::doCrossValidation | ( |  | ) |

protected

To cross validate the classifier.

It is automatic for probability estimate.

## getClassifierModel()

SVMModel pcl::SVMTrain::getClassifierModel | ( |  | ) |

inline

Return the result of the training.

Definition at line 298 of file svm_wrapper.h.

References pcl::SVM::model_.

## getInputTrainingSet()

std::vector<SVMData> pcl::SVMTrain::getInputTrainingSet | ( |  | ) |

inline

Return the current training set.

Definition at line 312 of file svm_wrapper.h.

References pcl::SVM::training_set_.

## getParameters()

SVMParam pcl::SVMTrain::getParameters | ( |  | ) |

inline

Return the current training parameters.

Definition at line 291 of file svm_wrapper.h.

References pcl::SVM::param_.

## loadProblem()

bool pcl::SVMTrain::loadProblem | ( | const char * | filename | ) |

inline

Read in a problem (in svmlight format).

Returns
  false if fails

Definition at line 336 of file svm_wrapper.h.

References pcl::SVM::loadProblem(), and pcl::SVM::prob_.

## resetTrainingSet()

void pcl::SVMTrain::resetTrainingSet | ( |  | ) |

inline

Reset the training set.

Definition at line 319 of file svm_wrapper.h.

References pcl::SVM::training_set_.

## saveNormTrainingSet()

bool pcl::SVMTrain::saveNormTrainingSet | ( | const char * | filename | ) |

inline

Save the normalized training set in a file (in svmlight format).

Returns
  false if fails

Definition at line 368 of file svm_wrapper.h.

References pcl::SVM::prob_, and pcl::SVM::saveProblemNorm().

## saveTrainingSet()

bool pcl::SVMTrain::saveTrainingSet | ( | const char * | filename | ) |

inline

Save the raw training set in a file (in svmlight format).

Returns
  false if fails

Definition at line 358 of file svm_wrapper.h.

References pcl::SVM::saveProblem().

## scaleFactors()

void pcl::SVMTrain::scaleFactors | ( | std::vector< SVMData > | training_set,
|  | svm_scaling & | scaling
| ) |  |

protected

It extracts scaling factors from the input training_set.

The scaling of the training_set is a mandatory for a good training of the classifier.

## setDebugMode()

void pcl::SVMTrain::setDebugMode | ( | bool | in | ) |

inline

Set to 1 for debugging info.

Definition at line 343 of file svm_wrapper.h.

References debug_, and pcl::SVM::printNull().

## setInputTrainingSet()

void pcl::SVMTrain::setInputTrainingSet | ( | std::vector< SVMData > | training_set | ) |

inline

It adds/store the training set with labelled data.

Definition at line 305 of file svm_wrapper.h.

References pcl::SVM::training_set_.

## setParameters()

void pcl::SVMTrain::setParameters | ( | SVMParam | param | ) |

inline

Change default training parameters (pcl::SVMParam).

Definition at line 284 of file svm_wrapper.h.

References pcl::SVM::param_.

## trainClassifier()

bool pcl::SVMTrain::trainClassifier | ( |  | ) |

Start the training of the SVM classifier.

Returns
  false if fails

## Member Data Documentation

## class_name_

std::string pcl::SVM::class_name_

protected

Definition at line 131 of file svm_wrapper.h.

## cross_validation_

int pcl::SVMTrain::cross_validation_

protected

Set too 1 for cross validating the classifier.

Definition at line 250 of file svm_wrapper.h.

## debug_

bool pcl::SVMTrain::debug_

protected

Set to 1 to see the training output.

Definition at line 248 of file svm_wrapper.h.

Referenced by setDebugMode().

## labelled_training_set_

bool pcl::SVM::labelled_training_set_

protected

Definition at line 135 of file svm_wrapper.h.

## line_

char* pcl::SVM::line_

protected

Definition at line 133 of file svm_wrapper.h.

## max_line_len_

int pcl::SVM::max_line_len_

protected

Definition at line 134 of file svm_wrapper.h.

## model_

SVMModel pcl::SVM::model_

protected

Definition at line 127 of file svm_wrapper.h.

## nr_fold_

int pcl::SVMTrain::nr_fold_

protected

Number of folds to be used during cross validation.

It indicates in how many parts is split the input training set.

Definition at line 253 of file svm_wrapper.h.

## param_

SVMParam pcl::SVM::param_

protected

Definition at line 130 of file svm_wrapper.h.

## prob_

svm_problem pcl::SVM::prob_

protected

Definition at line 126 of file svm_wrapper.h.

## scaling_

svm_scaling pcl::SVM::scaling_

protected

Definition at line 128 of file svm_wrapper.h.

## training_set_

std::vector<SVMData> pcl::SVM::training_set_

protected

Definition at line 125 of file svm_wrapper.h.

The documentation for this class was generated from the following file:

- pcl/ml/svm_wrapper.h