|
Point Cloud Library (PCL)
1.6.0
|
MovingLeastSquares represent an implementation of the MLS (Moving Least Squares) algorithm for data smoothing and improved normal estimation. More...
#include <pcl/surface/mls.h>


Public Types | |
| enum | UpsamplingMethod { NONE, SAMPLE_LOCAL_PLANE, RANDOM_UNIFORM_DENSITY, VOXEL_GRID_DILATION } |
| typedef pcl::search::Search < PointInT > | KdTree |
| typedef pcl::search::Search < PointInT >::Ptr | KdTreePtr |
| typedef pcl::PointCloud < pcl::Normal > | NormalCloud |
| 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 |
| typedef pcl::PointCloud< PointInT > | PointCloud |
| typedef PointCloud::Ptr | PointCloudPtr |
| typedef PointCloud::ConstPtr | PointCloudConstPtr |
| typedef PointIndices::Ptr | PointIndicesPtr |
| typedef PointIndices::ConstPtr | PointIndicesConstPtr |
Public Member Functions | |
| MovingLeastSquares () | |
| Empty constructor. 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 () |
| 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 () |
| 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 () |
| 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 () |
| 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 | setUpsamplingRadius (double radius) |
| Set the radius of the circle in the local point plane that will be sampled. More... | |
| double | getUpsamplingRadius () |
| 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 () |
| 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 () |
| 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 () |
| 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 () |
| Get the number of dilation steps of the voxel grid. More... | |
| void | process (PointCloudOut &output) |
| Base method for surface reconstruction for all points given in <setInputCloud (), setIndices ()> More... | |
| virtual void | setInputCloud (const PointCloudConstPtr &cloud) |
| Provide a pointer to the input dataset. More... | |
| PointCloudConstPtr const | getInputCloud () |
| 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 IndicesConstPtr &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... | |
| 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... | |
| const PointInT & | operator[] (size_t pos) |
| Override PointCloud operator[] to shorten code. More... | |
MovingLeastSquares represent an implementation of the MLS (Moving Least Squares) algorithm for data smoothing and improved normal estimation.
It also contains methods for upsampling the resulting cloud based on the parametric fit. Reference paper: "Computing and Rendering Point Set Surfaces" by Marc Alexa, Johannes Behr, Daniel Cohen-Or, Shachar Fleishman, David Levin and Claudio T. Silva www.sci.utah.edu/~shachar/Publications/crpss.pdf
| typedef pcl::search::Search<PointInT> pcl::MovingLeastSquares< PointInT, PointOutT >::KdTree |
| typedef pcl::search::Search<PointInT>::Ptr pcl::MovingLeastSquares< PointInT, PointOutT >::KdTreePtr |
| typedef pcl::PointCloud<pcl::Normal> pcl::MovingLeastSquares< PointInT, PointOutT >::NormalCloud |
| typedef pcl::PointCloud<pcl::Normal>::Ptr pcl::MovingLeastSquares< PointInT, PointOutT >::NormalCloudPtr |
|
inherited |
Definition at line 74 of file pcl_base.h.
|
inherited |
Definition at line 76 of file pcl_base.h.
| typedef pcl::PointCloud<PointInT> pcl::MovingLeastSquares< PointInT, PointOutT >::PointCloudIn |
| typedef PointCloudIn::ConstPtr pcl::MovingLeastSquares< PointInT, PointOutT >::PointCloudInConstPtr |
| typedef PointCloudIn::Ptr pcl::MovingLeastSquares< PointInT, PointOutT >::PointCloudInPtr |
| typedef pcl::PointCloud<PointOutT> pcl::MovingLeastSquares< PointInT, PointOutT >::PointCloudOut |
| typedef PointCloudOut::ConstPtr pcl::MovingLeastSquares< PointInT, PointOutT >::PointCloudOutConstPtr |
| typedef PointCloudOut::Ptr pcl::MovingLeastSquares< PointInT, PointOutT >::PointCloudOutPtr |
|
inherited |
Definition at line 75 of file pcl_base.h.
|
inherited |
Definition at line 79 of file pcl_base.h.
|
inherited |
Definition at line 78 of file pcl_base.h.
| typedef boost::function<int (int, double, std::vector<int> &, std::vector<float> &)> pcl::MovingLeastSquares< PointInT, PointOutT >::SearchMethod |
| enum pcl::MovingLeastSquares::UpsamplingMethod |
|
inline |
|
inline |
|
inline |
|
inlineinherited |
Get a pointer to the vector of indices used.
Definition at line 190 of file pcl_base.h.
|
inlineinherited |
Get a pointer to the input point cloud dataset.
Definition at line 107 of file pcl_base.h.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlineinherited |
Override PointCloud operator[] to shorten code.
| pos | position in indices_ vector |
Definition at line 197 of file pcl_base.h.
|
virtual |
Base method for surface reconstruction for all points given in <setInputCloud (), setIndices ()>
| [out] | output | the resultant reconstructed surface model |
Reimplemented from pcl::CloudSurfaceProcessing< PointInT, PointOutT >.
|
inline |
|
inline |
|
inline |
|
inlineinherited |
Provide a pointer to the vector of indices that represents the input data.
| indices | a pointer to the vector of indices that represents the input data. |
Definition at line 113 of file pcl_base.h.
|
inlineinherited |
Provide a pointer to the vector of indices that represents the input data.
| indices | a pointer to the vector of indices that represents the input data. |
Definition at line 124 of file pcl_base.h.
|
inlineinherited |
Provide a pointer to the vector of indices that represents the input data.
| indices | a pointer to the vector of indices that represents the input data. |
Definition at line 135 of file pcl_base.h.
|
inlineinherited |
Set the indices for the points laying within an interest region of the point cloud.
| row_start | the offset on rows |
| col_start | the offset on columns |
| nb_rows | the number of rows to be considered row_start included |
| nb_cols | the number of columns to be considered col_start included |
Definition at line 151 of file pcl_base.h.
|
inlinevirtualinherited |
Provide a pointer to the input dataset.
| cloud | the const boost shared pointer to a PointCloud message |
Definition at line 103 of file pcl_base.h.
|
inline |
Set the parameter that specifies the desired number of points within the search radius.
| [in] | desired_num_points_in_radius | the desired number of points in the output cloud in a sphere of radius search_radius_ around each point |
|
inline |
|
inline |
|
inline |
|
inline |
Set the sphere radius that is to be used for determining the k-nearest neighbors used for fitting.
| [in] | radius | the sphere radius that is to contain all k-nearest neighbors |
|
inline |
|
inline |
Set the upsampling method to be used.
|
inline |
|
inline |
1.8.4