Brute-force nearest neighbour. More...
#include <nabo_private.h>
Public Types | |
typedef NearestNeighbourSearch < T >::Index | Index |
an index to a Vector or a Matrix, for refering to data points | |
typedef NearestNeighbourSearch < T >::IndexMatrix | IndexMatrix |
a matrix of indices to data points | |
typedef NearestNeighbourSearch < T >::IndexVector | IndexVector |
a vector of indices to data points | |
typedef NearestNeighbourSearch < T >::Matrix | Matrix |
a column-major Eigen matrix in which each column is a point; this matrix has dim rows | |
typedef NearestNeighbourSearch < T >::Vector | Vector |
an Eigen vector of type T, to hold the coordinates of a point | |
Public Member Functions | |
BruteForceSearch (const Matrix &cloud, const Index dim, const unsigned creationOptionFlags) | |
constructor, calls NearestNeighbourSearch<T>(cloud) | |
virtual unsigned long | knn (const Matrix &query, IndexMatrix &indices, Matrix &dists2, const Index k, const T epsilon, const unsigned optionFlags, const T maxRadius) const |
Find the k nearest neighbours for each point of query. | |
virtual unsigned long | knn (const Matrix &query, IndexMatrix &indices, Matrix &dists2, const Vector &maxRadii, const Index k=1, const T epsilon=0, const unsigned optionFlags=0) const |
Find the k nearest neighbours for each point of query. |
Brute-force nearest neighbour.
Definition at line 76 of file nabo_private.h.
typedef NearestNeighbourSearch<T>::Index Nabo::BruteForceSearch< T >::Index |
an index to a Vector or a Matrix, for refering to data points
Reimplemented from Nabo::NearestNeighbourSearch< T >.
Definition at line 80 of file nabo_private.h.
typedef NearestNeighbourSearch<T>::IndexMatrix Nabo::BruteForceSearch< T >::IndexMatrix |
a matrix of indices to data points
Reimplemented from Nabo::NearestNeighbourSearch< T >.
Definition at line 82 of file nabo_private.h.
typedef NearestNeighbourSearch<T>::IndexVector Nabo::BruteForceSearch< T >::IndexVector |
a vector of indices to data points
Reimplemented from Nabo::NearestNeighbourSearch< T >.
Definition at line 81 of file nabo_private.h.
typedef NearestNeighbourSearch<T>::Matrix Nabo::BruteForceSearch< T >::Matrix |
a column-major Eigen matrix in which each column is a point; this matrix has dim rows
Reimplemented from Nabo::NearestNeighbourSearch< T >.
Definition at line 79 of file nabo_private.h.
typedef NearestNeighbourSearch<T>::Vector Nabo::BruteForceSearch< T >::Vector |
an Eigen vector of type T, to hold the coordinates of a point
Reimplemented from Nabo::NearestNeighbourSearch< T >.
Definition at line 78 of file nabo_private.h.
Nabo::BruteForceSearch< T >::BruteForceSearch | ( | const Matrix & | cloud, |
const Index | dim, | ||
const unsigned | creationOptionFlags | ||
) |
constructor, calls NearestNeighbourSearch<T>(cloud)
Definition at line 45 of file brute_force_cpu.cpp.
unsigned long Nabo::BruteForceSearch< T >::knn | ( | const Matrix & | query, |
IndexMatrix & | indices, | ||
Matrix & | dists2, | ||
const Index | k, | ||
const T | epsilon, | ||
const unsigned | optionFlags, | ||
const T | maxRadius | ||
) | const [virtual] |
Find the k nearest neighbours for each point of query.
If the search finds less than k points, the empty entries in dists2 will be filled with infinity and the indices with 0.
query | query points |
indices | indices of nearest neighbours, must be of size k x query.cols() |
dists2 | squared distances to nearest neighbours, must be of size k x query.cols() |
k | number of nearest neighbour requested |
epsilon | maximal percentage of error for approximate search, 0 for exact search |
optionFlags | search options, a bitwise OR of elements of SearchOptionFlags |
maxRadius | maximum radius in which to search, can be used to prune search, is not affected by epsilon |
Implements Nabo::NearestNeighbourSearch< T >.
Definition at line 64 of file brute_force_cpu.cpp.
unsigned long Nabo::BruteForceSearch< T >::knn | ( | const Matrix & | query, |
IndexMatrix & | indices, | ||
Matrix & | dists2, | ||
const Vector & | maxRadii, | ||
const Index | k = 1 , |
||
const T | epsilon = 0 , |
||
const unsigned | optionFlags = 0 |
||
) | const [virtual] |
Find the k nearest neighbours for each point of query.
If the search finds less than k points, the empty entries in dists2 will be filled with infinity and the indices with 0.
query | query points |
indices | indices of nearest neighbours, must be of size k x query.cols() |
dists2 | squared distances to nearest neighbours, must be of size k x query.cols() |
maxRadii | vector of maximum radii in which to search, used to prune search, is not affected by epsilon |
k | number of nearest neighbour requested |
epsilon | maximal percentage of error for approximate search, 0 for exact search |
optionFlags | search options, a bitwise OR of elements of SearchOptionFlags |
Implements Nabo::NearestNeighbourSearch< T >.
Definition at line 71 of file brute_force_cpu.cpp.