Point Cloud Library (PCL)
1.14.1-dev
|
FilterIndices represents the base class for filters that are about binary point removal. More...
#include <pcl/filters/filter_indices.h>
Public Types | |
using | PCLPointCloud2 = pcl::PCLPointCloud2 |
![]() | |
using | Ptr = shared_ptr< Filter< pcl::PCLPointCloud2 > > |
using | ConstPtr = shared_ptr< const Filter< pcl::PCLPointCloud2 > > |
using | PCLPointCloud2 = pcl::PCLPointCloud2 |
using | PCLPointCloud2Ptr = PCLPointCloud2::Ptr |
using | PCLPointCloud2ConstPtr = PCLPointCloud2::ConstPtr |
![]() | |
using | PCLPointCloud2 = pcl::PCLPointCloud2 |
using | PCLPointCloud2Ptr = PCLPointCloud2::Ptr |
using | PCLPointCloud2ConstPtr = PCLPointCloud2::ConstPtr |
using | PointIndicesPtr = PointIndices::Ptr |
using | PointIndicesConstPtr = PointIndices::ConstPtr |
Public Member Functions | |
FilterIndices (bool extract_removed_indices=false) | |
Constructor. More... | |
void | filter (Indices &indices) |
Calls the filtering method and returns the filtered point cloud indices. More... | |
void | setNegative (bool negative) |
Set whether the regular conditions for points filtering should apply, or the inverted conditions. More... | |
bool | getNegative () const |
Get whether the regular conditions for points filtering should apply, or the inverted conditions. More... | |
void | setKeepOrganized (bool keep_organized) |
Set whether the filtered points should be kept and set to the value given through setUserFilterValue (default: NaN), or removed from the PointCloud, thus potentially breaking its organized structure. More... | |
bool | getKeepOrganized () const |
Get whether the filtered points should be kept and set to the value given through setUserFilterValue (default = NaN), or removed from the PointCloud, thus potentially breaking its organized structure. More... | |
void | setUserFilterValue (float value) |
Provide a value that the filtered points should be set to instead of removing them. More... | |
![]() | |
Filter (bool extract_removed_indices=false) | |
Empty constructor. More... | |
IndicesConstPtr const | getRemovedIndices () const |
Get the point indices being removed. More... | |
void | getRemovedIndices (PointIndices &pi) |
Get the point indices being removed. More... | |
void | filter (PCLPointCloud2 &output) |
Calls the filtering method and returns the filtered dataset in output. More... | |
![]() | |
PCLBase () | |
Empty constructor. More... | |
virtual | ~PCLBase ()=default |
destructor. More... | |
void | setInputCloud (const PCLPointCloud2ConstPtr &cloud) |
Provide a pointer to the input dataset. More... | |
PCLPointCloud2ConstPtr const | getInputCloud () const |
Get a pointer to the input point cloud dataset. More... | |
void | setIndices (const IndicesPtr &indices) |
Provide a pointer to the vector of indices that represents the input data. More... | |
void | setIndices (const PointIndicesConstPtr &indices) |
Provide a pointer to the vector of indices that represents the input data. More... | |
IndicesPtr const | getIndices () const |
Get a pointer to the vector of indices used. More... | |
Protected Member Functions | |
virtual void | applyFilter (Indices &indices)=0 |
Abstract filter method for point cloud indices. More... | |
void | applyFilter (PCLPointCloud2 &output) override=0 |
Abstract filter method for point cloud. More... | |
![]() | |
const std::string & | getClassName () const |
Get a string representation of the name of this class. More... | |
![]() | |
bool | initCompute () |
bool | deinitCompute () |
Protected Attributes | |
bool | negative_ {false} |
False = normal filter behavior (default), true = inverted behavior. More... | |
bool | keep_organized_ {false} |
False = remove points (default), true = redefine points, keep structure. More... | |
float | user_filter_value_ |
The user given value that the filtered point dimensions should be set to (default = NaN). More... | |
![]() | |
IndicesPtr | removed_indices_ |
Indices of the points that are removed. More... | |
bool | extract_removed_indices_ |
Set to true if we want to return the indices of the removed points. More... | |
std::string | filter_name_ |
The filter name. More... | |
![]() | |
PCLPointCloud2ConstPtr | input_ |
The input point cloud dataset. More... | |
IndicesPtr | indices_ |
A pointer to the vector of point indices to use. More... | |
bool | use_indices_ |
Set to true if point indices are used. More... | |
bool | fake_indices_ |
If no set of indices are given, we construct a set of fake indices that mimic the input PointCloud. More... | |
std::vector< uindex_t > | field_sizes_ |
The size of each individual field. More... | |
index_t | x_idx_ |
The x-y-z fields indices. More... | |
index_t | y_idx_ |
index_t | z_idx_ |
std::string | x_field_name_ |
The desired x-y-z field names. More... | |
std::string | y_field_name_ |
std::string | z_field_name_ |
FilterIndices represents the base class for filters that are about binary point removal.
All derived classes have to implement the filter (PointCloud &output) and the filter (Indices &indices) methods. Ideally they also make use of the negative_, keep_organized_ and extract_removed_indices_ systems. The distinguishment between the negative_ and extract_removed_indices_ systems only makes sense if the class automatically filters non-finite entries in the filtering methods (recommended).
Definition at line 195 of file filter_indices.h.
Definition at line 198 of file filter_indices.h.
|
inline |
Constructor.
[in] | extract_removed_indices | Set to true if you want to extract the indices of points being removed (default = false). |
Definition at line 203 of file filter_indices.h.
|
protectedpure virtual |
Abstract filter method for point cloud indices.
Implemented in pcl::StatisticalOutlierRemoval< pcl::PCLPointCloud2 >, pcl::RandomSample< pcl::PCLPointCloud2 >, pcl::RadiusOutlierRemoval< pcl::PCLPointCloud2 >, pcl::PassThrough< pcl::PCLPointCloud2 >, pcl::ExtractIndices< pcl::PCLPointCloud2 >, and pcl::CropBox< pcl::PCLPointCloud2 >.
|
overrideprotectedpure virtual |
Abstract filter method for point cloud.
Implements pcl::Filter< pcl::PCLPointCloud2 >.
Implemented in pcl::StatisticalOutlierRemoval< pcl::PCLPointCloud2 >, pcl::RandomSample< pcl::PCLPointCloud2 >, pcl::RadiusOutlierRemoval< pcl::PCLPointCloud2 >, pcl::PassThrough< pcl::PCLPointCloud2 >, pcl::ExtractIndices< pcl::PCLPointCloud2 >, and pcl::CropBox< pcl::PCLPointCloud2 >.
void pcl::FilterIndices< pcl::PCLPointCloud2 >::filter | ( | Indices & | indices | ) |
Calls the filtering method and returns the filtered point cloud indices.
[out] | indices | the resultant filtered point cloud indices |
Referenced by pcl::outofcore::OutofcoreOctreeBaseNode< ContainerT, PointT >::addPointCloud_and_genLOD(), and pcl::outofcore::OutofcoreOctreeBaseNode< ContainerT, PointT >::queryBBIncludes_subsample().
|
inline |
Get whether the filtered points should be kept and set to the value given through setUserFilterValue (default = NaN), or removed from the PointCloud, thus potentially breaking its organized structure.
Definition at line 251 of file filter_indices.h.
|
inline |
Get whether the regular conditions for points filtering should apply, or the inverted conditions.
Definition at line 231 of file filter_indices.h.
|
inline |
Set whether the filtered points should be kept and set to the value given through setUserFilterValue (default: NaN), or removed from the PointCloud, thus potentially breaking its organized structure.
[in] | keep_organized | false = remove points (default), true = redefine points, keep structure. |
Definition at line 241 of file filter_indices.h.
|
inline |
Set whether the regular conditions for points filtering should apply, or the inverted conditions.
[in] | negative | false = normal filter behavior (default), true = inverted behavior. |
Definition at line 222 of file filter_indices.h.
Referenced by pcl::outofcore::OutofcoreOctreeBaseNode< ContainerT, PointT >::addPointCloud_and_genLOD().
|
inline |
Provide a value that the filtered points should be set to instead of removing them.
Used in conjunction with setKeepOrganized ().
[in] | value | the user given value that the filtered point dimensions should be set to (default = NaN). |
Definition at line 261 of file filter_indices.h.
|
protected |
False = remove points (default), true = redefine points, keep structure.
Definition at line 272 of file filter_indices.h.
|
protected |
False = normal filter behavior (default), true = inverted behavior.
Definition at line 269 of file filter_indices.h.
|
protected |
The user given value that the filtered point dimensions should be set to (default = NaN).
Definition at line 275 of file filter_indices.h.