Skip to main content

Color Blindness Simulation

Color blind people have partial or no ability to perceive colors. This library can do a color transformation on your sketch to reduce the color palette in a way that mimics color deficiencies.

To learn about the science behind color blindness simulation, refer to the Color Blindness Simulation Research page. To learn more about the Processing library I have built to simulate color blindness, go to the main project page.

The library is designed to quickly transform each frame of your sketch so that the overhead from the library does not impact your frame rate. Using this library, users can check that their work is accessible to color blind people and adjust their use of color as necessary.

Consider this image of fall trees.


A Protanope has what is commonly referred to as red-green color blindness. The same scene would look like this:


This image is simulating the complete loss of the ability to distinguish red from green.

A few years ago there was speculation that Vincent van Gogh was color blind. The argument was that his color choices seemed to make more sense when simulating color blindness, as shown in the right image below. I believe that this has been disproven, but I am bringing it up for discussion.


It is more common for people to have partial color blindness. This means a person has a reduced ability to distinguish some colors. It is called Anomalous Trichromacy. The color cones are present in their eyes but they are malfunctioning.

Below is the image as seen by someone with protanomaly, or partial protanopia:


Deuteranopia is also referred to as red-green color blindness. The resulting color deficiency is similar to Protanopia but without the dimming effect to reds:


Tritanopia is commonly referred to as blue-yellow colorblindness. It is very rare.


Even rarer still is a total loss of color perception, or monochromacy. This is what the scene looks like to someone with Rod Monochromacy, or Achromatopsia:


There is also something called blue-cone monochromacy. That would look like this:


You can explore this further with the Color Blindness Exploration tool, found in the example code that comes with the ColorBlindness library.