EleFits  5.3.0
A modern C++ API on top of CFITSIO
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
Quantization Class Reference

#include <Quantization.h>

Detailed Description

Quantization parameters.

As opposed to CFITSIO, EleFits creates lossless algorithms by default, including for floating point values. Lossy compression has to be manually enabled by setting a non-null quantization level. The level can be set either globally, as a double, or tile-wise, relative to the noise level:

Quantization disabled;
Quantization absolute(1);
Quantization relative(Tile::rms / 4);
Quantization parameters.
Definition: Quantization.h:34
static Scaling rms
Scaling relative to the tile RMS.
Definition: Compression.h:45

When quantization is enabled, dithering is applied by default to all pixels.

Public Types

enum class  Dithering {
  None ,
  NonZeroPixel ,
  EveryPixel
}
 Quantization dithering methods. More...
 

Public Member Functions

 Quantization ()
 Default, lossless compression constructor.
 
 Quantization (Scaling level)
 Level-based constructor. More...
 
 Quantization (Scaling level, Dithering method)
 Full constructor.
 
Dithering dithering () const
 Get the dithering method for the quantization.
 
Quantization & dithering (Dithering method)
 Set the dithering method.
 
const Scaling & level () const
 Get the quantization level.
 
Quantization & level (Scaling level)
 Set the quantization level.
 
 operator bool () const
 Check whether quantization is enabled.
 
bool operator!= (const Quantization &rhs) const
 Check whether two quatizations are different.
 
bool operator== (const Quantization &rhs) const
 Check whether two quatizations are equal.
 

The documentation for this class was generated from the following file: