File: ocas_lbp_helper.h

package info (click to toggle)
libocas 0.97%2Bdfsg-8
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, forky, sid, trixie
  • size: 6,760 kB
  • sloc: ansic: 7,956; makefile: 103; sh: 7
file content (81 lines) | stat: -rw-r--r-- 2,014 bytes parent folder | download | duplicates (6)
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
/*-----------------------------------------------------------------------
 * ocas_helper.h: Implementation of helper functions for the OCAS solver.
 *
 * It supports both sparse and dense matrices and loading data from
 * the SVM^light format.
 *-------------------------------------------------------------------- */

#ifndef _ocas_helper_h
#define _ocas_helper_h

#include <stdint.h>

#ifdef LIBOCAS_MATLAB

#include <mex.h>

#if !defined(MX_API_VER) || MX_API_VER<0x07040000
#define mwSize int
#define INDEX_TYPE_T int
#define mwIndex int
#else
#define INDEX_TYPE_T mwSize
#endif

#else

#define mwSize int
#define mwIndex int

#include "sparse_mat.h"

#endif

extern uint8_t *Images;
extern uint32_t nImages;
extern uint32_t win_H;
extern uint32_t win_W;
extern uint32_t im_H;
extern uint32_t im_W;
extern uint32_t nPyramids;
extern uint32_t *croped_window;
extern uint32_t *Wins;

extern uint32_t nDim, nData;
extern double *data_y;
/*extern double *full_A;*/
/*extern int32_t *full_A;*/
extern int64_t *full_A;
extern double *W;
extern double *oldW;
/*extern double *new_a;*/
/*extern int32_t *new_a;*/
extern int64_t *new_a;

extern double *A0;
extern double W0;
extern double oldW0;
extern double X0;

uint32_t lbppyr_get_dim(uint32_t win_H, uint32_t win_W, uint32_t nPyramids);

double get_time(void);
void ocas_print(ocas_return_value_T value);
void ocas_print_null(ocas_return_value_T value);

double full_update_W( double t, void* user_data );
int full_compute_output( double *output, void* user_data );
void full_compute_W( double *sq_norm_W, double *dp_WoldW, double *alpha, uint32_t nSel, void* user_data );
int full_add_new_cut( double *new_col_H, 
                       uint32_t *new_cut, 
                       uint32_t cut_length, 
                       uint32_t nSel,
                       void* user_data);

double compute_auc(double *score, int *label, uint32_t nData);

int qsort_data(double* value, double* data, uint32_t size);

void lbppyr_features(char *vec, uint32_t *win);

#endif