Point Cloud Library (PCL) 1.15.0
Loading...
Searching...
No Matches
List of all members | Public Member Functions
pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex > Class Template Referenceabstract

Class interface for gathering statistics for decision tree learning. More...

#include <pcl/ml/stats_estimator.h>

+ Inheritance diagram for pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >:

Public Member Functions

virtual ~StatsEstimator ()=default
 Destructor.
 
virtual std::size_t getNumOfBranches () const =0
 Returns the number of branches a node can have (e.g.
 
virtual void computeAndSetNodeStats (DataSet &data_set, std::vector< ExampleIndex > &examples, std::vector< LabelDataType > &label_data, NodeType &node) const =0
 Computes and sets the statistics for a node.
 
virtual LabelDataType getLabelOfNode (NodeType &node) const =0
 Returns the label of the specified node.
 
virtual 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 =0
 Computes the information gain obtained by the specified threshold on the supplied feature evaluation results.
 
virtual void computeBranchIndices (std::vector< float > &results, std::vector< unsigned char > &flags, const float threshold, std::vector< unsigned char > &branch_indices) const =0
 Computes the branch indices obtained by the specified threshold on the supplied feature evaluation results.
 
virtual void computeBranchIndex (const float result, const unsigned char flag, const float threshold, unsigned char &branch_index) const =0
 Computes the branch indices obtained by the specified threshold on the supplied feature evaluation results.
 
virtual void generateCodeForBranchIndexComputation (NodeType &node, std::ostream &stream) const =0
 Generates code for computing the branch indices for the specified node and writes it to the specified stream.
 
virtual void generateCodeForOutput (NodeType &node, std::ostream &stream) const =0
 Generates code for computing the output for the specified node and writes it to the specified stream.
 

Detailed Description

template<class LabelDataType, class NodeType, class DataSet, class ExampleIndex>
class pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >

Class interface for gathering statistics for decision tree learning.

Definition at line 49 of file stats_estimator.h.

Constructor & Destructor Documentation

◆ ~StatsEstimator()

template<class LabelDataType , class NodeType , class DataSet , class ExampleIndex >
virtual pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::~StatsEstimator ( )
virtualdefault

Destructor.

Member Function Documentation

◆ computeAndSetNodeStats()

template<class LabelDataType , class NodeType , class DataSet , class ExampleIndex >
virtual void pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::computeAndSetNodeStats ( DataSet &  data_set,
std::vector< ExampleIndex > &  examples,
std::vector< LabelDataType > &  label_data,
NodeType &  node 
) const
pure virtual

Computes and sets the statistics for a node.

Parameters
[in]data_setthe data set used for training
[in]examplesthe examples used for computing the statistics for the specified node
[in]label_datathe labels corresponding to the examples
[out]nodeThe destination node for the statistics

Implemented in pcl::RegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >, and pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >.

◆ computeBranchIndex()

template<class LabelDataType , class NodeType , class DataSet , class ExampleIndex >
virtual void pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::computeBranchIndex ( const float  result,
const unsigned char  flag,
const float  threshold,
unsigned char &  branch_index 
) const
pure virtual

Computes the branch indices obtained by the specified threshold on the supplied feature evaluation results.

Parameters
[in]resultthe result obtained from the feature evaluation
[in]flagthe flag obtained together with the result
[in]thresholdthe threshold which is used to compute the branch index
[out]branch_indexthe destination for the computed branch index

Implemented in pcl::RegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >, and pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >.

Referenced by pcl::DecisionTreeEvaluator< FeatureType, DataSet, LabelType, ExampleIndex, NodeType >::evaluate(), pcl::DecisionTreeEvaluator< FeatureType, DataSet, LabelType, ExampleIndex, NodeType >::evaluate(), pcl::DecisionTreeEvaluator< FeatureType, DataSet, LabelType, ExampleIndex, NodeType >::evaluateAndAdd(), and pcl::DecisionTreeEvaluator< FeatureType, DataSet, LabelType, ExampleIndex, NodeType >::getNodes().

◆ computeBranchIndices()

template<class LabelDataType , class NodeType , class DataSet , class ExampleIndex >
virtual void pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::computeBranchIndices ( std::vector< float > &  results,
std::vector< unsigned char > &  flags,
const float  threshold,
std::vector< unsigned char > &  branch_indices 
) const
pure virtual

Computes the branch indices obtained by the specified threshold on the supplied feature evaluation results.

Parameters
[in]resultsthe results obtained from the feature evaluation
[in]flagsthe flags obtained together with the results.
[in]thresholdthe threshold which is used to compute the branch indices
[out]branch_indicesthe destination for the computed branch indices.

Implemented in pcl::RegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >, and pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >.

Referenced by pcl::FernEvaluator< FeatureType, DataSet, LabelType, ExampleIndex, NodeType >::evaluate(), pcl::FernEvaluator< FeatureType, DataSet, LabelType, ExampleIndex, NodeType >::evaluateAndAdd(), and pcl::FernEvaluator< FeatureType, DataSet, LabelType, ExampleIndex, NodeType >::getNodes().

◆ computeInformationGain()

template<class LabelDataType , class NodeType , class DataSet , class ExampleIndex >
virtual float pcl::StatsEstimator< 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
pure virtual

Computes the information gain obtained by the specified threshold on the supplied feature evaluation results.

Parameters
[in]data_setthe data set used for extracting the supplied result values.
[in]examplesthe examples used to extract the supplied result values
[in]label_datathe labels corresponding to the examples
[in]resultsthe results obtained from the feature evaluation
[in]flagsthe flags obtained together with the results
[in]thresholdthe threshold which is used to compute the information gain

Implemented in pcl::RegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >, and pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >.

◆ generateCodeForBranchIndexComputation()

template<class LabelDataType , class NodeType , class DataSet , class ExampleIndex >
virtual void pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::generateCodeForBranchIndexComputation ( NodeType &  node,
std::ostream &  stream 
) const
pure virtual

Generates code for computing the branch indices for the specified node and writes it to the specified stream.

Parameters
[in]nodethe node for which the branch index estimation code is generated
[out]streamthe destination for the code

Implemented in pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >, and pcl::RegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >.

◆ generateCodeForOutput()

template<class LabelDataType , class NodeType , class DataSet , class ExampleIndex >
virtual void pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::generateCodeForOutput ( NodeType &  node,
std::ostream &  stream 
) const
pure virtual

Generates code for computing the output for the specified node and writes it to the specified stream.

Parameters
[in]nodethe node for which the output estimation code is generated
[out]streamthe destination for the code

Implemented in pcl::face_detection::PoseClassRegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >, and pcl::RegressionVarianceStatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >.

◆ getLabelOfNode()

template<class LabelDataType , class NodeType , class DataSet , class ExampleIndex >
virtual LabelDataType pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::getLabelOfNode ( NodeType &  node) const
pure virtual

◆ getNumOfBranches()

template<class LabelDataType , class NodeType , class DataSet , class ExampleIndex >
virtual std::size_t pcl::StatsEstimator< LabelDataType, NodeType, DataSet, ExampleIndex >::getNumOfBranches ( ) const
pure virtual

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