Remove ciecam02 double precision processing
This commit is contained in:
@@ -28,17 +28,9 @@ namespace rtengine
|
||||
class Ciecam02
|
||||
{
|
||||
private:
|
||||
static double d_factor ( double f, double la );
|
||||
static float d_factorfloat ( float f, float la );
|
||||
static double calculate_fl_from_la_ciecam02 ( double la );
|
||||
static float calculate_fl_from_la_ciecam02float ( float la );
|
||||
static double achromatic_response_to_white ( double x, double y, double z, double d, double fl, double nbb, int gamu );
|
||||
static float achromatic_response_to_whitefloat ( float x, float y, float z, float d, float fl, float nbb, int gamu );
|
||||
static void xyz_to_cat02 ( double &r, double &g, double &b, double x, double y, double z, int gamu );
|
||||
static void cat02_to_hpe ( double &rh, double &gh, double &bh, double r, double g, double b, int gamu );
|
||||
static void cat02_to_xyz ( double &x, double &y, double &z, double r, double g, double b, int gamu );
|
||||
static void hpe_to_xyz ( double &x, double &y, double &z, double r, double g, double b );
|
||||
|
||||
static void xyz_to_cat02float ( float &r, float &g, float &b, float x, float y, float z, int gamu );
|
||||
static void cat02_to_hpefloat ( float &rh, float &gh, float &bh, float r, float g, float b, int gamu );
|
||||
|
||||
@@ -48,13 +40,7 @@ private:
|
||||
static vfloat nonlinear_adaptationfloat ( vfloat c, vfloat fl );
|
||||
#endif
|
||||
|
||||
static void Aab_to_rgb ( double &r, double &g, double &b, double A, double aa, double bb, double nbb );
|
||||
static void calculate_ab ( double &aa, double &bb, double h, double e, double t, double nbb, double a );
|
||||
|
||||
static double nonlinear_adaptation ( double c, double fl );
|
||||
static float nonlinear_adaptationfloat ( float c, float fl );
|
||||
static double inverse_nonlinear_adaptation ( double c, double fl );
|
||||
|
||||
|
||||
static float inverse_nonlinear_adaptationfloat ( float c, float fl );
|
||||
static void calculate_abfloat ( float &aa, float &bb, float h, float e, float t, float nbb, float a );
|
||||
@@ -71,20 +57,12 @@ private:
|
||||
|
||||
public:
|
||||
Ciecam02 () {}
|
||||
static void curvecolor (double satind, double satval, double &sres, double parsat);
|
||||
static void curvecolorfloat (float satind, float satval, float &sres, float parsat);
|
||||
static void curveJ (double br, double contr, int db, LUTf & outCurve, LUTu & histogram ) ;
|
||||
static void curveJfloat (float br, float contr, const LUTu & histogram, LUTf & outCurve ) ;
|
||||
|
||||
/**
|
||||
* Inverse transform from CIECAM02 JCh to XYZ.
|
||||
*/
|
||||
static void jch2xyz_ciecam02 ( double &x, double &y, double &z,
|
||||
double J, double C, double h,
|
||||
double xw, double yw, double zw,
|
||||
double c, double nc, int gamu, double n, double nbb, double ncb, double fl, double cz, double d, double aw);
|
||||
|
||||
|
||||
static void jch2xyz_ciecam02float ( float &x, float &y, float &z,
|
||||
float J, float C, float h,
|
||||
float xw, float yw, float zw,
|
||||
@@ -98,24 +76,12 @@ public:
|
||||
/**
|
||||
* Forward transform from XYZ to CIECAM02 JCh.
|
||||
*/
|
||||
static void initcam1 (double gamu, double yb, double pilotd, double f, double la, double xw, double yw, double zw, double &n, double &d, double &nbb, double &ncb,
|
||||
double &cz, double &aw, double &wh, double &pfl, double &fl, double &c);
|
||||
|
||||
static void initcam2 (double gamu, double yb, double pilotd, double f, double la, double xw, double yw, double zw, double &n, double &d, double &nbb, double &ncb,
|
||||
double &cz, double &aw, double &fl);
|
||||
|
||||
static void initcam1float (float gamu, float yb, float pilotd, float f, float la, float xw, float yw, float zw, float &n, float &d, float &nbb, float &ncb,
|
||||
float &cz, float &aw, float &wh, float &pfl, float &fl, float &c);
|
||||
|
||||
static void initcam2float (float gamu, float yb, float pilotd, float f, float la, float xw, float yw, float zw, float &n, float &d, float &nbb, float &ncb,
|
||||
float &cz, float &aw, float &fl);
|
||||
|
||||
static void xyz2jchqms_ciecam02 ( double &J, double &C, double &h,
|
||||
double &Q, double &M, double &s, double &aw, double &fl, double &wh,
|
||||
double x, double y, double z,
|
||||
double xw, double yw, double zw,
|
||||
double c, double nc, int gamu, double n, double nbb, double ncb, double pfl, double cz, double d );
|
||||
|
||||
static void xyz2jch_ciecam02float ( float &J, float &C, float &h,
|
||||
float aw, float fl,
|
||||
float x, float y, float z,
|
||||
|
Reference in New Issue
Block a user