Point Cloud Library (PCL)
1.3.1
|
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 |
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 () |
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 () |
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 | setModelType (int model) |
The type of model to use (user given parameter). | |
int | getModelType () |
Get the type of SAC model used. | |
SampleConsensusPtr | getMethod () |
Get a pointer to the SAC method used. | |
SampleConsensusModelPtr | getModel () |
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 () |
Get the type of sample consensus method used. | |
void | setDistanceThreshold (double threshold) |
Distance to the model threshold (user given parameter). | |
double | getDistanceThreshold () |
Get the distance to the model threshold. | |
void | setMaxIterations (int max_iterations) |
Set the maximum number of iterations before giving up. | |
int | getMaxIterations () |
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 () |
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 () |
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 | setAxis (const Eigen::Vector3f &ax) |
Set the axis along which we need to search for a model perpendicular to. | |
Eigen::Vector3f | getAxis () |
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 () |
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 ()> |
SACSegmentationFromNormals represents the PCL nodelet segmentation class for Sample Consensus methods and models that require the use of surface normals for estimation.
typedef SACSegmentation<PointT>::PointCloud pcl::SACSegmentationFromNormals::PointCloud |
Reimplemented from pcl::SACSegmentation< PointT >.
Definition at line 274 of file sac_segmentation.h.
Reimplemented from pcl::SACSegmentation< PointT >.
Definition at line 276 of file sac_segmentation.h.
typedef pcl::PointCloud<PointNT> pcl::SACSegmentationFromNormals::PointCloudN |
Definition at line 278 of file sac_segmentation.h.
Definition at line 280 of file sac_segmentation.h.
Definition at line 279 of file sac_segmentation.h.
Reimplemented from pcl::SACSegmentation< PointT >.
Definition at line 275 of file sac_segmentation.h.
typedef SampleConsensusModelFromNormals<PointT, PointNT>::Ptr pcl::SACSegmentationFromNormals::SampleConsensusModelFromNormalsPtr |
Definition at line 284 of file sac_segmentation.h.
typedef SampleConsensusModel<PointT>::Ptr pcl::SACSegmentationFromNormals::SampleConsensusModelPtr |
Reimplemented from pcl::SACSegmentation< PointT >.
Definition at line 283 of file sac_segmentation.h.
typedef SampleConsensus<PointT>::Ptr pcl::SACSegmentationFromNormals::SampleConsensusPtr |
Reimplemented from pcl::SACSegmentation< PointT >.
Definition at line 282 of file sac_segmentation.h.
pcl::SACSegmentationFromNormals::SACSegmentationFromNormals | ( | ) | [inline] |
Empty constructor.
Definition at line 287 of file sac_segmentation.h.
Eigen::Vector3f pcl::SACSegmentation::getAxis | ( | ) | [inline, inherited] |
Get the axis along which we need to search for a model perpendicular to.
Definition at line 186 of file sac_segmentation.h.
double pcl::SACSegmentation::getDistanceThreshold | ( | ) | [inline, inherited] |
Get the distance to the model threshold.
Definition at line 122 of file sac_segmentation.h.
double pcl::SACSegmentation::getEpsAngle | ( | ) | [inline, inherited] |
Get the epsilon (delta) model angle threshold in radians.
Definition at line 196 of file sac_segmentation.h.
PointCloudNConstPtr pcl::SACSegmentationFromNormals::getInputNormals | ( | ) | [inline] |
Get a pointer to the normals of the input XYZ point cloud dataset.
Definition at line 298 of file sac_segmentation.h.
int pcl::SACSegmentation::getMaxIterations | ( | ) | [inline, inherited] |
Get maximum number of iterations before giving up.
Definition at line 132 of file sac_segmentation.h.
SampleConsensusPtr pcl::SACSegmentation::getMethod | ( | ) | [inline, inherited] |
Get a pointer to the SAC method used.
Definition at line 98 of file sac_segmentation.h.
int pcl::SACSegmentation::getMethodType | ( | ) | [inline, inherited] |
Get the type of sample consensus method used.
Definition at line 112 of file sac_segmentation.h.
SampleConsensusModelPtr pcl::SACSegmentation::getModel | ( | ) | [inline, inherited] |
Get a pointer to the SAC model used.
Definition at line 102 of file sac_segmentation.h.
int pcl::SACSegmentation::getModelType | ( | ) | [inline, inherited] |
Get the type of SAC model used.
Definition at line 94 of file sac_segmentation.h.
double pcl::SACSegmentationFromNormals::getNormalDistanceWeight | ( | ) | [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 310 of file sac_segmentation.h.
bool pcl::SACSegmentation::getOptimizeCoefficients | ( | ) | [inline, inherited] |
Get the coefficient refinement internal flag.
Definition at line 152 of file sac_segmentation.h.
double pcl::SACSegmentation::getProbability | ( | ) | [inline, inherited] |
Get the probability of choosing at least one sample free from outliers.
Definition at line 142 of file sac_segmentation.h.
void pcl::SACSegmentation::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.
min_radius | the resultant minimum radius model |
max_radius | the resultant maximum radius model |
Definition at line 172 of file sac_segmentation.h.
virtual void pcl::SACSegmentation::segment | ( | PointIndices & | inliers, |
ModelCoefficients & | model_coefficients | ||
) | [virtual, inherited] |
Base method for segmentation of a model in a PointCloud given by <setInputCloud (), setIndices ()>
inliers | the resultant point indices that support the model found (inliers) |
model_coefficients | the resultant model coefficients |
void pcl::SACSegmentation::setAxis | ( | const Eigen::Vector3f & | ax | ) | [inline, inherited] |
Set the axis along which we need to search for a model perpendicular to.
ax | the axis along which we need to search for a model perpendicular to |
Definition at line 182 of file sac_segmentation.h.
void pcl::SACSegmentation::setDistanceThreshold | ( | double | threshold | ) | [inline, inherited] |
Distance to the model threshold (user given parameter).
threshold | the distance threshold to use |
Definition at line 118 of file sac_segmentation.h.
void pcl::SACSegmentation::setEpsAngle | ( | double | ea | ) | [inline, inherited] |
Set the angle epsilon (delta) threshold.
ea | the maximum allowed difference between the model normal and the given axis in radians. |
Definition at line 192 of file sac_segmentation.h.
void pcl::SACSegmentationFromNormals::setInputNormals | ( | const PointCloudNConstPtr & | normals | ) | [inline] |
Provide a pointer to the input dataset that contains the point normals of the XYZ dataset.
normals | the const boost shared pointer to a PointCloud message |
Definition at line 294 of file sac_segmentation.h.
void pcl::SACSegmentation::setMaxIterations | ( | int | max_iterations | ) | [inline, inherited] |
Set the maximum number of iterations before giving up.
max_iterations | the maximum number of iterations the sample consensus method will run |
Definition at line 128 of file sac_segmentation.h.
void pcl::SACSegmentation::setMethodType | ( | int | method | ) | [inline, inherited] |
The type of sample consensus method to use (user given parameter).
method | the method type (check method_types.h) |
Definition at line 108 of file sac_segmentation.h.
void pcl::SACSegmentation::setModelType | ( | int | model | ) | [inline, inherited] |
The type of model to use (user given parameter).
model | the model type (check model_types.h) |
Definition at line 90 of file sac_segmentation.h.
void pcl::SACSegmentationFromNormals::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.
distance_weight | the distance/angular weight |
Definition at line 305 of file sac_segmentation.h.
void pcl::SACSegmentation::setOptimizeCoefficients | ( | bool | optimize | ) | [inline, inherited] |
Set to true if a coefficient refinement is required.
optimize | true for enabling model coefficient refinement, false otherwise |
Definition at line 148 of file sac_segmentation.h.
void pcl::SACSegmentation::setProbability | ( | double | probability | ) | [inline, inherited] |
Set the probability of choosing at least one sample free from outliers.
probability | the model fitting probability |
Definition at line 138 of file sac_segmentation.h.
void pcl::SACSegmentation::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)
min_radius | the minimum radius model |
max_radius | the maximum radius model |
Definition at line 161 of file sac_segmentation.h.