-
Notifications
You must be signed in to change notification settings - Fork 29
/
surf.pxd
42 lines (36 loc) · 1.32 KB
/
surf.pxd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
from libcpp cimport bool
from libcpp.pair cimport pair
from libcpp.vector cimport vector
cdef extern from "surf/image.h":
cdef cppclass image:
image(int , int)
int idImage
int width, height
float * img
cdef extern from "surf/keypoint.h":
cdef cppclass keyPoint:
# keyPoint() #
keypoint(float, float, float, float, bool)
float x, y, scale, orientation
bool signLaplacian
# typedef std::vector < keyPoint *> listKeyPoints
ctypedef vector[ keyPoint * ] listKeyPoints
cdef extern from "surf/descriptor.h":
cdef cppclass descriptor:
descriptor()
descriptor(descriptor *)
keyPoint * kP
#std::vector<descriptor*> listDescriptor;
ctypedef vector[ descriptor * ] listDescriptor
listDescriptor * getKeyPoints(image * , int , int , listKeyPoints * , bool)nogil
cdef extern from "surf/match.h":
#typedef std::pair<descriptor*,descriptor*> pairMatch;
ctypedef pair[ descriptor , descriptor ] pairMatch
#typedef std::vector<pairMatch > listMatch;
ctypedef vector[ pairMatch ] listMatch
listMatch * matchDescriptor(listDescriptor * , listDescriptor *)nogil
cdef extern from "surf/lib.h":
int octave
int interval
cdef extern from "surf/surf_match.h":
void get_points(listMatch * , float *)nogil