[]
        
(Showing Draft Content)

CSJ2K.j2k.quantization.dequantizer

CSJ2K.j2k.quantization.dequantizer Namespace

Classes

Dequantizer

This is the abstract class from which all dequantizers must inherit. This class has the concept of a current tile and all operations are performed on the current tile.

       <p>This class provides default implemenations for most of the methods
       (wherever it makes sense), under the assumption that the image and
       component dimensions, and the tiles, are not modifed by the dequantizer. If
       that is not the case for a particular implementation then the methods
       should be overriden.</p><p>Sign magnitude representation is used (instead of two's complement) for
       the input data. The most significant bit is used for the sign (0 if
       positive, 1 if negative). Then the magnitude of the quantized coefficient
       is stored in the next most significat bits. The most significant magnitude
       bit corresponds to the most significant bit-plane and so on.</p><p>The output data is either in floating-point, or in fixed-point two's
       complement. In case of floating-point data the the value returned by
       getFixedPoint() must be 0. If the case of fixed-point data the number of
       fractional bits must be defined at the constructor of the implementing
       class and all operations must be performed accordingly. Each component may
       have a different number of fractional bits.</p>

DequantizerParams

This is the generic ineterface for dequantization parameters. Generally, for each type of dequantizer, there should be a corresponding class to store its parameters. The parameters are those that come from the bit stream header, that concern dequantization.

StdDequantizer

This class implements a scalar dequantizer with deadzone. The output can be either integer ('int') or floating-point ('float') data. The dequantization step sizes and other parameters are taken from a StdDequantizerParams class, which inherits from DequantizerParams.

       <p>Sign magnitude representation is used (instead of two's complement) for
       the input data. The most significant bit is used for the sign (0 if
       positive, 1 if negative). Then the magnitude of the quantized coefficient
       is stored in the next most significat bits. The most significant magnitude
       bit corresponds to the most significant bit-plane and so on.</p><p>When reversible quantization is used, this class only converts between
       the sign-magnitude representation and the integer (or eventually
       fixed-point) output, since there is no true quantization.</p><p>The output data is fixed-point two's complement for 'int' output and
       floating-point for 'float' output. The type of output and the number number
       of fractional bits for 'int' output are defined at the constructor. Each
       component may have a different number of fractional bits.</p><p>The reconstruction levels used by the dequantizer are exactly what is
       received from the entropy decoder. It is assumed that the entropy decoder
       always returns codewords that are midways in the decoded intervals. In this
       way the dequantized values will always lie midways in the quantization
       intervals.</p>

StdDequantizerParams

This class holds the parameters for the scalar deadzone dequantizer (StdDequantizer class) for the current tile. Its constructor decodes the parameters from the main header and tile headers.

Interfaces

CBlkQuantDataSrcDec