| synopsis || arguments || prev || next |
Overload navigation: 1, 2, 3, 4, 5, 6
void init( double gamma, double beta=0.0F, int num_points=100)
Java: void Init( double gamma, double beta, int num_points)
[Declared in "../apps/compressed_io/jp2.h"]
Same as the third form of this overloaded function, except that a restricted ICC profile is automatically generated to describe a luminance space.
The most commonly used form of the gamma function is not a pure power law, but may be described by two parameters, gamma and beta, as explained in Chapter 1 of the book by Taubman and Marcellin. For reference, the sRGB space has gamma=2.4 and beta=0.055, while the NTSC RGB space has gamma=2.2 and beta=0.099. If beta=0, the gamma function is a pure power law and can be efficiently represented by the ICC profile. Unfortunately, this form is not recommended, since inversion is ill conditioned and can substantially amplify quantization artifacts. For the more general and more useful case where beta is non-zero, the function must be represented through tabulated values. These are uniformly spaced in the non-linear (gamma corrected) space. The number of tabulated points may be explicitly controlled using the num_points argument.
See above. Note that the function does not currently accept gamma values less than 1.
See above. Note that beta must be in the range 0 (inclusive) to 1 (exclusive).
Used only if beta!=0, in which case the gamma function must be described through tabulated values.