1 #ifndef __SPARROW_CALIBRATE_H__
2 #define __SPARROW_CALIBRATE_H__
5 #define CALIBRATE_ON_MIN_T 2
6 #define CALIBRATE_ON_MAX_T 7
7 #define CALIBRATE_OFF_MIN_T 2
8 #define CALIBRATE_OFF_MAX_T 9
9 #define CALIBRATE_SELF_SIZE 24
11 #define CALIBRATE_MAX_VOTE_ERROR 5
12 #define CALIBRATE_MAX_BEST_ERROR 2
13 #define CALIBRATE_INITIAL_WAIT 72
14 #define CALIBRATE_RETRY_WAIT 16
16 #define CALIBRATE_SIGNAL_THRESHOLD 200
18 #define MAX_CALIBRATE_SHAPES 4
20 #define WAIT_COUNTDOWN (MAX(CALIBRATE_OFF_MAX_T, CALIBRATE_ON_MAX_T) + 3)
22 #define MAX_CALIBRATION_LAG 12
23 typedef struct lag_times_s
{
28 enum calibration_shape
{
33 typedef struct sparrow_shape_s
{
34 /*Calibration shape definition -- a rectangle.*/
35 enum calibration_shape shape
;
43 typedef struct sparrow_calibrate_s
{
44 /*calibration state, and shape and pattern definition */
45 gboolean on
; /*for calibration pattern */
50 sparrow_shape_t shapes
[MAX_CALIBRATE_SHAPES
];
53 IplImage
*in_ipl
[SPARROW_N_IPL_IN
];
54 lag_times_t
*lag_table
;
57 } sparrow_calibrate_t
;