|
typedef Feature< PointInT,
PointOutT >::PointCloudOut | PointCloudOut |
| |
| typedef pcl::PointCloud< PointInT > | PointCloudIn |
| |
| typedef pcl::PointCloud< PointNT > | PointCloudN |
| |
| typedef PointCloudN::Ptr | PointCloudNPtr |
| |
| typedef PointCloudN::ConstPtr | PointCloudNConstPtr |
| |
typedef boost::shared_ptr
< FeatureFromNormals< PointInT,
PointNT, PointOutT > > | Ptr |
| |
typedef boost::shared_ptr
< const FeatureFromNormals
< PointInT, PointNT, PointOutT > > | ConstPtr |
| |
| typedef PCLBase< PointInT > | BaseClass |
| |
typedef pcl::search::Search
< PointInT > | KdTree |
| |
typedef pcl::search::Search
< PointInT >::Ptr | KdTreePtr |
| |
typedef boost::function< int(size_t,
double, std::vector< int >
&, std::vector< float > &)> | SearchMethod |
| |
typedef boost::function< int(const
PointCloudIn &cloud, size_t
index, double, std::vector
< int > &, std::vector< float > &)> | SearchMethodSurface |
| |
| typedef pcl::PointCloud< PointInT > | PointCloud |
| |
| typedef PointCloud::Ptr | PointCloudPtr |
| |
| typedef PointCloud::ConstPtr | PointCloudConstPtr |
| |
| typedef PointIndices::Ptr | PointIndicesPtr |
| |
| typedef PointIndices::ConstPtr | PointIndicesConstPtr |
| |
|
| | PrincipalCurvaturesEstimation () |
| | Empty constructor. More...
|
| |
| void | computePointPrincipalCurvatures (const pcl::PointCloud< PointNT > &normals, int p_idx, const std::vector< int > &indices, float &pcx, float &pcy, float &pcz, float &pc1, float &pc2) |
| | Perform Principal Components Analysis (PCA) on the point normals of a surface patch in the tangent plane of the given point normal, and return the principal curvature (eigenvector of the max eigenvalue), along with both the max (pc1) and min (pc2) eigenvalues. More...
|
| |
| void | setInputNormals (const PointCloudNConstPtr &normals) |
| | Provide a pointer to the input dataset that contains the point normals of the XYZ dataset. More...
|
| |
| PointCloudNConstPtr | getInputNormals () const |
| | Get a pointer to the normals of the input XYZ point cloud dataset. More...
|
| |
| void | setSearchSurface (const PointCloudInConstPtr &cloud) |
| | Provide a pointer to a dataset to add additional information to estimate the features for every point in the input dataset. More...
|
| |
| PointCloudInConstPtr | getSearchSurface () const |
| | Get a pointer to the surface point cloud dataset. 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...
|
| |
| double | getSearchParameter () const |
| | Get the internal search parameter. More...
|
| |
| void | setKSearch (int k) |
| | Set the number of k nearest neighbors to use for the feature estimation. More...
|
| |
| int | getKSearch () const |
| | get the number of k nearest neighbors used for the feature estimation. More...
|
| |
| void | setRadiusSearch (double radius) |
| | Set the sphere radius that is to be used for determining the nearest neighbors used for the feature estimation. More...
|
| |
| double | getRadiusSearch () const |
| | Get the sphere radius used for determining the neighbors. More...
|
| |
| void | compute (PointCloudOut &output) |
| | Base method for feature estimation for all points given in <setInputCloud (), setIndices ()> using the surface in setSearchSurface () and the spatial locator in setSearchMethod () More...
|
| |
| void | computeEigen (pcl::PointCloud< Eigen::MatrixXf > &output) |
| | Base method for feature estimation for all points given in <setInputCloud (), setIndices ()> using the surface in setSearchSurface () and the spatial locator in setSearchMethod () 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...
|
| |
template<typename PointInT, typename PointNT, typename PointOutT = pcl::PrincipalCurvatures>
class pcl::PrincipalCurvaturesEstimation< PointInT, PointNT, PointOutT >
PrincipalCurvaturesEstimation estimates the directions (eigenvectors) and magnitudes (eigenvalues) of principal surface curvatures for a given point cloud dataset containing points and normals.
The recommended PointOutT is pcl::PrincipalCurvatures.
- Note
- The code is stateful as we do not expect this class to be multicore parallelized. Please look at NormalEstimationOMP for an example on how to extend this to parallel implementations.
- Author
- Radu B. Rusu, Jared Glover
Definition at line 61 of file principal_curvatures.h.
template<typename PointInT , typename PointNT, typename PointOutT >
| void pcl::PrincipalCurvaturesEstimation< PointInT, PointNT, PointOutT >::computePointPrincipalCurvatures |
( |
const pcl::PointCloud< PointNT > & |
normals, |
|
|
int |
p_idx, |
|
|
const std::vector< int > & |
indices, |
|
|
float & |
pcx, |
|
|
float & |
pcy, |
|
|
float & |
pcz, |
|
|
float & |
pc1, |
|
|
float & |
pc2 |
|
) |
| |
Perform Principal Components Analysis (PCA) on the point normals of a surface patch in the tangent plane of the given point normal, and return the principal curvature (eigenvector of the max eigenvalue), along with both the max (pc1) and min (pc2) eigenvalues.
- Parameters
-
| [in] | normals | the point cloud normals |
| [in] | p_idx | the query point at which the least-squares plane was estimated |
| [in] | indices | the point cloud indices that need to be used |
| [out] | pcx | the principal curvature X direction |
| [out] | pcy | the principal curvature Y direction |
| [out] | pcz | the principal curvature Z direction |
| [out] | pc1 | the max eigenvalue of curvature |
| [out] | pc2 | the min eigenvalue of curvature |
Definition at line 47 of file principal_curvatures.hpp.
template<typename PointInT, typename PointNT, typename PointOutT>
Provide a pointer to the input dataset that contains the point normals of the XYZ dataset.
In case of search surface is set to be different from the input cloud, normals should correspond to the search surface, not the input cloud!
- Parameters
-
| [in] | normals | the const boost shared pointer to a PointCloud of normals. By convention, L2 norm of each normal should be 1. |
Definition at line 351 of file feature.h.
template<typename PointInT, typename PointOutT>
Provide a pointer to a dataset to add additional information to estimate the features for every point in the input dataset.
This is optional, if this is not set, it will only use the data in the input cloud to estimate the features. This is useful when you only need to compute the features for a downsampled cloud.
- Parameters
-
Definition at line 144 of file feature.h.