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 270 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 276 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 289 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 300 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 311 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(), 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 Thu Apr 19 14:20:43 2007 for IT++ by Doxygen 1.4.6