Package net.imglib2.neighborsearch
Class KNearestNeighborSearchOnKDTree<T>
java.lang.Object
net.imglib2.neighborsearch.KNearestNeighborSearchOnKDTree<T>
- All Implemented Interfaces:
EuclideanSpace,KNearestNeighborSearch<T>,NearestNeighborSearch<T>
Implementation of
KNearestNeighborSearch search for kd-trees.- Author:
- Tobias Pietzsch
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected KDTreeNode<T>[]protected double[]protected final intprotected final intprotected final double[] -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncopy()Create a copy.doubleAccess the Euclidean distance between the reference location as used for the last search and the nearest neighbor, ordered by square Euclidean distance.doublegetDistance(int i) Access the Euclidean distance between the reference location as used for the last search and the ith nearest neighbor, ordered by square Euclidean distance.intgetK()Get the of k nearest neighbor points used in this searchAccess the position of the nearest neighbor, ordered by square Euclidean distance.getPosition(int i) Access the position of the ith nearest neighbor, ordered by square Euclidean distance.Access the data of the nearest neighbor.getSampler(int i) Access the data of the ith nearest neighbor, ordered by square Euclidean distance.doubleAccess the square Euclidean distance between the reference location as used for the last search and the nearest neighbor, ordered by square Euclidean distance.doublegetSquareDistance(int i) Access the square Euclidean distance between the reference location as used for the last search and the ith nearest neighbor, ordered by square Euclidean distance.intGets the space's number of dimensions.voidsearch(RealLocalizable reference) Perform k-nearest-neighbor search for a reference coordinate.protected voidsearchNode(KDTreeNode<T> current)
-
Field Details
-
tree
-
n
protected final int n -
pos
protected final double[] pos -
k
protected final int k -
bestPoints
-
bestSquDistances
protected double[] bestSquDistances
-
-
Constructor Details
-
KNearestNeighborSearchOnKDTree
-
-
Method Details
-
numDimensions
public int numDimensions()Description copied from interface:EuclideanSpaceGets the space's number of dimensions.- Specified by:
numDimensionsin interfaceEuclideanSpace
-
getK
public int getK()Description copied from interface:KNearestNeighborSearchGet the of k nearest neighbor points used in this search- Specified by:
getKin interfaceKNearestNeighborSearch<T>- Returns:
- the number of nearest neighbor points k used for this search
-
search
Description copied from interface:KNearestNeighborSearchPerform k-nearest-neighbor search for a reference coordinate.- Specified by:
searchin interfaceKNearestNeighborSearch<T>- Specified by:
searchin interfaceNearestNeighborSearch<T>- Parameters:
reference-
-
searchNode
-
getSampler
Description copied from interface:KNearestNeighborSearchAccess the data of the ith nearest neighbor, ordered by square Euclidean distance. Data is accessed through aSamplerthat guarantees write access if the underlying data set is writable.- Specified by:
getSamplerin interfaceKNearestNeighborSearch<T>
-
getPosition
Description copied from interface:KNearestNeighborSearchAccess the position of the ith nearest neighbor, ordered by square Euclidean distance.- Specified by:
getPositionin interfaceKNearestNeighborSearch<T>
-
getSquareDistance
public double getSquareDistance(int i) Description copied from interface:KNearestNeighborSearchAccess the square Euclidean distance between the reference location as used for the last search and the ith nearest neighbor, ordered by square Euclidean distance.- Specified by:
getSquareDistancein interfaceKNearestNeighborSearch<T>
-
getDistance
public double getDistance(int i) Description copied from interface:KNearestNeighborSearchAccess the Euclidean distance between the reference location as used for the last search and the ith nearest neighbor, ordered by square Euclidean distance.- Specified by:
getDistancein interfaceKNearestNeighborSearch<T>
-
getPosition
Description copied from interface:NearestNeighborSearchAccess the position of the nearest neighbor, ordered by square Euclidean distance.- Specified by:
getPositionin interfaceNearestNeighborSearch<T>
-
getSampler
Description copied from interface:NearestNeighborSearchAccess the data of the nearest neighbor. Data is accessed through aSamplerthat guarantees write access if the underlying data set is writable.- Specified by:
getSamplerin interfaceNearestNeighborSearch<T>
-
getSquareDistance
public double getSquareDistance()Description copied from interface:NearestNeighborSearchAccess the square Euclidean distance between the reference location as used for the last search and the nearest neighbor, ordered by square Euclidean distance.- Specified by:
getSquareDistancein interfaceNearestNeighborSearch<T>
-
getDistance
public double getDistance()Description copied from interface:NearestNeighborSearchAccess the Euclidean distance between the reference location as used for the last search and the nearest neighbor, ordered by square Euclidean distance.- Specified by:
getDistancein interfaceNearestNeighborSearch<T>
-
copy
Description copied from interface:KNearestNeighborSearchCreate a copy.- Specified by:
copyin interfaceKNearestNeighborSearch<T>- Specified by:
copyin interfaceNearestNeighborSearch<T>
-