/**
*
*/
package fr.unistra.pelican.util.colour;
/**
* This is the standard REC.709 compression model for the standard REC.709 ICC profile (HDTV definition).
*
* @author Benjamin Perret
*
*/
public class REC709GammaCompressionModel extends GammaCompressionModel {
private double gamma=2.22;
private double gammaInv=1.0/gamma;
private double a=4.5;
private double bb=0.099;
private double it=0.018;
/**
*
*/
public REC709GammaCompressionModel() {
}
/* (non-Javadoc)
* @see fr.unistra.pelican.util.colour.GammaCompression#compress(double, fr.unistra.pelican.util.colour.GammaCompression.Band)
*/
@Override
public double compress(double value, Band b) {
return (value<it)?a*value:((1.0+bb)*Math.pow(value,gammaInv)-bb);
}
}