42#include <pcl/filters/filter_indices.h>
43#include <pcl/search/search.h>
70 template<
typename Po
intT>
105 search_radius_ = radius;
116 return (search_radius_);
138 return (min_pts_radius_);
172 double search_radius_;
204 search_radius_ (0.0), min_pts_radius_ (1)
206 filter_name_ =
"RadiusOutlierRemoval";
215 search_radius_ = radius;
222 return (search_radius_);
241 return (min_pts_radius_);
264#ifdef PCL_NO_PRECOMPILE
265#include <pcl/filters/impl/radius_outlier_removal.hpp>
Iterator class for point clouds with or without given indices.
Filter represents the base filter class.
bool extract_removed_indices_
Set to true if we want to return the indices of the removed points.
const std::string & getClassName() const
Get a string representation of the name of this class.
std::string filter_name_
The filter name.
IndicesPtr removed_indices_
Indices of the points that are removed.
FilterIndices represents the base class for filters that are about binary point removal.
float user_filter_value_
The user given value that the filtered point dimensions should be set to (default = NaN).
bool keep_organized_
False = remove points (default), true = redefine points, keep structure.
bool negative_
False = normal filter behavior (default), true = inverted behavior.
PointCloudConstPtr input_
The input point cloud dataset.
IndicesPtr indices_
A pointer to the vector of point indices to use.
PointCloud represents the base class in PCL for storing collections of 3D points.
shared_ptr< PointCloud< PointT > > Ptr
shared_ptr< const PointCloud< PointT > > ConstPtr
void applyFilter(Indices &indices) override
Abstract filter method for point cloud indices.
double getRadiusSearch()
Get the sphere radius used for determining the k-nearest neighbors.
double getMinNeighborsInRadius()
Get the minimum number of neighbors that a point needs to have in the given search radius to be consi...
void setRadiusSearch(double radius)
Set the sphere radius that is to be used for determining the k-nearest neighbors for filtering.
KdTreePtr searcher_
A pointer to the spatial search object.
double search_radius_
The nearest neighbors search radius for each point.
int min_pts_radius_
The minimum number of neighbors that a point needs to have in the given search radius to be considere...
RadiusOutlierRemoval(bool extract_removed_indices=false)
Empty constructor.
void applyFilter(PCLPointCloud2 &output) override
Abstract filter method for point cloud.
void setMinNeighborsInRadius(int min_pts)
Set the minimum number of neighbors that a point needs to have in the given search radius in order to...
RadiusOutlierRemoval filters points in a cloud based on the number of neighbors they have.
void applyFilterIndices(Indices &indices)
Filtered results are indexed by an indices array.
int getMinNeighborsInRadius()
Get the number of neighbors that need to be present in order to be classified as an inlier.
void applyFilter(Indices &indices) override
Filtered results are indexed by an indices array.
typename PointCloud::Ptr PointCloudPtr
void setMinNeighborsInRadius(int min_pts)
Set the number of neighbors that need to be present in order to be classified as an inlier.
typename PointCloud::ConstPtr PointCloudConstPtr
void setRadiusSearch(double radius)
Set the radius of the sphere that will determine which points are neighbors.
shared_ptr< RadiusOutlierRemoval< PointT > > Ptr
RadiusOutlierRemoval(bool extract_removed_indices=false)
Constructor.
typename pcl::search::Search< PointT >::Ptr SearcherPtr
typename FilterIndices< PointT >::PointCloud PointCloud
double getRadiusSearch()
Get the radius of the sphere that will determine which points are neighbors.
shared_ptr< pcl::search::Search< PointT > > Ptr
IndicesAllocator<> Indices
Type used for indices in PCL.
shared_ptr< ::pcl::PCLPointCloud2 > Ptr
shared_ptr< const ::pcl::PCLPointCloud2 > ConstPtr
A point structure representing Euclidean xyz coordinates, and the RGB color.