13
13
| Author: HaiHao Zhou <hihozhou@gmail.com> |
14
14
+----------------------------------------------------------------------+
15
15
*/
16
+ #include " ../../../php_opencv.h"
17
+ #include " opencv_facerec.h"
16
18
19
+ #ifdef HAVE_OPENCV_FACE
17
20
18
-
19
- #include " opencv_facerec.h"
20
21
#include " ../opencv_face.h"
21
22
#include " ../core/opencv_mat.h"
22
23
#include " ../../../opencv_exception.h"
24
+ #include < opencv2/face.hpp>
25
+ using namespace cv ::face;
26
+
27
+ #define Z_PHP_LBPH_FACE_RECOGNIZER_OBJ_P (zv ) get_lbph_face_recognizer_obj(Z_OBJ_P(zv))
28
+
29
+ typedef struct _opencv_lbph_face_recognizer_object {
30
+ zend_object std;
31
+ Ptr<LBPHFaceRecognizer> faceRecognizer;
32
+ }opencv_lbph_face_recognizer_object;
33
+
34
+
35
+ /* *
36
+ * @param obj
37
+ * @return
38
+ */
39
+ static inline opencv_lbph_face_recognizer_object* get_lbph_face_recognizer_obj (zend_object *obj) {
40
+ return (opencv_lbph_face_recognizer_object*)((char *)(obj) - XtOffsetOf (opencv_lbph_face_recognizer_object, std));
41
+ }
23
42
24
43
zend_object_handlers opencv_lbph_face_recognizer_object_handlers;
25
44
@@ -132,7 +151,7 @@ void opencv_lbph_face_recognizer_free_obj(zend_object *object)
132
151
zend_object_std_dtor (object);
133
152
}
134
153
135
- extern void opencv_lbph_face_recognizer_init (int module_number){
154
+ void opencv_lbph_face_recognizer_init (int module_number){
136
155
zend_class_entry ce;
137
156
INIT_NS_CLASS_ENTRY (ce,OPENCV_FACE_NS, " LBPHFaceRecognizer" , opencv_lbph_face_recognizer_methods);
138
157
opencv_lbph_face_recognizer_ce = zend_register_internal_class_ex (&ce, opencv_face_recognizer_ce);
@@ -144,6 +163,10 @@ extern void opencv_lbph_face_recognizer_init(int module_number){
144
163
opencv_lbph_face_recognizer_object_handlers.free_obj = opencv_lbph_face_recognizer_free_obj;
145
164
}
146
165
166
+
167
+
168
+
169
+
147
170
/* *
148
171
* -----------------------------------【CV\BaseFaceRecognizer】--------------------------------------
149
172
*
@@ -162,4 +185,17 @@ void opencv_base_face_recognizer_init(int module_number){
162
185
zend_class_entry ce;
163
186
INIT_NS_CLASS_ENTRY (ce,OPENCV_FACE_NS, " BaseFaceRecognizer" , opencv_base_face_recognizer_methods);
164
187
opencv_base_face_recognizer_ce = zend_register_internal_class_ex (&ce, opencv_face_recognizer_ce);
165
- }
188
+ }
189
+
190
+
191
+ #else
192
+
193
+ void opencv_lbph_face_recognizer_init (int module_number){
194
+
195
+ }
196
+
197
+ void opencv_base_face_recognizer_init (int module_number){
198
+
199
+ }
200
+
201
+ #endif
0 commit comments