RS2Color v. 3.32

program for the visualization of paint reflectance spectra and their color coordinates: RGB, Lab, Munsell HVC, XYZ and xyY

by Zsolt


Introduction

Program description

Notes

List of updates

Application Examples

Download

Disclaimer

Acknowledgments

Frequently Asked Questions


Introduction

This program has basically two goals: to visualize reflectance spectra and to convert chromatic coordinates from a color coordinate system into a different system. In addition, this program calculates both complementary spectra and the spectral complementary color of a color defined in one of these systems: RGB, CIE Lab, Munsell HVC and XYZ (or xyY). There exist various color spectra databases, both measured and ideal. Drop2color also saves reflectance spectra of mixed colors in a format readable by rs2color.


Program description

This program is written as a MATLAB script and for its execution it is necessary to have installed "MATLAB Component Runtime library (MCR)". This is the main interface window of the program:

There are two panels (1), "RS DB 1" and "RS DB 2", for selecting the databases we want to use. The available databases offer measurements done on paint samples, various types of backgrounds, and it is also possible to open a database defined by the user.

The database (2), of each panel "RS DB 1" and "RS DB 2", can be open using the drop-down menu or by selecting a db file (3). The file can be *.txt, *.xls or *.rs:

Link to Example 1: CGATS format of measured spectra, done on Rembrandt Permanent Viola mixed to white.

Link to Example 2: rs format of measured spectra, done on human skin. The resulting colors are too dark because the skin is translucent and the light bounces back from the red blood cells in the blood vessels.

The database can be loaded as it is, and the complementary spectra can be generated by checking box (4). The selection of a spectrum available in the database (2) can be made from the drop-down menu (5). The spectrum selected from the first DB can be seen in the upper swatch (6), while and the one from the second DB shows in the lower sample (7). The color coordinates of the first spectrum are shown in area (8), while those of the second can be seen in area (9). The spectra are plotted on the graph underneath (10) that extends beyond 1 (11) to allow the correct visualization of both standard (12) and fluorescent colors (13). The first selected spectrum is shown with a continuous line (12), while the one from the second database with a dotted one (13). The colors of the spectra are also shown in Munsell space (14). The flat colored sphere (15) shows the position of the first spectrum, whereas the one with an overlapping grid (16) shows the second spectrum. Button (17) allows you to visualize the position of all the spectra contained in the first database (or their spectral complementary colors if box (4) of the first DB is checked).

The chromatic coordinate conversion into Munsell space is done using cubic interpolation. However, by selecting the button (18), the algorithms written by Paul Centore will be activated. His algorithms "MunsellConversions" are open-source and can be downloaded from his web site.

The chromatic coordinates of the first spectrum are shown in an editable box in RGB format (19) assuming the White Point is set to 6500K, Cie Lab (20), Munsell Hue Value/Chroma (21) with illuminant 'C', tristimuli XYZ (22) and xyY (23). The DE*94 error (24) between the two selected spectra is shown between the two panels. When one of these color coordinate boxes is edited (19-23), the spectrum disappears immediately (12) and the first panel (6) together with its boxes (8) conforms to the keyed in coordinates, just like the sphere (15). This way the color coordinates can be transformed from one color space to another and they can be seen both as color and position in Munsell space. When pressing button (25), the complementary color is calculated in tristimulus coordinates in area 1 (22). When selecting a new spectrum from the first DB, the program returns to spectral visualization mode. Below the button 'C' (25) there is another, namely 'T' (26), which runs drop2color with target color loaded from area 1 (8).

All other commands not mentioned here are identical to those described in drop2color.


Notes:


List of updates:

Version 3.12 includes 12 spectra databases:

Version 3.15 includes 3 additional spectra databases:

Version 3.17 includes 2 additional spectra databases:

Version 3.24 includes 7 additional databases:

Version 3.25 includes 1 additional database:

Version 3.26 includes 1 additional database:

Version 3.31 includes 5 additional databases:

Version 3.32 includes 1 additional databases:


Application Examples

Example 1: complementary color of a spectrum

When selecting two identical databases and checking the complementary spectrum computation box of one of them, you can compare the natural and the complementary spectra. From a spectral point of view, the complementary color is the color of the spectrum which once added to the natural spectrum gives the spectrum of the current illumination. From a reflectance spectrum point of view, the complementary spectrum is the complement to 1 of each spectral value. Complementary colors for humans are based on many physiological grounds. One of them is the after-effect due to our neural response up to area V4 where color is mainly processed: after having stared at a color for at least about twenty seconds without eye motion and then looking at a white surface, a color appears which is the complementary color seen by our visual system. The complementary color, in fact, has a hue, a value and also saturation. So, the popular idea that green is the complementary color of red is a very poor approximation of the reality for many reasons! This is the message of the image below. The pink of area 1 has the cyan of area 2 as its complementary color. It can also be seen from the positioning of the spheres on the Munsell HC plain that in this space the complementary colors line up fairly diagonally crossing the neutral axis. This property of the Munsell space, based on human perception, is one of the reasons why I introduced this color space in my "Color Mixing Tools". The brightness level (Value), however, has the property that the line connecting the color and its spectral complementary passes the neutral axis (chroma=0) in the tristimulus value Y=50, or Munsell Value=7.5, thanks to the non linearity of the human eye response to brightness. The positioning, from the saturation point of view, does not have an easy physical explanation (as far as I know), because color saturation has to do with the size of the ripples/spikes of the spectra and the perception of this is influenced by our non linear response to brightness.

 

Example 2: determining the complementary color of a mixed paint

I know that the old notion "the complementary color of red is green, of yellow is violet etc." comes to mind immediately, but this is definitely a broad generalization. It is as if we were to ask somebody where he or she lived and the person would respond "in Italy" leaving out the city and street details. Saying that the complementary color of red is green (first of all, it is incorrect because perceptively blue-green is the complementary color of red) does not give me any information on value or saturation.

Let us see an example. Suppose that I want to mix the color 5.0R 7.0/7.0 and its complementary color using E'TAC EFX 500, because I want to create a strong contrast between two adjacent abstract geometries:

Color2drop (in CMT ver. 3.4.17) running with illumination spectrum 'C' for 5.0R 7.0/7.0 gives me the following recipe: "502-Titanium White":(8) + "503-Naphthol Red":(1) + "507-Arylide Yellow":(2)

In order to identify the complementary color of 5.0R 7.0/7.0, I simply need to enter the color in the editable window and press button 'C' after having set the same lighting 'C' that I used for mixing the recipe. Rs2color calculates the complementary color coordinates:

Now, I can calculate the recipe with color2drop to obtain 9.9 BG 7.9/5.9: "502-Titanium White": (50) + "505- Phthalocyanine Green" : (1) + " 506- Phthalocyanine Turquoise": (1)

In order to see the complementary color spectrum of the mixed color, you may launch drop2color from color2drop (or enter the base components of the recipe manually in drop2color), then save the spectrum of the mixed color into a database file. Finally, loading the file as User Defined database the spectrum will appear. It is worth adding that the mixed paint and its complementary color mixed this way will be complementary colors, but their reflectance spectra will not be complementary, because the paint mixing is based on metameric matches and not on spectral matching (which would be generally useless).

Example 3: Munsell coordinates of a paint if the brand is not included in the system

It is very useful to have the Munsell coordinates of a paint, as already mentioned in different application examples of color2drop. Nevertheless, the calculation of these coordinates requires the reflectance spectra. Therefore, the simplest way is to create some masstone paint samples and to measure their spectra. These samples can be obtained easily. All it takes is putting some drops / parts on a piece of white cardboard to have a painted surface of around 1cm x 1cm of opaque color. If the paint is already opaque, one drop is enough, otherwise, other drops need to be added, then dried up to opaque coverage. Once these samples have been created and labelled with the indication of the used colors, all it takes is sending them to me by post and I will measure them. (Please note that I can not guarantee anything due to my rather busy schedule, but I will do my best to help you out).

If a paint is transparent, the samples should not reach full opacity (also because the result will end up being very dark and useless). It is enough to reach a typical color appearance for that specific paint.


Download

Dear Friend,
this program can be downloaded and used for free. I've written it for my curiosity and I'm releasing it for the pleasure of art students and artists. Therefore, please do not sell it!

The current version of the Color Mixing Tools includes more than 20,000 lines of code I've been writing since 2004. It includes 10 paint sets: measured data of 9 paint lines of various brands + 1 ideal set:

The system includes also 32 reflectance spectrum databases:

If you would like to use the Color Mixing Tools, please send me and e-mail message asking for the download instructions, so I can send you the access info. You'll need two files: MCRInstaller.exe and ColorMixingTools.zip. You should download them together, because the version numbers must match. Please note that you are authorized to use the system only according to the Disclaimer below and you are not allowed to put the MATLAB libraries on the internet for any reason. However, please feel free to give the two files to your colleagues or friends, but only for educational purposes.

Installing instructions: Please do NOT install both 32bit and 64bit versions on the same PC. They will kill each other!

1) Install the runtime libraries by executing MCRInstaller.exe (please, uninstall all previous versions before installing a new one!)
2) Extract the files from the Color Mixing Tools archive: it is the compressed ColorMixingTools directory containing all the executables and data directories
3) Run the program of your interest from the directory ColorMixingTools (setting Windows XP compatibility mode of the executables if necessary)
 

If you are responsive to humanitarian emergencies, please think about a donation to MSF (selecting your national office at www.msf.org) helping people living in real emergency, where even a couple of dollars can be the difference between life and death. Thank you!


Disclaimer:

This software is provided free of charge for educational purpuses ONLY. Selling or renting it is prohibited.

The MathWorks, Inc. Matlab "Software License Agreement", "Academic Installation and Use Addendum" and "Deployment Addendum" apply to the use of this software.

This software is provided on an "as is" basis without warranty of any kind, expressed or implied. Under no circumstances and under no legal theory, whether in tort, contract, or otherwise, shall the Author or the University of Brescia be liable to you or to any other person for any indirect, special, incidental, or consequential damages of any character including, without limitation, damages for loss of goodwill, work stoppage, computer failure or malfunction, or for any and all other damages or losses.

If you do not agree with these terms, then you are advised NOT to USE the software.

Any mention of commercial paints in this system is for information only: it does not imply recommendation or endorsement by the Author.

This system is based on MATLAB(R). (c) 1984 - 2012 The MathWorks, Inc.


Acknowledgments


I'd like to thank:

A warm thank you to my good friend Erika for translating this page. [ The errors you may find in the page are all mine, inserted after her excellent job finished in November 2009 ]


Link to Drop2Color, a program to visualize the color of mixed paint recipes

Link to Color2Drop, a program to convert RGB, Lab or Munsell HVC color coordinates into paint mixing recipes


Link to the main page of my Color Experiments


Updated the 12th of February 2013 by Zsolt