Classes | Public Types | Public Member Functions | Public Attributes | Private Member Functions | Private Attributes | List of all members
TensorVoting< T > Struct Template Reference

#include <sparsetv.h>

Classes

struct  DecayFunction
 Kernel methods. More...
 

Public Types

using DP = typename PM::DataPoints
 
enum  Encoding : std::uint8_t {
  ZERO, UBALL, BALL, SBALL,
  UPLATE, PLATE, SPLATE, USTICK,
  STICK, SSTICK, AWARE_TENSOR
}
 
using Field = Eigen::Matrix< Tensor, Eigen::Dynamic, 1 >
 
using Index = typename NNS::Index
 
using IndexMatrix = typename NNS::IndexMatrix
 
using InvalidField = typename DP::InvalidField
 
using Matrix = typename PM::Matrix
 
using Matrix33 = Eigen::Matrix< T, 3, 3 >
 
using NNS = Nabo::NearestNeighbourSearch< T >
 
using PM = PointMatcher< T >
 
using SparseTensor = Eigen::Matrix< T, 4, 1 >
 
using SparseTensors = Eigen::Matrix< SparseTensor, Eigen::Dynamic, 1 >
 
using Tensor = Eigen::Matrix< T, 3, 3 >
 
using Tensors = Eigen::Matrix< Tensor, Eigen::Dynamic, 1 >
 
using Vector = typename PM::Vector
 
using Vector3 = Eigen::Matrix< T, 3, 1 >
 

Public Member Functions

void ballVote (const DP &pts, bool doKnn=true)
 
void cfvote (const DP &pts, bool doKnn=true)
 
void decompose ()
 
void disableBallComponent ()
 
void encode (const DP &pts, Encoding encoding=Encoding::UBALL)
 
void plateVote (const DP &pts, bool doKnn=true)
 
void refine (const DP &pts)
 
void stickVote (const DP &pts, bool doKnn=true)
 
 TensorVoting (T sigma_=T(0.2), std::size_t k_=50)
 
void toDescriptors ()
 
void vote (const DP &pts)
 Voting methods. More...
 
 ~TensorVoting ()
 

Public Attributes

Matrix balls
 
Matrix curveness
 
std::size_t k
 
Matrix normals
 
Matrix plates
 
Matrix pointness
 
const T sigma
 
SparseTensors sparseBall
 
SparseTensors sparsePlate
 
SparseTensors sparseStick
 
Matrix sticks
 
Matrix surfaceness
 
Matrix tangents
 
Tensors tensors
 

Private Member Functions

void computeKnn (const DP &pts)
 

Private Attributes

Matrix dist
 
IndexMatrix indices
 

Detailed Description

template<typename T>
struct TensorVoting< T >

Definition at line 52 of file sparsetv.h.

Member Typedef Documentation

◆ DP

template<typename T>
using TensorVoting< T >::DP = typename PM::DataPoints

Definition at line 56 of file sparsetv.h.

◆ Field

template<typename T>
using TensorVoting< T >::Field = Eigen::Matrix< Tensor, Eigen::Dynamic, 1>

Definition at line 63 of file sparsetv.h.

◆ Index

template<typename T>
using TensorVoting< T >::Index = typename NNS::Index

Definition at line 74 of file sparsetv.h.

◆ IndexMatrix

template<typename T>
using TensorVoting< T >::IndexMatrix = typename NNS::IndexMatrix

Definition at line 75 of file sparsetv.h.

◆ InvalidField

template<typename T>
using TensorVoting< T >::InvalidField = typename DP::InvalidField

Definition at line 58 of file sparsetv.h.

◆ Matrix

template<typename T>
using TensorVoting< T >::Matrix = typename PM::Matrix

Definition at line 70 of file sparsetv.h.

◆ Matrix33

template<typename T>
using TensorVoting< T >::Matrix33 = Eigen::Matrix<T, 3, 3>

Definition at line 68 of file sparsetv.h.

◆ NNS

template<typename T>
using TensorVoting< T >::NNS = Nabo::NearestNeighbourSearch<T>

Definition at line 73 of file sparsetv.h.

◆ PM

template<typename T>
using TensorVoting< T >::PM = PointMatcher<T>

Definition at line 55 of file sparsetv.h.

◆ SparseTensor

template<typename T>
using TensorVoting< T >::SparseTensor = Eigen::Matrix<T, 4, 1>

Definition at line 60 of file sparsetv.h.

◆ SparseTensors

template<typename T>
using TensorVoting< T >::SparseTensors = Eigen::Matrix< SparseTensor, Eigen::Dynamic, 1>

Definition at line 65 of file sparsetv.h.

◆ Tensor

template<typename T>
using TensorVoting< T >::Tensor = Eigen::Matrix<T, 3, 3>

Definition at line 61 of file sparsetv.h.

◆ Tensors

template<typename T>
using TensorVoting< T >::Tensors = Eigen::Matrix< Tensor, Eigen::Dynamic, 1>

Definition at line 64 of file sparsetv.h.

◆ Vector

template<typename T>
using TensorVoting< T >::Vector = typename PM::Vector

Definition at line 71 of file sparsetv.h.

◆ Vector3

template<typename T>
using TensorVoting< T >::Vector3 = Eigen::Matrix<T, 3, 1>

Definition at line 67 of file sparsetv.h.

Member Enumeration Documentation

◆ Encoding

template<typename T>
enum TensorVoting::Encoding : std::uint8_t
Enumerator
ZERO 
UBALL 
BALL 
SBALL 
UPLATE 
PLATE 
SPLATE 
USTICK 
STICK 
SSTICK 
AWARE_TENSOR 

Definition at line 77 of file sparsetv.h.

Constructor & Destructor Documentation

◆ TensorVoting()

template<typename T >
TensorVoting< T >::TensorVoting ( sigma_ = T(0.2),
std::size_t  k_ = 50 
)

Definition at line 38 of file sparsetv.hpp.

◆ ~TensorVoting()

template<typename T >
TensorVoting< T >::~TensorVoting ( )

Definition at line 43 of file sparsetv.hpp.

Member Function Documentation

◆ ballVote()

template<typename T >
void TensorVoting< T >::ballVote ( const DP pts,
bool  doKnn = true 
)

Definition at line 215 of file sparsetv.hpp.

◆ cfvote()

template<typename T >
void TensorVoting< T >::cfvote ( const DP pts,
bool  doKnn = true 
)

Definition at line 381 of file sparsetv.hpp.

◆ computeKnn()

template<typename T >
void TensorVoting< T >::computeKnn ( const DP pts)
private

Definition at line 510 of file sparsetv.hpp.

◆ decompose()

template<typename T >
void TensorVoting< T >::decompose ( )

Definition at line 427 of file sparsetv.hpp.

◆ disableBallComponent()

template<typename T >
void TensorVoting< T >::disableBallComponent ( )

Definition at line 173 of file sparsetv.hpp.

◆ encode()

template<typename T >
void TensorVoting< T >::encode ( const DP pts,
Encoding  encoding = Encoding::UBALL 
)

Definition at line 55 of file sparsetv.hpp.

◆ plateVote()

template<typename T >
void TensorVoting< T >::plateVote ( const DP pts,
bool  doKnn = true 
)

Definition at line 312 of file sparsetv.hpp.

◆ refine()

template<typename T >
void TensorVoting< T >::refine ( const DP pts)

Definition at line 187 of file sparsetv.hpp.

◆ stickVote()

template<typename T >
void TensorVoting< T >::stickVote ( const DP pts,
bool  doKnn = true 
)

Definition at line 252 of file sparsetv.hpp.

◆ toDescriptors()

template<typename T >
void TensorVoting< T >::toDescriptors ( )

Definition at line 474 of file sparsetv.hpp.

◆ vote()

template<typename T >
void TensorVoting< T >::vote ( const DP pts)

Voting methods.

Definition at line 49 of file sparsetv.hpp.

Member Data Documentation

◆ balls

template<typename T>
Matrix TensorVoting< T >::balls

Definition at line 101 of file sparsetv.h.

◆ curveness

template<typename T>
Matrix TensorVoting< T >::curveness

Definition at line 93 of file sparsetv.h.

◆ dist

template<typename T>
Matrix TensorVoting< T >::dist
private

Definition at line 105 of file sparsetv.h.

◆ indices

template<typename T>
IndexMatrix TensorVoting< T >::indices
private

Definition at line 104 of file sparsetv.h.

◆ k

template<typename T>
std::size_t TensorVoting< T >::k

Definition at line 82 of file sparsetv.h.

◆ normals

template<typename T>
Matrix TensorVoting< T >::normals

Definition at line 96 of file sparsetv.h.

◆ plates

template<typename T>
Matrix TensorVoting< T >::plates

Definition at line 100 of file sparsetv.h.

◆ pointness

template<typename T>
Matrix TensorVoting< T >::pointness

Definition at line 94 of file sparsetv.h.

◆ sigma

template<typename T>
const T TensorVoting< T >::sigma

Definition at line 81 of file sparsetv.h.

◆ sparseBall

template<typename T>
SparseTensors TensorVoting< T >::sparseBall

Definition at line 88 of file sparsetv.h.

◆ sparsePlate

template<typename T>
SparseTensors TensorVoting< T >::sparsePlate

Definition at line 87 of file sparsetv.h.

◆ sparseStick

template<typename T>
SparseTensors TensorVoting< T >::sparseStick

Definition at line 86 of file sparsetv.h.

◆ sticks

template<typename T>
Matrix TensorVoting< T >::sticks

Definition at line 99 of file sparsetv.h.

◆ surfaceness

template<typename T>
Matrix TensorVoting< T >::surfaceness

Definition at line 92 of file sparsetv.h.

◆ tangents

template<typename T>
Matrix TensorVoting< T >::tangents

Definition at line 97 of file sparsetv.h.

◆ tensors

template<typename T>
Tensors TensorVoting< T >::tensors

Definition at line 84 of file sparsetv.h.


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


libpointmatcher
Author(s):
autogenerated on Sat May 27 2023 02:38:04