cpp-toolbox  0.0.1
A toolbox library for C++
Loading...
Searching...
No Matches
toolbox::metrics::PointCloudEMDMetric< T > Class Template Reference

Earth Mover's Distance (EMD) for point clouds. More...

#include <point_cloud_metrics.hpp>

Inheritance diagram for toolbox::metrics::PointCloudEMDMetric< T >:

Public Types

using element_type = T
 
using point_type = toolbox::types::point_t< T >
 
using cloud_type = toolbox::types::point_cloud_t< T >
 
- Public Types inherited from toolbox::metrics::base_metric_t< PointCloudEMDMetric< T >, T >
using element_type = T
 
using result_type = T
 

Public Member Functions

constexpr T distance_impl (const T *cloud_a, const T *cloud_b, std::size_t size) const
 
distance (const cloud_type &cloud_a, const cloud_type &cloud_b) const
 
constexpr T squared_distance_impl (const T *a, const T *b, std::size_t size) const
 
- Public Member Functions inherited from toolbox::metrics::base_metric_t< PointCloudEMDMetric< T >, T >
constexpr T distance (const T *a, const T *b, std::size_t size) const
 
constexpr T distance (const Container &a, const Container &b) const
 
constexpr T squared_distance (const T *a, const T *b, std::size_t size) const
 
constexpr T squared_distance (const Container &a, const Container &b) const
 

Detailed Description

template<typename T>
class toolbox::metrics::PointCloudEMDMetric< T >

Earth Mover's Distance (EMD) for point clouds.

Simplified version that assumes equal weight for each point

Member Typedef Documentation

◆ cloud_type

template<typename T >
using toolbox::metrics::PointCloudEMDMetric< T >::cloud_type = toolbox::types::point_cloud_t<T>

◆ element_type

template<typename T >
using toolbox::metrics::PointCloudEMDMetric< T >::element_type = T

◆ point_type

template<typename T >
using toolbox::metrics::PointCloudEMDMetric< T >::point_type = toolbox::types::point_t<T>

Member Function Documentation

◆ distance()

template<typename T >
T toolbox::metrics::PointCloudEMDMetric< T >::distance ( const cloud_type cloud_a,
const cloud_type cloud_b 
) const
inline

◆ distance_impl()

template<typename T >
constexpr T toolbox::metrics::PointCloudEMDMetric< T >::distance_impl ( const T *  cloud_a,
const T *  cloud_b,
std::size_t  size 
) const
inlineconstexpr

◆ squared_distance_impl()

template<typename T >
constexpr T toolbox::metrics::PointCloudEMDMetric< T >::squared_distance_impl ( const T *  a,
const T *  b,
std::size_t  size 
) const
inlineconstexpr

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