The following figure shows a simple example of a selected query point, and its selected k-neighborhood.
An example of two of the most widely used geometric point features are the underlying surface's estimated curvature and normal at a query point p. Both of them are considered local features, as they characterize a point using the information provided by its k closest point neighbors. For determining these neighbors efficienctly, the input dataset is usually split into smaller chunks using spatial decomposition techniques such as octrees or kD-trees (see the figure below - left: kD-tree, right: octree), and then closest point searches are performed in that space. Depending on the application one can opt for either determining a fixed number of k points in the vecinity of p, or all points which are found inside of a sphere of radius r centered at p. Unarguably, one the easiest methods for estimating the surface normals and curvature changes at a point p is to perform an eigendecomposition (i.e. compute the eigenvectors and eigenvalues) of the k-neighborhood point surface patch. Thus, the eigenvector corresponding to the smallest eigenvalue will approximate the surface normal n at point p, while the surface curvature change will be estimated from the eigenvalues as:
|
| class | pcl::ShapeContext3DEstimation< PointInT, PointNT, PointOutT > |
| | ShapeContext3DEstimation implements the 3D shape context descriptor as described in: More...
|
| |
| class | pcl::ShapeContext3DEstimation< PointInT, PointNT, Eigen::MatrixXf > |
| | ShapeContext3DEstimation implements the 3D shape context descriptor as described in: More...
|
| |
| class | pcl::BoundaryEstimation< PointInT, PointNT, PointOutT > |
| | BoundaryEstimation estimates whether a set of points is lying on surface boundaries using an angle criterion. More...
|
| |
| class | pcl::BoundaryEstimation< PointInT, PointNT, Eigen::MatrixXf > |
| | BoundaryEstimation estimates whether a set of points is lying on surface boundaries using an angle criterion. More...
|
| |
| class | pcl::CVFHEstimation< PointInT, PointNT, PointOutT > |
| | CVFHEstimation estimates the Clustered Viewpoint Feature Histogram (CVFH) descriptor for a given point cloud dataset containing XYZ data and normals, as presented in: More...
|
| |
| class | pcl::ESFEstimation< PointInT, PointOutT > |
| | ESFEstimation estimates the ensemble of shape functions descriptors for a given point cloud dataset containing points. More...
|
| |
| class | pcl::Feature< PointInT, PointOutT > |
| | Feature represents the base feature class. More...
|
| |
| class | pcl::FeatureWithLocalReferenceFrames< PointInT, PointRFT > |
| | FeatureWithLocalReferenceFrames provides a public interface for descriptor extractor classes which need a local reference frame at each input keypoint. More...
|
| |
| class | pcl::FPFHEstimation< PointInT, PointNT, PointOutT > |
| | FPFHEstimation estimates the Fast Point Feature Histogram (FPFH) descriptor for a given point cloud dataset containing points and normals. More...
|
| |
| class | pcl::FPFHEstimation< PointInT, PointNT, Eigen::MatrixXf > |
| | FPFHEstimation estimates the Fast Point Feature Histogram (FPFH) descriptor for a given point cloud dataset containing points and normals. More...
|
| |
| class | pcl::FPFHEstimationOMP< PointInT, PointNT, PointOutT > |
| | FPFHEstimationOMP estimates the Fast Point Feature Histogram (FPFH) descriptor for a given point cloud dataset containing points and normals, in parallel, using the OpenMP standard. More...
|
| |
| class | pcl::IntensityGradientEstimation< PointInT, PointNT, PointOutT, IntensitySelectorT > |
| | IntensityGradientEstimation estimates the intensity gradient for a point cloud that contains position and intensity values. More...
|
| |
| class | pcl::IntensityGradientEstimation< PointInT, PointNT, Eigen::MatrixXf > |
| | IntensityGradientEstimation estimates the intensity gradient for a point cloud that contains position and intensity values. More...
|
| |
| class | pcl::IntensitySpinEstimation< PointInT, PointOutT > |
| | IntensitySpinEstimation estimates the intensity-domain spin image descriptors for a given point cloud dataset containing points and intensity. More...
|
| |
| class | pcl::IntensitySpinEstimation< PointInT, Eigen::MatrixXf > |
| | IntensitySpinEstimation estimates the intensity-domain spin image descriptors for a given point cloud dataset containing points and intensity. More...
|
| |
| class | pcl::MomentInvariantsEstimation< PointInT, PointOutT > |
| | MomentInvariantsEstimation estimates the 3 moment invariants (j1, j2, j3) at each 3D point. More...
|
| |
| class | pcl::MomentInvariantsEstimation< PointInT, Eigen::MatrixXf > |
| | MomentInvariantsEstimation estimates the 3 moment invariants (j1, j2, j3) at each 3D point. More...
|
| |
| class | pcl::Narf |
| | NARF (Normal Aligned Radial Features) is a point feature descriptor type for 3D data. More...
|
| |
| class | pcl::NarfDescriptor |
| | Computes NARF feature descriptors for points in a range image More...
|
| |
| class | pcl::NormalEstimation< PointInT, PointOutT > |
| | NormalEstimation estimates local surface properties (surface normals and curvatures)at each 3D point. More...
|
| |
| class | pcl::NormalEstimation< PointInT, Eigen::MatrixXf > |
| | NormalEstimation estimates local surface properties at each 3D point, such as surface normals and curvatures. More...
|
| |
| class | pcl::NormalEstimationOMP< PointInT, PointOutT > |
| | NormalEstimationOMP estimates local surface properties at each 3D point, such as surface normals and curvatures, in parallel, using the OpenMP standard. More...
|
| |
| class | pcl::NormalEstimationOMP< PointInT, Eigen::MatrixXf > |
| | NormalEstimationOMP estimates local surface properties at each 3D point, such as surface normals and curvatures, in parallel, using the OpenMP standard. More...
|
| |
| class | pcl::PFHEstimation< PointInT, PointNT, PointOutT > |
| | PFHEstimation estimates the Point Feature Histogram (PFH) descriptor for a given point cloud dataset containing points and normals. More...
|
| |
| class | pcl::PFHEstimation< PointInT, PointNT, Eigen::MatrixXf > |
| | PFHEstimation estimates the Point Feature Histogram (PFH) descriptor for a given point cloud dataset containing points and normals. More...
|
| |
| 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. More...
|
| |
| class | pcl::PrincipalCurvaturesEstimation< PointInT, PointNT, Eigen::MatrixXf > |
| | PrincipalCurvaturesEstimation estimates the directions (eigenvectors) and magnitudes (eigenvalues) of principal surface curvatures for a given point cloud dataset containing points and normals. More...
|
| |
| class | pcl::RangeImageBorderExtractor |
| | Extract obstacle borders from range images, meaning positions where there is a transition from foreground to background. More...
|
| |
| class | pcl::RIFTEstimation< PointInT, GradientT, PointOutT > |
| | RIFTEstimation estimates the Rotation Invariant Feature Transform descriptors for a given point cloud dataset containing points and intensity. More...
|
| |
| class | pcl::RIFTEstimation< PointInT, GradientT, Eigen::MatrixXf > |
| | RIFTEstimation estimates the Rotation Invariant Feature Transform descriptors for a given point cloud dataset containing points and intensity. More...
|
| |
| class | pcl::RSDEstimation< PointInT, PointNT, PointOutT > |
| | RSDEstimation estimates the Radius-based Surface Descriptor (minimal and maximal radius of the local surface's curves) for a given point cloud dataset containing points and normals. More...
|
| |
| class | pcl::SHOTEstimationBase< PointInT, PointNT, PointOutT, PointRFT > |
| | SHOTEstimation estimates the Signature of Histograms of OrienTations (SHOT) descriptor for a given point cloud dataset containing points and normals. More...
|
| |
| class | pcl::SHOTEstimation< PointInT, PointNT, PointOutT, PointRFT > |
| | SHOTEstimation estimates the Signature of Histograms of OrienTations (SHOT) descriptor for a given point cloud dataset containing points and normals. More...
|
| |
| class | pcl::SHOTLocalReferenceFrameEstimation< PointInT, PointOutT > |
| | SHOTLocalReferenceFrameEstimation estimates the Local Reference Frame used in the calculation of the (SHOT) descriptor. More...
|
| |
| class | pcl::SHOTLocalReferenceFrameEstimationOMP< PointInT, PointOutT > |
| | SHOTLocalReferenceFrameEstimation estimates the Local Reference Frame used in the calculation of the (SHOT) descriptor. More...
|
| |
| class | pcl::SHOTEstimationOMP< PointInT, PointNT, PointOutT, PointRFT > |
| | SHOTEstimation estimates the Signature of Histograms of OrienTations (SHOT) descriptor for a given point cloud dataset containing points and normals, in parallel, using the OpenMP standard. More...
|
| |
| class | pcl::SpinImageEstimation< PointInT, PointNT, PointOutT > |
| | Estimates spin-image descriptors in the given input points. More...
|
| |
| class | pcl::SpinImageEstimation< PointInT, PointNT, Eigen::MatrixXf > |
| | Estimates spin-image descriptors in the given input points. More...
|
| |
| class | pcl::UniqueShapeContext< PointInT, PointOutT, PointRFT > |
| | UniqueShapeContext implements the Unique Shape Descriptor described here: More...
|
| |
| class | pcl::UniqueShapeContext< PointInT, Eigen::MatrixXf, PointRFT > |
| | UniqueShapeContext implements the Unique Shape Descriptor described here: More...
|
| |
| class | pcl::VFHEstimation< PointInT, PointNT, PointOutT > |
| | VFHEstimation estimates the Viewpoint Feature Histogram (VFH) descriptor for a given point cloud dataset containing points and normals. More...
|
| |
|
| void | pcl::solvePlaneParameters (const Eigen::Matrix3f &covariance_matrix, const Eigen::Vector4f &point, Eigen::Vector4f &plane_parameters, float &curvature) |
| | Solve the eigenvalues and eigenvectors of a given 3x3 covariance matrix, and estimate the least-squares plane normal and surface curvature. More...
|
| |
| void | pcl::solvePlaneParameters (const Eigen::Matrix3f &covariance_matrix, float &nx, float &ny, float &nz, float &curvature) |
| | Solve the eigenvalues and eigenvectors of a given 3x3 covariance matrix, and estimate the least-squares plane normal and surface curvature. More...
|
| |
| template<typename PointT > |
| void | pcl::computePointNormal (const pcl::PointCloud< PointT > &cloud, Eigen::Vector4f &plane_parameters, float &curvature) |
| | Compute the Least-Squares plane fit for a given set of points, and return the estimated plane parameters together with the surface curvature. More...
|
| |
| template<typename PointT > |
| void | pcl::computePointNormal (const pcl::PointCloud< PointT > &cloud, const std::vector< int > &indices, Eigen::Vector4f &plane_parameters, float &curvature) |
| | Compute the Least-Squares plane fit for a given set of points, using their indices, and return the estimated plane parameters together with the surface curvature. More...
|
| |
| template<typename PointT , typename Scalar > |
| void | pcl::flipNormalTowardsViewpoint (const PointT &point, float vp_x, float vp_y, float vp_z, Eigen::Matrix< Scalar, 4, 1 > &normal) |
| | Flip (in place) the estimated normal of a point towards a given viewpoint. More...
|
| |
| template<typename PointT , typename Scalar > |
| void | pcl::flipNormalTowardsViewpoint (const PointT &point, float vp_x, float vp_y, float vp_z, Eigen::Matrix< Scalar, 3, 1 > &normal) |
| | Flip (in place) the estimated normal of a point towards a given viewpoint. More...
|
| |
| template<typename PointT > |
| void | pcl::flipNormalTowardsViewpoint (const PointT &point, float vp_x, float vp_y, float vp_z, float &nx, float &ny, float &nz) |
| | Flip (in place) the estimated normal of a point towards a given viewpoint. More...
|
| |
| PCL_EXPORTS bool | pcl::computePairFeatures (const Eigen::Vector4f &p1, const Eigen::Vector4f &n1, const Eigen::Vector4f &p2, const Eigen::Vector4f &n2, float &f1, float &f2, float &f3, float &f4) |
| | Compute the 4-tuple representation containing the three angles and one distance between two points represented by Cartesian coordinates and normals. More...
|
| |
| template<int N> |
| void | pcl::getFeaturePointCloud (const std::vector< Eigen::MatrixXf, Eigen::aligned_allocator< Eigen::MatrixXf > > &histograms2D, PointCloud< Histogram< N > > &histogramsPC) |
| | Transform a list of 2D matrices into a point cloud containing the values in a vector (Histogram<N>). More...
|
| |
| template<typename PointInT , typename PointNT , typename PointOutT > |
| Eigen::MatrixXf | pcl::computeRSD (boost::shared_ptr< const pcl::PointCloud< PointInT > > &surface, boost::shared_ptr< const pcl::PointCloud< PointNT > > &normals, const std::vector< int > &indices, double max_dist, int nr_subdiv, double plane_radius, PointOutT &radii, bool compute_histogram=false) |
| | Estimate the Radius-based Surface Descriptor (RSD) for a given point based on its spatial neighborhood of 3D points with normals. More...
|
| |
| template<typename PointNT , typename PointOutT > |
| Eigen::MatrixXf | pcl::computeRSD (boost::shared_ptr< const pcl::PointCloud< PointNT > > &normals, const std::vector< int > &indices, const std::vector< float > &sqr_dists, double max_dist, int nr_subdiv, double plane_radius, PointOutT &radii, bool compute_histogram=false) |
| | Estimate the Radius-based Surface Descriptor (RSD) for a given point based on its spatial neighborhood of 3D points with normals. More...
|
| |
| template<typename PointInT , typename PointNT , typename PointRFT > |
| class | pcl::PCL_DEPRECATED_CLASS (SHOTEstimation,"SHOTEstimation<..., pcl::SHOT, ...> IS DEPRECATED, USE SHOTEstimation<..., pcl::SHOT352, ...> INSTEAD")< PointInT |
| | SHOTEstimation estimates the Signature of Histograms of OrienTations (SHOT) descriptor for a given point cloud dataset containing points and normals. More...
|
| |