41 #ifndef PCL_BOUNDARY_H_ 42 #define PCL_BOUNDARY_H_ 44 #include <pcl/features/eigen.h> 45 #include <pcl/features/feature.h> 80 template <
typename Po
intInT,
typename Po
intNT,
typename Po
intOutT>
84 typedef boost::shared_ptr<BoundaryEstimation<PointInT, PointNT, PointOutT> >
Ptr;
85 typedef boost::shared_ptr<const BoundaryEstimation<PointInT, PointNT, PointOutT> >
ConstPtr;
120 int q_idx,
const std::vector<int> &indices,
121 const Eigen::Vector4f &u,
const Eigen::Vector4f &v,
const float angle_threshold);
134 const PointInT &q_point,
135 const std::vector<int> &indices,
136 const Eigen::Vector4f &u,
const Eigen::Vector4f &v,
const float angle_threshold);
162 Eigen::Vector4f &u, Eigen::Vector4f &v)
165 v = p_coeff_v.unitOrthogonal ();
166 u = p_coeff_v.cross3 (v);
183 #ifdef PCL_NO_PRECOMPILE 184 #include <pcl/features/impl/boundary.hpp> 187 #endif //#ifndef PCL_BOUNDARY_H_ void computeFeature(PointCloudOut &output)
Estimate whether a set of points is lying on surface boundaries using an angle criterion for all poin...
boost::shared_ptr< BoundaryEstimation< PointInT, PointNT, PointOutT > > Ptr
std::string feature_name_
The feature name.
BoundaryEstimation estimates whether a set of points is lying on surface boundaries using an angle cr...
void getCoordinateSystemOnPlane(const PointNT &p_coeff, Eigen::Vector4f &u, Eigen::Vector4f &v)
Get a u-v-n coordinate system that lies on a plane defined by its normal.
float getAngleThreshold()
Get the decision boundary (angle threshold) as set by the user.
const Eigen::Map< const Eigen::Vector4f, Eigen::Aligned > Vector4fMapConst
Feature< PointInT, PointOutT >::PointCloudOut PointCloudOut
bool isBoundaryPoint(const pcl::PointCloud< PointInT > &cloud, int q_idx, const std::vector< int > &indices, const Eigen::Vector4f &u, const Eigen::Vector4f &v, const float angle_threshold)
Check whether a point is a boundary point in a planar patch of projected points given by indices...
void setAngleThreshold(float angle)
Set the decision boundary (angle threshold) that marks points as boundary or regular.
boost::shared_ptr< const BoundaryEstimation< PointInT, PointNT, PointOutT > > ConstPtr
float angle_threshold_
The decision boundary (angle threshold) that marks points as boundary or regular. ...
PointCloud represents the base class in PCL for storing collections of 3D points. ...
Feature represents the base feature class.
BoundaryEstimation()
Empty constructor.