C# Class Emgu.CV.Flann.Index

Flann index
Inheritance: Emgu.Util.UnmanagedObject
ファイルを表示 Open project: fajoy/RTSPExample Class Usage Examples

Public Methods

Method Description
Index ( Matrix values ) : System

Create a linear flann index

Index ( Matrix values, float targetPrecision, float buildWeight, float memoryWeight, float sampleFraction ) : System

Create an auto-tuned flann index

Index ( Matrix values, int numberOfKDTrees ) : System

Create a flann index using multiple KDTrees

Index ( Matrix values, int branching, int iterations, CenterInitType centersInitType, float cbIndex ) : System

Create a flann index using Kmeans

Index ( Matrix values, int numberOfKDTrees, int branching, int iterations, CenterInitType centersInitType, float cbIndex ) : System

Create a flann index using a composition of KDTreee and KMeans tree

KnnSearch ( Matrix queries, Matrix indices, Matrix squareDistances, int knn, int checks ) : void

Perform k-nearest-neighbours (KNN) search

RadiusSearch ( Matrix queries, Matrix indices, Matrix squareDistances, float radius, int checks ) : int

Performs a radius nearest neighbor search for multiple query points

Protected Methods

Method Description
DisposeObject ( ) : void

Release the unmanaged memory associated with this Flann Index

Method Details

DisposeObject() protected method

Release the unmanaged memory associated with this Flann Index
protected DisposeObject ( ) : void
return void

Index() public method

Create a linear flann index
public Index ( Matrix values ) : System
values Matrix A row by row matrix of descriptors
return System

Index() public method

Create an auto-tuned flann index
public Index ( Matrix values, float targetPrecision, float buildWeight, float memoryWeight, float sampleFraction ) : System
values Matrix A row by row matrix of descriptors
targetPrecision float Precision desired, use 0.9 if not sure
buildWeight float build tree time weighting factor, use 0.01 if not sure
memoryWeight float index memory weighting factor, use 0 if not sure
sampleFraction float what fraction of the dataset to use for autotuning, use 0.1 if not sure
return System

Index() public method

Create a flann index using multiple KDTrees
public Index ( Matrix values, int numberOfKDTrees ) : System
values Matrix A row by row matrix of descriptors
numberOfKDTrees int The number of KDTrees to be used
return System

Index() public method

Create a flann index using Kmeans
public Index ( Matrix values, int branching, int iterations, CenterInitType centersInitType, float cbIndex ) : System
values Matrix A row by row matrix of descriptors
branching int Branching factor (for kmeans tree), use 32 for default
iterations int Max iterations to perform in one kmeans clustering (kmeans tree), use 11 for deafault
centersInitType CenterInitType Algorithm used for picking the initial cluster centers for kmeans tree, use RANDOM for default
cbIndex float Cluster boundary index. Used when searching the kmeans tree. Use 0.2 for default
return System

Index() public method

Create a flann index using a composition of KDTreee and KMeans tree
public Index ( Matrix values, int numberOfKDTrees, int branching, int iterations, CenterInitType centersInitType, float cbIndex ) : System
values Matrix A row by row matrix of descriptors
numberOfKDTrees int The number of KDTrees to be used
branching int Branching factor (for kmeans tree), use 32 for default
iterations int Max iterations to perform in one kmeans clustering (kmeans tree), use 11 for deafault
centersInitType CenterInitType Algorithm used for picking the initial cluster centers for kmeans tree, use RANDOM for default
cbIndex float Cluster boundary index. Used when searching the kmeans tree. Use 0.2 for default
return System

KnnSearch() public method

Perform k-nearest-neighbours (KNN) search
public KnnSearch ( Matrix queries, Matrix indices, Matrix squareDistances, int knn, int checks ) : void
queries Matrix A row by row matrix of descriptors to be query for nearest neighbours
indices Matrix The result of the indices of the k-nearest neighbours
squareDistances Matrix The square of the Eculidean distance between the neighbours
knn int Number of nearest neighbors to search for
checks int The number of times the tree(s) in the index should be recursively traversed. A /// higher value for this parameter would give better search precision, but also take more /// time. If automatic configuration was used when the index was created, the number of /// checks required to achieve the specified precision was also computed, in which case /// this parameter is ignored
return void

RadiusSearch() public method

Performs a radius nearest neighbor search for multiple query points
public RadiusSearch ( Matrix queries, Matrix indices, Matrix squareDistances, float radius, int checks ) : int
queries Matrix The query points, one per row
indices Matrix Indices of the nearest neighbors found
squareDistances Matrix The square of the Eculidean distance between the neighbours
radius float The search radius
checks int The number of times the tree(s) in the index should be recursively traversed. A /// higher value for this parameter would give better search precision, but also take more /// time. If automatic configuration was used when the index was created, the number of /// checks required to achieve the specified precision was also computed, in which case /// this parameter is ignored
return int