pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex > Class Template Reference

Statistics estimator for regression trees which optimizes information gain and pose parameters error. More...

`#include <pcl/recognition/face_detection/rf_face_utils.h>`

Inheritance diagram for pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >:

## Public Member Functions

| PoseClassRegressionVarianceStatsEstimator (BranchEstimator *branch_estimator)
| Constructor. More...
| ~PoseClassRegressionVarianceStatsEstimator ()
| Destructor. More...
std::size_t | getNumOfBranches () const override
| Returns the number of branches the corresponding tree has. More...
LabelDataType | getLabelOfNode (NodeType &node) const override
| Returns the label of the specified node. More...
unsigned int | computeMeanAndCovarianceOffset (DataSet &data_set, std::vector< ExampleIndex > &examples, Eigen::Matrix3d &covariance_matrix, Eigen::Vector3d &centroid) const
| Computes the covariance matrix for translation offsets. More...
unsigned int | computeMeanAndCovarianceAngles (DataSet &data_set, std::vector< ExampleIndex > &examples, Eigen::Matrix3d &covariance_matrix, Eigen::Vector3d &centroid) const
| Computes the covariance matrix for rotation values. More...
float | computeInformationGain (DataSet &data_set, std::vector< ExampleIndex > &examples, std::vector< LabelDataType > &label_data, std::vector< float > &results, std::vector< unsigned char > &flags, const float threshold) const override
| Computes the information gain obtained by the specified threshold. More...
void | computeBranchIndices (std::vector< float > &results, std::vector< unsigned char > &flags, const float threshold, std::vector< unsigned char > &branch_indices) const override
| Computes the branch indices for all supplied results. More...
void | computeBranchIndex (const float result, const unsigned char flag, const float threshold, unsigned char &branch_index) const override
| Computes the branch index for the specified result. More...
void | computeAndSetNodeStats (DataSet &data_set, std::vector< ExampleIndex > &examples, std::vector< LabelDataType > &label_data, NodeType &node) const override
| Computes and sets the statistics for a node. More...
void | generateCodeForBranchIndexComputation (NodeType &, std::ostream &stream) const override
| Generates code for branch index computation. More...
void | generateCodeForOutput (NodeType &, std::ostream &stream) const override
| Generates code for label output. More...
Public Member Functions inherited from pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >
virtual | ~StatsEstimator ()
| Destructor. More...

## Detailed Description

### template<class LabelDataType, class NodeType, class DataSet, class ExampleIndex>
class pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >

Statistics estimator for regression trees which optimizes information gain and pose parameters error.

Definition at line 196 of file rf_face_utils.h.

## Constructor & Destructor Documentation

## PoseClassRegressionVarianceStatsEstimator()

template<class LabelDataType , class NodeType , class DataSet , class ExampleIndex >

pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::PoseClassRegressionVarianceStatsEstimator | ( | BranchEstimator * | branch_estimator | ) |

inline

Constructor.

Definition at line 201 of file rf_face_utils.h.

## ~PoseClassRegressionVarianceStatsEstimator()

template<class LabelDataType , class NodeType , class DataSet , class ExampleIndex >

pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::~PoseClassRegressionVarianceStatsEstimator | ( |  | ) |

inline

Destructor.

Definition at line 207 of file rf_face_utils.h.

## Member Function Documentation

## computeAndSetNodeStats()

template<class LabelDataType , class NodeType , class DataSet , class ExampleIndex >

void pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::computeAndSetNodeStats | ( | DataSet & | data_set,
|  | std::vector< ExampleIndex > & | examples,
|  | std::vector< LabelDataType > & | label_data,
|  | NodeType & | node
| ) |  | const

inline override virtual

Computes and sets the statistics for a node.

Parameters

  [in] | data_set | The data set which is evaluated.
  [in] | examples | The examples which define which parts of the data set are used for evaluation.
  [in] | label_data | The label_data corresponding to the examples.
  [out] | node | The destination node for the statistics.

Implements pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >.

Definition at line 475 of file rf_face_utils.h.

References pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::computeMeanAndCovarianceAngles(), and pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::computeMeanAndCovarianceOffset().

## computeBranchIndex()

template<class LabelDataType , class NodeType , class DataSet , class ExampleIndex >

void pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::computeBranchIndex | ( | const float | result,
|  | const unsigned char | flag,
|  | const float | threshold,
|  | unsigned char & | branch_index
| ) |  | const

inline override virtual

Computes the branch index for the specified result.

Parameters

  [in] | result | The result the branch index will be computed for.
  [in] | flag | The flag corresponding to the specified result.
  [in] | threshold | The threshold used to compute the branch index.
  [out] | branch_index | The destination for the computed branch index.

Implements pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >.

Definition at line 464 of file rf_face_utils.h.

References pcl::BranchEstimator::computeBranchIndex().

Referenced by pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::computeBranchIndices(), and pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::computeInformationGain().

## computeBranchIndices()

template<class LabelDataType , class NodeType , class DataSet , class ExampleIndex >

void pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::computeBranchIndices | ( | std::vector< float > & | results,
|  | std::vector< unsigned char > & | flags,
|  | const float | threshold,
|  | std::vector< unsigned char > & | branch_indices
| ) |  | const

inline override virtual

Computes the branch indices for all supplied results.

Parameters

  [in] | results | The results the branch indices will be computed for.
  [in] | flags | The flags corresponding to the specified results.
  [in] | threshold | The threshold used to compute the branch indices.
  [out] | branch_indices | The destination for the computed branch indices.

Implements pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >.

Definition at line 444 of file rf_face_utils.h.

References pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::computeBranchIndex().

## computeInformationGain()

template<class LabelDataType , class NodeType , class DataSet , class ExampleIndex >

float pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::computeInformationGain | ( | DataSet & | data_set,
|  | std::vector< ExampleIndex > & | examples,
|  | std::vector< LabelDataType > & | label_data,
|  | std::vector< float > & | results,
|  | std::vector< unsigned char > & | flags,
|  | const float | threshold
| ) |  | const

inline override virtual

Computes the information gain obtained by the specified threshold.

Parameters

  [in] | data_set | The data set corresponding to the supplied result data.
  [in] | examples | The examples used for extracting the supplied result data.
  [in] | label_data | The label data corresponding to the specified examples.
  [in] | results | The results computed using the specified examples.
  [in] | flags | The flags corresponding to the results.
  [in] | threshold | The threshold for which the information gain is computed.

Implements pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >.

Definition at line 321 of file rf_face_utils.h.

References pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::computeBranchIndex(), pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::computeMeanAndCovarianceAngles(), pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::computeMeanAndCovarianceOffset(), and pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::getNumOfBranches().

## computeMeanAndCovarianceAngles()

template<class LabelDataType , class NodeType , class DataSet , class ExampleIndex >

unsigned int pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::computeMeanAndCovarianceAngles | ( | DataSet & | data_set,
|  | std::vector< ExampleIndex > & | examples,
|  | Eigen::Matrix3d & | covariance_matrix,
|  | Eigen::Vector3d & | centroid
| ) |  | const

inline

Computes the covariance matrix for rotation values.

Parameters

  [in] | data_set | The corresponding data set.
  [in] | examples | A set of examples from the dataset.
  [out] | covariance_matrix | The covariance matrix.
  [out] | centroid | The mean of the data.

Definition at line 275 of file rf_face_utils.h.

References pcl::face_detection::TrainingExample::rot_.

Referenced by pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::computeAndSetNodeStats(), and pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::computeInformationGain().

## computeMeanAndCovarianceOffset()

template<class LabelDataType , class NodeType , class DataSet , class ExampleIndex >

unsigned int pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::computeMeanAndCovarianceOffset | ( | DataSet & | data_set,
|  | std::vector< ExampleIndex > & | examples,
|  | Eigen::Matrix3d & | covariance_matrix,
|  | Eigen::Vector3d & | centroid
| ) |  | const

inline

Computes the covariance matrix for translation offsets.

Parameters

  [in] | data_set | The corresponding data set.
  [in] | examples | A set of examples from the dataset.
  [out] | covariance_matrix | The covariance matrix.
  [out] | centroid | The mean of the data.

Definition at line 231 of file rf_face_utils.h.

References pcl::face_detection::TrainingExample::trans_.

Referenced by pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::computeAndSetNodeStats(), and pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::computeInformationGain().

## generateCodeForBranchIndexComputation()

template<class LabelDataType , class NodeType , class DataSet , class ExampleIndex >

void pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::generateCodeForBranchIndexComputation | ( | NodeType & | ,
|  | std::ostream & | stream
| ) |  | const

inline override virtual

Generates code for branch index computation.

Parameters

  [out] | stream | The destination for the generated code.

Implements pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >.

Definition at line 518 of file rf_face_utils.h.

## generateCodeForOutput()

template<class LabelDataType , class NodeType , class DataSet , class ExampleIndex >

void pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::generateCodeForOutput | ( | NodeType & | ,
|  | std::ostream & | stream
| ) |  | const

inline override virtual

Generates code for label output.

Parameters

  [out] | stream | The destination for the generated code.

Implements pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >.

Definition at line 527 of file rf_face_utils.h.

## getLabelOfNode()

template<class LabelDataType , class NodeType , class DataSet , class ExampleIndex >

LabelDataType pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::getLabelOfNode | ( | NodeType & | node | ) | const

inline override virtual

Returns the label of the specified node.

Parameters

  [in] | node | The node which label is returned.

Implements pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >.

Definition at line 220 of file rf_face_utils.h.

## getNumOfBranches()

template<class LabelDataType , class NodeType , class DataSet , class ExampleIndex >

std::size_t pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::getNumOfBranches | ( |  | ) | const

inline override virtual

Returns the number of branches the corresponding tree has.

Implements pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >.

Definition at line 212 of file rf_face_utils.h.

References pcl::BranchEstimator::getNumOfBranches().

Referenced by pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::computeInformationGain().

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

- pcl/recognition/face_detection/rf_face_utils.h