NAME

draw_keypoint_matches - Visualize matching keypoints

SYNOPSIS

#include "kpt/keypoint.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 draw_keypoint_matches
(
	const KJB_image *img1_ip,
	const KJB_image *img2_ip,
	const Keypoint_vector *img1_kvp,
	const Keypoint_vector *img2_kvp,
	const Int_matrix *match_imp,
	KJB_image **result_ip
);

DESCRIPTION

The function draws the two images one underneath the other or one on top of another, depending on the value of the "draw-side-by-side" option. By default, matched frames are drawn one on top of the other (i.e. the option is FALSE by default). The function connects via lines the locations of the corresponing keypoints provided in the Keypoint vectors. The matches are provided via the match_imp: the first column indexes the keypoints from the first image, the second column indexes the keypoints from the second image. Thus, if match_imp->elements[0][0] is 42 and match_imp->elements[0][1] is 11, then the keypoint 42 from the first image is matched to the 11th keypoint from the second image. Input parameters: KJB_image* img1_ip - a handle to the image KJB_image* img2_ip - a handle to another image Keypoint_vector* img1_kvp - the keypoints for img1 Keypoint_vector* img2_kvp - the keypoints for img2 Int_matrix* match_imp - the keypoint matches KJB_image** result_ip - a handle to the resulting image

RETURNS

NO_ERROR or an error set by the image_draw routines.

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

create_keypoint , get_target_keypoint , copy_keypoint , set_keypoint_from_vector , free_keypoint , read_vl_keypoints_into_matrix , read_vl_keypoint_vector_from_file , extract_selected_keypoints_positions , extract_keypoints_positions , create_keypoint_vector , get_keypoint_vector_from_matrix , copy_keypoint_vector , copy_keypoint_vector_selected_rows , write_vl_keypoint_vector , get_vector_from_keypoint , free_keypoint_vector , get_target_keypoint_vector , create_keypoint_vector_vector , get_target_keypoint_vector_vector , free_keypoint_vector_vector , free_keypoint_vector_descriptors , keypoint_euclidean_distance , get_keypoint_match , get_local_keypoint_match , draw_oriented_keypoint , draw_oriented_keypoint_1 , draw_ubc_keypoints_from_file , fp_draw_vl_keypoints , draw_vl_keypoints_from_file , draw_keypoints_from_keypoint_vector , draw_vl_keypoint_vector_with_mask , draw_vl_keypoint_vector_with_mask_value , draw_keypoint_correspondences , draw_keypoint_matches_1 , draw_ransac_matches