Features:
- a clear classification of the commonly seen spectra into 4 types - depending on the vector space to which they belong
- flexible organization for the spectra in memory, using an S3 class - colorSpec
- a product algebra for the colorSpec objects
- uniform handling of biological eyes, electronic cameras, and general action spectra
- a few advanced calculations, such as computing optimal colors (aka Macadam Limits)
- built-in essential tables, such as the CIE illuminants and color matching functions
- a package logging system with log levels taken from the popular Log4J
- support for reading a few spectrum file types, including CGATS
- bonus files containing some other interesting spectra
- minimal dependencies on other R packages
Non-features:
- there is no support for many common 3D color spaces, such as CIELAB, HSL, etc..
For these spaces see packages colorspace and colorscience.
- there are few non-linear operations
- there is little support for scientific units; for these see package colorscience
- photons are parameterized by wavelength in nm;
other wavelength units and common alternative metrics
such as wavenumber and electronvolt are not available
Regarding the non-linear operations in 2,
the only such operations are conversion of linear
RGB to display RGB, conversion of absorbance to transmittance,
and the reparameterized wavelength in computeADL.
The electronic camera model is purely linear
with no dark current offset or other deviations.
Many ideas are taken from packages
hyperSpec, hsdar, pavo, and zoo.