24 #ifndef CU_SIFT_MATCH_H
25 #define CU_SIFT_MATCH_H
26 #if defined(SIFTGPU_CUDA_ENABLED)
47 vector<int> sift_buffer;
49 int GetBestMatch(
int max_match, uint32_t match_buffer[][2],
float distmax,
float ratiomax,
int mbm);
51 SiftMatchCU(
int max_sift);
52 virtual ~SiftMatchCU(){};
54 bool Allocate(
int max_sift,
int mbm)
override;
56 void SetDescriptors(
int index,
int num,
const unsigned char * descriptor,
int id = -1);
57 void SetDescriptors(
int index,
int num,
const float * descriptor,
int id = -1);
59 int GetSiftMatch(
int max_match, uint32_t match_buffer[][2],
float distmax,
float ratiomax,
int mbm);
61 float distmax,
float ratiomax,
float hdistmax,
float fdistmax,
int mbm);
63 static int CheckCudaDevice(
int device);
virtual void SetMaxSift(int max_sift)
virtual bool Allocate(int max_sift, int mbm)
virtual int GetGuidedSiftMatch(int max_match, uint32_t match_buffer[][2], float *H, float *F, float distmax=0.7, float ratiomax=0.8, float hdistmax=32, float fdistmax=16, int mutual_best_match=1)
virtual void SetDescriptors(int index, int num, const float *descriptors, int id=-1)
virtual int GetSiftMatch(int max_match, uint32_t match_buffer[][2], float distmax=0.7, float ratiomax=0.8, int mutual_best_match=1)
virtual void SetFeautreLocation(int index, const float *locations, int gap=0)