|
Point Cloud Library (PCL)
1.8.1
|
SampleConsensusModel represents the base model class. More...
Inheritance diagram for pcl::cuda::SampleConsensusModel< Storage >:Public Types | |
| typedef PointCloudAOS< Storage > | PointCloud |
| typedef PointCloud::Ptr | PointCloudPtr |
| typedef PointCloud::ConstPtr | PointCloudConstPtr |
| typedef boost::shared_ptr< SampleConsensusModel > | Ptr |
| typedef boost::shared_ptr< const SampleConsensusModel > | ConstPtr |
| typedef Storage< int >::type | Indices |
| typedef boost::shared_ptr< typename Storage< int >::type > | IndicesPtr |
| typedef boost::shared_ptr< const typename Storage< int >::type > | IndicesConstPtr |
| typedef Storage< float >::type | Coefficients |
| typedef boost::shared_ptr< Coefficients > | CoefficientsPtr |
| typedef boost::shared_ptr< const Coefficients > | CoefficientsConstPtr |
| typedef Storage< float4 >::type | Hypotheses |
| typedef Storage< int >::type | Samples |
Public Member Functions | |
| SampleConsensusModel (const PointCloudConstPtr &cloud) | |
| Constructor for base SampleConsensusModel. More... | |
| virtual | ~SampleConsensusModel () |
| Destructor for base SampleConsensusModel. More... | |
| virtual void | getSamples (int &iterations, Indices &samples)=0 |
| Get a set of random data samples and return them as point indices. More... | |
| virtual bool | computeModelCoefficients (const Indices &samples, Coefficients &model_coefficients)=0 |
| Check whether the given index samples can form a valid model, compute the model coefficients from these samples and store them in model_coefficients. More... | |
| virtual bool | generateModelHypotheses (Hypotheses &h, int max_iterations)=0 |
| virtual bool | generateModelHypotheses (Hypotheses &h, Samples &s, int max_iterations)=0 |
| virtual bool | isSampleInlier (IndicesPtr &inliers_stencil, Samples &samples, unsigned int &i) |
| virtual int | selectWithinDistance (const Coefficients &model_coefficients, float threshold, IndicesPtr &inliers, IndicesPtr &inliers_stencil)=0 |
| Select all the points which respect the given model coefficients as inliers. More... | |
| virtual int | selectWithinDistance (const Hypotheses &h, int idx, float threshold, IndicesPtr &inliers, IndicesPtr &inliers_stencil)=0 |
| virtual int | selectWithinDistance (Hypotheses &h, int idx, float threshold, IndicesPtr &inliers_stencil, float3 ¢roid)=0 |
| virtual int | countWithinDistance (const Coefficients &model_coefficients, float threshold)=0 |
| virtual int | countWithinDistance (const Hypotheses &h, int idx, float threshold)=0 |
| int | deleteIndices (const IndicesPtr &indices_stencil) |
| int | deleteIndices (const Hypotheses &h, int idx, IndicesPtr &inliers, const IndicesPtr &inliers_delete) |
| virtual void | setInputCloud (const PointCloudConstPtr &cloud) |
| Provide a pointer to the input dataset. More... | |
| PointCloudConstPtr | getInputCloud () const |
| Get a pointer to the input point cloud dataset. More... | |
| IndicesPtr | getIndices () const |
| Get a pointer to the vector of indices used. More... | |
| void | setRadiusLimits (float min_radius, float max_radius) |
| Set the minimum and maximum allowable radius limits for the model (applicable to models that estimate a radius) More... | |
| void | getRadiusLimits (float &min_radius, float &max_radius) |
| Get the minimum and maximum allowable radius limits for the model as set by the user. More... | |
| boost::shared_ptr< typename Storage< float4 >::type > | getNormals () |
| void | setNormals (boost::shared_ptr< typename Storage< float4 >::type > normals) |
Protected Attributes | |
| PointCloudConstPtr | input_ |
| A boost shared pointer to the point cloud data array. More... | |
| boost::shared_ptr< typename Storage< float4 >::type > | normals_ |
| IndicesPtr | indices_ |
| A pointer to the vector of point indices to use. More... | |
| IndicesPtr | indices_stencil_ |
| A pointer to the vector of point indices (stencil) to use. More... | |
| unsigned int | nr_indices_in_stencil_ |
| number of indices left in indices_stencil_ More... | |
| float | radius_min_ |
| The minimum and maximum radius limits for the model. More... | |
| float | radius_max_ |
| thrust::minstd_rand | rngl_ |
| Linear-Congruent random number generator engine. More... | |
SampleConsensusModel represents the base model class.
All sample consensus models must inherit from this class.
Definition at line 88 of file sac_model.h.
| typedef Storage<float>::type pcl::cuda::SampleConsensusModel< Storage >::Coefficients |
Definition at line 102 of file sac_model.h.
| typedef boost::shared_ptr<const Coefficients> pcl::cuda::SampleConsensusModel< Storage >::CoefficientsConstPtr |
Definition at line 104 of file sac_model.h.
| typedef boost::shared_ptr<Coefficients> pcl::cuda::SampleConsensusModel< Storage >::CoefficientsPtr |
Definition at line 103 of file sac_model.h.
| typedef boost::shared_ptr<const SampleConsensusModel> pcl::cuda::SampleConsensusModel< Storage >::ConstPtr |
Definition at line 96 of file sac_model.h.
| typedef Storage<float4>::type pcl::cuda::SampleConsensusModel< Storage >::Hypotheses |
Definition at line 106 of file sac_model.h.
| typedef Storage<int>::type pcl::cuda::SampleConsensusModel< Storage >::Indices |
Definition at line 98 of file sac_model.h.
| typedef boost::shared_ptr<const typename Storage<int>::type> pcl::cuda::SampleConsensusModel< Storage >::IndicesConstPtr |
Definition at line 100 of file sac_model.h.
| typedef boost::shared_ptr<typename Storage<int>::type> pcl::cuda::SampleConsensusModel< Storage >::IndicesPtr |
Definition at line 99 of file sac_model.h.
| typedef PointCloudAOS<Storage> pcl::cuda::SampleConsensusModel< Storage >::PointCloud |
Definition at line 91 of file sac_model.h.
| typedef PointCloud::ConstPtr pcl::cuda::SampleConsensusModel< Storage >::PointCloudConstPtr |
Definition at line 93 of file sac_model.h.
| typedef PointCloud::Ptr pcl::cuda::SampleConsensusModel< Storage >::PointCloudPtr |
Definition at line 92 of file sac_model.h.
| typedef boost::shared_ptr<SampleConsensusModel> pcl::cuda::SampleConsensusModel< Storage >::Ptr |
Definition at line 95 of file sac_model.h.
| typedef Storage<int>::type pcl::cuda::SampleConsensusModel< Storage >::Samples |
Definition at line 108 of file sac_model.h.
|
inline |
Constructor for base SampleConsensusModel.
| cloud | the input point cloud dataset |
Definition at line 119 of file sac_model.h.
|
inlinevirtual |
Destructor for base SampleConsensusModel.
Definition at line 144 of file sac_model.h.
|
pure virtual |
Check whether the given index samples can form a valid model, compute the model coefficients from these samples and store them in model_coefficients.
Pure virtual.
| samples | the point indices found as possible good candidates for creating a valid model, stored on the device |
| model_coefficients | the computed model coefficients |
Implemented in pcl::cuda::SampleConsensusModel1PointPlane< Storage >, and pcl::cuda::SampleConsensusModelPlane< Storage >.
|
pure virtual |
|
pure virtual |
| int pcl::cuda::SampleConsensusModel< Storage >::deleteIndices | ( | const IndicesPtr & | indices_stencil | ) |
| int pcl::cuda::SampleConsensusModel< Storage >::deleteIndices | ( | const Hypotheses & | h, |
| int | idx, | ||
| IndicesPtr & | inliers, | ||
| const IndicesPtr & | inliers_delete | ||
| ) |
|
pure virtual |
|
pure virtual |
|
inline |
Get a pointer to the vector of indices used.
Definition at line 288 of file sac_model.h.
|
inline |
Get a pointer to the input point cloud dataset.
Definition at line 269 of file sac_model.h.
|
inline |
Definition at line 336 of file sac_model.h.
|
inline |
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 327 of file sac_model.h.
|
pure virtual |
Get a set of random data samples and return them as point indices.
Pure virtual.
| iterations | the internal number of iterations used by SAC methods |
| samples | the resultant model samples, stored on the device |
Implemented in pcl::cuda::SampleConsensusModel1PointPlane< Storage >, and pcl::cuda::SampleConsensusModelPlane< Storage >.
|
inlinevirtual |
Definition at line 171 of file sac_model.h.
|
pure virtual |
Select all the points which respect the given model coefficients as inliers.
Pure virtual.
| model_coefficients | the coefficients of a model that we need to compute distances to |
| threshold | a maximum admissible distance threshold for determining the inliers from the outliers |
| inliers | the resultant model inliers |
| inliers_stencil |
Implemented in pcl::cuda::SampleConsensusModel1PointPlane< Storage >, and pcl::cuda::SampleConsensusModelPlane< Storage >.
|
pure virtual |
|
pure virtual |
|
virtual |
Provide a pointer to the input dataset.
| cloud | the const boost shared pointer to a PointCloud message |
|
inline |
Definition at line 339 of file sac_model.h.
|
inline |
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 314 of file sac_model.h.
|
protected |
A pointer to the vector of point indices to use.
Definition at line 354 of file sac_model.h.
|
protected |
A pointer to the vector of point indices (stencil) to use.
Definition at line 356 of file sac_model.h.
|
protected |
A boost shared pointer to the point cloud data array.
Definition at line 350 of file sac_model.h.
|
protected |
Definition at line 351 of file sac_model.h.
|
protected |
number of indices left in indices_stencil_
Definition at line 358 of file sac_model.h.
|
protected |
Definition at line 363 of file sac_model.h.
|
protected |
The minimum and maximum radius limits for the model.
Applicable to all models that estimate a radius.
Definition at line 363 of file sac_model.h.
|
protected |
Linear-Congruent random number generator engine.
Definition at line 366 of file sac_model.h.