Table of Contents
Work Product Submission
Name: Paweł Redman
Organization: NumFOCUS
Sub-Organization: Colour Science
Mentors: Thomas Mansencal, Michael Mauderer, Hao Xie
Overview
My work during this year's Google Summer of Code was focused on improving Colour. I have added support for three new spectral upsampling methods and two new color quality metrics
The following subsections, one for each new feature, contain links to relevant publications, files and pull requests. I've omitted some trivial contributions like those to __init__.py
scripts. Every linked Python file listed below is, excluding Thomas's style and formatting fixes, entirely my own work.
Unfortunately, not all code was merged before the deadline. The reviewing process has been taking much longer than expected, partly due to coinciding with some significant refactoring being done in the library. As of writing this document, pull requests for Otsu et al. (2018) and new color quality metrics are still open. However the code itself is finished and there's nothing left for me to do.
New spectral upsampling methods
This subsection describes work planned in the project proposal.
Jakob and Hanika (2019)
Jakob, W., & Hanika, J. (2019). A Low‐Dimensional Function Space for Efficient Spectral Upsampling. Computer Graphics Forum, 38(2), 147–155. [DOI]
Major features:
- Direct spectral upsampling of XYZ tristimulus values.
- Indirect upsampling using a lookup table loaded from disk.
- Lookup table creation.
New files:
Commits:
- da7fe930 Change recovery.jakob2019 to work directly in the XYZ colourspace.
- a4441a2d Further simplify Jakob and Hanika (2019).
Blog posts:
Otsu et al. (2018)
Otsu, H., Yamamoto, M. & Hachisuka, T. (2018) Reproducing Spectral Reflectances From Tristimulus Colours. Computer Graphics Forum. 37(6), 370–381. [DOI]
Major features:
- Upsampling of XYZ tristimulus values.
- A built-in dataset, adapted from the published source code.
- Dataset creation and optimization from arbitrary set of spectra.
New files:
Commits:
Blog posts:
Mallett and Yuksel (2019)
Mallett, I., & Yuksel, C. (2019). Spectral Primary Decomposition for Rendering with sRGB Reflectance. Eurographics Symposium on Rendering - DL-Only and Industry Track, 7 pages. [DOI]
Major features:
- Upsampling of sRGB colors.
- A built-in dataset for sRGB, adapted from the published source code.
- Dataset creation for any RGB colorspace and arbitrary optimization goals.
New files:
Commits:
Blog posts:
New color quality metrics
This subsection documents some extra, unplanned work that I managed to get done in the last weeks of the program.
CIE 224:2017
CIE 2017 Colour Fidelity Index for accurate scientific use (CIE 224:2017)
Major features:
- Support for the CIE 2017 Colour Fidelity Index.
- Tested the reference implementations to ensure accuracy and correctness.
New files:
Commits:
Blog posts:
ANSI/IES TM-30-18
IES Method for Evaluating Light Source Color Rendition (ANSI/IES TM-30-18)
Major features:
- A complete implementation of all color quality metrics specified in the standard.
- Tested against reference implementations to ensure accuracy and correctness.
New files:
Commits:
Blog posts: