Class for vector quantization. More...
#include <itpp/srccode/vq.h>
Public Member Functions | |
Vector_Quantizer () | |
Default constructor. | |
Vector_Quantizer (const char *Name) | |
Create a VQ from a VQ file. | |
int | encode (const vec &x) |
Encode the input vector. | |
ivec | encode (const vec &x, int num) |
Encode the input vector, and return the num best indices. | |
vec | decode (int Index) const |
Decode the index. | |
Array< vec > | decode (const ivec &Index) const |
Decode the indices. | |
vec | Q (const vec &x) |
Quantize the input vector. | |
vec | operator() (const vec &x) |
Quantize the input vector. | |
void | set_codebook (const mat &CB) |
Initialize the codebook by a matrix. | |
mat | get_codebook () const |
Returns the codebook. | |
void | set_codevector (int Index, const vec &indata) |
Set a codevector in the codebook. | |
vec | get_codevector (int Index) const |
Returns the codevector at the given index. | |
void | modify_codevector (int no, double mul, const vec &add) |
Rescale and translate a codevector. | |
int | size () const |
Returns the size (number of codevectors) of the VQ. | |
int | dim () const |
Returns the dimension of the VQ. | |
int | nobits () const |
Returns the number of bits of the VQ [log2(size)/dim]. | |
void | load (const char *Name) |
Load the codebook from a file. | |
void | save (const char *Name) const |
Save the codebook to a file. | |
double | latest_distortion () |
Returns the distortion at the latest time a vector was encoded. | |
Protected Attributes | |
vec | CodeBook |
The vector containing the code book. | |
int | Size |
The size of the code book. | |
int | Dim |
The dimension of the code book. | |
double | LatestDist |
The distortion at the latest time a vector was encoded. | |
Class for vector quantization.
The following code illustrates how the VQ can be initialized from a file and used to quantize a random vector.
void itpp::Vector_Quantizer::load | ( | const char * | Name | ) |
Load the codebook from a file.
Name | The name of the VQ file |
The file format is a textfile where each row is a vector from the codebook.
void itpp::Vector_Quantizer::save | ( | const char * | Name | ) | const |
Save the codebook to a file.
Name | The name of the VQ file |
The file format is a textfile where each row is a vector from the codebook.
Generated on Sat Jul 6 2013 10:54:35 for IT++ by Doxygen 1.8.2