pcl::PlaneRefinementComparator< PointT, PointNT, PointLT > Class Template Reference

PlaneRefinementComparator is a Comparator that operates on plane coefficients, for use in planar segmentation. More...

`#include <pcl/segmentation/plane_refinement_comparator.h>`

Inheritance diagram for pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >:

## Public Types

typedef Comparator< PointT >::PointCloud | PointCloud
typedef Comparator< PointT >::PointCloudConstPtr | PointCloudConstPtr
typedef pcl::PointCloud< PointNT > | PointCloudN
typedef PointCloudN::Ptr | PointCloudNPtr
typedef PointCloudN::ConstPtr | PointCloudNConstPtr
typedef pcl::PointCloud< PointLT > | PointCloudL
typedef PointCloudL::Ptr | PointCloudLPtr
typedef PointCloudL::ConstPtr | PointCloudLConstPtr
typedef boost::shared_ptr< PlaneRefinementComparator< PointT, PointNT, PointLT > > | Ptr
typedef boost::shared_ptr< const PlaneRefinementComparator< PointT, PointNT, PointLT > > | ConstPtr
Public Types inherited from pcl::PlaneCoefficientComparator< PointT, PointNT >
typedef Comparator< PointT >::PointCloud | PointCloud
typedef Comparator< PointT >::PointCloudConstPtr | PointCloudConstPtr
typedef pcl::PointCloud< PointNT > | PointCloudN
typedef PointCloudN::Ptr | PointCloudNPtr
typedef PointCloudN::ConstPtr | PointCloudNConstPtr
typedef boost::shared_ptr< PlaneCoefficientComparator< PointT, PointNT > > | Ptr
typedef boost::shared_ptr< const PlaneCoefficientComparator< PointT, PointNT > > | ConstPtr
Public Types inherited from pcl::Comparator< PointT >
typedef pcl::PointCloud< PointT > | PointCloud
typedef PointCloud::Ptr | PointCloudPtr
typedef PointCloud::ConstPtr | PointCloudConstPtr
typedef boost::shared_ptr< Comparator< PointT > > | Ptr
typedef boost::shared_ptr< const Comparator< PointT > > | ConstPtr

## Public Member Functions

| PlaneRefinementComparator ()
| Empty constructor for PlaneCoefficientComparator. More...
| PlaneRefinementComparator (boost::shared_ptr< std::vector< pcl::ModelCoefficients > > &models, boost::shared_ptr< std::vector< bool > > &refine_labels)
| Empty constructor for PlaneCoefficientComparator. More...
virtual | ~PlaneRefinementComparator ()
| Destructor for PlaneCoefficientComparator. More...
void | setModelCoefficients (boost::shared_ptr< std::vector< pcl::ModelCoefficients > > &models)
| Set the vector of model coefficients to which we will compare. More...
void | setModelCoefficients (std::vector< pcl::ModelCoefficients > &models)
| Set the vector of model coefficients to which we will compare. More...
void | setRefineLabels (boost::shared_ptr< std::vector< bool > > &refine_labels)
| Set which labels should be refined. More...
void | setRefineLabels (std::vector< bool > &refine_labels)
| Set which labels should be refined. More...
void | setLabelToModel (boost::shared_ptr< std::vector< int > > &label_to_model)
| A mapping from label to index in the vector of models, allowing the model coefficients of a label to be accessed. More...
void | setLabelToModel (std::vector< int > &label_to_model)
| A mapping from label to index in the vector of models, allowing the model coefficients of a label to be accessed. More...
boost::shared_ptr< std::vector< pcl::ModelCoefficients > > | getModelCoefficients () const
| Get the vector of model coefficients to which we will compare. More...
void | setLabels (PointCloudLPtr &labels)
| ... More...
virtual bool | compare (int idx1, int idx2) const
| Compare two neighboring points. More...
Public Member Functions inherited from pcl::PlaneCoefficientComparator< PointT, PointNT >
| PlaneCoefficientComparator ()
| Empty constructor for PlaneCoefficientComparator. More...
| PlaneCoefficientComparator (boost::shared_ptr< std::vector< float > > &plane_coeff_d)
| Constructor for PlaneCoefficientComparator. More...
virtual | ~PlaneCoefficientComparator ()
| Destructor for PlaneCoefficientComparator. More...
virtual void | setInputCloud (const PointCloudConstPtr &cloud)
| Set the input cloud for the comparator. More...
void | setInputNormals (const PointCloudNConstPtr &normals)
| Provide a pointer to the input normals. More...
PointCloudNConstPtr | getInputNormals () const
| Get the input normals. More...
void | setPlaneCoeffD (boost::shared_ptr< std::vector< float > > &plane_coeff_d)
| Provide a pointer to a vector of the d-coefficient of the planes' hessian normal form. More...
void | setPlaneCoeffD (std::vector< float > &plane_coeff_d)
| Provide a pointer to a vector of the d-coefficient of the planes' hessian normal form. More...
const std::vector< float > & | getPlaneCoeffD () const
| Get a pointer to the vector of the d-coefficient of the planes' hessian normal form. More...
virtual void | setAngularThreshold (float angular_threshold)
| Set the tolerance in radians for difference in normal direction between neighboring points, to be considered part of the same plane. More...
float | getAngularThreshold () const
| Get the angular threshold in radians for difference in normal direction between neighboring points, to be considered part of the same plane. More...
void | setDistanceThreshold (float distance_threshold, bool depth_dependent=false)
| Set the tolerance in meters for difference in perpendicular distance (d component of plane equation) to the plane between neighboring points, to be considered part of the same plane. More...
float | getDistanceThreshold () const
| Get the distance threshold in meters (d component of plane equation) between neighboring points, to be considered part of the same plane. More...
Public Member Functions inherited from pcl::Comparator< PointT >
| Comparator ()
| Empty constructor for comparator. More...
virtual | ~Comparator ()
| Empty destructor for comparator. More...
virtual PointCloudConstPtr | getInputCloud () const
| Get the input cloud this comparator operates on. More...

## Protected Attributes

boost::shared_ptr< std::vector< pcl::ModelCoefficients > > | models_
PointCloudLPtr | labels_
boost::shared_ptr< std::vector< bool > > | refine_labels_
boost::shared_ptr< std::vector< int > > | label_to_model_
bool | depth_dependent_
Protected Attributes inherited from pcl::PlaneCoefficientComparator< PointT, PointNT >
PointCloudNConstPtr | normals_
boost::shared_ptr< std::vector< float > > | plane_coeff_d_
float | angular_threshold_
float | distance_threshold_
bool | depth_dependent_
Eigen::Vector3f | z_axis_
Protected Attributes inherited from pcl::Comparator< PointT >
PointCloudConstPtr | input_

## Detailed Description

### template<typename PointT, typename PointNT, typename PointLT>
class pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >

PlaneRefinementComparator is a Comparator that operates on plane coefficients, for use in planar segmentation.

In conjunction with OrganizedConnectedComponentSegmentation, this allows planes to be segmented from organized data.

Author
  Alex Trevor, Suat Gedikli

Definition at line 55 of file plane_refinement_comparator.h.

## Member Typedef Documentation

template<typename PointT , typename PointNT , typename PointLT >

typedef boost::shared_ptr<const PlaneRefinementComparator<PointT, PointNT, PointLT> > pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::ConstPtr

Definition at line 70 of file plane_refinement_comparator.h.

template<typename PointT , typename PointNT , typename PointLT >

typedef Comparator<PointT>::PointCloud pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::PointCloud

Definition at line 58 of file plane_refinement_comparator.h.

template<typename PointT , typename PointNT , typename PointLT >

typedef Comparator<PointT>::PointCloudConstPtr pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::PointCloudConstPtr

Definition at line 59 of file plane_refinement_comparator.h.

template<typename PointT , typename PointNT , typename PointLT >

typedef pcl::PointCloud<PointLT> pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::PointCloudL

Definition at line 65 of file plane_refinement_comparator.h.

template<typename PointT , typename PointNT , typename PointLT >

typedef PointCloudL::ConstPtr pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::PointCloudLConstPtr

Definition at line 67 of file plane_refinement_comparator.h.

template<typename PointT , typename PointNT , typename PointLT >

typedef PointCloudL::Ptr pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::PointCloudLPtr

Definition at line 66 of file plane_refinement_comparator.h.

template<typename PointT , typename PointNT , typename PointLT >

typedef pcl::PointCloud<PointNT> pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::PointCloudN

Definition at line 61 of file plane_refinement_comparator.h.

template<typename PointT , typename PointNT , typename PointLT >

typedef PointCloudN::ConstPtr pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::PointCloudNConstPtr

Definition at line 63 of file plane_refinement_comparator.h.

template<typename PointT , typename PointNT , typename PointLT >

typedef PointCloudN::Ptr pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::PointCloudNPtr

Definition at line 62 of file plane_refinement_comparator.h.

template<typename PointT , typename PointNT , typename PointLT >

typedef boost::shared_ptr<PlaneRefinementComparator<PointT, PointNT, PointLT> > pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::Ptr

Definition at line 69 of file plane_refinement_comparator.h.

## Constructor & Destructor Documentation

template<typename PointT , typename PointNT , typename PointLT >

pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::PlaneRefinementComparator | ( |  | ) |

inline

Empty constructor for PlaneCoefficientComparator.

Definition at line 79 of file plane_refinement_comparator.h.

template<typename PointT , typename PointNT , typename PointLT >

pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::PlaneRefinementComparator | ( | boost::shared_ptr< std::vector< pcl::ModelCoefficients > > & | models,
|  | boost::shared_ptr< std::vector< bool > > & | refine_labels
| ) |  |

inline

Empty constructor for PlaneCoefficientComparator.

Parameters

  [in] | models |
  [in] | refine_labels |

Definition at line 92 of file plane_refinement_comparator.h.

template<typename PointT , typename PointNT , typename PointLT >

virtual pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::~PlaneRefinementComparator | ( |  | ) |

inline virtual

Destructor for PlaneCoefficientComparator.

Definition at line 104 of file plane_refinement_comparator.h.

## Member Function Documentation

template<typename PointT , typename PointNT , typename PointLT >

virtual bool pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::compare | ( | int | idx1,
|  | int | idx2
| ) |  | const

inline virtual

Compare two neighboring points.

Parameters

  [in] | idx1 | The index of the first point.
  [in] | idx2 | The index of the second point.

Reimplemented from pcl::PlaneCoefficientComparator< PointT, PointNT >.

Definition at line 183 of file plane_refinement_comparator.h.

References pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::depth_dependent_, pcl::PlaneCoefficientComparator< PointT, PointNT >::distance_threshold_, pcl::Comparator< PointT >::input_, pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::labels_, pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::refine_labels_, pcl::ModelCoefficients::values, and pcl::PlaneCoefficientComparator< PointT, PointNT >::z_axis_.

template<typename PointT , typename PointNT , typename PointLT >

boost::shared_ptr<std::vector<pcl::ModelCoefficients> > pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::getModelCoefficients | ( |  | ) | const

inline

Get the vector of model coefficients to which we will compare.

Definition at line 164 of file plane_refinement_comparator.h.

References pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::models_.

template<typename PointT , typename PointNT , typename PointLT >

void pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::setLabels | ( | PointCloudLPtr & | labels | ) |

inline

...

Parameters

  [in] | labels |

Definition at line 173 of file plane_refinement_comparator.h.

References pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::labels_.

template<typename PointT , typename PointNT , typename PointLT >

void pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::setLabelToModel | ( | boost::shared_ptr< std::vector< int > > & | label_to_model | ) |

inline

A mapping from label to index in the vector of models, allowing the model coefficients of a label to be accessed.

Parameters

  [in] | label_to_model | A vector of size max_label, with the index of each corresponding model in models

Definition at line 148 of file plane_refinement_comparator.h.

References pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::label_to_model_.

template<typename PointT , typename PointNT , typename PointLT >

void pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::setLabelToModel | ( | std::vector< int > & | label_to_model | ) |

inline

A mapping from label to index in the vector of models, allowing the model coefficients of a label to be accessed.

Parameters

  [in] | label_to_model | A vector of size max_label, with the index of each corresponding model in models

Definition at line 157 of file plane_refinement_comparator.h.

References pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::label_to_model_.

template<typename PointT , typename PointNT , typename PointLT >

void pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::setModelCoefficients | ( | boost::shared_ptr< std::vector< pcl::ModelCoefficients > > & | models | ) |

inline

Set the vector of model coefficients to which we will compare.

Parameters

  [in] | models | a vector of model coefficients produced by the initial segmentation step.

Definition at line 112 of file plane_refinement_comparator.h.

References pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::models_.

template<typename PointT , typename PointNT , typename PointLT >

void pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::setModelCoefficients | ( | std::vector< pcl::ModelCoefficients > & | models | ) |

inline

Set the vector of model coefficients to which we will compare.

Parameters

  [in] | models | a vector of model coefficients produced by the initial segmentation step.

Definition at line 121 of file plane_refinement_comparator.h.

References pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::models_.

template<typename PointT , typename PointNT , typename PointLT >

void pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::setRefineLabels | ( | boost::shared_ptr< std::vector< bool > > & | refine_labels | ) |

inline

Set which labels should be refined.

This is a vector of bools 0-max_label, true if the label should be refined.

Parameters

  [in] | refine_labels | A vector of bools 0-max_label, true if the label should be refined.

Definition at line 130 of file plane_refinement_comparator.h.

References pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::refine_labels_.

template<typename PointT , typename PointNT , typename PointLT >

void pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::setRefineLabels | ( | std::vector< bool > & | refine_labels | ) |

inline

Set which labels should be refined.

This is a vector of bools 0-max_label, true if the label should be refined.

Parameters

  [in] | refine_labels | A vector of bools 0-max_label, true if the label should be refined.

Definition at line 139 of file plane_refinement_comparator.h.

References pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::refine_labels_.

## Member Data Documentation

template<typename PointT , typename PointNT , typename PointLT >

bool pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::depth_dependent_

protected

Definition at line 218 of file plane_refinement_comparator.h.

Referenced by pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::compare().

template<typename PointT , typename PointNT , typename PointLT >

boost::shared_ptr<std::vector<int> > pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::label_to_model_

protected

Definition at line 217 of file plane_refinement_comparator.h.

Referenced by pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::setLabelToModel().

template<typename PointT , typename PointNT , typename PointLT >

PointCloudLPtr pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::labels_

protected

Definition at line 215 of file plane_refinement_comparator.h.

Referenced by pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::compare(), and pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::setLabels().

template<typename PointT , typename PointNT , typename PointLT >

boost::shared_ptr<std::vector<pcl::ModelCoefficients> > pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::models_

protected

Definition at line 214 of file plane_refinement_comparator.h.

Referenced by pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::getModelCoefficients(), and pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::setModelCoefficients().

template<typename PointT , typename PointNT , typename PointLT >

boost::shared_ptr<std::vector<bool> > pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::refine_labels_

protected

Definition at line 216 of file plane_refinement_comparator.h.

Referenced by pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::compare(), and pcl::PlaneRefinementComparator< PointT, PointNT, PointLT >::setRefineLabels().

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

- /build/pcl-6_P28C/pcl-1.7.2/segmentation/include/pcl/segmentation/plane_refinement_comparator.h