|
Point Cloud Library (PCL)
1.6.0
|
SACSegmentationFromNormals represents the PCL nodelet segmentation class for Sample Consensus methods and models that require the use of surface normals for estimation. More...
#include <pcl/segmentation/sac_segmentation.h>


Public Types | |
| typedef SACSegmentation < PointT >::PointCloud | PointCloud |
| typedef PointCloud::Ptr | PointCloudPtr |
| typedef PointCloud::ConstPtr | PointCloudConstPtr |
| typedef pcl::PointCloud< PointNT > | PointCloudN |
| typedef PointCloudN::Ptr | PointCloudNPtr |
| typedef PointCloudN::ConstPtr | PointCloudNConstPtr |
| typedef SampleConsensus < PointT >::Ptr | SampleConsensusPtr |
| typedef SampleConsensusModel < PointT >::Ptr | SampleConsensusModelPtr |
| typedef SampleConsensusModelFromNormals < PointT, PointNT >::Ptr | SampleConsensusModelFromNormalsPtr |
| typedef pcl::search::Search < PointT >::Ptr | SearchPtr |
| typedef PointIndices::Ptr | PointIndicesPtr |
| typedef PointIndices::ConstPtr | PointIndicesConstPtr |
Public Member Functions | |
| SACSegmentationFromNormals () | |
| Empty constructor. | |
| void | setInputNormals (const PointCloudNConstPtr &normals) |
| Provide a pointer to the input dataset that contains the point normals of the XYZ dataset. | |
| PointCloudNConstPtr | getInputNormals () const |
| Get a pointer to the normals of the input XYZ point cloud dataset. | |
| void | setNormalDistanceWeight (double distance_weight) |
| Set the relative weight (between 0 and 1) to give to the angular distance (0 to pi/2) between point normals and the plane normal. | |
| double | getNormalDistanceWeight () const |
| Get the relative weight (between 0 and 1) to give to the angular distance (0 to pi/2) between point normals and the plane normal. | |
| void | setMinMaxOpeningAngle (const double &min_angle, const double &max_angle) |
| Set the minimum opning angle for a cone model. | |
| void | getMinMaxOpeningAngle (double &min_angle, double &max_angle) |
| Get the opening angle which we need minumum to validate a cone model. | |
| void | setDistanceFromOrigin (const double d) |
| Set the distance we expect a plane model to be from the origin. | |
| double | getDistanceFromOrigin () const |
| Get the distance of a plane model from the origin. | |
| void | setModelType (int model) |
| The type of model to use (user given parameter). | |
| int | getModelType () const |
| Get the type of SAC model used. | |
| SampleConsensusPtr | getMethod () const |
| Get a pointer to the SAC method used. | |
| SampleConsensusModelPtr | getModel () const |
| Get a pointer to the SAC model used. | |
| void | setMethodType (int method) |
| The type of sample consensus method to use (user given parameter). | |
| int | getMethodType () const |
| Get the type of sample consensus method used. | |
| void | setDistanceThreshold (double threshold) |
| Distance to the model threshold (user given parameter). | |
| double | getDistanceThreshold () const |
| Get the distance to the model threshold. | |
| void | setMaxIterations (int max_iterations) |
| Set the maximum number of iterations before giving up. | |
| int | getMaxIterations () const |
| Get maximum number of iterations before giving up. | |
| void | setProbability (double probability) |
| Set the probability of choosing at least one sample free from outliers. | |
| double | getProbability () const |
| Get the probability of choosing at least one sample free from outliers. | |
| void | setOptimizeCoefficients (bool optimize) |
| Set to true if a coefficient refinement is required. | |
| bool | getOptimizeCoefficients () const |
| Get the coefficient refinement internal flag. | |
| void | setRadiusLimits (const double &min_radius, const double &max_radius) |
| Set the minimum and maximum allowable radius limits for the model (applicable to models that estimate a radius) | |
| void | getRadiusLimits (double &min_radius, double &max_radius) |
| Get the minimum and maximum allowable radius limits for the model as set by the user. | |
| void | setSamplesMaxDist (const double &radius, SearchPtr search) |
| Set the maximum distance allowed when drawing random samples. | |
| void | getSamplesMaxDist (double &radius) |
| Get maximum distance allowed when drawing random samples. | |
| void | setAxis (const Eigen::Vector3f &ax) |
| Set the axis along which we need to search for a model perpendicular to. | |
| Eigen::Vector3f | getAxis () const |
| Get the axis along which we need to search for a model perpendicular to. | |
| void | setEpsAngle (double ea) |
| Set the angle epsilon (delta) threshold. | |
| double | getEpsAngle () const |
| Get the epsilon (delta) model angle threshold in radians. | |
| virtual void | segment (PointIndices &inliers, ModelCoefficients &model_coefficients) |
| Base method for segmentation of a model in a PointCloud given by <setInputCloud (), setIndices ()> | |
| virtual void | setInputCloud (const PointCloudConstPtr &cloud) |
| Provide a pointer to the input dataset. | |
| PointCloudConstPtr const | getInputCloud () |
| Get a pointer to the input point cloud dataset. | |
| void | setIndices (const IndicesPtr &indices) |
| Provide a pointer to the vector of indices that represents the input data. | |
| void | setIndices (const IndicesConstPtr &indices) |
| Provide a pointer to the vector of indices that represents the input data. | |
| void | setIndices (const PointIndicesConstPtr &indices) |
| Provide a pointer to the vector of indices that represents the input data. | |
| 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. | |
| IndicesPtr const | getIndices () |
| Get a pointer to the vector of indices used. | |
| const PointT & | operator[] (size_t pos) |
| Override PointCloud operator[] to shorten code. | |
SACSegmentationFromNormals represents the PCL nodelet segmentation class for Sample Consensus methods and models that require the use of surface normals for estimation.
Definition at line 294 of file sac_segmentation.h.
| typedef SACSegmentation<PointT>::PointCloud pcl::SACSegmentationFromNormals< PointT, PointNT >::PointCloud |
Reimplemented from pcl::SACSegmentation< PointT >.
Definition at line 307 of file sac_segmentation.h.
| typedef PointCloud::ConstPtr pcl::SACSegmentationFromNormals< PointT, PointNT >::PointCloudConstPtr |
Reimplemented from pcl::SACSegmentation< PointT >.
Definition at line 309 of file sac_segmentation.h.
| typedef pcl::PointCloud<PointNT> pcl::SACSegmentationFromNormals< PointT, PointNT >::PointCloudN |
Definition at line 311 of file sac_segmentation.h.
| typedef PointCloudN::ConstPtr pcl::SACSegmentationFromNormals< PointT, PointNT >::PointCloudNConstPtr |
Definition at line 313 of file sac_segmentation.h.
| typedef PointCloudN::Ptr pcl::SACSegmentationFromNormals< PointT, PointNT >::PointCloudNPtr |
Definition at line 312 of file sac_segmentation.h.
| typedef PointCloud::Ptr pcl::SACSegmentationFromNormals< PointT, PointNT >::PointCloudPtr |
Reimplemented from pcl::SACSegmentation< PointT >.
Definition at line 308 of file sac_segmentation.h.
typedef PointIndices::ConstPtr pcl::PCLBase< PointT >::PointIndicesConstPtr [inherited] |
Reimplemented in pcl::EuclideanClusterExtraction< PointT >, pcl::ExtractPolygonalPrismData< PointT >, pcl::SegmentDifferences< PointT >, pcl::LabeledEuclideanClusterExtraction< PointT >, pcl::SampleConsensusInitialAlignment< PointSource, PointTarget, FeatureT >, and pcl::PCA< PointT >.
Definition at line 79 of file pcl_base.h.
typedef PointIndices::Ptr pcl::PCLBase< PointT >::PointIndicesPtr [inherited] |
Reimplemented in pcl::EuclideanClusterExtraction< PointT >, pcl::ExtractPolygonalPrismData< PointT >, pcl::SegmentDifferences< PointT >, pcl::LabeledEuclideanClusterExtraction< PointT >, pcl::SampleConsensusInitialAlignment< PointSource, PointTarget, FeatureT >, and pcl::PCA< PointT >.
Definition at line 78 of file pcl_base.h.
| typedef SampleConsensusModelFromNormals<PointT, PointNT>::Ptr pcl::SACSegmentationFromNormals< PointT, PointNT >::SampleConsensusModelFromNormalsPtr |
Definition at line 317 of file sac_segmentation.h.
| typedef SampleConsensusModel<PointT>::Ptr pcl::SACSegmentationFromNormals< PointT, PointNT >::SampleConsensusModelPtr |
Reimplemented from pcl::SACSegmentation< PointT >.
Definition at line 316 of file sac_segmentation.h.
| typedef SampleConsensus<PointT>::Ptr pcl::SACSegmentationFromNormals< PointT, PointNT >::SampleConsensusPtr |
Reimplemented from pcl::SACSegmentation< PointT >.
Definition at line 315 of file sac_segmentation.h.
typedef pcl::search::Search<PointT>::Ptr pcl::SACSegmentation< PointT >::SearchPtr [inherited] |
Definition at line 77 of file sac_segmentation.h.
| pcl::SACSegmentationFromNormals< PointT, PointNT >::SACSegmentationFromNormals | ( | ) | [inline] |
Empty constructor.
Definition at line 320 of file sac_segmentation.h.
| Eigen::Vector3f pcl::SACSegmentation< PointT >::getAxis | ( | ) | const [inline, inherited] |
Get the axis along which we need to search for a model perpendicular to.
Definition at line 213 of file sac_segmentation.h.
| double pcl::SACSegmentationFromNormals< PointT, PointNT >::getDistanceFromOrigin | ( | ) | const [inline] |
Get the distance of a plane model from the origin.
Definition at line 377 of file sac_segmentation.h.
| double pcl::SACSegmentation< PointT >::getDistanceThreshold | ( | ) | const [inline, inherited] |
Get the distance to the model threshold.
Definition at line 130 of file sac_segmentation.h.
| double pcl::SACSegmentation< PointT >::getEpsAngle | ( | ) | const [inline, inherited] |
Get the epsilon (delta) model angle threshold in radians.
Definition at line 223 of file sac_segmentation.h.
| IndicesPtr const pcl::PCLBase< PointT >::getIndices | ( | ) | [inline, inherited] |
Get a pointer to the vector of indices used.
Definition at line 190 of file pcl_base.h.
| PointCloudConstPtr const pcl::PCLBase< PointT >::getInputCloud | ( | ) | [inline, inherited] |
Get a pointer to the input point cloud dataset.
Definition at line 107 of file pcl_base.h.
| PointCloudNConstPtr pcl::SACSegmentationFromNormals< PointT, PointNT >::getInputNormals | ( | ) | const [inline] |
Get a pointer to the normals of the input XYZ point cloud dataset.
Definition at line 337 of file sac_segmentation.h.
| int pcl::SACSegmentation< PointT >::getMaxIterations | ( | ) | const [inline, inherited] |
Get maximum number of iterations before giving up.
Definition at line 140 of file sac_segmentation.h.
| SampleConsensusPtr pcl::SACSegmentation< PointT >::getMethod | ( | ) | const [inline, inherited] |
Get a pointer to the SAC method used.
Definition at line 106 of file sac_segmentation.h.
| int pcl::SACSegmentation< PointT >::getMethodType | ( | ) | const [inline, inherited] |
Get the type of sample consensus method used.
Definition at line 120 of file sac_segmentation.h.
| void pcl::SACSegmentationFromNormals< PointT, PointNT >::getMinMaxOpeningAngle | ( | double & | min_angle, |
| double & | max_angle | ||
| ) | [inline] |
Get the opening angle which we need minumum to validate a cone model.
Definition at line 363 of file sac_segmentation.h.
| SampleConsensusModelPtr pcl::SACSegmentation< PointT >::getModel | ( | ) | const [inline, inherited] |
Get a pointer to the SAC model used.
Definition at line 110 of file sac_segmentation.h.
| int pcl::SACSegmentation< PointT >::getModelType | ( | ) | const [inline, inherited] |
Get the type of SAC model used.
Definition at line 102 of file sac_segmentation.h.
| double pcl::SACSegmentationFromNormals< PointT, PointNT >::getNormalDistanceWeight | ( | ) | const [inline] |
Get the relative weight (between 0 and 1) to give to the angular distance (0 to pi/2) between point normals and the plane normal.
Definition at line 349 of file sac_segmentation.h.
| bool pcl::SACSegmentation< PointT >::getOptimizeCoefficients | ( | ) | const [inline, inherited] |
Get the coefficient refinement internal flag.
Definition at line 160 of file sac_segmentation.h.
| double pcl::SACSegmentation< PointT >::getProbability | ( | ) | const [inline, inherited] |
Get the probability of choosing at least one sample free from outliers.
Definition at line 150 of file sac_segmentation.h.
| void pcl::SACSegmentation< PointT >::getRadiusLimits | ( | double & | min_radius, |
| double & | max_radius | ||
| ) | [inline, inherited] |
Get the minimum and maximum allowable radius limits for the model as set by the user.
| [out] | min_radius | the resultant minimum radius model |
| [out] | max_radius | the resultant maximum radius model |
Definition at line 179 of file sac_segmentation.h.
| void pcl::SACSegmentation< PointT >::getSamplesMaxDist | ( | double & | radius | ) | [inline, inherited] |
Get maximum distance allowed when drawing random samples.
| [out] | radius | the maximum distance (L2 norm) |
Definition at line 200 of file sac_segmentation.h.
| const PointT& pcl::PCLBase< PointT >::operator[] | ( | size_t | pos | ) | [inline, inherited] |
Override PointCloud operator[] to shorten code.
| pos | position in indices_ vector |
Definition at line 197 of file pcl_base.h.
| void pcl::SACSegmentation< PointT >::segment | ( | PointIndices & | inliers, |
| ModelCoefficients & | model_coefficients | ||
| ) | [virtual, inherited] |
Base method for segmentation of a model in a PointCloud given by <setInputCloud (), setIndices ()>
| [in] | inliers | the resultant point indices that support the model found (inliers) |
| [out] | model_coefficients | the resultant model coefficients |
Definition at line 71 of file sac_segmentation.hpp.
| void pcl::SACSegmentation< PointT >::setAxis | ( | const Eigen::Vector3f & | ax | ) | [inline, inherited] |
Set the axis along which we need to search for a model perpendicular to.
| [in] | ax | the axis along which we need to search for a model perpendicular to |
Definition at line 209 of file sac_segmentation.h.
| void pcl::SACSegmentationFromNormals< PointT, PointNT >::setDistanceFromOrigin | ( | const double | d | ) | [inline] |
Set the distance we expect a plane model to be from the origin.
| [in] | d | distance from the template plane modl to the origin |
Definition at line 373 of file sac_segmentation.h.
| void pcl::SACSegmentation< PointT >::setDistanceThreshold | ( | double | threshold | ) | [inline, inherited] |
Distance to the model threshold (user given parameter).
| [in] | threshold | the distance threshold to use |
Definition at line 126 of file sac_segmentation.h.
| void pcl::SACSegmentation< PointT >::setEpsAngle | ( | double | ea | ) | [inline, inherited] |
Set the angle epsilon (delta) threshold.
| [in] | ea | the maximum allowed difference between the model normal and the given axis in radians. |
Definition at line 219 of file sac_segmentation.h.
| void pcl::PCLBase< PointT >::setIndices | ( | const IndicesPtr & | indices | ) | [inline, inherited] |
Provide a pointer to the vector of indices that represents the input data.
| indices | a pointer to the vector of indices that represents the input data. |
Definition at line 113 of file pcl_base.h.
| void pcl::PCLBase< PointT >::setIndices | ( | const IndicesConstPtr & | indices | ) | [inline, inherited] |
Provide a pointer to the vector of indices that represents the input data.
| indices | a pointer to the vector of indices that represents the input data. |
Definition at line 124 of file pcl_base.h.
| void pcl::PCLBase< PointT >::setIndices | ( | const PointIndicesConstPtr & | indices | ) | [inline, inherited] |
Provide a pointer to the vector of indices that represents the input data.
| indices | a pointer to the vector of indices that represents the input data. |
Definition at line 135 of file pcl_base.h.
| void pcl::PCLBase< PointT >::setIndices | ( | size_t | row_start, |
| size_t | col_start, | ||
| size_t | nb_rows, | ||
| size_t | nb_cols | ||
| ) | [inline, inherited] |
Set the indices for the points laying within an interest region of the point cloud.
| row_start | the offset on rows |
| col_start | the offset on columns |
| nb_rows | the number of rows to be considered row_start included |
| nb_cols | the number of columns to be considered col_start included |
Definition at line 151 of file pcl_base.h.
| virtual void pcl::PCLBase< PointT >::setInputCloud | ( | const PointCloudConstPtr & | cloud | ) | [inline, virtual, inherited] |
Provide a pointer to the input dataset.
| cloud | the const boost shared pointer to a PointCloud message |
Reimplemented in pcl::PCA< PointT >.
Definition at line 103 of file pcl_base.h.
| void pcl::SACSegmentationFromNormals< PointT, PointNT >::setInputNormals | ( | const PointCloudNConstPtr & | normals | ) | [inline] |
Provide a pointer to the input dataset that contains the point normals of the XYZ dataset.
| [in] | normals | the const boost shared pointer to a PointCloud message |
Definition at line 333 of file sac_segmentation.h.
| void pcl::SACSegmentation< PointT >::setMaxIterations | ( | int | max_iterations | ) | [inline, inherited] |
Set the maximum number of iterations before giving up.
| [in] | max_iterations | the maximum number of iterations the sample consensus method will run |
Definition at line 136 of file sac_segmentation.h.
| void pcl::SACSegmentation< PointT >::setMethodType | ( | int | method | ) | [inline, inherited] |
The type of sample consensus method to use (user given parameter).
| [in] | method | the method type (check method_types.h) |
Definition at line 116 of file sac_segmentation.h.
| void pcl::SACSegmentationFromNormals< PointT, PointNT >::setMinMaxOpeningAngle | ( | const double & | min_angle, |
| const double & | max_angle | ||
| ) | [inline] |
Set the minimum opning angle for a cone model.
| oa | the opening angle which we need minumum to validate a cone model. |
Definition at line 355 of file sac_segmentation.h.
| void pcl::SACSegmentation< PointT >::setModelType | ( | int | model | ) | [inline, inherited] |
The type of model to use (user given parameter).
| [in] | model | the model type (check model_types.h) |
Definition at line 98 of file sac_segmentation.h.
| void pcl::SACSegmentationFromNormals< PointT, PointNT >::setNormalDistanceWeight | ( | double | distance_weight | ) | [inline] |
Set the relative weight (between 0 and 1) to give to the angular distance (0 to pi/2) between point normals and the plane normal.
| [in] | distance_weight | the distance/angular weight |
Definition at line 344 of file sac_segmentation.h.
| void pcl::SACSegmentation< PointT >::setOptimizeCoefficients | ( | bool | optimize | ) | [inline, inherited] |
Set to true if a coefficient refinement is required.
| [in] | optimize | true for enabling model coefficient refinement, false otherwise |
Definition at line 156 of file sac_segmentation.h.
| void pcl::SACSegmentation< PointT >::setProbability | ( | double | probability | ) | [inline, inherited] |
Set the probability of choosing at least one sample free from outliers.
| [in] | probability | the model fitting probability |
Definition at line 146 of file sac_segmentation.h.
| void pcl::SACSegmentation< PointT >::setRadiusLimits | ( | const double & | min_radius, |
| const double & | max_radius | ||
| ) | [inline, inherited] |
Set the minimum and maximum allowable radius limits for the model (applicable to models that estimate a radius)
| [in] | min_radius | the minimum radius model |
| [in] | max_radius | the maximum radius model |
Definition at line 168 of file sac_segmentation.h.
| void pcl::SACSegmentation< PointT >::setSamplesMaxDist | ( | const double & | radius, |
| SearchPtr | search | ||
| ) | [inline, inherited] |
Set the maximum distance allowed when drawing random samples.
| [in] | radius | the maximum distance (L2 norm) |
Definition at line 189 of file sac_segmentation.h.
1.7.6.1