NAME

extract_match_positions_2 - The function extracts the (x,y) coordinates of the VLFeat keypoints

SYNOPSIS

#include "kpt/putative_match.h"

Example compile flags (system dependent):
  -DLINUX_X86_64 -DLINUX_X86_64_OPTERON  -DGNU_COMPILER 
   -I/home/kobus/include
   -L/home/kobus/misc/load/linux_x86_64_opteron -L/usr/lib/x86_64-linux-gnu
  -lKJB                               -lfftw3  -lgsl -lgslcblas -ljpeg  -lSVM -lstdc++                    -lpthread -lSLATEC -lg2c    -lacml -lacml_mv -lblas -lg2c      -lncursesw 


int extract_match_positions_2
(
	Matrix **target_pos_mpp,
	Matrix **candidate_pos_mpp,
	const Keypoint_vector *target_kvp,
	const Keypoint_vector *candidate_kvp,
	const Int_vector *mask_ivp,
	const int num_matches,
	Int_vector **kpt_to_inlier_ivpp,
	Int_vector **inlier_to_kpt_ivpp
);

DESCRIPTION

based on the values stored in the mask_ivp. If mask_ivp[i] is < 0, then the value in the keypoint vector at position i will not be stored into the pos_mpp matrix. In the resulting matrices, the keypoint location of each element of the target_pos_mp matches the corresponding element's location of the candidate_pos_mp, i.e. target_pos_mp[0] is matched to candidate_pos_mp[0], etc. Input parameters: Matrix** target_pos_mpp - stores the position of the target image keypoints Matrix** candidate_pos_mpp - stores the position of the candidate matches' keypoints Keypoint_vector *target_kvp - contains target image keypoints and descriptors Keypoint_vector *candidate_kvp - contains matched keypoints and descriptors Int_vector *mask_ivp - a vector that stores the indices of the matched Keypoint_vector elements (the indices of elements - target indices, elements themselves - corresponding candidate indices) that need to be copied. If the value == NOT_SET, then the keypoint is ignored. int num_matches - the number of elements in the mask_ivp matrix whose value is >=0. If num_matches is set to something that's less than 0, then mask_ivp is used to calculate the value internally. Int_vector **kpt_to_inlier_ivpp - keeps track of the mapping from target_kvp keypoints to the indices of the candidate_kvp's resulting inliers Int_vector **inlier_to_kpt_ivpp - keeps track of the mapping from inliers to the original keypoints of target_kvp

RETURNS

an error code.

DISCLAIMER

This software is not adequatedly tested. It is recomended that results are checked independantly where appropriate.

AUTHOR

Kobus Barnard

DOCUMENTER

Kobus Barnard

SEE ALSO

get_putative_matches , get_putative_matches_2 , get_putative_matches_3 , extract_match_positions , extract_match_positions_1 , get_constrained_keypoint_match , print_keypoint_parameters