41 #ifndef PCL_PRINCIPAL_CURVATURES_H_ 42 #define PCL_PRINCIPAL_CURVATURES_H_ 44 #include <pcl/features/eigen.h> 45 #include <pcl/features/feature.h> 60 template <
typename Po
intInT,
typename Po
intNT,
typename Po
intOutT = pcl::PrincipalCurvatures>
64 typedef boost::shared_ptr<PrincipalCurvaturesEstimation<PointInT, PointNT, PointOutT> >
Ptr;
65 typedef boost::shared_ptr<const PrincipalCurvaturesEstimation<PointInT, PointNT, PointOutT> >
ConstPtr;
80 projected_normals_ (),
81 xyz_centroid_ (
Eigen::Vector3f::Zero ()),
82 demean_ (
Eigen::Vector3f::Zero ()),
83 covariance_matrix_ (
Eigen::Matrix3f::Zero ()),
84 eigenvector_ (
Eigen::Vector3f::Zero ()),
85 eigenvalues_ (
Eigen::Vector3f::Zero ())
104 int p_idx,
const std::vector<int> &indices,
105 float &pcx,
float &pcy,
float &pcz,
float &pc1,
float &pc2);
119 std::vector<Eigen::Vector3f> projected_normals_;
122 Eigen::Vector3f xyz_centroid_;
125 Eigen::Vector3f demean_;
131 Eigen::Vector3f eigenvector_;
133 Eigen::Vector3f eigenvalues_;
137 #ifdef PCL_NO_PRECOMPILE 138 #include <pcl/features/impl/principal_curvatures.hpp> 141 #endif //#ifndef PCL_PRINCIPAL_CURVATURES_H_ PrincipalCurvaturesEstimation()
Empty constructor.
struct pcl::_PointXYZHSV EIGEN_ALIGN16
pcl::PointCloud< PointInT > PointCloudIn
std::string feature_name_
The feature name.
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 pl...
boost::shared_ptr< PrincipalCurvaturesEstimation< PointInT, PointNT, PointOutT > > Ptr
Feature< PointInT, PointOutT >::PointCloudOut PointCloudOut
PointCloud represents the base class in PCL for storing collections of 3D points. ...
void computeFeature(PointCloudOut &output)
Estimate the principal curvature (eigenvector of the max eigenvalue), along with both the max (pc1) a...
Feature represents the base feature class.
boost::shared_ptr< const PrincipalCurvaturesEstimation< PointInT, PointNT, PointOutT > > ConstPtr
PrincipalCurvaturesEstimation estimates the directions (eigenvectors) and magnitudes (eigenvalues) of...