Data Structures | |
struct | _quantizer_ |
struct | _scalar_quantizer_ |
struct | _uniform_quantizer_ |
struct | _trellis_coded_quantizer_ |
Defines | |
#define | IT_QUANTIZER(q) IT_CAST(it_quantizer_t, q) |
#define | it_quantizer_quantize(it_this, v) __it_quantizer_quantize(IT_QUANTIZER(it_this), v) |
#define | it_quantizer_dequantize(it_this, i) __it_quantizer_dequantize(IT_QUANTIZER(it_this), i) |
#define | it_quantizer_get_cardinal(it_this) __it_quantizer_get_cardinal(IT_QUANTIZER(it_this)) |
#define | IT_SCALAR_QUANTIZER(q) IT_CAST(it_scalar_quantizer_t, q) |
#define | it_scalar_quantizer_new(codebook) it_scalar_quantizer_new_start_index(codebook, 0) |
#define | it_scalar_quantizer_set_codebook(it_this, codebook, first) __it_scalar_quantizer_set_codebook(IT_SCALAR_QUANTIZER(it_this), codebook, first) |
#define | it_scalar_quantizer_get_codebook_range(it_this, start, end) __it_scalar_quantizer_get_codebook_range(IT_SCALAR_QUANTIZER(it_this), start, end) |
#define | it_scalar_quantizer_get_codebook(it_this) it_scalar_quantizer_get_codebook_range(it_this, INT_MIN, INT_MAX) |
#define | it_scalar_quantizer_get_index_range(it_this, imin, imax) __it_scalar_quantizer_get_index_range(IT_SCALAR_QUANTIZER(it_this), imin, imax) |
#define | it_scalar_quantizer_set_index_range(it_this, imin, imax) __it_scalar_quantizer_set_index_range(IT_SCALAR_QUANTIZER(it_this), imin, imax) |
#define | it_scalar_quantizer_clear_index_range(it_this) it_scalar_quantizer_set_index_range(it_this, INT_MIN, INT_MAX) |
#define | it_scalar_quantizer_scalar_quantize(it_this, v) __it_scalar_quantizer_scalar_quantize(IT_SCALAR_QUANTIZER(it_this), v) |
#define | it_scalar_quantizer_scalar_dequantize(it_this, i) __it_scalar_quantizer_scalar_dequantize(IT_SCALAR_QUANTIZER(it_this), i) |
#define | IT_UNIFORM_QUANTIZER(q) IT_CAST(it_uniform_quantizer_t, q) |
#define | it_uniform_quantizer_get_step(q) (IT_UNIFORM_QUANTIZER(q)->step) |
#define | it_uniform_quantizer_get_center(q) (IT_UNIFORM_QUANTIZER(q)->center) |
#define | it_uniform_quantizer_get_deadzone_factor(q) (IT_UNIFORM_QUANTIZER(q)->factor) |
#define | it_uniform_quantizer_get_deadzone_step(q) (IT_UNIFORM_QUANTIZER(q)->deadzone) |
#define | IT_TRELLIS_CODED_QUANTIZER(q) IT_CAST(it_trellis_coded_quantizer_t, q) |
#define | it_trellis_coded_quantizer_new_partition(code, quantizer) __it_trellis_coded_quantizer_new_partition(IT_CONVOLUTIONAL_CODE(code), IT_SCALAR_QUANTIZER(quantizer)) |
#define | it_quantize_mat(q, m) __it_quantize_mat(IT_QUANTIZER(q), m) |
#define | it_dequantize_mat(q, m) __it_dequantize_mat(IT_QUANTIZER(q), m) |
#define | it_quantize(q, v) it_scalar_quantizer_scalar_quantize(q, v) |
#define | it_dequantize(q, i) it_scalar_quantizer_scalar_dequantize(q, i) |
#define | it_quantize_vec(q, v) it_quantizer_quantize(q, v) |
#define | it_dequantize_vec(q, v) it_quantizer_dequantize(q, v) |
#define | it_quantizer_set_codebook(q, codebook, start) it_scalar_quantizer_set_codebook(q, codebook, start) |
#define | it_quantizer_get_codebook_range(q, start, end) it_scalar_quantizer_get_codebook_range(q, start, end) |
#define | it_quantizer_get_codebook(q) it_scalar_quantizer_get_codebook(q) |
#define | it_quantizer_get_index_range(q, imin, imax) it_scalar_quantizer_get_index_range(q, imin, imax) |
#define | it_quantizer_set_index_range(q, imin, imax) it_scalar_quantizer_set_index_range(q, imin, imax) |
#define | it_quantizer_clear_index_range(q) it_scalar_quantizer_clear_index_range(q) |
#define | it_quantizer_scalar_quantize(q, v) it_scalar_quantizer_scalar_quantize(q, v) |
#define | it_quantizer_scalar_dequantize(q, i) it_scalar_quantizer_scalar_dequantize(q, i) |
#define | it_quantizer_get_step(q) it_uniform_quantizer_get_step(q) |
#define | it_quantizer_get_center(q) it_uniform_quantizer_get_center(q) |
#define | it_quantizer_get_deadzone_factor(q) it_uniform_quantizer_get_deadzone_factor(q) |
#define | it_quantizer_get_deadzone_step(q) it_uniform_quantizer_get_deadzone_step(q) |
Typedefs | |
typedef struct _quantizer_ | it_quantizer_t |
typedef struct _scalar_quantizer_ | it_scalar_quantizer_t |
typedef struct _uniform_quantizer_ | it_uniform_quantizer_t |
typedef struct _trellis_coded_quantizer_ | it_trellis_coded_quantizer_t |
Functions | |
static | it_instanciate (it_quantizer_t) |
static ivec | __it_quantizer_quantize (it_quantizer_t *it_this, vec v) |
static vec | __it_quantizer_dequantize (it_quantizer_t *it_this, ivec i) |
static unsigned int | __it_quantizer_get_cardinal (it_quantizer_t *it_this) |
it_instanciate (it_scalar_quantizer_t) | |
static it_scalar_quantizer_t * | it_scalar_quantizer_new_start_index (vec codebook, int first) |
static void | __it_scalar_quantizer_set_codebook (it_scalar_quantizer_t *it_this, vec codebook, int first) |
static vec | __it_scalar_quantizer_get_codebook_range (it_scalar_quantizer_t *it_this, int start, int end) |
static void | __it_scalar_quantizer_get_index_range (it_scalar_quantizer_t *it_this, int *imin, int *imax) |
static void | __it_scalar_quantizer_set_index_range (it_scalar_quantizer_t *it_this, int imin, int imax) |
static int | __it_scalar_quantizer_scalar_quantize (it_scalar_quantizer_t *it_this, double v) |
static double | __it_scalar_quantizer_scalar_dequantize (it_scalar_quantizer_t *it_this, int i) |
it_instanciate (it_uniform_quantizer_t) | |
static it_uniform_quantizer_t * | it_uniform_quantizer_new_from_center (double center, double step, double factor) |
static it_uniform_quantizer_t * | it_uniform_quantizer_new_from_range (int n, double min, double max) |
it_instanciate (it_trellis_coded_quantizer_t) | |
static it_trellis_coded_quantizer_t * | __it_trellis_coded_quantizer_new_partition (it_convolutional_code_t *code, it_scalar_quantizer_t *quantizer) |
imat | __it_quantize_mat (it_quantizer_t *q, mat m) |
mat | __it_dequantize_mat (it_quantizer_t *q, imat m) |
vec | lloyd_max (it_function_t function, it_args_t args, double a, double b, int N) |
#define it_dequantize | ( | q, | |||
i | ) | it_scalar_quantizer_scalar_dequantize(q, i) |
Definition at line 323 of file quantizer.h.
Referenced by main(), print_quantizer(), trellis_coded_quantizer_dequantize(), trellis_coded_quantizer_quantize(), and uniform_quantizer_set_index_range().
#define it_dequantize_mat | ( | q, | |||
m | ) | __it_dequantize_mat(IT_QUANTIZER(q), m) |
Definition at line 318 of file quantizer.h.
#define it_dequantize_vec | ( | q, | |||
v | ) | it_quantizer_dequantize(q, v) |
Definition at line 325 of file quantizer.h.
Referenced by __it_dequantize_mat(), and test_quantizer().
#define it_quantize | ( | q, | |||
v | ) | it_scalar_quantizer_scalar_quantize(q, v) |
Definition at line 322 of file quantizer.h.
Referenced by main(), and trellis_coded_quantizer_quantize().
#define it_quantize_mat | ( | q, | |||
m | ) | __it_quantize_mat(IT_QUANTIZER(q), m) |
Definition at line 316 of file quantizer.h.
#define it_quantize_vec | ( | q, | |||
v | ) | it_quantizer_quantize(q, v) |
Definition at line 324 of file quantizer.h.
Referenced by __it_quantize_mat(), and test_quantizer().
#define IT_QUANTIZER | ( | q | ) | IT_CAST(it_quantizer_t, q) |
#define it_quantizer_clear_index_range | ( | q | ) | it_scalar_quantizer_clear_index_range(q) |
Definition at line 337 of file quantizer.h.
#define it_quantizer_dequantize | ( | it_this, | |||
i | ) | __it_quantizer_dequantize(IT_QUANTIZER(it_this), i) |
Definition at line 65 of file quantizer.h.
#define it_quantizer_get_cardinal | ( | it_this | ) | __it_quantizer_get_cardinal(IT_QUANTIZER(it_this)) |
Definition at line 71 of file quantizer.h.
Referenced by print_quantizer(), and trellis_coded_quantizer_get_cardinal().
#define it_quantizer_get_center | ( | q | ) | it_uniform_quantizer_get_center(q) |
Definition at line 344 of file quantizer.h.
Referenced by uniform_quantizer_scalar_dequantize(), and uniform_quantizer_scalar_quantize().
#define it_quantizer_get_codebook | ( | q | ) | it_scalar_quantizer_get_codebook(q) |
#define it_quantizer_get_deadzone_factor | ( | q | ) | it_uniform_quantizer_get_deadzone_factor(q) |
Definition at line 345 of file quantizer.h.
#define it_quantizer_get_deadzone_step | ( | q | ) | it_uniform_quantizer_get_deadzone_step(q) |
Definition at line 347 of file quantizer.h.
Referenced by uniform_quantizer_scalar_dequantize(), and uniform_quantizer_scalar_quantize().
#define it_quantizer_get_index_range | ( | q, | |||
imin, | |||||
imax | ) | it_scalar_quantizer_get_index_range(q, imin, imax) |
#define it_quantizer_get_step | ( | q | ) | it_uniform_quantizer_get_step(q) |
Definition at line 343 of file quantizer.h.
Referenced by print_quantizer(), uniform_quantizer_scalar_dequantize(), and uniform_quantizer_scalar_quantize().
#define it_quantizer_quantize | ( | it_this, | |||
v | ) | __it_quantizer_quantize(IT_QUANTIZER(it_this), v) |
Definition at line 60 of file quantizer.h.
#define it_quantizer_scalar_dequantize | ( | q, | |||
i | ) | it_scalar_quantizer_scalar_dequantize(q, i) |
Definition at line 341 of file quantizer.h.
#define it_quantizer_scalar_quantize | ( | q, | |||
v | ) | it_scalar_quantizer_scalar_quantize(q, v) |
Definition at line 339 of file quantizer.h.
#define it_quantizer_set_codebook | ( | q, | |||
codebook, | |||||
start | ) | it_scalar_quantizer_set_codebook(q, codebook, start) |
#define it_quantizer_set_index_range | ( | q, | |||
imin, | |||||
imax | ) | it_scalar_quantizer_set_index_range(q, imin, imax) |
#define IT_SCALAR_QUANTIZER | ( | q | ) | IT_CAST(it_scalar_quantizer_t, q) |
Definition at line 118 of file quantizer.h.
Referenced by it_instanciate(), it_uniform_quantizer_new_from_range(), scalar_quantizer_dequantize(), scalar_quantizer_destructor(), scalar_quantizer_get_cardinal(), and scalar_quantizer_quantize().
#define it_scalar_quantizer_clear_index_range | ( | it_this | ) | it_scalar_quantizer_set_index_range(it_this, INT_MIN, INT_MAX) |
#define it_scalar_quantizer_get_codebook | ( | it_this | ) | it_scalar_quantizer_get_codebook_range(it_this, INT_MIN, INT_MAX) |
Definition at line 152 of file quantizer.h.
#define it_scalar_quantizer_get_index_range | ( | it_this, | |||
imin, | |||||
imax | ) | __it_scalar_quantizer_get_index_range(IT_SCALAR_QUANTIZER(it_this), imin, imax) |
Definition at line 155 of file quantizer.h.
#define it_scalar_quantizer_new | ( | codebook | ) | it_scalar_quantizer_new_start_index(codebook, 0) |
#define it_scalar_quantizer_scalar_dequantize | ( | it_this, | |||
i | ) | __it_scalar_quantizer_scalar_dequantize(IT_SCALAR_QUANTIZER(it_this), i) |
Definition at line 206 of file quantizer.h.
Referenced by scalar_quantizer_dequantize(), and uniform_quantizer_get_codebook_range().
#define it_scalar_quantizer_scalar_quantize | ( | it_this, | |||
v | ) | __it_scalar_quantizer_scalar_quantize(IT_SCALAR_QUANTIZER(it_this), v) |
#define it_scalar_quantizer_set_codebook | ( | it_this, | |||
codebook, | |||||
first | ) | __it_scalar_quantizer_set_codebook(IT_SCALAR_QUANTIZER(it_this), codebook, first) |
Definition at line 131 of file quantizer.h.
#define it_scalar_quantizer_set_index_range | ( | it_this, | |||
imin, | |||||
imax | ) | __it_scalar_quantizer_set_index_range(IT_SCALAR_QUANTIZER(it_this), imin, imax) |
Definition at line 171 of file quantizer.h.
Referenced by it_instanciate(), it_uniform_quantizer_new_from_range(), and scalar_quantizer_set_codebook().
#define IT_TRELLIS_CODED_QUANTIZER | ( | q | ) | IT_CAST(it_trellis_coded_quantizer_t, q) |
Definition at line 301 of file quantizer.h.
Referenced by trellis_coded_quantizer_dequantize(), trellis_coded_quantizer_destructor(), trellis_coded_quantizer_get_cardinal(), and trellis_coded_quantizer_quantize().
#define it_trellis_coded_quantizer_new_partition | ( | code, | |||
quantizer | ) | __it_trellis_coded_quantizer_new_partition(IT_CONVOLUTIONAL_CODE(code), IT_SCALAR_QUANTIZER(quantizer)) |
#define IT_UNIFORM_QUANTIZER | ( | q | ) | IT_CAST(it_uniform_quantizer_t, q) |
Definition at line 246 of file quantizer.h.
Referenced by uniform_quantizer_scalar_quantize(), and uniform_quantizer_set_index_range().
#define it_uniform_quantizer_get_center | ( | q | ) | (IT_UNIFORM_QUANTIZER(q)->center) |
Definition at line 276 of file quantizer.h.
#define it_uniform_quantizer_get_deadzone_factor | ( | q | ) | (IT_UNIFORM_QUANTIZER(q)->factor) |
Definition at line 279 of file quantizer.h.
#define it_uniform_quantizer_get_deadzone_step | ( | q | ) | (IT_UNIFORM_QUANTIZER(q)->deadzone) |
Definition at line 282 of file quantizer.h.
#define it_uniform_quantizer_get_step | ( | q | ) | (IT_UNIFORM_QUANTIZER(q)->step) |
Definition at line 273 of file quantizer.h.
typedef struct _quantizer_ it_quantizer_t |
typedef struct _scalar_quantizer_ it_scalar_quantizer_t |
typedef struct _trellis_coded_quantizer_ it_trellis_coded_quantizer_t |
typedef struct _uniform_quantizer_ it_uniform_quantizer_t |
mat __it_dequantize_mat | ( | it_quantizer_t * | q, | |
imat | m | |||
) |
Definition at line 653 of file quantizer.c.
References imat_height(), it_dequantize_vec, and Vec_new.
imat __it_quantize_mat | ( | it_quantizer_t * | q, | |
mat | m | |||
) |
static vec __it_quantizer_dequantize | ( | it_quantizer_t * | it_this, | |
ivec | i | |||
) | [inline, static] |
static unsigned int __it_quantizer_get_cardinal | ( | it_quantizer_t * | it_this | ) | [inline, static] |
static ivec __it_quantizer_quantize | ( | it_quantizer_t * | it_this, | |
vec | v | |||
) | [inline, static] |
static vec __it_scalar_quantizer_get_codebook_range | ( | it_scalar_quantizer_t * | it_this, | |
int | start, | |||
int | end | |||
) | [inline, static] |
static void __it_scalar_quantizer_get_index_range | ( | it_scalar_quantizer_t * | it_this, | |
int * | imin, | |||
int * | imax | |||
) | [inline, static] |
static double __it_scalar_quantizer_scalar_dequantize | ( | it_scalar_quantizer_t * | it_this, | |
int | i | |||
) | [inline, static] |
static int __it_scalar_quantizer_scalar_quantize | ( | it_scalar_quantizer_t * | it_this, | |
double | v | |||
) | [inline, static] |
static void __it_scalar_quantizer_set_codebook | ( | it_scalar_quantizer_t * | it_this, | |
vec | codebook, | |||
int | first | |||
) | [inline, static] |
static void __it_scalar_quantizer_set_index_range | ( | it_scalar_quantizer_t * | it_this, | |
int | imin, | |||
int | imax | |||
) | [inline, static] |
static it_trellis_coded_quantizer_t* __it_trellis_coded_quantizer_new_partition | ( | it_convolutional_code_t * | code, | |
it_scalar_quantizer_t * | quantizer | |||
) | [inline, static] |
it_instanciate | ( | it_trellis_coded_quantizer_t | ) |
Definition at line 386 of file quantizer.c.
References gray_to_bin, it_construct, it_new_args_next, it_new_args_start, it_new_args_stop, it_overload, IT_QUANTIZER, it_quantizer_get_codebook, it_scalar_quantizer_new, it_set_magic, _convolutional_code_::n, trellis_coded_quantizer_dequantize(), trellis_coded_quantizer_destructor(), trellis_coded_quantizer_get_cardinal(), trellis_coded_quantizer_quantize(), vec_delete(), vec_length(), and vec_new().
it_instanciate | ( | it_uniform_quantizer_t | ) |
Definition at line 261 of file quantizer.c.
References it_construct_va, it_new_args_next, it_new_args_start, it_new_args_stop, IT_SCALAR_QUANTIZER, it_scalar_quantizer_clear_index_range, it_set_magic, it_va, uniform_quantizer_get_codebook_range(), uniform_quantizer_scalar_dequantize(), uniform_quantizer_scalar_quantize(), uniform_quantizer_set_codebook(), and uniform_quantizer_set_index_range().
it_instanciate | ( | it_scalar_quantizer_t | ) |
Definition at line 71 of file quantizer.c.
References it_construct, it_new_args_next, it_new_args_start, it_new_args_stop, it_overload, IT_QUANTIZER, it_scalar_quantizer_set_index_range, it_set_magic, scalar_quantizer_dequantize(), scalar_quantizer_destructor(), scalar_quantizer_get_cardinal(), scalar_quantizer_get_codebook_range(), scalar_quantizer_get_index_range(), scalar_quantizer_quantize(), scalar_quantizer_scalar_dequantize(), scalar_quantizer_scalar_quantize(), scalar_quantizer_set_codebook(), and scalar_quantizer_set_index_range().
static it_instanciate | ( | it_quantizer_t | ) | [inline, static] |
static it_scalar_quantizer_t* it_scalar_quantizer_new_start_index | ( | vec | codebook, | |
int | first | |||
) | [inline, static] |
static it_uniform_quantizer_t* it_uniform_quantizer_new_from_center | ( | double | center, | |
double | step, | |||
double | factor | |||
) | [inline, static] |
Definition at line 250 of file quantizer.h.
References it_new_va, and it_va.
Referenced by it_uniform_quantizer_new_from_range(), and main().
static it_uniform_quantizer_t* it_uniform_quantizer_new_from_range | ( | int | n, | |
double | min, | |||
double | max | |||
) | [inline, static] |
Definition at line 258 of file quantizer.h.
References IT_SCALAR_QUANTIZER, it_scalar_quantizer_set_index_range, and it_uniform_quantizer_new_from_center().
Referenced by main().
vec lloyd_max | ( | it_function_t | function, | |
it_args_t | args, | |||
double | a, | |||
double | b, | |||
int | N | |||
) |
Definition at line 577 of file quantizer.c.
References IT_EPSILON, it_function_args, itf_expectation, itf_integrate, and vec_new_arithm().
Referenced by main().
|
|