Accommodating Color Blind Computer Users
Luke Jefferson, Richard Harvey · 2006 · Proceedings of the 8th International ACM SIGACCESS Conference on Computers and Accessibility (Assets '06) · doi:10.1145/1168987.1168996
Summary
This paper from the University of East Anglia presents an algorithm for recoloring digital images and documents so that color information is preserved for color blind viewers, particularly dichromats (people missing one type of cone cell). The algorithm addresses a fundamental problem: important visual distinctions encoded through color become invisible to the approximately 8% of men and 0.5% of women with color vision deficiency (CVD). A 2004 Disability Rights Commission study found that 81% of 1,000 websites failed basic WAI compliance, with "inappropriate use of colors and poor contrast" ranking as a top problem across all six impairment groups tested. The algorithm has four steps: (1) select representative key colors from the source image using a difference histogram that identifies colors most affected by the CVD simulation; (2) compute target color distances using the W3C/AERT color and brightness difference equations; (3) solve an optimization problem (minimizing a modified Sammon error measure) to find a recoloring that preserves perceptual distances between colors for the CVD viewer while keeping mapped colors within the display gamut; and (4) interpolate the corrected colors across all remaining colors using inverse-distance weighted Shepard interpolation.
Key findings
The algorithm was demonstrated on protanopic, deuteranopic, and tritanopic simulations using a photograph of colored pencils — a challenging test case with many similar hues. For protanopes, the algorithm successfully mapped the confusable red-green variation to distinguishable blue-yellow and light-dark differences. For deuteranopes, a similar red-green to blue-yellow mapping was achieved. For tritanopes, the blue-yellow confusion was remapped to red-green and light-dark variation. The optimization converged reliably, with mapping error decreasing by five orders of magnitude over a couple hundred iterations. A notable edge case emerged with black and white: without special constraints, the optimizer could map black to white and vice versa (semantically puzzling but mathematically valid for preserving color distances). This was addressed by adding a penalty term for special colors. The algorithm maps directly into the output device gamut without requiring post-hoc corrections like clipping or scaling, and uses the W3C color evaluation criteria as its distance measure — the first recoloring algorithm to do so. Current processing takes a few minutes for 25 key colors on a 2.0 GHz processor in Matlab.
Relevance
This paper presents a mathematically rigorous approach to a problem that affects a surprisingly large population — color vision deficiency is one of the most common visual impairments, yet color-dependent information design remains widespread. The use of W3C accessibility evaluation criteria as the optimization target is elegant because it directly connects the recoloring to established accessibility standards rather than arbitrary perceptual measures. For accessibility practitioners, this work highlights that color accessibility is not just about choosing "safe" color palettes at design time (pre-publication methods) but can also be addressed through post-publication processing that adapts existing content for specific CVD types. The algorithm's approach of preserving perceptual distances rather than simply shifting hues is important because it maintains the information structure of the original — the viewer perceives the same relationships between colors even though the specific colors are different. While real-time processing was not yet feasible in 2006, modern hardware could enable browser-based implementations of this approach, providing personalized color correction based on a user's specific type of CVD.
Tags: color vision deficiency · color blindness · dichromacy · color remapping · color contrast · visual accessibility · image processing · optimization
Standards referenced: WCAG 1.0