cpp-toolbox  0.0.1
A toolbox library for C++
Loading...
Searching...
No Matches
toolbox::pcl::dsc3d_signature_t< DataType > Struct Template Reference

3D形状上下文描述子签名 / 3D Shape Context descriptor signature More...

#include <3dsc_extractor.hpp>

Inheritance diagram for toolbox::pcl::dsc3d_signature_t< DataType >:

Public Types

using value_type = DataType
 为了兼容KNN接口 / For KNN interface compatibility
 
using data_type = DataType
 为了兼容描述子匹配接口 / For descriptor matching interface compatibility
 
- Public Types inherited from toolbox::pcl::base_signature_t< DataType, dsc3d_signature_t< DataType > >
using data_type = DataType
 
using derived_type = dsc3d_signature_t< DataType >
 
- Public Types inherited from toolbox::pcl::base_signature_t< dsc3d_signature_t< DataType > >
using data_type = dsc3d_signature_t< DataType >
 
using derived_type = Derived
 

Public Member Functions

const DataType * data () const
 提供data()方法以兼容IMetric接口 / Provide data() method for IMetric interface compatibility
 
DataType * data ()
 
constexpr std::size_t size () const
 获取直方图大小 / Get histogram size
 
DataType distance_impl (const dsc3d_signature_t &other) const
 计算与另一个描述子的欧氏距离 / Compute Euclidean distance to another descriptor
 
DataType distance (const dsc3d_signature_t &other) const
 
bool operator== (const dsc3d_signature_t &other) const
 
- Public Member Functions inherited from toolbox::pcl::base_signature_t< DataType, dsc3d_signature_t< DataType > >
DataType distance (const dsc3d_signature_t< DataType > &other) const
 计算与另一个签名的距离 / Calculate distance to another signature
 
- Public Member Functions inherited from toolbox::pcl::base_signature_t< dsc3d_signature_t< DataType > >
dsc3d_signature_t< DataType > distance (const Derived &other) const
 计算与另一个签名的距离 / Calculate distance to another signature
 

Public Attributes

std::array< DataType, HISTOGRAM_SIZEhistogram {}
 直方图数据 / Histogram data
 

Static Public Attributes

static constexpr std::size_t HISTOGRAM_SIZE = 1980
 直方图大小:11 × 12 × 15 / Histogram size: 11 × 12 × 15
 

Detailed Description

template<typename DataType>
struct toolbox::pcl::dsc3d_signature_t< DataType >

3D形状上下文描述子签名 / 3D Shape Context descriptor signature

Template Parameters
DataType数据类型(float或double) / Data type (float or double)

3DSC描述子使用1980维直方图(11径向×12方位×15仰角)来描述局部3D形状 The 3DSC descriptor uses a 1980-bin histogram (11 radial × 12 azimuth × 15 elevation) to describe local 3D shape

// 基本使用 / Basic usage
// 计算距离 / Compute distance
float dist = desc1.distance(desc2);
// 用于KNN搜索 / For KNN search
std::vector<dsc3d_signature_t<float>> descriptors = {...};
knn.set_input(descriptors);
std::size_t set_input(const container_type &data)
设置输入数据 / Set input data
Definition base_knn.hpp:83
暴力K近邻搜索算法的通用实现 / Generic brute-force K-nearest neighbors search implementation
Definition bfknn.hpp:45
3D形状上下文描述子签名 / 3D Shape Context descriptor signature
Definition 3dsc_extractor.hpp:40
DataType distance(const dsc3d_signature_t &other) const
Definition 3dsc_extractor_old.hpp:21

Member Typedef Documentation

◆ data_type

template<typename DataType >
using toolbox::pcl::dsc3d_signature_t< DataType >::data_type = DataType

为了兼容描述子匹配接口 / For descriptor matching interface compatibility

◆ value_type

template<typename DataType >
using toolbox::pcl::dsc3d_signature_t< DataType >::value_type = DataType

为了兼容KNN接口 / For KNN interface compatibility

Member Function Documentation

◆ data() [1/2]

template<typename DataType >
DataType * toolbox::pcl::dsc3d_signature_t< DataType >::data ( )
inline

◆ data() [2/2]

template<typename DataType >
const DataType * toolbox::pcl::dsc3d_signature_t< DataType >::data ( ) const
inline

提供data()方法以兼容IMetric接口 / Provide data() method for IMetric interface compatibility

Returns
直方图数据指针 / Pointer to histogram data

◆ distance()

template<typename DataType >
DataType toolbox::pcl::dsc3d_signature_t< DataType >::distance ( const dsc3d_signature_t< DataType > &  other) const
inline

◆ distance_impl()

template<typename DataType >
DataType toolbox::pcl::dsc3d_signature_t< DataType >::distance_impl ( const dsc3d_signature_t< DataType > &  other) const
inline

计算与另一个描述子的欧氏距离 / Compute Euclidean distance to another descriptor

Parameters
other另一个描述子 / Another descriptor
Returns
欧氏距离 / Euclidean distance

◆ operator==()

template<typename DataType >
bool toolbox::pcl::dsc3d_signature_t< DataType >::operator== ( const dsc3d_signature_t< DataType > &  other) const
inline

◆ size()

template<typename DataType >
constexpr std::size_t toolbox::pcl::dsc3d_signature_t< DataType >::size ( ) const
inlineconstexpr

获取直方图大小 / Get histogram size

Returns
直方图维度 / Histogram dimensions

Member Data Documentation

◆ histogram

template<typename DataType >
std::array< DataType, HISTOGRAM_SIZE > toolbox::pcl::dsc3d_signature_t< DataType >::histogram {}

直方图数据 / Histogram data

◆ HISTOGRAM_SIZE

template<typename DataType >
static constexpr std::size_t toolbox::pcl::dsc3d_signature_t< DataType >::HISTOGRAM_SIZE = 1980
staticconstexpr

直方图大小:11 × 12 × 15 / Histogram size: 11 × 12 × 15


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