ColorMix.gif (1372 bytes) Color
A.  General Color Information  B.  Color Science/Theory   C.  Color and Computers

Also see
Delphi Graphics Color Page
  efg's Color Projects

C1. Color and Computers
C2. Color Quantization
C3. Palettes

C1. Color and Computers

[Foley96] James D. Foley, et al, Computer Graphics Principles and Practice (2nd edition in C), Addison Wesley, 1996.  Chapter 13:  Achromatic and Colored Light
[Fortner97] Brand Fortner and Theodore E. Meyer, Number by Colors:  A Guide to Using Color to Understand Technical Data, Springer-Verlag, 1997.   Excellent introduction to color.
[Jackson94] Richard Jackson, et al, Computer Generated Colour: A Practical Guide to Presentation and Display, John Wiley, 1994.
[Hunt1998] MeasuringColor
[Hunt2002] The Reproduction of Color
[Kang97] Henry R. Kang, Color Technology For Electronic Imaging Devices, SPIE Optical Engineering Press, 1997.
[Sangwine98] S.J. Sangwine and R.E.N. Horne (editors), 
The Colour Image Processing Handbook
, Chapman & Hill, 1998.

See bibliography section on General Color Info page or  Color Science page.

Calibration/ Color Management Also see:
- ICC Profiles
- ColorSync by Apple

Gernot Hoffman's Hardware Monitor Calibration 

Color Management 

Colour Calibration for Colour Reproduction

Correct monitor calibration

Displaymate Demos and Test Patterns

A Standard Default Color Space for the Internet - sRGB.
Proposal by Microsoft and HP.  A color space exclusively for CRT and onscreen display.
sRGB calls for a gamma setting of 2.20. While most PC systems use a gamma of 2.20, Macintoshes as a factor default have a gamma of 1.70 and SGI systems have a gamma of 1.80. This is why Macintosh images typically display much darker on PC systems.

Color Blindness Color Blindness on the General Color Info page
Color Conversion Color Conversion on the Color Science page
Color Correction Reiner Lenz, et al, "Spectral-Based Illumination Estimation and Color Correction",
Color Research and Application, Vol 24, No 2, April 1999, pp. 98-111
Color Fringing Eliminating color fringing (lateral chromatic aberration) 
Color Management Also see:
- Color Calibration
- ICC Profiles
- Integrated Color Management (ICM) by Microsoft
- ColorSync by Apple

Color Management: Current Practice and The Adoption of a New Standard


Mac OS X Developer Library:  ColorSync Manager Reference

Conversions See Color Conversion on Color Science/Theory page
Contrast Effective Color Contrast -- Designing for People with Partial Sight and Color Deficiencies

Paola Campadelli, "An Algorithm for the Selection of High-Contrast Color Sets,"
Color Research and Application, Vol 24, No 2, April 1999, pp. 132-138

Evaluating Performance Mei-Chun Lo et al, "Evaluating Colour Models' Performance between Monitor and Print Images,"
Color Research and Application, Vol 21, No 4, August 1996, pp. 277-291
False Colors Why Should Engineers and Scientists Be Worried About Color? discusses problems with "rainbow" colormap; nominal, ordinal, interval, ratio data; hue is not a good dimension for encoding magnitude information; luminance and saturation colormaps are better for representing continuous variations in data magnitude.


Accuweather's Precipitation Color Scales

Radar Reflectivity Scale


False Colors used by Intellicast Precipitation Maps

False Colors used by The Weather Channel

Color by Numbers -- Using Color to Visualize Data, [Fortner97, Chapter 11]

Gernot Hoffman's Balanced Palettes 

Section 4.6.3 Pseudo-color Image Processing, pp. 237-245
Digital Image Processing

Colour Rendering of Spectra  
Mitchell N Charity's comments about this article

Spectra -- wavelength to RGB, Chromaticity Diagram, Blackbody Radiation (excellent)
Dan Bruton's Color Science page,

Spectra Lab Report

FractInt (a program to create fractals) has a number of colors maps that may be useful for false color sets.   Try Jacco's Colormap files for users of Fractint.  I used Jacco's color maps in my Cycle Colors Lab Report.

Colour Ramping for Data Visualisation

Richard Franzen's UseNet Post explaining "PseudoGrey," which is used to encode more than 8 bits of greyscale within a 24-bit color image.  Using the technique, exactly 1,786 levels of grey can be encoded and decoded.   The PseudoGrey page.

FAQs See on FAQs General Color Info page
Gamma Correction

Gernot Hoffman's Hardware Monitor Calibration 

Monitor adjustment and gamma

Directions for How To Find Display Gamma 

What is Gamma Correction?

Charles Poynton's Gamma FAQ and Color FAQ, 

Gamma Correction (for Simulation).  Gamma correction is essential for good quality image generation. Angus examines the problems associated with gamma correction, focusing on why it is important to simulation in particular.   Dr. Dobb's Journal, Sept. 1999, pp. 30-37

Computer Graphics Principles and Practice, pp. 564-568

About Gamma Correction

sRGB Proposal (by Microsoft and HP).
A color space exclusively for CRT and onscreen display.

A Standard Default Color Space for the Internet - sRGB

Grays/Greys 8-bits allows 256 shades of gray.  In Windows in 256-color mode, 20 colors are "reserved" for display of icons, panels, etc., so only 236 colors are possible.

When using 24-bit color graphics, the shades of gray are represented by RGB(i, i, i), where i = 0..255.  This means there are only 256-shades of gray even with 24-bit color.

Perceptually Optimized Grayscales 

Richard Franzen's UseNet Post explaining "PseudoGrey," which is used to encode more than 8 bits of greyscale within a 24-bit color image.  Using the technique, exactly 1,786 levels of grey can be encoded and decoded.  The PseudoGrey page.

Halftones and Scanning Computer Graphics Principles and Practice, pp. 568-573

Digital Halftones, [Fortner97, pp. 160-171]]

ICC Profiles
Little CMS Color Engine
  • lcms is a CMM engine. Implements fast transforms between ICC profiles.
  • lcms is a library only for programmers.
  • lcms is FREE and does include SOURCE CODE.
  • lcms is a standalone engine. It doesn't rely on Windows ICM to work.

International Color Consortium (ICC)

Spec ICC.1:1998-09, File Format for Color Profiles (PDF file - 797 kb)

Document ICC.1A:1999-04, Addendum 2 to Spec. ICC.1:1998-09 (PDF file - 32 kb)

ICC C Header File

LCDs LCD chromaticity coordinates as a function of ambient temperature for CyberDisplay active-matrix LCD:

Neugebauer Equations "The Neugebauer equations are considered the basic physical model for printing systems."
Marc Mahy and Paul Delabastita, "Inversion of the Neugebauer Equations,"
Color Research and Application, Vol 21, No 6, pp. 404-411

Isaac Amidror and Roger D. Hersch, "Neugebauer and Demichel:  Dependence and Independence in n-Screen Superpositions for Colour Printing," Color Research and Application, Vol 25, No 4, August 2000, pp. 267-277


Phosphor Handbook   

Pseudo Colors See False Colors
"Red Eye" Automatic Red-Eye Detection and Correction in Digdital Photographs

An Efficient Automatic Redeye Detection and Correction Algorithm

Automatic Red-Eye Detection and Correction

John Carey's UseNet Post about "red eye" effect removal.
Nathan Stewart's UseNet Post commenting that John Carey's method does not work with brown eyes.

Towards automatic redeye effect removal, Pattern Recognition Letters, (24)11:  1767-1785, July 2003.


Color Reproduction -- The Basics

Reproducing Colors -- Technologies
[Fortner97, Chapter 8]

Restoration See Restoration on efg's Image Processing Algorithms page
Web Colors

"Color documents in the Internet era" from The Industrial Physicist 

The Web Wheel 

Which Color Palette?  Optimizing Web Graphics

Browser safe color palette

Color Matters

A Standard Default Color Space for the Internet - sRGB

Improved Color for the World Wide Web

Murphy's Colour Palette

ColorChart.gif (1060 bytes) efg's ColorCharts Lab Report shows how to display a color chart for comparison with a GretagMacbeth ColorChecker, or a chart of Netscape colors in hue order
White-Point Conversion pp. 17-21, Color Technology for Electronic Imaging Devices by Henry R. Kang

C2. Color Quantization

Balanced Palettes Gernot Hoffman's Balanced Palettes 
Color Image Quantization for Frame Buffer Display Paul Heckbert's thesis at MIT:
Color Multithresholding Multithresholding of color and gray-level images through a neural network technique
Color Reduction

Adaptive Color Reduction

Dithering See efg's Image Processing Reference Library Algorithms page
Gervautz-Purgathofer Octree Color Quantization algorithm

parrots.gif (3545 bytes)

"Wicked Code," by Jeff Prosise in the October 1997 Microsoft Systems Journal.

Also see efg's ShowDemoOne or ShowDemoMany Lab Reports  for  Delphi implementations of this code.

ImageMagick's color reduction algorithm 
NeuQuant: Fast High-Quality Image Quantization
Octree Color Quantization By I. Ashdown, C/C++ Users Journal, 13(3):31-44. Includes good article (in Microsoft Word) about algorithm. Code here shows how to reduce 24-bit bitmap to 8-bit bitmap using optimized palette. Also see Color Quantization Bibliography (above). 

Quantization and dithering Phil McRevis' UseNet Post with suggestion on best approach to reduce 24-bit pixels to 15-/16-bit pixels using Floyd-Steinberg dithering

C3. Palettes

Browser Safe Palette by Victor Engel
The no-dither Netscape color palette. 6 x 6 x 6 Color Palette (216 colors).

16x16x16 Color Palette (4096 Colors) 
[Note: This is a test for a non-windows environment. A Windows palette usually is limited to 236 colors, since 20 of the colors in 256-color mode are reserved.]

Combine pf4Bit Bitmaps
CombinePf4bit.gif (1266 bytes) efg's Combine pf4Bit Bitmaps Lab Report
Delphi-Specific Palette Information Color Section of efg's Delphi Graphics Algorithms Page
efg's Scanline Tech Note
FADEIN Sample App Uses Palette Animation & Identity Palettes
Microsoft Windows Palette Manager
Palette Animation Demo By Ray Lischner in Delphi.
Look for at
Palette Lab efg's Palette Lab Report
Palette Manager: How and Why It Does What It Does
Palettes Made Plain -- Demystifying Microsoft Windows Palettes By Ray Lischner in the July 1998 Delphi Informant, pp. 34-43. Excellent article explaining basics of Windows palettes. Shows gradient palette and palette animation demo.
Palettes Self-Study Module Microsoft's Palettes Self-Study Module:  "... many, if not most, devices are not palette capable.  Low-end devices such as VGA just can't display enough colors at one time to be palette "aware."  High-end devices can display so many colors that they don't need to be palette aware.  These factors severely limit the market for applications reliant on palette manipulation." 

PixelFormats and Palettes Siggraph '97 OpenGL and Window System Integration 
Simulating Palette Animation on Non-Palette Displays

SPECTRUM.gif (1072 bytes) efg's Cycle Colors Lab Report
Using Device-Independent Bitmaps and Palettes

Updated 6 Nov 2011
Since 10 Sept 1998