nearestneighbour.m
Compute nearest neighbours (by Euclidean distance) to a set of points of interest from a set of candidate points.
The points of interest can be specified as either a matrix of points (as columns) or indices into the matrix of candidate points.
Points can be of any (within reason) dimension.
nearestneighbour can be used to search for k nearest neighbours, or neighbours within some distance (or both)
If only 1 neighbour is required for each point of interest, nearestneighbour tests to see whether it would be faster to construct the Delaunay Triangulation (delaunayn) and use dsearchn to lookup the neighbours, and if so, automatically computes the neighbours this way. This means the fastest neighbour lookup method is always used.
A couple of examples:
% Candidate points
X = rand(2, 100);
% Points of interest
P = rand(2, 3);
% Find the nearest neighbour to each column of P
% where X(:, I(i)) is the neighbour to P(:,i)
I = nearestneighbour(P, X)
% Find the nearest 10 neighbours to each column of P
I = nearestneighbour(P, X, 'NumberOfNeighbours', 10)
% Find the nearest neighbours to the 2nd and 20th points in X
I = nearestneighbour([2 20], X)
% Find the neighbours in X which are within a radius of 0.2 from P
I = nearestneighbour(P, X, 'Radius', 0.2)
% Find the nearest neighbours to all columns of X
I = nearestneighbour(X)
Citar como
Richard Brown (2024). nearestneighbour.m (https://www.mathworks.com/matlabcentral/fileexchange/12574-nearestneighbour-m), MATLAB Central File Exchange. Recuperado .
Compatibilidad con la versión de MATLAB
Compatibilidad con las plataformas
Windows macOS LinuxCategorías
- AI and Statistics > Statistics and Machine Learning Toolbox >
- MATLAB > Mathematics > Computational Geometry > Spatial Search >
Etiquetas
Agradecimientos
Inspiración para: Extract points in a defined direction and distance, vanet GPS analysis, IPDM: Inter-Point Distance Matrix, Kirchhoff Vortex Contour Dynamics Simulation, Efficient K-Nearest Neighbor Search using JIT, Cluster generator, ISO 1999:2013
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Descubra Live Editor
Cree scripts con código, salida y texto formateado en un documento ejecutable.
demo/
demo/
demo/html/
Versión | Publicado | Notas de la versión | |
---|---|---|---|
1.0.0.0 | Latest version contained a braindead while loop which made it very slow. Replaced this with fast vectorised code
|