Zephyr Scientific Library (zscilib)
Data Structures | Enumerations
Structs and Enums

Common colorimetry-related structs and enums. More...

Data Structures

struct  zsl_clr_xyz
 CIE 1931 XYZ tristimulus values. More...
 
struct  zsl_clr_xyy
 CIE 1931 xyY chromaticity coordinates. More...
 
struct  zsl_clr_uv60
 CIE 1960 UCS chromaticity coordinates. More...
 
struct  zsl_clr_uv76
 CIE 1976 UCS chromaticity coordinates. More...
 
struct  zsl_clr_rgbf
 RGBA color using floating-space notation from 0.0 .. 1.0. More...
 
struct  zsl_clr_rgb8
 RGBA color using 8-bit values. More...
 
struct  zsl_clr_rgb16
 RGBA color using 16-bit values. More...
 
struct  zsl_clr_cct
 Data representing a single CIE 1960 CCT, Duv value pair. More...
 
struct  zsl_clr_illum_data
 CIE 1931 XYZ tristimulus values for a standard illuminant. More...
 
struct  zsl_clr_obs_data
 CIE 1931 XYZ tristimulus values for a standard observer model in 5 nm steps from 360-830 nm (95 steps). More...
 
struct  zsl_clr_spd
 Spectral power distribution for a specific illumination. More...
 

Enumerations

enum  zsl_clr_obs {
  ZSL_CLR_OBS_2_DEG = 0,
  ZSL_CLR_OBS_10_DEG
}
 List of supported CIE standard observer models. All models cover the 360 nm to 830 nm range in 5 nm steps. More...
 
enum  zsl_clr_illum {
  ZSL_CLR_ILLUM_A = 0,
  ZSL_CLR_ILLUM_B,
  ZSL_CLR_ILLUM_C,
  ZSL_CLR_ILLUM_D50,
  ZSL_CLR_ILLUM_D55,
  ZSL_CLR_ILLUM_D65,
  ZSL_CLR_ILLUM_E,
  ZSL_CLR_ILLUM_ICC
}
 List of supported CIE standard illuminants. More...
 
enum  zsl_clr_lef {
  ZSL_CLR_LEF_CIE88_PHOTOPIC = 0,
  ZSL_CLR_LEF_CIE51_SCOTOPIC = 1
}
 List of supported CIE luminous efficiency functions. All functions cover the 380 nm to 780 nm range in 5 nm steps. More...
 
enum  zsl_clr_rgb_ccm {
  ZSL_CLR_RGB_CCM_SRGB_D65 = 0,
  ZSL_CLR_RGB_CCM_SRGB_D50,
  ZSL_CLR_RGB_CCM_ADOBERGB98,
  ZSL_CLR_RGB_CCM_SONY_SGAMUT3_CINE,
  ZSL_CLR_RGB_CCM_NTSC,
  ZSL_CLR_RGB_CCM_PAL_SECAM,
  ZSL_CLR_RGB_CCM_BT_709,
  ZSL_CLR_RGB_CCM_BT_2020,
  ZSL_CLR_RGB_CCM_ACES_P0,
  ZSL_CLR_RGB_CCM_ACES_P1,
  ZSL_CLR_RGB_CCM_DCI_P3,
  ZSL_CLR_RGB_CCM_DCI_P3_PLUS,
  ZSL_CLR_RGB_CCM_CIE_RGB
}
 List of included 3x3 XYZ to RGB color space correlation matrices. More...
 
enum  zsl_clr_uv_cct_method {
  ZSL_CLR_UV_CCT_METHOD_MCCAMY,
  ZSL_CLR_UV_CCT_METHOD_OHNO2011,
  ZSL_CLR_UV_CCT_METHOD_OHNO2014
}
 The algorithm to use when converting a CIE 1960 UV value to CCT, Duv. More...
 

Detailed Description

Common colorimetry-related structs and enums.

Enumeration Type Documentation

◆ zsl_clr_illum

List of supported CIE standard illuminants.

Enumerator
ZSL_CLR_ILLUM_A 

XYZ tristimulus for the standard 'A' white point or 'illuminant', used with transmissive light measurements. This illuminant simulates tungsten-filament light with a CCT of 2856K.

ZSL_CLR_ILLUM_B 

XYZ tristimulus for the standard 'B' white point or 'illuminant', used with transmissive light measurements. This illuminant simulates noon sunlight with a CCT of 4874K.

ZSL_CLR_ILLUM_C 

XYZ tristimulus for the standard 'C' white point or 'illuminant', used with transmissive light measurements. This illuminant simulates typical north sky daylight with a CCT of 6774K.

ZSL_CLR_ILLUM_D50 

XYZ tristimulus for the standard D50 white point or 'illuminant', used with transmissive light measurements.

ZSL_CLR_ILLUM_D55 

XYZ tristimulus for the standard D55 white point or 'illuminant', used with transmissive light measurements.

ZSL_CLR_ILLUM_D65 

XYZ tristimulus for the standard D65 white point or 'illuminant', used with transmissive light measurements.

ZSL_CLR_ILLUM_E 

XYZ tristimulus for the standard 'E' white point or 'illuminant', used with transmissive light measurements. This illuminant is an 'equal-energy radiator' and a theoretical reference value.

ZSL_CLR_ILLUM_ICC 

XYZ tristimulus for the profile connection space (PCS) illuminant used in ICC profiles.

Definition at line 68 of file colorimetry.h.

◆ zsl_clr_lef

List of supported CIE luminous efficiency functions. All functions cover the 380 nm to 780 nm range in 5 nm steps.

Luminous efficiency functions enable conversion from radiometric units, representing radiant or electromagnetic energy, into photometric units, representing luminous energy as perceived by the human eye.

For example:

Irradiance is a radiometric unit usually represented in W/m^2, and has a direct relationship to energy (watts). It is a measure of the electromagnetic energy within a specified area, visible or not.

Luminance is a photometric unit, and indicates luminous intensity per unit area, as perceived by normal human vision, and is usually represented in cd/m^2.

Irradiance can be converted to luminance by means of an appropriate luminous efficiency function, shaping the radiometric measurement into an approximation of how a human with normal vision would perceive the visible aspects of the radiometric phenomenon.

Two major luminous efficiency functions are widely used, depending on if human vision is being modelled in normal daylight conditions, where color can be perceived, or in night-time conditions where sensitivity to brightness is dominant.

Enumerator
ZSL_CLR_LEF_CIE88_PHOTOPIC 

CIE 1988 Photopic Luminous Efficiency Function, which models typical human vision in well-lit conditions, and is based on the response of color-sensitive cones in the human eye.

ZSL_CLR_LEF_CIE51_SCOTOPIC 

CIE 1951 Scotopic Luminous Efficiency Function, which models typical human vision in dark conditions, and is based on the response of rods in the human eye.

Definition at line 150 of file colorimetry.h.

◆ zsl_clr_obs

List of supported CIE standard observer models. All models cover the 360 nm to 830 nm range in 5 nm steps.

CIE standard observers define a model that enables the correlation of spectral data to human visual assessments of color. The older 2 degree model is widely used in scientific measurements and instruments, but the 10 degree model is considered a more accurate approximation of how normal human vision perceives color.

Enumerator
ZSL_CLR_OBS_2_DEG 

CIE 1931 2 degree standard observer color matching functions from 360nm to 830nm in 5 nm steps.

ZSL_CLR_OBS_10_DEG 

CIE 1964 10 degree standard observer color matching functions from 360nm to 830nm in 5 nm steps.

Definition at line 51 of file colorimetry.h.

◆ zsl_clr_rgb_ccm

List of included 3x3 XYZ to RGB color space correlation matrices.

Enumerator
ZSL_CLR_RGB_CCM_SRGB_D65 

XYZ to linear sRGB (D65 white point).

ZSL_CLR_RGB_CCM_SRGB_D50 

XYZ to linear sRGB (D50 white point).

ZSL_CLR_RGB_CCM_ADOBERGB98 

AdobeRGB98.

ZSL_CLR_RGB_CCM_SONY_SGAMUT3_CINE 

Sony S-Gamut3.cine D65.

ZSL_CLR_RGB_CCM_NTSC 

NTSC.

ZSL_CLR_RGB_CCM_PAL_SECAM 

PAL/SECAM.

ZSL_CLR_RGB_CCM_BT_709 

ITU-R BT.709.

ZSL_CLR_RGB_CCM_BT_2020 

ITU-R BT.2020.

ZSL_CLR_RGB_CCM_ACES_P0 

ACES Primaries #0 (AP0).

ZSL_CLR_RGB_CCM_ACES_P1 

ACES Primaries #1 (AP1).

ZSL_CLR_RGB_CCM_DCI_P3 

DCI-P3.

ZSL_CLR_RGB_CCM_DCI_P3_PLUS 

DCI-P3+.

ZSL_CLR_RGB_CCM_CIE_RGB 

CIE linear RGB.

Definition at line 169 of file colorimetry.h.

◆ zsl_clr_uv_cct_method

The algorithm to use when converting a CIE 1960 UV value to CCT, Duv.

Enumerator
ZSL_CLR_UV_CCT_METHOD_MCCAMY 

McCamy's approximation.

McCamy's approximation provides an approximate CCT using a CIE 1931 xyY chromaticity:

CCT(x, y) = 449 * n^3 + 3525 * n^2 + 6823.3 * n + 5520.33

Where:

n = (x − 0.3320) / (0.1858 - y)

This is accurate for color temperatures between ~2800K-6500K.

ZSL_CLR_UV_CCT_METHOD_OHNO2011 

Yoshi Ohno 2011 CORM.

Yoshi Ohno, "Calculation of CCT and Duv and Practical Conversion Formulae", CORM 2011.

Highly accurate between 2,000 and 20,000 K, making it the ideal choice for artifical lighting.

ZSL_CLR_UV_CCT_METHOD_OHNO2014 

Yoshi Ohno 2014.

Source: Yoshi Ohno (2014) Practical Use and Calculation of CCT and Duv LEUKOS, 10:1, 47-55, DOI: 10.1080/15502724.2014.839020

Highly accurate between 2,600 and 20,000 K, making it the ideal choice for artifical lighting.

Definition at line 214 of file colorimetry.h.