#include <itkKdTree.h>
This is a subclass of the KdTreeNode.
KdTreeNonterminalNode doesn't store the information related with the centroids. Therefore, the GetWeightedCentroid and the GetCentroid methods are void. This class should have the left and the right children. If we have a sample and want to generate a KdTree without the centroid related information, we can use the KdTreeGenerator.
Definition at line 147 of file itkKdTree.h.
Public Types | |
using | CentroidType |
using | InstanceIdentifier |
using | MeasurementType |
using | Superclass = KdTreeNode<TSample> |
![]() | |
using | CentroidType = Array<double> |
using | InstanceIdentifier = typename TSample::InstanceIdentifier |
using | MeasurementType = typename TSample::MeasurementType |
using | Self = KdTreeNode<TSample> |
Public Member Functions | |
void | AddInstanceIdentifier (InstanceIdentifier valueId) override |
void | GetCentroid (CentroidType &) override |
InstanceIdentifier | GetInstanceIdentifier (InstanceIdentifier) const override |
void | GetParameters (unsigned int &, MeasurementType &) const override |
void | GetWeightedCentroid (CentroidType &) override |
bool | IsTerminal () const override |
KdTreeNonterminalNode (unsigned int, MeasurementType, Superclass *, Superclass *) | |
const Superclass * | Left () const override |
Superclass * | Left () override |
const Superclass * | Right () const override |
Superclass * | Right () override |
unsigned int | Size () const override |
~KdTreeNonterminalNode () override=default | |
![]() | |
virtual | ~KdTreeNode ()=default |
Private Attributes | |
InstanceIdentifier | m_InstanceIdentifier {} |
Superclass * | m_Left {} |
unsigned int | m_PartitionDimension {} |
MeasurementType | m_PartitionValue {} |
Superclass * | m_Right {} |
using itk::Statistics::KdTreeNode< TSample >::CentroidType |
Centroid type
Definition at line 72 of file itkKdTree.h.
using itk::Statistics::KdTreeNode< TSample >::InstanceIdentifier |
Instance identifier type (index value type for the measurement vector in a sample
Definition at line 76 of file itkKdTree.h.
using itk::Statistics::KdTreeNode< TSample >::MeasurementType |
Measurement type, not the measurement vector type
Definition at line 69 of file itkKdTree.h.
using itk::Statistics::KdTreeNonterminalNode< TSample >::Superclass = KdTreeNode<TSample> |
Definition at line 149 of file itkKdTree.h.
itk::Statistics::KdTreeNonterminalNode< TSample >::KdTreeNonterminalNode | ( | unsigned int | , |
MeasurementType | , | ||
Superclass * | , | ||
Superclass * | ) |
|
overridedefault |
|
inlineoverridevirtual |
Set the identifier of the node.
Implements itk::Statistics::KdTreeNode< TSample >.
Definition at line 236 of file itkKdTree.h.
References m_InstanceIdentifier.
|
inlineoverridevirtual |
Returns the centroid. weighted centroid divided by the size. Do nothing for this class.
Implements itk::Statistics::KdTreeNode< TSample >.
Definition at line 218 of file itkKdTree.h.
|
inlinenodiscardoverridevirtual |
Returns the identifier of the only MeasurementVector associated with this node in the tree. This MeasurementVector will be used later during the distance computation when querying the tree.
Implements itk::Statistics::KdTreeNode< TSample >.
Definition at line 227 of file itkKdTree.h.
References m_InstanceIdentifier.
|
overridevirtual |
Fills the partitionDimension (the dimension that was chosen to split the measurement vectors belong to this node to the left and the right child among k dimensions) and the partitionValue (the measurement value on the partitionDimension divides the left and the right child
Implements itk::Statistics::KdTreeNode< TSample >.
|
inlineoverridevirtual |
Returns the vector sum of the all measurement vectors under this node. Do nothing for this class.
Implements itk::Statistics::KdTreeNode< TSample >.
Definition at line 210 of file itkKdTree.h.
|
inlinenodiscardoverridevirtual |
Returns true if the node is a terminal node, that is a node that doesn't have any child.
Implements itk::Statistics::KdTreeNode< TSample >.
Definition at line 159 of file itkKdTree.h.
|
inlinenodiscardoverridevirtual |
Returns the const pointer to the left child of this node
Implements itk::Statistics::KdTreeNode< TSample >.
Definition at line 183 of file itkKdTree.h.
References m_Left.
|
inlineoverridevirtual |
Returns the pointer to the left child of this node
Implements itk::Statistics::KdTreeNode< TSample >.
Definition at line 169 of file itkKdTree.h.
References m_Left.
|
inlinenodiscardoverridevirtual |
Returns the const pointer to the right child of this node
Implements itk::Statistics::KdTreeNode< TSample >.
Definition at line 190 of file itkKdTree.h.
References m_Right.
|
inlineoverridevirtual |
Returns the pointer to the right child of this node
Implements itk::Statistics::KdTreeNode< TSample >.
Definition at line 176 of file itkKdTree.h.
References m_Right.
|
inlinenodiscardoverridevirtual |
Returns the number of measurement vectors under this node including its children
Implements itk::Statistics::KdTreeNode< TSample >.
Definition at line 200 of file itkKdTree.h.
|
private |
Definition at line 244 of file itkKdTree.h.
Referenced by AddInstanceIdentifier(), and GetInstanceIdentifier().
|
private |
Definition at line 245 of file itkKdTree.h.
|
private |
Definition at line 242 of file itkKdTree.h.
|
private |
Definition at line 243 of file itkKdTree.h.
|
private |
Definition at line 246 of file itkKdTree.h.