Image-CCV
view release on metacpan or search on metacpan
PROTOTYPES: DISABLE
void
myccv_detect_faces (filename, training_data)
char * filename
char * training_data
PREINIT:
I32* temp;
PPCODE:
temp = PL_markstack_ptr++;
Inline_Stack_Vars;
Inline_Stack_Reset;
int i;
ccv_enable_default_cache();
ccv_dense_matrix_t* image = 0;
/* TODO: Make the cascade accessible from the outside */
ccv_bbf_classifier_cascade_t* cascade = ccv_bbf_read_classifier_cascade(training_data);
ccv_read(filename, &image, CCV_IO_GRAY | CCV_IO_ANY_FILE);
if (image != 0)
int up2x
int edge_threshold
int norm_threshold
int peak_threshold
void
myccv_keypoints_to_list (keypoints)
ccv_array_t * keypoints
PREINIT:
I32* temp;
PPCODE:
temp = PL_markstack_ptr++;
myccv_keypoints_to_list(keypoints);
if (PL_markstack_ptr != temp) {
/* truly void, because dXSARGS not invoked */
PL_markstack_ptr = temp;
XSRETURN_EMPTY; /* return empty stack */
}
/* must have used dXSARGS; list context implied */
return; /* assume stack size is correct */
void
myccv_get_descriptor (file, param)
char * file
ccv_sift_param_t * param
PREINIT:
I32* temp;
PPCODE:
temp = PL_markstack_ptr++;
myccv_get_descriptor(file, param);
if (PL_markstack_ptr != temp) {
/* truly void, because dXSARGS not invoked */
PL_markstack_ptr = temp;
XSRETURN_EMPTY; /* return empty stack */
}
/* must have used dXSARGS; list context implied */
return; /* assume stack size is correct */
void
myccv_sift (object_file, scene_file, param)
char * object_file
char * scene_file
ccv_sift_param_t * param
PREINIT:
I32* temp;
PPCODE:
temp = PL_markstack_ptr++;
myccv_sift(object_file, scene_file, param);
if (PL_markstack_ptr != temp) {
/* truly void, because dXSARGS not invoked */
PL_markstack_ptr = temp;
XSRETURN_EMPTY; /* return empty stack */
}
/* must have used dXSARGS; list context implied */
return; /* assume stack size is correct */
( run in 1.078 second using v1.01-cache-2.11-cpan-71847e10f99 )