Point Cloud Library (PCL)  1.8.1-dev
List of all members | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes
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< PointTPointCloud
 
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< PointTPointCloud
 
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 PointToperator[] (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

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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.

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

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.

template<typename PointT, typename PointNT, typename PointLT>
virtual pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::~OrganizedMultiPlaneSegmentation ( )
inlinevirtual

Destructor for OrganizedMultiPlaneSegmentation.

Definition at line 104 of file organized_multi_plane_segmentation.h.

Member Function Documentation

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.

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

Class getName method.

Definition at line 312 of file organized_multi_plane_segmentation.h.

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.

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.

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.

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.

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_coefficientsThe list of segmented model coefficients
[in]inlier_indicesThe list of segmented inlier indices, corresponding to each model
[in]centroidsThe list of centroids corresponding to each segmented plane
[in]covariancesThe list of covariances corresponding to each segemented plane
[in]labelsThe labels produced by the initial segmentation
[in]label_indicesThe list of indices corresponding to each label

Definition at line 313 of file organized_multi_plane_segmentation.hpp.

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_coefficientsa vector of model_coefficients for each plane found in the input cloud
[out]inlier_indicesa vector of inliers for each detected plane
[out]centroidsa vector of centroids for each plane
[out]covariancesa vector of covariance matricies for the inliers of each plane
[out]labelsa point cloud for the connected component labels of each pixel
[out]label_indicesa vector of PointIndices for each labeled component

Definition at line 84 of file organized_multi_plane_segmentation.hpp.

References pcl::computeMeanAndCovarianceMatrix(), pcl::eigen33(), pcl::EIGEN_ALIGN16, pcl::OrganizedConnectedComponentSegmentation< PointT, PointLT >::segment(), pcl::PCLBase< PointT >::setInputCloud(), and pcl::ModelCoefficients::values.

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_coefficientsa vector of model_coefficients for each plane found in the input cloud
[out]inlier_indicesa vector of inliers for each detected plane

Definition at line 72 of file organized_multi_plane_segmentation.hpp.

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]regionsa list of resultant planar polygonal regions

Definition at line 188 of file organized_multi_plane_segmentation.hpp.

References pcl::OrganizedConnectedComponentSegmentation< PointT, PointLT >::findLabeledRegionBoundary(), pcl::PointCloud< T >::points, and pcl::PointCloud< T >::resize().

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]regionsA list of regions generated by segmentation and refinement.

Definition at line 225 of file organized_multi_plane_segmentation.hpp.

References pcl::OrganizedConnectedComponentSegmentation< PointT, PointLT >::findLabeledRegionBoundary(), pcl::PointCloud< T >::points, and pcl::PointCloud< T >::resize().

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]regionsA vector of PlanarRegions generated by segmentation
[out]model_coefficientsA vector of model coefficients for each segmented plane
[out]inlier_indicesA vector of PointIndices, indicating the inliers to each segmented plane
[out]labelsA PointCloud<PointLT> corresponding to the resulting segmentation.
[out]label_indicesA vector of PointIndices for each label
[out]boundary_indicesA vector of PointIndices corresponding to the outer boundary / contour of each label

Definition at line 269 of file organized_multi_plane_segmentation.hpp.

References pcl::OrganizedConnectedComponentSegmentation< PointT, PointLT >::findLabeledRegionBoundary(), pcl::PointCloud< T >::points, and pcl::PointCloud< T >::resize().

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_thresholdthe tolerance in radians

Definition at line 144 of file organized_multi_plane_segmentation.h.

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]compareA pointer to the comparator to be used for segmentation.

Definition at line 192 of file organized_multi_plane_segmentation.h.

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_thresholdthe tolerance in meters

Definition at line 160 of file organized_multi_plane_segmentation.h.

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]normalsthe input normal cloud

Definition at line 112 of file organized_multi_plane_segmentation.h.

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_curvaturethe maximum curvature

Definition at line 176 of file organized_multi_plane_segmentation.h.

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_inliersthe minimum number of inliers required per plane

Definition at line 128 of file organized_multi_plane_segmentation.h.

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_pointstrue if points should be projected, false if not.

Definition at line 210 of file organized_multi_plane_segmentation.h.

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]compareA pointer to the comparator to be used for refinement.

Definition at line 201 of file organized_multi_plane_segmentation.h.

Member Data Documentation

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::pcl::Normal, pcl::pcl::Label >::getAngularThreshold(), and pcl::OrganizedMultiPlaneSegmentation< pcl::PointXYZRGBA, pcl::pcl::Normal, pcl::pcl::Label >::setAngularThreshold().

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::pcl::Normal, pcl::pcl::Label >::setComparator().

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::pcl::Normal, pcl::pcl::Label >::getDistanceThreshold(), and pcl::OrganizedMultiPlaneSegmentation< pcl::PointXYZRGBA, pcl::pcl::Normal, pcl::pcl::Label >::setDistanceThreshold().

template<typename PointT, typename PointNT, typename PointLT>
double pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::maximum_curvature_
protected
template<typename PointT, typename PointNT, typename PointLT>
unsigned pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::min_inliers_
protected
template<typename PointT, typename PointNT, typename PointLT>
PointCloudNConstPtr pcl::OrganizedMultiPlaneSegmentation< PointT, PointNT, PointLT >::normals_
protected
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::pcl::Normal, pcl::pcl::Label >::setProjectPoints().

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::pcl::Normal, pcl::pcl::Label >::setRefinementComparator().


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