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> 68 template <
typename Po
intT,
typename Po
intNT>
88 typedef boost::shared_ptr<SampleConsensusModelNormalSphere>
Ptr;
110 const std::vector<int> &indices,
130 const double threshold,
131 std::vector<int> &inliers);
140 const double threshold);
148 std::vector<double> &distances);
154 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
164 isModelValid (
const Eigen::VectorXf &model_coefficients);
169 #ifdef PCL_NO_PRECOMPILE 170 #include <pcl/sample_consensus/impl/sac_model_normal_sphere.hpp> 173 #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
unsigned int model_size_
The number of coefficients in the model.
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.
Define standard C methods and C++ classes that are common to all methods.
pcl::SacModel getModelType() const
Return an unique id for this model (SACMODEL_NORMAL_SPHERE).
SampleConsensusModel< PointT >::PointCloud PointCloud
SampleConsensusModel represents the base model class.
std::string model_name_
The model name.
pcl::PointCloud< PointT >::Ptr PointCloudPtr
SampleConsensusModelFromNormals represents the base model class for models that require the use of su...
PointCloud represents the base class in PCL for storing collections of 3D points. ...
virtual ~SampleConsensusModelNormalSphere()
Empty destructor.
pcl::PointCloud< PointT >::ConstPtr PointCloudConstPtr
SampleConsensusModel< PointT >::PointCloudPtr PointCloudPtr
SampleConsensusModel< PointT >::PointCloudConstPtr PointCloudConstPtr
virtual 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.
unsigned int sample_size_
The size of a sample from which the model is computed.