OpenCV  4.1.1-pre
Open Source Computer Vision
Looking for a C++ dev who knows OpenCV?
I'm looking for work. Hire me!
cvflann::L2< T > Struct Template Reference

Squared Euclidean distance functor, optimized version. More...

#include <opencv2/flann/dist.h>

Public Types

typedef T ElementType
 
typedef True is_kdtree_distance
 
typedef True is_vector_space_distance
 
typedef Accumulator< T >::Type ResultType
 

Public Member Functions

template<typename U , typename V >
ResultType accum_dist (const U &a, const V &b, int) const
 Partial euclidean distance, using just one dimension. More...
 
template<typename Iterator1 , typename Iterator2 >
ResultType operator() (Iterator1 a, Iterator2 b, size_t size, ResultType worst_dist=-1) const
 Compute the squared Euclidean distance between two vectors. More...
 

Detailed Description

template<class T>
struct cvflann::L2< T >

Squared Euclidean distance functor, optimized version.

Member Typedef Documentation

◆ ElementType

template<class T >
typedef T cvflann::L2< T >::ElementType

◆ is_kdtree_distance

template<class T >
typedef True cvflann::L2< T >::is_kdtree_distance

◆ is_vector_space_distance

template<class T >
typedef True cvflann::L2< T >::is_vector_space_distance

◆ ResultType

template<class T >
typedef Accumulator<T>::Type cvflann::L2< T >::ResultType

Member Function Documentation

◆ accum_dist()

template<class T >
template<typename U , typename V >
ResultType cvflann::L2< T >::accum_dist ( const U &  a,
const V &  b,
int   
) const
inline

Partial euclidean distance, using just one dimension.

This is used by the kd-tree when computing partial distances while traversing the tree.

Squared root is omitted for efficiency.

◆ operator()()

template<class T >
template<typename Iterator1 , typename Iterator2 >
ResultType cvflann::L2< T >::operator() ( Iterator1  a,
Iterator2  b,
size_t  size,
ResultType  worst_dist = -1 
) const
inline

Compute the squared Euclidean distance between two vectors.

This is highly optimised, with loop unrolling, as it is one of the most expensive inner loops.

The computation of squared root at the end is omitted for efficiency.


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