get_constrained_keypoint_match - Finds the closest match (in the descriptor space as well as based on the Euclidean
Example compile flags (system dependent):
-DLINUX_X86_64 -DLINUX_X86_64_OPTERON -DGNU_COMPILER
-lKJB -lfftw3 -lgsl -lgslcblas -ljpeg -lSVM -lstdc++ -lpthread -lSLATEC -lg2c -lacml -lacml_mv -lblas -lg2c -lncursesw
const Keypoint *target_kpt,
const Keypoint_vector *candidate_kvp,
const double dist_ratio,
const double dist_radius
distance of the keypoint locations) to the given keypoint in a vector of candidate
This routine finds the two nearest neighbors of the given keypoint.
The similarity is measured by the Euclidean distance of the keypoint vectors
as well as their location.
Based on D. Lowe's "Distinctive image features from scale-invariant keypoints"
paper, the closest match is selected based on the ratio of the distances to the
nearest and the second nearest neighbor.
On error, this routine returns ERROR.
If the keypoint pointers are NULL, the routine returns NOT_SET.
If a match was not found then the routine returns NOT_FOUND, otherwise,
On success it returns the index of the keypoint matched to the target.
const Keypoint *target_kpt - the keypoint for which to find a match
const Keypoint_vector *candidate_kvp - a vector of possible matches
const int dist_ratio - a ratio of the descriptor similarity between
2 nearest keypoint matches
const int dist_radius - a radius around the keypoint location within
which to look for matches.
This software is not adequatedly tested. It is recomended that
results are checked independantly where appropriate.