41 #ifndef PCL_SAMPLE_CONSENSUS_MODEL_NORMALSPHERE_H_
42 #define PCL_SAMPLE_CONSENSUS_MODEL_NORMALSPHERE_H_
44 #include <pcl/sample_consensus/sac_model.h>
45 #include <pcl/sample_consensus/sac_model_sphere.h>
46 #include <pcl/sample_consensus/model_types.h>
47 #include <pcl/common/common.h>
68 template <
typename Po
intT,
typename Po
intNT>
87 typedef boost::shared_ptr<SampleConsensusModelNormalSphere>
Ptr;
106 const std::vector<int> &indices,
123 const double threshold,
124 std::vector<int> &inliers);
133 const double threshold);
141 std::vector<double> &distances);
147 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
154 isModelValid (
const Eigen::VectorXf &model_coefficients);
159 #ifdef PCL_NO_PRECOMPILE
160 #include <pcl/sample_consensus/impl/sac_model_normal_sphere.hpp>
163 #endif //#ifndef PCL_SAMPLE_CONSENSUS_MODEL_NORMALSPHERE_H_
virtual int countWithinDistance(const Eigen::VectorXf &model_coefficients, const double threshold)
Count all the points which respect the given model coefficients as inliers.
void selectWithinDistance(const Eigen::VectorXf &model_coefficients, const double threshold, std::vector< int > &inliers)
Select all the points which respect the given model coefficients as inliers.
pcl::PointCloud< PointNT >::ConstPtr PointCloudNConstPtr
pcl::PointCloud< PointNT >::Ptr PointCloudNPtr
SampleConsensusModelNormalSphere defines a model for 3D sphere segmentation using additional surface ...
SampleConsensusModelFromNormals< PointT, PointNT >::PointCloudNPtr PointCloudNPtr
void getDistancesToModel(const Eigen::VectorXf &model_coefficients, std::vector< double > &distances)
Compute all distances from the cloud data to a given sphere model.
SampleConsensusModelFromNormals< PointT, PointNT >::PointCloudNConstPtr PointCloudNConstPtr
SampleConsensusModelNormalSphere(const PointCloudConstPtr &cloud, bool random=false)
Constructor for base SampleConsensusModelNormalSphere.
SampleConsensusModel< PointT >::PointCloud PointCloud
SampleConsensusModel represents the base model class.
pcl::PointCloud< PointT >::Ptr PointCloudPtr
SampleConsensusModelFromNormals represents the base model class for models that require the use of su...
virtual ~SampleConsensusModelNormalSphere()
Empty destructor.
pcl::PointCloud< PointT >::ConstPtr PointCloudConstPtr
pcl::SacModel getModelType() const
Return an unique id for this model (SACMODEL_NORMAL_SPHERE).
SampleConsensusModel< PointT >::PointCloudPtr PointCloudPtr
SampleConsensusModel< PointT >::PointCloudConstPtr PointCloudConstPtr
bool isModelValid(const Eigen::VectorXf &model_coefficients)
Check whether a model is valid given the user constraints.
boost::shared_ptr< SampleConsensusModelNormalSphere > Ptr
A point structure representing Euclidean xyz coordinates, and the RGB color.
SampleConsensusModelNormalSphere(const PointCloudConstPtr &cloud, const std::vector< int > &indices, bool random=false)
Constructor for base SampleConsensusModelNormalSphere.
SampleConsensusModelSphere defines a model for 3D sphere segmentation.