Point Cloud Library (PCL)
1.10.1
|
43 #include <pcl/features/feature.h>
66 template <
typename Po
intInT,
typename Po
intNT,
typename Po
intOutT,
typename Po
intRFT = pcl::ReferenceFrame>
116 const std::vector<int> &indices,
117 const std::vector<float> &sqr_dists,
118 Eigen::VectorXf &shot) = 0;
145 const std::vector<float> &sqr_dists,
147 std::vector<double> &binDistance,
149 Eigen::VectorXf &shot);
166 std::vector<double> &bin_distance_shape);
218 template <
typename Po
intInT,
typename Po
intNT,
typename Po
intOutT = pcl::SHOT352,
typename Po
intRFT = pcl::ReferenceFrame>
264 const std::vector<int> &indices,
265 const std::vector<float> &sqr_dists,
266 Eigen::VectorXf &shot)
override;
296 template <
typename Po
intInT,
typename Po
intNT,
typename Po
intOutT = pcl::SHOT1344,
typename Po
intRFT = pcl::ReferenceFrame>
330 bool describe_color =
true)
350 const std::vector<int> &indices,
351 const std::vector<float> &sqr_dists,
352 Eigen::VectorXf &shot)
override;
374 const std::vector<float> &sqr_dists,
376 std::vector<double> &binDistanceShape,
377 std::vector<double> &binDistanceColor,
378 const int nr_bins_shape,
379 const int nr_bins_color,
380 Eigen::VectorXf &shot);
401 RGB2CIELAB (
unsigned char R,
unsigned char G,
unsigned char B,
float &L,
float &A,
float &B2);
408 #ifdef PCL_NO_PRECOMPILE
409 #include <pcl/features/impl/shot.hpp>
This file defines compatibility wrappers for low level I/O functions.
shared_ptr< Feature< PointInT, pcl::SHOT1344 > > Ptr
SHOTEstimation()
Empty constructor.
virtual void computePointSHOT(const int index, const std::vector< int > &indices, const std::vector< float > &sqr_dists, Eigen::VectorXf &shot)=0
Estimate the SHOT descriptor for a given point based on its spatial neighborhood of 3D points with no...
FeatureWithLocalReferenceFrames provides a public interface for descriptor extractor classes which ne...
SHOTEstimation estimates the Signature of Histograms of OrienTations (SHOT) descriptor for a given po...
static void RGB2CIELAB(unsigned char R, unsigned char G, unsigned char B, float &L, float &A, float &B2)
Converts RGB triplets to CIELab space.
double radius1_2_
1/2 of the search radius.
virtual float getLRFRadius() const
Get the radius used for local reference frame estimation.
bool initCompute() override
This method should get called before starting the actual computation.
~SHOTEstimation()
Empty destructor.
bool b_describe_shape_
Compute shape descriptor.
shared_ptr< const Feature< PointInT, pcl::SHOT1344 > > ConstPtr
void interpolateDoubleChannel(const std::vector< int > &indices, const std::vector< float > &sqr_dists, const int index, std::vector< double > &binDistanceShape, std::vector< double > &binDistanceColor, const int nr_bins_shape, const int nr_bins_color, Eigen::VectorXf &shot)
Quadrilinear interpolation; used when color and shape descriptions are both activated.
static float sRGB_LUT[256]
~SHOTColorEstimation()
Empty destructor.
const int maxAngularSectors_
...
void createBinDistanceShape(int index, const std::vector< int > &indices, std::vector< double > &bin_distance_shape)
Create a binned distance shape histogram.
bool b_describe_color_
Compute color descriptor.
void computeFeature(pcl::PointCloud< PointOutT > &output) override
Estimate the Signatures of Histograms of OrienTations (SHOT) descriptors at a set of points given by ...
const int nr_grid_sector_
Number of azimuthal sectors.
void computePointSHOT(const int index, const std::vector< int > &indices, const std::vector< float > &sqr_dists, Eigen::VectorXf &shot) override
Estimate the SHOT descriptor for a given point based on its spatial neighborhood of 3D points with no...
SHOTEstimation estimates the Signature of Histograms of OrienTations (SHOT) descriptor for a given po...
virtual void setLRFRadius(float radius)
Set the radius used for local reference frame estimation if the frames are not set by the user.
Eigen::VectorXf shot_
Placeholder for a point's SHOT.
int nr_shape_bins_
The number of bins in each shape histogram.
int nr_color_bins_
The number of bins in each color histogram.
SHOTColorEstimation(bool describe_shape=true, bool describe_color=true)
Empty constructor.
int descLength_
One SHOT length.
void computeFeature(pcl::PointCloud< PointOutT > &output) override
Estimate the Signatures of Histograms of OrienTations (SHOT) descriptors at a set of points given by ...
void computePointSHOT(const int index, const std::vector< int > &indices, const std::vector< float > &sqr_dists, Eigen::VectorXf &shot) override
Estimate the SHOT descriptor for a given point based on its spatial neighborhood of 3D points with no...
~SHOTEstimationBase()
Empty destructor.
SHOTEstimationBase(int nr_shape_bins=10)
Empty constructor.
void normalizeHistogram(Eigen::VectorXf &shot, int desc_length)
Normalize the SHOT histogram.
static float sXYZ_LUT[4000]
double radius3_4_
3/4 of the search radius.
double sqradius_
The squared search radius.
double radius1_4_
1/4 of the search radius.
SHOTColorEstimation estimates the Signature of Histograms of OrienTations (SHOT) descriptor for a giv...
std::string feature_name_
The feature name.
float lrf_radius_
The radius used for the LRF computation.
void interpolateSingleChannel(const std::vector< int > &indices, const std::vector< float > &sqr_dists, const int index, std::vector< double > &binDistance, const int nr_bins, Eigen::VectorXf &shot)
Quadrilinear interpolation used when color and shape descriptions are NOT activated simultaneously.
boost::shared_ptr< T > shared_ptr
Alias for boost::shared_ptr.
Feature represents the base feature class.