38 #ifndef PCL_FILTERS_MODEL_OUTLIER_REMOVAL_H_
39 #define PCL_FILTERS_MODEL_OUTLIER_REMOVAL_H_
41 #include <pcl/filters/filter_indices.h>
42 #include <pcl/ModelCoefficients.h>
45 #include <pcl/sample_consensus/model_types.h>
46 #include <pcl/sample_consensus/sac_model.h>
68 template <
typename Po
intT>
99 for (
unsigned int i = 0; i < model_coefficients.
values.size (); i++)
112 for (
unsigned int i = 0; i < mc.
values.size (); i++)
186 template <
typename T>
void
253 #ifdef PCL_NO_PRECOMPILE
254 #include <pcl/filters/impl/model_outlier_removal.hpp>
257 #endif // PCL_FILTERS_MODEL_OUTLIER_REMOVAL_H_
ModelOutlierRemoval(bool extract_removed_indices=false)
Constructor.
pcl::PointCloud< pcl::Normal >::ConstPtr PointCloudNConstPtr
void setThreshold(float thresh)
Set the thresholdfunction.
boost::shared_ptr< const PointCloud< PointT > > ConstPtr
Eigen::VectorXf model_coefficients_
The model coefficients.
PointCloud::ConstPtr PointCloudConstPtr
boost::shared_ptr< PointCloud< PointT > > Ptr
pcl::SacModel getModelType() const
Get the type of SAC model used.
std::vector< float > values
double normals_distance_weight_
pcl::PointCloud< pcl::Normal >::Ptr PointCloudNPtr
boost::function< bool(double)> threshold_function_
PointCloudNConstPtr getInputNormals() const
Get the normals cloud.
FilterIndices represents the base class for filters that are about binary point removal.
SampleConsensusModelPtr model_
The model used to calculate distances.
ModelOutlierRemoval filters points in a cloud based on the distance between model and point...
bool checkSingleThreshold(double value)
void setModelCoefficients(const pcl::ModelCoefficients model_coefficients)
sets the models coefficients
Filter represents the base filter class.
float thresh_
The threshold used to seperate outliers (removed_indices) from inliers (indices)
float getThreshold() const
Get the thresholdfunction.
void setThresholdFunction(bool(T::*thresh_function)(double), T &instance)
Register a different threshold function.
void applyFilterIndices(std::vector< int > &indices)
Filtered results are indexed by an indices array.
pcl::SacModel model_type_
The type of model to use (user given parameter).
void setModelType(pcl::SacModel model)
Set the type of SAC model used.
boost::shared_ptr< SampleConsensusModel > Ptr
void applyFilter(std::vector< int > &indices)
Filtered results are indexed by an indices array.
void setInputNormals(const PointCloudNConstPtr normals_ptr)
Set the normals cloud.
std::string filter_name_
The filter name.
A point structure representing Euclidean xyz coordinates, and the RGB color.
void setNormalDistanceWeight(const double weight)
Set the normals distance weight.
PointCloudNConstPtr cloud_normals_
double getNormalDistanceWeight() const
get the normal distance weight
void applyFilter(PointCloud &output)
Filtered results are stored in a separate point cloud.
PointCloud::Ptr PointCloudPtr
SampleConsensusModel< PointT >::Ptr SampleConsensusModelPtr
FilterIndices< PointT >::PointCloud PointCloud
pcl::ModelCoefficients getModelCoefficients() const
returns the models coefficients