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...
PointCloud represents the base class in PCL for storing collections of 3D points. ...
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.