Monday, May 10, 2010

LMS Daltonization Algorithm

Implementations:
  1. Matlab code from Analysis of Color Blindness
  2. Python code from AccessibleMoin
  3. Javascript code from Daltonize.org
  4. PixelBender code from Daltonize.org
Composed of four primary steps:
  1. Conversion of RGB coordinates into LMS, a color space suitable for calculating color blindness as it's represented by the three types of cones of the human eye, named after their sensitivity at wavelengths; Long (564–580nm), Medium (534–545nm) and Short (420–440nm). 

  2. Simulation of color blindness by reducing the colors along a dichromatic confusion line, the line parallel to the axis of the missing photoreceptor, to a single color.

  3. Compensation for color blindness by shifting wavelengths away from the portion of the spectrum invisible to the dichromat, towards the visible portion.

  4. Conversion of LMS coordinates back into RGB using the inverse of the RGB->LMS matrix.
LMS daltonization evolution:
  1. Analysis of Color Blindness
    Describes how to compensate for color-blindness by calculating the difference of the simulation, and then applying an error modification matrix.

  2. Intelligent modification for the daltonization process of digitized paintings
    Describes how to improve the error modification matrix by modifying it to be adaptive to each image; increasing CPU usage and providing better results.

  3. Intelligent Modification of Colors in Digitized Paintings for Enhancing the Visual Perception of Color-blind Viewers
    Optimizes the previous, reducing computational time through the use of color quantization, and caching.

2 comments:

  1. I dowloaded Chrome Daltonize - at least that is what my MAC window said.
    But I can't find it in my MAC
    I have Snow Leopard.
    Can you help?
    Is there a manual ?

    ReplyDelete
  2. Head over to the Chrome Extensions library, or click on this link:

    https://chrome.google.com/extensions/detail/efeladnkafmoofnbagdbfaieabmejfcf

    From there, click on the "Install!" button :)

    ReplyDelete