ITK  4.13.0
Insight Segmentation and Registration Toolkit
Public Member Functions | Private Member Functions | Private Attributes | List of all members
itk::Statistics::KdTree< TSample >::NearestNeighbors Class Reference

#include <itkKdTree.h>

+ Collaboration diagram for itk::Statistics::KdTree< TSample >::NearestNeighbors:

Detailed Description

template<typename TSample>
class itk::Statistics::KdTree< TSample >::NearestNeighbors

data structure for storing k-nearest neighbor search result (k number of Neighbors)

This class stores the instance identifiers and the distance values of k-nearest neighbors. We can also query the farthest neighbor's distance from the query point using the GetLargestDistance method.

Definition at line 534 of file itkKdTree.h.

Public Member Functions

double GetLargestDistance ()
 
InstanceIdentifier GetNeighbor (unsigned int index) const
 
const
InstanceIdentifierVectorType
GetNeighbors () const
 
 NearestNeighbors (std::vector< double > &cache_vector)
 
 ~NearestNeighbors ()
 
void resize (unsigned int k)
 
void ReplaceFarthestNeighbor (InstanceIdentifier id, double distance)
 

Private Member Functions

 NearestNeighbors () ITK_DELETED_FUNCTION
 

Private Attributes

std::vector< double > & m_Distances
 
unsigned int m_FarthestNeighborIndex
 
InstanceIdentifierVectorType m_Identifiers
 

Constructor & Destructor Documentation

template<typename TSample >
itk::Statistics::KdTree< TSample >::NearestNeighbors::NearestNeighbors ( std::vector< double > &  cache_vector)
inline

Constructor

Definition at line 538 of file itkKdTree.h.

template<typename TSample >
itk::Statistics::KdTree< TSample >::NearestNeighbors::~NearestNeighbors ( )
inline

Destructor

Definition at line 541 of file itkKdTree.h.

template<typename TSample >
itk::Statistics::KdTree< TSample >::NearestNeighbors::NearestNeighbors ( )
private

Member Function Documentation

template<typename TSample >
double itk::Statistics::KdTree< TSample >::NearestNeighbors::GetLargestDistance ( )
inline

Returns the distance of the farthest neighbor from the query point

Definition at line 556 of file itkKdTree.h.

template<typename TSample >
InstanceIdentifier itk::Statistics::KdTree< TSample >::NearestNeighbors::GetNeighbor ( unsigned int  index) const
inline

Returns the instance identifier of the index-th neighbor among k-neighbors

Definition at line 588 of file itkKdTree.h.

template<typename TSample >
const InstanceIdentifierVectorType& itk::Statistics::KdTree< TSample >::NearestNeighbors::GetNeighbors ( ) const
inline

Returns the vector of k-neighbors' instance identifiers

Definition at line 581 of file itkKdTree.h.

template<typename TSample >
void itk::Statistics::KdTree< TSample >::NearestNeighbors::ReplaceFarthestNeighbor ( InstanceIdentifier  id,
double  distance 
)
inline

Replaces the farthest neighbor's instance identifier and distance value with the id and the distance

Definition at line 563 of file itkKdTree.h.

References itk::NumericTraits< T >::min().

template<typename TSample >
void itk::Statistics::KdTree< TSample >::NearestNeighbors::resize ( unsigned int  k)
inline

Initialize the internal instance identifier and distance holders with the size, k

Definition at line 545 of file itkKdTree.h.

Member Data Documentation

template<typename TSample >
std::vector<double>& itk::Statistics::KdTree< TSample >::NearestNeighbors::m_Distances
private

External storage for the distance values of k-neighbors from the query point. This is a reference to external vector to avoid unnecessary memory copying.

Definition at line 604 of file itkKdTree.h.

template<typename TSample >
unsigned int itk::Statistics::KdTree< TSample >::NearestNeighbors::m_FarthestNeighborIndex
private

The index of the farthest neighbor among k-neighbors

Definition at line 596 of file itkKdTree.h.

template<typename TSample >
InstanceIdentifierVectorType itk::Statistics::KdTree< TSample >::NearestNeighbors::m_Identifiers
private

Storage for the instance identifiers of k-neighbors

Definition at line 599 of file itkKdTree.h.


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