#include <itkKdTree.h>
Inheritance diagram for itk::Statistics::KdTree< TSample >:
An object of this class stores instance identifiers in a k-d tree that is a binary tree with childrens split along a dimension among k-dimensions. The dimension of the split (or partition) is determined for each nonterminal node that has two children. The split process is terminated when the node has no children (when the number of measurement vectors is less than or equal to the size set by the SetBucketSize. That is The split process is a recursive process in nature and in implementation. This implementation doesn't support dynamic insert and delete operations for the tree. Instead, we can use the KdTreeGenerator or WeightedCentroidKdTreeGenerator to generate a static KdTree object.
To search k-nearest neighbor, call the Search method with the query point in a k-d space and the number of nearest neighbors. The GetSearchResult method returns a pointer to a NearestNeighbors object with k-nearest neighbors.
Recent API changes: The static const macro to get the length of a measurement vector, 'MeasurementVectorSize' has been removed to allow the length of a measurement vector to be specified at run time. Please use the function GetMeasurementVectorSize() instead.
Definition at line 361 of file itkKdTree.h.
|
Definition at line 566 of file itkKdTree.h. |
|
Reimplemented from itk::Object. Definition at line 368 of file itkKdTree.h. |
|
DistanceMetric type for the distance calculation and comparison Definition at line 390 of file itkKdTree.h. Referenced by itk::Statistics::KdTree< TSample >::GetFrequency(). |
|
Definition at line 381 of file itkKdTree.h. |
|
Definition at line 380 of file itkKdTree.h. |
|
Definition at line 400 of file itkKdTree.h. Referenced by itk::Statistics::KdTree< TSample >::GetDistanceMetric(). |
|
Definition at line 565 of file itkKdTree.h. |
|
Node type of the KdTree Definition at line 393 of file itkKdTree.h. Referenced by itk::Statistics::KdTree< TSample >::SetRoot(). |
|
Definition at line 379 of file itkKdTree.h. |
|
Definition at line 383 of file itkKdTree.h. |
|
Definition at line 378 of file itkKdTree.h. Referenced by itk::Statistics::KdTree< TSample >::GetDistanceMetric(). |
|
Neighbor type. The first element of the std::pair is the instance identifier and the second one is the distance between the measurement vector identified by the first element and the query point. Definition at line 398 of file itkKdTree.h. |
|
Reimplemented from itk::Object. Definition at line 367 of file itkKdTree.h. |
|
typedef alias for the source data container Definition at line 377 of file itkKdTree.h. |
|
Standard class typedefs Reimplemented from itk::Object. Definition at line 365 of file itkKdTree.h. |
|
Reimplemented from itk::Object. Definition at line 366 of file itkKdTree.h. |
|
Constructor |
|
Destructor: deletes the root node and the empty terminal node. |
|
Returns true if the intermediate k-nearest neighbors exist within the the bounding box defined by the lowerBound and the upperBound. Otherwise returns false. Returns false if the ball defined by the distance between the query point and the farthest neighbor touch the surface of the bounding box. |
|
Definition at line 580 of file itkKdTree.h. |
|
Definition at line 568 of file itkKdTree.h. |
|
Returns true if the ball defined by the distance between the query point and the farthest neighbor overlaps with the bounding box defined by the lower and the upper bounds. |
|
Deletes the node recursively |
|
Definition at line 586 of file itkKdTree.h. |
|
Definition at line 574 of file itkKdTree.h. |
|
Get the pointer to the distance metric. Definition at line 522 of file itkKdTree.h. References itk::Statistics::KdTree< TSample >::InstanceIdentifierVectorType, and itk::Statistics::KdTree< TSample >::MeasurementVectorType. |
|
Returns the pointer to the empty terminal node. A KdTree object has a single empty terminal node in memory. when the split process has to create an empty terminal node, the single instance is reused for this case Definition at line 499 of file itkKdTree.h. |
|
Returns the frequency of the measurement vector identified by the instance identifier Definition at line 518 of file itkKdTree.h. References itk::Statistics::KdTree< TSample >::DistanceMetricType. |
|
Returns the measurement vector identified by the instance identifier that is an identifier defiend for the input sample Definition at line 513 of file itkKdTree.h. |
|
Get Macro to get the length of a measurement vector in the KdTree. The length is obtained from the input sample. |
|
Run-time type information (and related methods) Reimplemented from itk::Object. |
|
Returns the number of measurement vectors that have been visited to find the k-nearest neighbors. Definition at line 537 of file itkKdTree.h. |
|
Returns the pointer to the root node. Definition at line 508 of file itkKdTree.h. |
|
Returns the pointer to the input sample Definition at line 489 of file itkKdTree.h. |
|
search loop |
|
Method for creation through the object factory. Reimplemented from itk::Object. |
|
Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes. Reimplemented from itk::Object. |
|
Prints out the tree information |
|
Searches the neighbors fallen into a hypersphere |
|
Searches the k-nearest neighbors |
|
search loop |
|
Sets the number of measurement vectors that can be stored in a terminal node |
|
Sets the root node of the KdTree that is a result of KdTreeGenerator or WeightedCentroidKdTreeGenerator. Definition at line 504 of file itkKdTree.h. References itk::Statistics::KdTree< TSample >::KdTreeNodeType. |
|
Sets the input sample that provides the measurement vectors to the k-d tree |
|
Definition at line 492 of file itkKdTree.h. |