IT++ Logo Newcom Logo

itpp::Scalar_Quantizer Class Reference
[Source Coding Routines]

Class for vector quantization. More...

#include <itpp/srccode/vq.h>

List of all members.

Public Member Functions

 Scalar_Quantizer ()
 Default constructor.
 Scalar_Quantizer (const char *Name)
 Create a VQ from a VQ file.
int encode (double x) const
 Encode.
ivec encode (const vec &x) const
 Encode the input vector.
double decode (int Index) const
 Decode the index.
vec decode (const ivec &Index) const
 Decode the indices.
double Q (double x) const
 Quantize.
vec Q (const vec &x) const
 Quantize the input vector.
double operator() (double x) const
 Quantize.
vec operator() (const vec &x) const
 Quantize the input vector.
void set_levels (const vec &L)
 Initialize the codebook by a matrix.
vec get_levels () const
 Returns the codebook.
int size () const
 Returns the size (number of codevectors) of the VQ.

Protected Attributes

vec Levels
 The vector containing the code book.
double LatestDist
 The distortion at the latest time a vector was encoded.


Detailed Description

Class for vector quantization.

The following code illustrates how the quantizer can be initialized from a file and used to quantize a random vector.

Scalar_Quantizer        Quantizer;
double                          x,y;
int                                     i;

Quantizer.load("random.sq");
x=randn();
i=Quantizer.encode(x);
y=Quantizer.decode(i);

Definition at line 153 of file vq.h.


Constructor & Destructor Documentation

itpp::Scalar_Quantizer::Scalar_Quantizer (  ) 

Default constructor.

Definition at line 271 of file vq.cpp.

itpp::Scalar_Quantizer::Scalar_Quantizer ( const char *  Name  ) 

Create a VQ from a VQ file.


Member Function Documentation

int itpp::Scalar_Quantizer::encode ( double  x  )  const

Encode.

Definition at line 277 of file vq.cpp.

References Levels.

Referenced by encode(), and Q().

ivec itpp::Scalar_Quantizer::encode ( const vec &  x  )  const

Encode the input vector.

Definition at line 290 of file vq.cpp.

References encode().

double itpp::Scalar_Quantizer::decode ( int  Index  )  const [inline]

Decode the index.

Definition at line 189 of file vq.h.

References Levels.

Referenced by decode(), and Q().

vec itpp::Scalar_Quantizer::decode ( const ivec &  Index  )  const

Decode the indices.

Definition at line 301 of file vq.cpp.

References decode().

double itpp::Scalar_Quantizer::Q ( double  x  )  const [inline]

Quantize.

Definition at line 190 of file vq.h.

References decode(), and encode().

Referenced by operator()(), and Q().

vec itpp::Scalar_Quantizer::Q ( const vec &  x  )  const

Quantize the input vector.

Definition at line 312 of file vq.cpp.

References Q().

double itpp::Scalar_Quantizer::operator() ( double  x  )  const [inline]

Quantize.

Definition at line 191 of file vq.h.

References Q().

vec itpp::Scalar_Quantizer::operator() ( const vec &  x  )  const [inline]

Quantize the input vector.

Definition at line 192 of file vq.h.

References Q().

void itpp::Scalar_Quantizer::set_levels ( const vec &  L  )  [inline]

Initialize the codebook by a matrix.

Definition at line 193 of file vq.h.

References Levels.

vec itpp::Scalar_Quantizer::get_levels (  )  const [inline]

Returns the codebook.

Definition at line 194 of file vq.h.

References Levels.

int itpp::Scalar_Quantizer::size (  )  const [inline]

Returns the size (number of codevectors) of the VQ.

Definition at line 188 of file vq.h.

References Levels.


Member Data Documentation

vec itpp::Scalar_Quantizer::Levels [protected]

The vector containing the code book.

Definition at line 183 of file vq.h.

Referenced by decode(), encode(), get_levels(), itpp::scalar_encode(), itpp::scalar_quantize(), set_levels(), and size().

double itpp::Scalar_Quantizer::LatestDist [protected]

The distortion at the latest time a vector was encoded.

Definition at line 185 of file vq.h.


The documentation for this class was generated from the following files:
SourceForge Logo

Generated on Sat Aug 25 23:40:37 2007 for IT++ by Doxygen 1.5.2