Package net.imglib2.neighborsearch
Class KNearestNeighborSearchOnIterableRealInterval<T>
- java.lang.Object
-
- net.imglib2.neighborsearch.KNearestNeighborSearchOnIterableRealInterval<T>
-
- All Implemented Interfaces:
EuclideanSpace,KNearestNeighborSearch<T>,NearestNeighborSearch<T>
public class KNearestNeighborSearchOnIterableRealInterval<T> extends java.lang.Object implements KNearestNeighborSearch<T>
k-nearest-neighbor search onIterableRealIntervalimplemented as linear search.
-
-
Field Summary
Fields Modifier and Type Field Description protected RealCursor<T>[]elementsprotected IterableRealInterval<T>iterableprotected intkprotected intnprotected double[]referenceLocationprotected double[]squareDistances
-
Constructor Summary
Constructors Constructor Description KNearestNeighborSearchOnIterableRealInterval(IterableRealInterval<T> iterable, int k)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description KNearestNeighborSearchOnIterableRealInterval<T>copy()Create a copy.doublegetDistance()Access 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 searchRealLocalizablegetPosition()Access the position of the nearest neighbor, ordered by square Euclidean distance.RealLocalizablegetPosition(int i)Access the position of the ith nearest neighbor, ordered by square Euclidean distance.Sampler<T>getSampler()Access the data of the nearest neighbor.RealCursor<T>getSampler(int i)Access the data of the ith nearest neighbor, ordered by square Euclidean distance.doublegetSquareDistance()Access 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.intnumDimensions()Gets the space's number of dimensions.voidsearch(RealLocalizable reference)Perform k-nearest-neighbor search for a reference coordinate.protected doublesquareDistance(RealLocalizable query)Calculate the square Euclidean distance of a query location to the location stored in referenceLocation.
-
-
-
Field Detail
-
iterable
protected final IterableRealInterval<T> iterable
-
k
protected final int k
-
n
protected final int n
-
elements
protected final RealCursor<T>[] elements
-
squareDistances
protected final double[] squareDistances
-
referenceLocation
protected final double[] referenceLocation
-
-
Constructor Detail
-
KNearestNeighborSearchOnIterableRealInterval
public KNearestNeighborSearchOnIterableRealInterval(IterableRealInterval<T> iterable, int k)
-
-
Method Detail
-
squareDistance
protected final double squareDistance(RealLocalizable query)
Calculate the square Euclidean distance of a query location to the location stored in referenceLocation.
-
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
public void search(RealLocalizable reference)
Description copied from interface:KNearestNeighborSearchPerform k-nearest-neighbor search for a reference coordinate.- Specified by:
searchin interfaceKNearestNeighborSearch<T>- Specified by:
searchin interfaceNearestNeighborSearch<T>
-
getPosition
public RealLocalizable getPosition(int i)
Description copied from interface:KNearestNeighborSearchAccess the position of the ith nearest neighbor, ordered by square Euclidean distance.- Specified by:
getPositionin interfaceKNearestNeighborSearch<T>
-
getSampler
public RealCursor<T> getSampler(int i)
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>
-
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
public RealLocalizable getPosition()
Description copied from interface:NearestNeighborSearchAccess the position of the nearest neighbor, ordered by square Euclidean distance.- Specified by:
getPositionin interfaceNearestNeighborSearch<T>
-
getSampler
public Sampler<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
public KNearestNeighborSearchOnIterableRealInterval<T> copy()
Description copied from interface:KNearestNeighborSearchCreate a copy.- Specified by:
copyin interfaceKNearestNeighborSearch<T>- Specified by:
copyin interfaceNearestNeighborSearch<T>
-
-