Point Cloud Library (PCL)  1.9.1-dev
List of all members | Public Member Functions
pcl::MovingLeastSquaresOMP< PointInT, PointOutT > Class Template Reference

MovingLeastSquaresOMP implementation has been merged into MovingLeastSquares for better maintainability. More...

#include <pcl/surface/mls.h>

+ Inheritance diagram for pcl::MovingLeastSquaresOMP< PointInT, PointOutT >:

Public Member Functions

 MovingLeastSquaresOMP (unsigned int threads=1)
 Constructor for parallelized Moving Least Squares. More...
 
- Public Member Functions inherited from pcl::MovingLeastSquares< PointInT, PointOutT >
 MovingLeastSquares ()
 Empty constructor. More...
 
virtual ~MovingLeastSquares ()
 Empty destructor. More...
 
void setComputeNormals (bool compute_normals)
 Set whether the algorithm should also store the normals computed. More...
 
void setSearchMethod (const KdTreePtr &tree)
 Provide a pointer to the search object. More...
 
KdTreePtr getSearchMethod () const
 Get a pointer to the search method used. More...
 
void setPolynomialOrder (int order)
 Set the order of the polynomial to be fit. More...
 
int getPolynomialOrder () const
 Get the order of the polynomial to be fit. More...
 
void setPolynomialFit (bool polynomial_fit)
 Sets whether the surface and normal are approximated using a polynomial, or only via tangent estimation. More...
 
bool getPolynomialFit () const
 Get the polynomial_fit value (true if the surface and normal are approximated using a polynomial). More...
 
void setSearchRadius (double radius)
 Set the sphere radius that is to be used for determining the k-nearest neighbors used for fitting. More...
 
double getSearchRadius () const
 Get the sphere radius used for determining the k-nearest neighbors. More...
 
void setSqrGaussParam (double sqr_gauss_param)
 Set the parameter used for distance based weighting of neighbors (the square of the search radius works best in general). More...
 
double getSqrGaussParam () const
 Get the parameter for distance based weighting of neighbors. More...
 
void setUpsamplingMethod (UpsamplingMethod method)
 Set the upsampling method to be used. More...
 
void setDistinctCloud (PointCloudInConstPtr distinct_cloud)
 Set the distinct cloud used for the DISTINCT_CLOUD upsampling method. More...
 
PointCloudInConstPtr getDistinctCloud () const
 Get the distinct cloud used for the DISTINCT_CLOUD upsampling method. More...
 
void setUpsamplingRadius (double radius)
 Set the radius of the circle in the local point plane that will be sampled. More...
 
double getUpsamplingRadius () const
 Get the radius of the circle in the local point plane that will be sampled. More...
 
void setUpsamplingStepSize (double step_size)
 Set the step size for the local plane sampling. More...
 
double getUpsamplingStepSize () const
 Get the step size for the local plane sampling. More...
 
void setPointDensity (int desired_num_points_in_radius)
 Set the parameter that specifies the desired number of points within the search radius. More...
 
int getPointDensity () const
 Get the parameter that specifies the desired number of points within the search radius. More...
 
void setDilationVoxelSize (float voxel_size)
 Set the voxel size for the voxel grid. More...
 
float getDilationVoxelSize () const
 Get the voxel size for the voxel grid. More...
 
void setDilationIterations (int iterations)
 Set the number of dilation steps of the voxel grid. More...
 
int getDilationIterations () const
 Get the number of dilation steps of the voxel grid. More...
 
void setCacheMLSResults (bool cache_mls_results)
 Set whether the mls results should be stored for each point in the input cloud. More...
 
bool getCacheMLSResults () const
 Get the cache_mls_results_ value (True if the mls results should be stored, otherwise false). More...
 
void setProjectionMethod (MLSResult::ProjectionMethod method)
 Set the method to be used when projection the point on to the MLS surface. More...
 
MLSResult::ProjectionMethod getProjectionMethod () const
 Get the current projection method being used. More...
 
const std::vector< MLSResult > & getMLSResults () const
 Get the MLSResults for input cloud. More...
 
void setNumberOfThreads (unsigned int threads=1)
 Set the maximum number of threads to use. More...
 
void process (PointCloudOut &output)
 Base method for surface reconstruction for all points given in <setInputCloud (), setIndices ()> More...
 
PointIndicesPtr getCorrespondingIndices () const
 Get the set of indices with each point in output having the corresponding point in input. More...
 
- Public Member Functions inherited from pcl::CloudSurfaceProcessing< PointInT, PointOutT >
 CloudSurfaceProcessing ()
 Constructor. More...
 
virtual ~CloudSurfaceProcessing ()
 Empty destructor. More...
 
- Public Member Functions inherited from pcl::PCLBase< PointInT >
 PCLBase ()
 Empty constructor. More...
 
 PCLBase (const PCLBase &base)
 Copy constructor. More...
 
virtual ~PCLBase ()
 Destructor. More...
 
virtual void setInputCloud (const PointCloudConstPtr &cloud)
 Provide a pointer to the input dataset. More...
 
PointCloudConstPtr const getInputCloud () const
 Get a pointer to the input point cloud dataset. More...
 
virtual void setIndices (const IndicesPtr &indices)
 Provide a pointer to the vector of indices that represents the input data. More...
 
virtual void setIndices (const IndicesConstPtr &indices)
 Provide a pointer to the vector of indices that represents the input data. More...
 
virtual void setIndices (const PointIndicesConstPtr &indices)
 Provide a pointer to the vector of indices that represents the input data. More...
 
virtual void setIndices (size_t row_start, size_t col_start, size_t nb_rows, size_t nb_cols)
 Set the indices for the points laying within an interest region of the point cloud. More...
 
IndicesPtr const getIndices ()
 Get a pointer to the vector of indices used. More...
 
IndicesConstPtr const getIndices () const
 Get a pointer to the vector of indices used. More...
 
const PointInT & operator[] (size_t pos) const
 Override PointCloud operator[] to shorten code. More...
 

Additional Inherited Members

- Public Types inherited from pcl::MovingLeastSquares< PointInT, PointOutT >
enum  UpsamplingMethod {
  NONE, DISTINCT_CLOUD, SAMPLE_LOCAL_PLANE, RANDOM_UNIFORM_DENSITY,
  VOXEL_GRID_DILATION
}
 
typedef boost::shared_ptr< MovingLeastSquares< PointInT, PointOutT > > Ptr
 
typedef boost::shared_ptr< const MovingLeastSquares< PointInT, PointOutT > > ConstPtr
 
typedef pcl::search::Search< PointInT > KdTree
 
typedef pcl::search::Search< PointInT >::Ptr KdTreePtr
 
typedef pcl::PointCloud< pcl::NormalNormalCloud
 
typedef pcl::PointCloud< pcl::Normal >::Ptr NormalCloudPtr
 
typedef pcl::PointCloud< PointOutT > PointCloudOut
 
typedef PointCloudOut::Ptr PointCloudOutPtr
 
typedef PointCloudOut::ConstPtr PointCloudOutConstPtr
 
typedef pcl::PointCloud< PointInT > PointCloudIn
 
typedef PointCloudIn::Ptr PointCloudInPtr
 
typedef PointCloudIn::ConstPtr PointCloudInConstPtr
 
typedef boost::function< int(int, double, std::vector< int > &, std::vector< float > &)> SearchMethod
 
- Public Types inherited from pcl::CloudSurfaceProcessing< PointInT, PointOutT >
typedef boost::shared_ptr< CloudSurfaceProcessing< PointInT, PointOutT > > Ptr
 
typedef boost::shared_ptr< const CloudSurfaceProcessing< PointInT, PointOutT > > ConstPtr
 
- Public Types inherited from pcl::PCLBase< PointInT >
typedef pcl::PointCloud< PointInT > PointCloud
 
typedef PointCloud::Ptr PointCloudPtr
 
typedef PointCloud::ConstPtr PointCloudConstPtr
 
typedef boost::shared_ptr< PointIndicesPointIndicesPtr
 
typedef boost::shared_ptr< PointIndices const > PointIndicesConstPtr
 
- Protected Member Functions inherited from pcl::MovingLeastSquares< PointInT, PointOutT >
int searchForNeighbors (int index, std::vector< int > &indices, std::vector< float > &sqr_distances) const
 Search for the closest nearest neighbors of a given point using a radius search. More...
 
void computeMLSPointNormal (int index, const std::vector< int > &nn_indices, PointCloudOut &projected_points, NormalCloud &projected_points_normals, PointIndices &corresponding_input_indices, MLSResult &mls_result) const
 Smooth a given point and its neighborghood using Moving Least Squares. More...
 
void addProjectedPointNormal (int index, const Eigen::Vector3d &point, const Eigen::Vector3d &normal, double curvature, PointCloudOut &projected_points, NormalCloud &projected_points_normals, PointIndices &corresponding_input_indices) const
 This is a helper function for add projected points. More...
 
void copyMissingFields (const PointInT &point_in, PointOutT &point_out) const
 
virtual void performProcessing (PointCloudOut &output)
 Abstract surface reconstruction method. More...
 
void performUpsampling (PointCloudOut &output)
 Perform upsampling for the distinct-cloud and voxel-grid methods. More...
 
- Protected Member Functions inherited from pcl::PCLBase< PointInT >
bool initCompute ()
 This method should get called before starting the actual computation. More...
 
bool deinitCompute ()
 This method should get called after finishing the actual computation. More...
 
- Protected Attributes inherited from pcl::MovingLeastSquares< PointInT, PointOutT >
NormalCloudPtr normals_
 The point cloud that will hold the estimated normals, if set. More...
 
PointCloudInConstPtr distinct_cloud_
 The distinct point cloud that will be projected to the MLS surface. More...
 
SearchMethod search_method_
 The search method template for indices. More...
 
KdTreePtr tree_
 A pointer to the spatial search object. More...
 
int order_
 The order of the polynomial to be fit. More...
 
double search_radius_
 The nearest neighbors search radius for each point. More...
 
double sqr_gauss_param_
 Parameter for distance based weighting of neighbors (search_radius_ * search_radius_ works fine) More...
 
bool compute_normals_
 Parameter that specifies whether the normals should be computed for the input cloud or not. More...
 
UpsamplingMethod upsample_method_
 Parameter that specifies the upsampling method to be used. More...
 
double upsampling_radius_
 Radius of the circle in the local point plane that will be sampled. More...
 
double upsampling_step_
 Step size for the local plane sampling. More...
 
int desired_num_points_in_radius_
 Parameter that specifies the desired number of points within the search radius. More...
 
bool cache_mls_results_
 True if the mls results for the input cloud should be stored. More...
 
std::vector< MLSResultmls_results_
 Stores the MLS result for each point in the input cloud. More...
 
MLSResult::ProjectionMethod projection_method_
 Parameter that specifies the projection method to be used. More...
 
unsigned int threads_
 The maximum number of threads the scheduler should use. More...
 
float voxel_size_
 Voxel size for the VOXEL_GRID_DILATION upsampling method. More...
 
int dilation_iteration_num_
 Number of dilation steps for the VOXEL_GRID_DILATION upsampling method. More...
 
int nr_coeff_
 Number of coefficients, to be computed from the requested order. More...
 
PointIndicesPtr corresponding_input_indices_
 Collects for each point in output the corrseponding point in the input. More...
 
- Protected Attributes inherited from pcl::PCLBase< PointInT >
PointCloudConstPtr 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...
 

Detailed Description

template<typename PointInT, typename PointOutT>
class pcl::MovingLeastSquaresOMP< PointInT, PointOutT >

MovingLeastSquaresOMP implementation has been merged into MovingLeastSquares for better maintainability.

Note
Keeping this empty child class for backwards compatibility.
Author
Robert Huitl

Definition at line 756 of file mls.h.

Constructor & Destructor Documentation

template<typename PointInT , typename PointOutT >
pcl::MovingLeastSquaresOMP< PointInT, PointOutT >::MovingLeastSquaresOMP ( unsigned int  threads = 1)
inline

Constructor for parallelized Moving Least Squares.

Parameters
threadsthe maximum number of hardware threads to use (0 sets the value to 1)

Definition at line 762 of file mls.h.


The documentation for this class was generated from the following file: