Just because it's black in the dark,
Oh, doesn't mean there's no colors.
— Laleh (Colors)
Authentic and color-accurate images of Ishihara's test plates for colour deficiency.
I provide high-resolution bitmaps and SVG files for each plate. I also provide the position, size, and color of each circle on each test plate.
Can this information be used to make fakes? Yes, but at least they'll be really good ones. Also, please don't.
If you're interested to learn more about colorblindess and the mathematics behind it, see my Designing for Color Blindness, Palettes for Color Blindness and Math of Color Blindness.
And turn those lines of confusion into understanding!
Here I provide more details about the color correction behind the photos of the 38 Ishihara test plates.
If you're wondering why the background of the plate images isn't white, read on.
I provide these details to give you confidence that the Ishihara test plate images have received the loving attention that they deserve.
That being said, this is far more color calibration and correction than I have ever performed. If any of these methods seem sketchy to you or you can recommend a more streamlined process to reach the same accuracy please get in touch. Keep in mind that whatever you're seeing on your screen is also a function of your monitor's calibration.
The plates were photographed from an authentic 2007 issue of the 38 plate Ishihara book at the central branch of the Vancouver Public Library (VPL). At the time, I did not have a copy of the Ishihara book, so using the VPL's copy was my only option.
The images were shot RAW at f/8 and 0.7 seconds and ISO 100 with a Canon 5D and 24-70 mm f/2.8L. The illumination was indirect fluorescent lighting with some spill of light through windows from the overcast day outside.
Unfortunately, the book is reference material, so it could not be taken out of the library. Without dragging lights into the library, my options were limited. The plates were centered on a target, which was centered in the field of view. Exposure uniformity across the plate was better than 0.03 stops (see contour plot below).
I've since purchased my own copy of the book and maybe one day I will repeat this process under more controlled lighting conditions.
Plates were centered and placed on a custom target.
Squares range from 4.75" to 6" in size in increments of 0.25". Thick lines around the edges are 1" in length.
The target was printed on a standard letter-sized page and placed on an 18% greycard.
I evaluated the field uniformity using Imatest's uniformity module using the image of the back of plate 38 (see above).
Color calibration was performed using the Gretag-Macbeth 24-patch colorchecker.
A more accurate calibration of colors near the discernable boundaries of deuteranopes and protanopes could be achieved with a color checker with more colors, such as the 140-patch ColorChecker Digital SG, but I don't have access to it. They are no longer in production. And when they were, they were substantially more expensive ($500) than the classic 24-patch ones ($75).
I used Adobe's Lightroom Classic 10.1 for processing. For evaluating exposure and color accuracy, I used the Color/Tone Interactive module of a trial version of Imatest 2020.2.2.
In addition to these settings, I applied slight color corrections in Capture One as well — where I can have more control over the color bands.
Here, I walk you through my 5 steps of color correction.
For each step, I show the Gretag-Macbeth checker and 4 plots from Imatest. The exposure plot evaluates the tones of the grey patches and the other three plots evaluates how close each of the color patches is to the reference.
Reference Lab values were Lab D50 average of 30 charts created before 2014 — these data are available from Babelcolor (see Table 1). For the full methodology behind this data set see RGB coordinates of the Macbeth ColorChecker by Danny Pascale, specifically Table 1B, which is an average of 20 charts. The 30-chart average "improves" on this set slightly.
We're looking for a small exposure error and low values of the mean and max ΔE00. For background on ΔE00 see The CIEDE2000 Color-Difference Formula: Implementation Notes, Supplementary Test Data, and Mathematical Observations.
I was able to achieve a mean ΔE00 = 1.06. Note that the reference Lab value of the cyan patch is outside the sRGB gamut (see the `xy` plot).
Below is the comparison of the reference values with the final color-corrected patches on the colorchecker.
The table shows color and Lab value differences between the reference colorchecker (left) and color-corrected image (right). Rows below the patches show the L, a* and b* color values. The middle column shows the ΔL, Δa* and Δb* differences. Values `>1.0` are orange and values `>2.0` are red. The last row is the ΔE00 between reference and corrected color.
I was not able to reliably remap all the grey tone luminances. The third grey patch is still a little too bright. The large difference in the cyan patch (#18) is due to the fact that this color is outside the sRGB gamut.
The original image using Adobe Standard color profile and white balanced to an 18% grey card. We have a 0.77 stop over-exposure and color patches are all over the place with an average ΔE00 = 9.91 and a maximum ΔE00 = 15.
At first pass, I created a camera profile based on the RAW colorchecker image using the X-rite colorchecker camera calibration software. Although this software's reference values aren't exactly the same as those I use in Imatest to evaluate color error, this isn't an issue at this step — I'm looking for a reasonable global correction to colors. I set exposure compensation to -0.6 stops so that the 4th grey patch had a luminance close to the reference value of `L=51`. At this point, exposure error was still 0.39 stops (based on all grey patches) — getting all the netural patches to match reference tone requires tone adjustments, which happens in the next step. The mean ΔE00 was 4.54 and the maximum 9.8. The ΔL plot shows that a lot of patches are too bright but the dark blue is too dark. The HSV plot shows that most of the color patches are too saturated.
After applying more global adjustments (blacks +30, saturation –8) and adjusting the tone curve (boundaries 21/77/87, highlights +85, lights –10, darks –8, shadows +55) the exposure error was reduced to 0.24 stops and the mean ΔE00 to 2.57.
At this point I was happy with the exposure and all remaining steps deal with tweaking the colors.
Lightroom gives you options to adjust hue, saturation and luminance of each color band and the Imatest plots are very helpful to inform how these adjustments should be made. The ΔL plot tells me whether luminance needs to be adjusted and the HSV plot tells me whether colors are too saturated or whether their hue needs to be rotated.. Detailed adjustments in Lightroom Classic were applied to each color band to bring as many of the patches as close to reference values as I could. The final average ΔE00 was 2.12.
To correct the patches more precisely, I used Capture One, which provides more control over hue/saturation color ranges. With these tweaks I was able to get the average ΔE00 to 1.06.
Celebrate π Day (March 14th) and enjoy the art — but only if you're part of the 5%.
Go ahead, see what you can't see.
Authentic and accurate images of Ishihara's test plates photographed (and lovingly color-corrected) from the 38-plate Ishihara's Tests for Colour Deficiency.
I also provide the position, size, and color of each circle on each test plate.
What immortal hand or eye, could frame thy fearful symmetry? — William Blake, "The Tyger"
This month, we look at symmetric regression, which, unlike simple linear regression, it is reversible — remaining unaltered when the variables are swapped.
Simple linear regression can summarize the linear relationship between two variables `X` and `Y` — for example, when `Y` is considered the response (dependent) and `X` the predictor (independent) variable.
However, there are times when we are not interested (or able) to distinguish between dependent and independent variables — either because they have the same importance or the same role. This is where symmetric regression can help.
Luca Greco, George Luta, Martin Krzywinski & Naomi Altman (2025) Points of significance: Symmetric alternatives to the ordinary least squares regression. Nat. Methods 22:1610–1612.
Fuelled by philanthropy, findings into the workings of BRCA1 and BRCA2 genes have led to groundbreaking research and lifesaving innovations to care for families facing cancer.
This set of 100 one-of-a-kind prints explore the structure of these genes. Each artwork is unique — if you put them all together, you get the full sequence of the BRCA1 and BRCA2 proteins.
The needs of the many outweigh the needs of the few. —Mr. Spock (Star Trek II)
This month, we explore a related and powerful technique to address bias: propensity score weighting (PSW), which applies weights to each subject instead of matching (or discarding) them.
Kurz, C.F., Krzywinski, M. & Altman, N. (2025) Points of significance: Propensity score weighting. Nat. Methods 22:638–640.