Classes | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Private Types | Private Attributes
cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine > Class Template Reference

feature generator for surfaces based on fourier transformation (rotation/translation invariant) More...

#include <invariant_surface_feature.h>

List of all members.

Classes

struct  Triangle
struct  VectorWithParams

Public Types

enum  EINVARAINCE {
  INVARAINCE_X = 1, INVARAINCE_Y = 2, INVARAINCE_Z = 4, INVARAINCE_INCLINATION = 8,
  INVARAINCE_AZIMUTH = 16, INVARAINCE_ALL = 0x1f
}
typedef boost::shared_ptr< ResultPResult
typedef boost::shared_ptr
< const Result
PResultConst
typedef boost::shared_ptr
< TSurfaceList
PTSurfaceList
typedef std::vector< Signature
< Real > > 
Result
typedef std::vector< TSurface > TSurfaceList
typedef Eigen::Matrix< Scalar, 3, 1 > TVector

Public Member Functions

void addRadius (const float r)
void compute ()
void dbg_keypoints (std::vector< TVector > &keypoints) const
pcl::PolygonMesh::Ptr dbg_Mesh_of_Map () const
void dbg_mesh_of_subsamp (const TVector &at, const Scalar radius, std::vector< TVector > &pts, std::vector< int > &inds) const
const EINVARAINCEgetInvarianceSettings () const
const std::vector< float > & getRadii () const
PResultConst getResult () const
const TAffine & getTransformation () const
 InvariantSurfaceFeature (const int num_radius, const int num_angle)
void setInput (PTSurfaceList surfs)
void setInvarianceSettings (const EINVARAINCE &t)
void setTransformation (const TAffine &t)
void test_addOffset (const Scalar off_x, const Scalar off_y, const Scalar off_z)
void test_rotate (const Scalar angle)
bool test_singleTriangle (const int num) const
pcl::PolygonMesh::Ptr test_subsampling_of_Map (const int num, const Scalar r2)
virtual ~InvariantSurfaceFeature ()

Protected Member Functions

pcl::PolygonMesh::Ptr dbg_triangles2mesh (const std::vector< Triangle > &res) const
void generateKeypoints (std::vector< TVector > &keypoints) const
void subsample (const TVector &at, const Scalar r2, std::vector< Triangle > &res) const

Protected Attributes

PTSurfaceList input_
EINVARAINCE invariance_
std::vector< float > radii_
PResult result_
TAffine transform_
std::vector< Triangletriangulated_input_

Private Types

typedef Sampler< Real, Scalar > S

Private Attributes

const int num_angle_
const int num_radius_
S::Samples samples_
S sr_

Detailed Description

template<typename TSurface, typename Scalar = double, typename Real = float, typename TAffine = Eigen::Affine3f>
class cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >

feature generator for surfaces based on fourier transformation (rotation/translation invariant)

Definition at line 73 of file invariant_surface_feature.h.


Member Typedef Documentation

template<typename TSurface , typename Scalar = double, typename Real = float, typename TAffine = Eigen::Affine3f>
typedef boost::shared_ptr<Result> cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::PResult

Definition at line 87 of file invariant_surface_feature.h.

template<typename TSurface , typename Scalar = double, typename Real = float, typename TAffine = Eigen::Affine3f>
typedef boost::shared_ptr<const Result> cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::PResultConst

Definition at line 88 of file invariant_surface_feature.h.

template<typename TSurface , typename Scalar = double, typename Real = float, typename TAffine = Eigen::Affine3f>
typedef boost::shared_ptr<TSurfaceList> cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::PTSurfaceList

Definition at line 84 of file invariant_surface_feature.h.

template<typename TSurface , typename Scalar = double, typename Real = float, typename TAffine = Eigen::Affine3f>
typedef std::vector<Signature< Real > > cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::Result

Definition at line 86 of file invariant_surface_feature.h.

template<typename TSurface , typename Scalar = double, typename Real = float, typename TAffine = Eigen::Affine3f>
typedef Sampler<Real, Scalar> cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::S [private]

Definition at line 75 of file invariant_surface_feature.h.

template<typename TSurface , typename Scalar = double, typename Real = float, typename TAffine = Eigen::Affine3f>
typedef std::vector<TSurface> cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::TSurfaceList

Definition at line 83 of file invariant_surface_feature.h.

template<typename TSurface , typename Scalar = double, typename Real = float, typename TAffine = Eigen::Affine3f>
typedef Eigen::Matrix<Scalar, 3, 1> cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::TVector

Definition at line 82 of file invariant_surface_feature.h.


Member Enumeration Documentation

template<typename TSurface , typename Scalar = double, typename Real = float, typename TAffine = Eigen::Affine3f>
enum cob_3d_features::InvariantSurfaceFeature::EINVARAINCE
Enumerator:
INVARAINCE_X 
INVARAINCE_Y 
INVARAINCE_Z 
INVARAINCE_INCLINATION 
INVARAINCE_AZIMUTH 
INVARAINCE_ALL 

Definition at line 113 of file invariant_surface_feature.h.


Constructor & Destructor Documentation

template<typename TSurface , typename Scalar = double, typename Real = float, typename TAffine = Eigen::Affine3f>
cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::InvariantSurfaceFeature ( const int  num_radius,
const int  num_angle 
) [inline]

constructor

Definition at line 120 of file invariant_surface_feature.h.

template<typename TSurface , typename Scalar = double, typename Real = float, typename TAffine = Eigen::Affine3f>
virtual cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::~InvariantSurfaceFeature ( ) [inline, virtual]

destructor

Definition at line 130 of file invariant_surface_feature.h.


Member Function Documentation

template<typename TSurface , typename Scalar = double, typename Real = float, typename TAffine = Eigen::Affine3f>
void cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::addRadius ( const float  r) [inline]

Definition at line 145 of file invariant_surface_feature.h.

template<typename TSurface , typename Scalar , typename Real , typename TAffine >
void cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::compute ( )

Definition at line 61 of file invariant_surface_feature.hpp.

template<typename TSurface , typename Scalar = double, typename Real = float, typename TAffine = Eigen::Affine3f>
void cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::dbg_keypoints ( std::vector< TVector > &  keypoints) const [inline]

Definition at line 165 of file invariant_surface_feature.h.

template<typename TSurface , typename Scalar = double, typename Real = float, typename TAffine = Eigen::Affine3f>
pcl::PolygonMesh::Ptr cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::dbg_Mesh_of_Map ( ) const [inline]

Definition at line 166 of file invariant_surface_feature.h.

template<typename TSurface , typename Scalar , typename Real , typename TAffine >
void cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::dbg_mesh_of_subsamp ( const TVector at,
const Scalar  radius,
std::vector< TVector > &  pts,
std::vector< int > &  inds 
) const

Definition at line 57 of file invariant_surface_feature_debug.hpp.

template<typename TSurface , typename Scalar , typename Real , typename TAffine >
pcl::PolygonMesh::Ptr cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::dbg_triangles2mesh ( const std::vector< Triangle > &  res) const [protected]

Definition at line 70 of file invariant_surface_feature_debug.hpp.

template<typename TSurface , typename Scalar , typename Real , typename TAffine >
void cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::generateKeypoints ( std::vector< TVector > &  keypoints) const [protected]

Definition at line 123 of file invariant_surface_feature.hpp.

template<typename TSurface , typename Scalar = double, typename Real = float, typename TAffine = Eigen::Affine3f>
const EINVARAINCE& cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::getInvarianceSettings ( ) const [inline]

Definition at line 141 of file invariant_surface_feature.h.

template<typename TSurface , typename Scalar = double, typename Real = float, typename TAffine = Eigen::Affine3f>
const std::vector<float>& cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::getRadii ( ) const [inline]

Definition at line 144 of file invariant_surface_feature.h.

template<typename TSurface , typename Scalar = double, typename Real = float, typename TAffine = Eigen::Affine3f>
PResultConst cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::getResult ( ) const [inline]

Definition at line 136 of file invariant_surface_feature.h.

template<typename TSurface , typename Scalar = double, typename Real = float, typename TAffine = Eigen::Affine3f>
const TAffine& cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::getTransformation ( ) const [inline]

Definition at line 138 of file invariant_surface_feature.h.

template<typename TSurface , typename Scalar , typename Real , typename TAffine >
void cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::setInput ( PTSurfaceList  surfs)

Definition at line 236 of file invariant_surface_feature.hpp.

template<typename TSurface , typename Scalar = double, typename Real = float, typename TAffine = Eigen::Affine3f>
void cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::setInvarianceSettings ( const EINVARAINCE t) [inline]

Definition at line 142 of file invariant_surface_feature.h.

template<typename TSurface , typename Scalar = double, typename Real = float, typename TAffine = Eigen::Affine3f>
void cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::setTransformation ( const TAffine &  t) [inline]

Definition at line 139 of file invariant_surface_feature.h.

template<typename TSurface , typename Scalar , typename Real , typename TAffine >
void cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::subsample ( const TVector at,
const Scalar  r2,
std::vector< Triangle > &  res 
) const [protected]

Definition at line 229 of file invariant_surface_feature.hpp.

template<const int num_radius_, const int num_angle_, typename TSurface , typename Scalar , typename TAffine >
void cob_3d_features::InvariantSurfaceFeature< num_radius_, num_angle_, TSurface, Scalar, TAffine >::test_addOffset ( const Scalar  off_x,
const Scalar  off_y,
const Scalar  off_z 
)

Definition at line 61 of file invariant_surface_feature_unit_tests.hpp.

template<const int num_radius_, const int num_angle_, typename TSurface , typename Scalar , typename TAffine >
void cob_3d_features::InvariantSurfaceFeature< num_radius_, num_angle_, TSurface, Scalar, TAffine >::test_rotate ( const Scalar  angle)

Definition at line 81 of file invariant_surface_feature_unit_tests.hpp.

template<const int num_radius_, const int num_angle_, typename TSurface , typename Scalar , typename TAffine >
bool cob_3d_features::InvariantSurfaceFeature< num_radius_, num_angle_, TSurface, Scalar, TAffine >::test_singleTriangle ( const int  num) const

Definition at line 160 of file invariant_surface_feature_unit_tests.hpp.

template<const int num_radius_, const int num_angle_, typename TSurface , typename Scalar , typename TAffine >
pcl::PolygonMesh::Ptr cob_3d_features::InvariantSurfaceFeature< num_radius_, num_angle_, TSurface, Scalar, TAffine >::test_subsampling_of_Map ( const int  num,
const Scalar  r2 
)

Definition at line 127 of file invariant_surface_feature_unit_tests.hpp.


Member Data Documentation

template<typename TSurface , typename Scalar = double, typename Real = float, typename TAffine = Eigen::Affine3f>
PTSurfaceList cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::input_ [protected]

Definition at line 235 of file invariant_surface_feature.h.

template<typename TSurface , typename Scalar = double, typename Real = float, typename TAffine = Eigen::Affine3f>
EINVARAINCE cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::invariance_ [protected]

Definition at line 239 of file invariant_surface_feature.h.

template<typename TSurface , typename Scalar = double, typename Real = float, typename TAffine = Eigen::Affine3f>
const int cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::num_angle_ [private]

Definition at line 77 of file invariant_surface_feature.h.

template<typename TSurface , typename Scalar = double, typename Real = float, typename TAffine = Eigen::Affine3f>
const int cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::num_radius_ [private]

Definition at line 77 of file invariant_surface_feature.h.

template<typename TSurface , typename Scalar = double, typename Real = float, typename TAffine = Eigen::Affine3f>
std::vector<float> cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::radii_ [protected]

Definition at line 240 of file invariant_surface_feature.h.

template<typename TSurface , typename Scalar = double, typename Real = float, typename TAffine = Eigen::Affine3f>
PResult cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::result_ [protected]

Definition at line 241 of file invariant_surface_feature.h.

template<typename TSurface , typename Scalar = double, typename Real = float, typename TAffine = Eigen::Affine3f>
S::Samples cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::samples_ [private]

Definition at line 79 of file invariant_surface_feature.h.

template<typename TSurface , typename Scalar = double, typename Real = float, typename TAffine = Eigen::Affine3f>
S cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::sr_ [private]

Definition at line 78 of file invariant_surface_feature.h.

template<typename TSurface , typename Scalar = double, typename Real = float, typename TAffine = Eigen::Affine3f>
TAffine cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::transform_ [protected]

Definition at line 238 of file invariant_surface_feature.h.

template<typename TSurface , typename Scalar = double, typename Real = float, typename TAffine = Eigen::Affine3f>
std::vector<Triangle> cob_3d_features::InvariantSurfaceFeature< TSurface, Scalar, Real, TAffine >::triangulated_input_ [protected]

Definition at line 236 of file invariant_surface_feature.h.


The documentation for this class was generated from the following files:


cob_3d_features
Author(s): Georg Arbeiter
autogenerated on Wed Aug 26 2015 11:02:26