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

OrganizedMultiPlaneSegmentation finds all planes present in the input cloud, and outputs a vector of plane equations, as well as a vector of point clouds corresponding to the inliers of each detected plane. More...

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

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

## Public Types

typedef pcl::PointCloud< PointT > | PointCloud
typedef PointCloud::Ptr | PointCloudPtr
typedef PointCloud::ConstPtr | 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 pcl::PlaneCoefficientComparator< PointT, PointNT > | PlaneComparator
typedef PlaneComparator::Ptr | PlaneComparatorPtr
typedef PlaneComparator::ConstPtr | PlaneComparatorConstPtr
typedef pcl::PlaneRefinementComparator< PointT, PointNT, PointLT > | PlaneRefinementComparator
typedef PlaneRefinementComparator::Ptr | PlaneRefinementComparatorPtr
typedef PlaneRefinementComparator::ConstPtr | PlaneRefinementComparatorConstPtr
Public Types inherited from pcl::PCLBase< PointT >
typedef pcl::PointCloud< PointT > | PointCloud
typedef PointCloud::Ptr | PointCloudPtr
typedef PointCloud::ConstPtr | PointCloudConstPtr
typedef boost::shared_ptr< PointIndices > | PointIndicesPtr
typedef boost::shared_ptr< PointIndices const > | PointIndicesConstPtr

## Public Member Functions

| OrganizedMultiPlaneSegmentation ()
| Constructor for OrganizedMultiPlaneSegmentation. More...
virtual | ~OrganizedMultiPlaneSegmentation ()
| Destructor for OrganizedMultiPlaneSegmentation. More...
void | setInputNormals (const PointCloudNConstPtr &normals)
| Provide a pointer to the input normals. More...
PointCloudNConstPtr | getInputNormals () const
| Get the input normals. More...
void | setMinInliers (unsigned min_inliers)
| Set the minimum number of inliers required for a plane. More...
unsigned | getMinInliers () const
| Get the minimum number of inliers required per plane. More...
void | setAngularThreshold (double angular_threshold)
| Set the tolerance in radians for difference in normal direction between neighboring points, to be considered part of the same plane. More...
double | 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 (double distance_threshold)
| 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...
double | 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...
void | setMaximumCurvature (double maximum_curvature)
| Set the maximum curvature allowed for a planar region. More...
double | getMaximumCurvature () const
| Get the maximum curvature allowed for a planar region. More...
void | setComparator (const PlaneComparatorPtr &compare)
| Provide a pointer to the comparator to be used for segmentation. More...
void | setRefinementComparator (const PlaneRefinementComparatorPtr &compare)
| Provide a pointer to the comparator to be used for refinement. More...
void | setProjectPoints (bool project_points)
| Set whether or not to project boundary points to the plane, or leave them in the original 3D space. More...
void | segment (std::vector< ModelCoefficients > &model_coefficients, std::vector< PointIndices > &inlier_indices, std::vector< Eigen::Vector4f, Eigen::aligned_allocator< Eigen::Vector4f > > &centroids, std::vector< Eigen::Matrix3f, Eigen::aligned_allocator< Eigen::Matrix3f > > &covariances, pcl::PointCloud< PointLT > &labels, std::vector< pcl::PointIndices > &label_indices)
| Segmentation of all planes in a point cloud given by setInputCloud(), setIndices() More...
void | segment (std::vector< ModelCoefficients > &model_coefficients, std::vector< PointIndices > &inlier_indices)
| Segmentation of all planes in a point cloud given by setInputCloud(), setIndices() More...
void | segment (std::vector< PlanarRegion< PointT >, Eigen::aligned_allocator< PlanarRegion< PointT > > > &regions)
| Segmentation of all planes in a point cloud given by setInputCloud(), setIndices() More...
void | segmentAndRefine (std::vector< PlanarRegion< PointT >, Eigen::aligned_allocator< PlanarRegion< PointT > > > &regions)
| Perform a segmentation, as well as an additional refinement step. More...
void | segmentAndRefine (std::vector< PlanarRegion< PointT >, Eigen::aligned_allocator< PlanarRegion< PointT > > > &regions, std::vector< ModelCoefficients > &model_coefficients, std::vector< PointIndices > &inlier_indices, PointCloudLPtr &labels, std::vector< pcl::PointIndices > &label_indices, std::vector< pcl::PointIndices > &boundary_indices)
| Perform a segmentation, as well as additional refinement step. More...
void | refine (std::vector< ModelCoefficients > &model_coefficients, std::vector< PointIndices > &inlier_indices, std::vector< Eigen::Vector4f, Eigen::aligned_allocator< Eigen::Vector4f > > &centroids, std::vector< Eigen::Matrix3f, Eigen::aligned_allocator< Eigen::Matrix3f > > &covariances, PointCloudLPtr &labels, std::vector< pcl::PointIndices > &label_indices)
| Perform a refinement of an initial segmentation, by comparing points to adjacent regions detected by the initial segmentation. More...
Public Member Functions inherited from pcl::PCLBase< PointT >
| PCLBase ()
| Empty constructor. More...
| PCLBase (const PCLBase &base)
| Copy constructor. More...
virtual | ~PCLBase ()
| Destructor. More...
virtual void | setInputCloud (const PointCloudConstPtr &cloud)
| Provide a pointer to the input dataset. More...
PointCloudConstPtr const | getInputCloud () const
| Get a pointer to the input point cloud dataset. More...
virtual void | setIndices (const IndicesPtr &indices)
| Provide a pointer to the vector of indices that represents the input data. More...
virtual void | setIndices (const IndicesConstPtr &indices)
| Provide a pointer to the vector of indices that represents the input data. More...
virtual void | setIndices (const PointIndicesConstPtr &indices)
| Provide a pointer to the vector of indices that represents the input data. More...
virtual void | setIndices (size_t row_start, size_t col_start, size_t nb_rows, size_t nb_cols)
| Set the indices for the points laying within an interest region of the point cloud. More...
IndicesPtr const | getIndices ()
| Get a pointer to the vector of indices used. More...
IndicesConstPtr const | getIndices () const
| Get a pointer to the vector of indices used. More...
const PointT & | operator[] (size_t pos) const
| Override PointCloud operator[] to shorten code. More...

## Protected Member Functions

virtual std::string | getClassName () const
| Class getName method. More...
Protected Member Functions inherited from pcl::PCLBase< PointT >
bool | initCompute ()
| This method should get called before starting the actual computation. More...
bool | deinitCompute ()
| This method should get called after finishing the actual computation. More...

## Protected Attributes

PointCloudNConstPtr | normals_
| A pointer to the input normals. More...
unsigned | min_inliers_
| The minimum number of inliers required for each plane. More...
double | angular_threshold_
| The tolerance in radians for difference in normal direction between neighboring points, to be considered part of the same plane. More...
double | distance_threshold_
| 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...
double | maximum_curvature_
| The tolerance for maximum curvature after fitting a plane. More...
bool | project_points_
| Whether or not points should be projected to the plane, or left in the original 3D space. More...
PlaneComparatorPtr | compare_
| A comparator for comparing neighboring pixels' plane equations. More...
PlaneRefinementComparatorPtr | refinement_compare_
| A comparator for use on the refinement step. More...
Protected Attributes inherited from pcl::PCLBase< PointT >
PointCloudConstPtr | input_
| The input point cloud dataset. More...
IndicesPtr | indices_
| A pointer to the vector of point indices to use. More...
bool | use_indices_
| Set to true if point indices are used. More...
bool | fake_indices_
| If no set of indices are given, we construct a set of fake indices that mimic the input PointCloud. More...

## Detailed Description

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

OrganizedMultiPlaneSegmentation finds all planes present in the input cloud, and outputs a vector of plane equations, as well as a vector of point clouds corresponding to the inliers of each detected plane.

Only planes with more than min_inliers points are detected. Templated on point type, normal type, and label type

Author
  Alex Trevor, Suat Gedikli

Definition at line 62 of file organized_multi_plane_segmentation.h.

## Member Typedef Documentation

## PlaneComparator

template<typename PointT, typename PointNT, typename PointLT>

typedef pcl::PlaneCoefficientComparator<PointT, PointNT> pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::PlaneComparator

Definition at line 82 of file organized_multi_plane_segmentation.h.

## PlaneComparatorConstPtr

template<typename PointT, typename PointNT, typename PointLT>

typedef PlaneComparator::ConstPtr pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::PlaneComparatorConstPtr

Definition at line 84 of file organized_multi_plane_segmentation.h.

## PlaneComparatorPtr

template<typename PointT, typename PointNT, typename PointLT>

typedef PlaneComparator::Ptr pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::PlaneComparatorPtr

Definition at line 83 of file organized_multi_plane_segmentation.h.

## PlaneRefinementComparator

template<typename PointT, typename PointNT, typename PointLT>

typedef pcl::PlaneRefinementComparator<PointT, PointNT, PointLT> pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::PlaneRefinementComparator

Definition at line 86 of file organized_multi_plane_segmentation.h.

## PlaneRefinementComparatorConstPtr

template<typename PointT, typename PointNT, typename PointLT>

typedef PlaneRefinementComparator::ConstPtr pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::PlaneRefinementComparatorConstPtr

Definition at line 88 of file organized_multi_plane_segmentation.h.

## PlaneRefinementComparatorPtr

template<typename PointT, typename PointNT, typename PointLT>

typedef PlaneRefinementComparator::Ptr pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::PlaneRefinementComparatorPtr

Definition at line 87 of file organized_multi_plane_segmentation.h.

## PointCloud

template<typename PointT, typename PointNT, typename PointLT>

typedef pcl::PointCloud<PointT> pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::PointCloud

Definition at line 70 of file organized_multi_plane_segmentation.h.

## PointCloudConstPtr

template<typename PointT, typename PointNT, typename PointLT>

typedef PointCloud::ConstPtr pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::PointCloudConstPtr

Definition at line 72 of file organized_multi_plane_segmentation.h.

## PointCloudL

template<typename PointT, typename PointNT, typename PointLT>

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

Definition at line 78 of file organized_multi_plane_segmentation.h.

## PointCloudLConstPtr

template<typename PointT, typename PointNT, typename PointLT>

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

Definition at line 80 of file organized_multi_plane_segmentation.h.

## PointCloudLPtr

template<typename PointT, typename PointNT, typename PointLT>

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

Definition at line 79 of file organized_multi_plane_segmentation.h.

## PointCloudN

template<typename PointT, typename PointNT, typename PointLT>

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

Definition at line 74 of file organized_multi_plane_segmentation.h.

## PointCloudNConstPtr

template<typename PointT, typename PointNT, typename PointLT>

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

Definition at line 76 of file organized_multi_plane_segmentation.h.

## PointCloudNPtr

template<typename PointT, typename PointNT, typename PointLT>

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

Definition at line 75 of file organized_multi_plane_segmentation.h.

## PointCloudPtr

template<typename PointT, typename PointNT, typename PointLT>

typedef PointCloud::Ptr pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::PointCloudPtr

Definition at line 71 of file organized_multi_plane_segmentation.h.

## Constructor & Destructor Documentation

## OrganizedMultiPlaneSegmentation()

template<typename PointT, typename PointNT, typename PointLT>

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

inline

Constructor for OrganizedMultiPlaneSegmentation.

Definition at line 91 of file organized_multi_plane_segmentation.h.

## ~OrganizedMultiPlaneSegmentation()

template<typename PointT, typename PointNT, typename PointLT>

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

inline virtual

Destructor for OrganizedMultiPlaneSegmentation.

Definition at line 104 of file organized_multi_plane_segmentation.h.

## Member Function Documentation

## getAngularThreshold()

template<typename PointT, typename PointNT, typename PointLT>

double pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::getAngularThreshold | ( |  | ) | const

inline

Get the angular threshold in radians for difference in normal direction between neighboring points, to be considered part of the same plane.

Definition at line 151 of file organized_multi_plane_segmentation.h.

## getClassName()

template<typename PointT, typename PointNT, typename PointLT>

virtual std::string pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::getClassName | ( |  | ) | const

inline protected virtual

Class getName method.

Definition at line 312 of file organized_multi_plane_segmentation.h.

## getDistanceThreshold()

template<typename PointT, typename PointNT, typename PointLT>

double pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::getDistanceThreshold | ( |  | ) | const

inline

Get the distance threshold in meters (d component of plane equation) between neighboring points, to be considered part of the same plane.

Definition at line 167 of file organized_multi_plane_segmentation.h.

## getInputNormals()

template<typename PointT, typename PointNT, typename PointLT>

PointCloudNConstPtr pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::getInputNormals | ( |  | ) | const

inline

Get the input normals.

Definition at line 119 of file organized_multi_plane_segmentation.h.

## getMaximumCurvature()

template<typename PointT, typename PointNT, typename PointLT>

double pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::getMaximumCurvature | ( |  | ) | const

inline

Get the maximum curvature allowed for a planar region.

Definition at line 183 of file organized_multi_plane_segmentation.h.

## getMinInliers()

template<typename PointT, typename PointNT, typename PointLT>

unsigned pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::getMinInliers | ( |  | ) | const

inline

Get the minimum number of inliers required per plane.

Definition at line 135 of file organized_multi_plane_segmentation.h.

## refine()

template<typename PointT , typename PointNT , typename PointLT >

void pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::refine | ( | std::vector< ModelCoefficients > & | model_coefficients,
|  | std::vector< PointIndices > & | inlier_indices,
|  | std::vector< Eigen::Vector4f, Eigen::aligned_allocator< Eigen::Vector4f > > & | centroids,
|  | std::vector< Eigen::Matrix3f, Eigen::aligned_allocator< Eigen::Matrix3f > > & | covariances,
|  | PointCloudLPtr & | labels,
|  | std::vector< pcl::PointIndices > & | label_indices
| ) |  |

Perform a refinement of an initial segmentation, by comparing points to adjacent regions detected by the initial segmentation.

Parameters

  [in] | model_coefficients | The list of segmented model coefficients
  [in] | inlier_indices | The list of segmented inlier indices, corresponding to each model
  [in] | centroids | The list of centroids corresponding to each segmented plane
  [in] | covariances | The list of covariances corresponding to each segemented plane
  [in] | labels | The labels produced by the initial segmentation
  [in] | label_indices | The list of indices corresponding to each label

Definition at line 313 of file organized_multi_plane_segmentation.hpp.

Referenced by pcl::OrganizedMultiPlaneSegmentation< pcl::PointXYZRGBA, pcl::Normal, pcl::Label >::setProjectPoints().

## segment() [1/3]

template<typename PointT , typename PointNT , typename PointLT>

void pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::segment | ( | std::vector< ModelCoefficients > & | model_coefficients,
|  | std::vector< PointIndices > & | inlier_indices,
|  | std::vector< Eigen::Vector4f, Eigen::aligned_allocator< Eigen::Vector4f > > & | centroids,
|  | std::vector< Eigen::Matrix3f, Eigen::aligned_allocator< Eigen::Matrix3f > > & | covariances,
|  | pcl::PointCloud< PointLT > & | labels,
|  | std::vector< pcl::PointIndices > & | label_indices
| ) |  |

Segmentation of all planes in a point cloud given by setInputCloud(), setIndices()

Parameters

  [out] | model_coefficients | a vector of model_coefficients for each plane found in the input cloud
  [out] | inlier_indices | a vector of inliers for each detected plane
  [out] | centroids | a vector of centroids for each plane
  [out] | covariances | a vector of covariance matricies for the inliers of each plane
  [out] | labels | a point cloud for the connected component labels of each pixel
  [out] | label_indices | a vector of PointIndices for each labeled component

Definition at line 84 of file organized_multi_plane_segmentation.hpp.

Referenced by pcl::OrganizedMultiPlaneSegmentation< pcl::PointXYZRGBA, pcl::Normal, pcl::Label >::setProjectPoints().

## segment() [2/3]

template<typename PointT , typename PointNT , typename PointLT>

void pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::segment | ( | std::vector< ModelCoefficients > & | model_coefficients,
|  | std::vector< PointIndices > & | inlier_indices
| ) |  |

Segmentation of all planes in a point cloud given by setInputCloud(), setIndices()

Parameters

  [out] | model_coefficients | a vector of model_coefficients for each plane found in the input cloud
  [out] | inlier_indices | a vector of inliers for each detected plane

Definition at line 72 of file organized_multi_plane_segmentation.hpp.

## segment() [3/3]

template<typename PointT, typename PointNT , typename PointLT>

void pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::segment | ( | std::vector< PlanarRegion< PointT >, Eigen::aligned_allocator< PlanarRegion< PointT > > > & | regions | ) |

Segmentation of all planes in a point cloud given by setInputCloud(), setIndices()

Parameters

  [out] | regions | a list of resultant planar polygonal regions

Definition at line 188 of file organized_multi_plane_segmentation.hpp.

## segmentAndRefine() [1/2]

template<typename PointT, typename PointNT , typename PointLT >

void pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::segmentAndRefine | ( | std::vector< PlanarRegion< PointT >, Eigen::aligned_allocator< PlanarRegion< PointT > > > & | regions | ) |

Perform a segmentation, as well as an additional refinement step.

This helps with including points whose normals may not match neighboring points well, but may match the planar model well.

Parameters

  [out] | regions | A list of regions generated by segmentation and refinement.

Definition at line 225 of file organized_multi_plane_segmentation.hpp.

Referenced by pcl::OrganizedMultiPlaneSegmentation< pcl::PointXYZRGBA, pcl::Normal, pcl::Label >::setProjectPoints().

## segmentAndRefine() [2/2]

template<typename PointT, typename PointNT , typename PointLT >

void pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::segmentAndRefine | ( | std::vector< PlanarRegion< PointT >, Eigen::aligned_allocator< PlanarRegion< PointT > > > & | regions,
|  | std::vector< ModelCoefficients > & | model_coefficients,
|  | std::vector< PointIndices > & | inlier_indices,
|  | PointCloudLPtr & | labels,
|  | std::vector< pcl::PointIndices > & | label_indices,
|  | std::vector< pcl::PointIndices > & | boundary_indices
| ) |  |

Perform a segmentation, as well as additional refinement step.

Returns intermediate data structures for use in subsequent processing.

Parameters

  [out] | regions | A vector of PlanarRegions generated by segmentation
  [out] | model_coefficients | A vector of model coefficients for each segmented plane
  [out] | inlier_indices | A vector of PointIndices, indicating the inliers to each segmented plane
  [out] | labels | A PointCloud<PointLT> corresponding to the resulting segmentation.
  [out] | label_indices | A vector of PointIndices for each label
  [out] | boundary_indices | A vector of PointIndices corresponding to the outer boundary / contour of each label

Definition at line 269 of file organized_multi_plane_segmentation.hpp.

## setAngularThreshold()

template<typename PointT, typename PointNT, typename PointLT>

void pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::setAngularThreshold | ( | double | angular_threshold | ) |

inline

Set the tolerance in radians for difference in normal direction between neighboring points, to be considered part of the same plane.

Parameters

  [in] | angular_threshold | the tolerance in radians

Definition at line 144 of file organized_multi_plane_segmentation.h.

Referenced by pcl::gpu::people::OrganizedPlaneDetector::setMpsAngularThreshold().

## setComparator()

template<typename PointT, typename PointNT, typename PointLT>

void pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::setComparator | ( | const PlaneComparatorPtr & | compare | ) |

inline

Provide a pointer to the comparator to be used for segmentation.

Parameters

  [in] | compare | A pointer to the comparator to be used for segmentation.

Definition at line 192 of file organized_multi_plane_segmentation.h.

## setDistanceThreshold()

template<typename PointT, typename PointNT, typename PointLT>

void pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::setDistanceThreshold | ( | double | distance_threshold | ) |

inline

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.

Parameters

  [in] | distance_threshold | the tolerance in meters

Definition at line 160 of file organized_multi_plane_segmentation.h.

Referenced by pcl::gpu::people::OrganizedPlaneDetector::setMpsDistanceThreshold().

## setInputNormals()

template<typename PointT, typename PointNT, typename PointLT>

void pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::setInputNormals | ( | const PointCloudNConstPtr & | normals | ) |

inline

Provide a pointer to the input normals.

Parameters

  [in] | normals | the input normal cloud

Definition at line 112 of file organized_multi_plane_segmentation.h.

## setMaximumCurvature()

template<typename PointT, typename PointNT, typename PointLT>

void pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::setMaximumCurvature | ( | double | maximum_curvature | ) |

inline

Set the maximum curvature allowed for a planar region.

Parameters

  [in] | maximum_curvature | the maximum curvature

Definition at line 176 of file organized_multi_plane_segmentation.h.

## setMinInliers()

template<typename PointT, typename PointNT, typename PointLT>

void pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::setMinInliers | ( | unsigned | min_inliers | ) |

inline

Set the minimum number of inliers required for a plane.

Parameters

  [in] | min_inliers | the minimum number of inliers required per plane

Definition at line 128 of file organized_multi_plane_segmentation.h.

Referenced by pcl::gpu::people::OrganizedPlaneDetector::setMpsMinInliers().

## setProjectPoints()

template<typename PointT, typename PointNT, typename PointLT>

void pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::setProjectPoints | ( | bool | project_points | ) |

inline

Set whether or not to project boundary points to the plane, or leave them in the original 3D space.

Parameters

  [in] | project_points | true if points should be projected, false if not.

Definition at line 210 of file organized_multi_plane_segmentation.h.

## setRefinementComparator()

template<typename PointT, typename PointNT, typename PointLT>

void pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::setRefinementComparator | ( | const PlaneRefinementComparatorPtr & | compare | ) |

inline

Provide a pointer to the comparator to be used for refinement.

Parameters

  [in] | compare | A pointer to the comparator to be used for refinement.

Definition at line 201 of file organized_multi_plane_segmentation.h.

## Member Data Documentation

## angular_threshold_

template<typename PointT, typename PointNT, typename PointLT>

double pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::angular_threshold_

protected

The tolerance in radians for difference in normal direction between neighboring points, to be considered part of the same plane.

Definition at line 293 of file organized_multi_plane_segmentation.h.

Referenced by pcl::OrganizedMultiPlaneSegmentation< pcl::PointXYZRGBA, pcl::Normal, pcl::Label >::getAngularThreshold(), and pcl::OrganizedMultiPlaneSegmentation< pcl::PointXYZRGBA, pcl::Normal, pcl::Label >::setAngularThreshold().

## compare_

template<typename PointT, typename PointNT, typename PointLT>

PlaneComparatorPtr pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::compare_

protected

A comparator for comparing neighboring pixels' plane equations.

Definition at line 305 of file organized_multi_plane_segmentation.h.

Referenced by pcl::OrganizedMultiPlaneSegmentation< pcl::PointXYZRGBA, pcl::Normal, pcl::Label >::setComparator().

## distance_threshold_

template<typename PointT, typename PointNT, typename PointLT>

double pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::distance_threshold_

protected

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.

Definition at line 296 of file organized_multi_plane_segmentation.h.

Referenced by pcl::OrganizedMultiPlaneSegmentation< pcl::PointXYZRGBA, pcl::Normal, pcl::Label >::getDistanceThreshold(), and pcl::OrganizedMultiPlaneSegmentation< pcl::PointXYZRGBA, pcl::Normal, pcl::Label >::setDistanceThreshold().

## maximum_curvature_

template<typename PointT, typename PointNT, typename PointLT>

double pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::maximum_curvature_

protected

The tolerance for maximum curvature after fitting a plane.

Used to remove smooth, but non-planar regions.

Definition at line 299 of file organized_multi_plane_segmentation.h.

Referenced by pcl::OrganizedMultiPlaneSegmentation< pcl::PointXYZRGBA, pcl::Normal, pcl::Label >::getMaximumCurvature(), and pcl::OrganizedMultiPlaneSegmentation< pcl::PointXYZRGBA, pcl::Normal, pcl::Label >::setMaximumCurvature().

## min_inliers_

template<typename PointT, typename PointNT, typename PointLT>

unsigned pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::min_inliers_

protected

The minimum number of inliers required for each plane.

Definition at line 290 of file organized_multi_plane_segmentation.h.

Referenced by pcl::OrganizedMultiPlaneSegmentation< pcl::PointXYZRGBA, pcl::Normal, pcl::Label >::getMinInliers(), and pcl::OrganizedMultiPlaneSegmentation< pcl::PointXYZRGBA, pcl::Normal, pcl::Label >::setMinInliers().

## normals_

template<typename PointT, typename PointNT, typename PointLT>

PointCloudNConstPtr pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::normals_

protected

A pointer to the input normals.

Definition at line 287 of file organized_multi_plane_segmentation.h.

Referenced by pcl::OrganizedMultiPlaneSegmentation< pcl::PointXYZRGBA, pcl::Normal, pcl::Label >::getInputNormals(), and pcl::OrganizedMultiPlaneSegmentation< pcl::PointXYZRGBA, pcl::Normal, pcl::Label >::setInputNormals().

## project_points_

template<typename PointT, typename PointNT, typename PointLT>

bool pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::project_points_

protected

Whether or not points should be projected to the plane, or left in the original 3D space.

Definition at line 302 of file organized_multi_plane_segmentation.h.

Referenced by pcl::OrganizedMultiPlaneSegmentation< pcl::PointXYZRGBA, pcl::Normal, pcl::Label >::setProjectPoints().

## refinement_compare_

template<typename PointT, typename PointNT, typename PointLT>

PlaneRefinementComparatorPtr pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::refinement_compare_

protected

A comparator for use on the refinement step.

Compares points to regions segmented in the first pass.

Definition at line 308 of file organized_multi_plane_segmentation.h.

Referenced by pcl::OrganizedMultiPlaneSegmentation< pcl::PointXYZRGBA, pcl::Normal, pcl::Label >::setRefinementComparator().

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

- /build/pcl-qv3n_B/pcl-1.8.1+dfsg1/segmentation/include/pcl/segmentation/organized_multi_plane_segmentation.h
- /build/pcl-qv3n_B/pcl-1.8.1+dfsg1/segmentation/include/pcl/segmentation/impl/organized_multi_plane_segmentation.hpp