Zygomatic Color

The failure of Windows Color System's new feature


Categories: Blogs Tags: Perceptual Rendering Intent

A non-long-awaited feature

Do you remember Windows Vista? Windows 2000 was an epoch. Most people lived in the internet age of 1999 remember the first impression of Windows 2000, the atmosphere of the room, and the colleagues there. XP left a similar (but much weaker) impression. But Vista? The impression is vague for most people, I guess.

Windows Vista had a bunch of new features. Windows Aero, ClearType, Windows Presentation Foundation, Windows Search, UAC, BitLocker, IPv6, etc, etc. You might find the reason in the list why Windows Vista left a vague impression. They aren’t long-awaited features like preemptive multitasking.

Windows Color System (WCS) is one of such non-long-awaited features. It is a superset of existing Image Color Management (ICM). ICM reads ICC profile and does color space conversion. It is a same kind module of Adobe’s ACE, but ICM lacks many important features. WCS was a competitor of ACE, and much more thing. WCS was a competitor of ICC’s color management system, too.

“XML!” - Dilbert’s boss

WCS reads ICC profile, of course. In addition to that, WCS reads three kinds of profiles: CDMP, CAMP, GMMP. The trinity describes color space conversion like ICC profile. I don’t explain the details, but it is absolutely a fancy feature on paper. In reality, WCS is a catalogue of poor engineering and management.

Everyone who tries to create CDMP (it describes about device) immediately finds a critical problem. WCS is too slow to read CDMP. In the case of CMYK and 33 CLUT points (a bit large but common number), it requires several minutes even today’s PC. The cause is the wrong usage of XML. XML is good at interoperability, clarity of syntax, debugging easiness, popularity, and a lot. But XML is bad for large data. CMYK printing profile is large data. I can imagine how it went; Someone like Dilbert’s boss vociferated the buzzword “XML!” No one had serious interest in the feature, and no one found XML doesn’t have enough speed for the usage. You can still see the result of typical poor management in today’s Windows 10.

It is an enough reason to forget about the WCS trinity. But now you are satisfying your curiosity, aren’t you? So I’ll tell you another moral from WCS.

Do you need tons of formulas?

One of the WCS trinity, GMMP, specifies gamut mapping method. The GMMP page lengthy describes about BasicPhoto method, but I found preinstalled “Photo.gmmp” (you can find it in C:\Windows\System32\spool\drivers\color) adopts SGCK method which is criticized in the page. Is BasicPhoto method actually implemented? Aside that, the flaw of SGCK method (tone inversion) is easy to see in Figure 11 of the page. Must see.

Another method implemented in WCS is MinCD (minimum color difference). The flaw of MinCD is tone loss and tone jump around the tip edge of gamut. MinCD finds the closest point for out-of-gamut color. If gamut is a sphere, it will work flawlessly. In reality, gamut has a lot of tip edges. Out-of-gamut gradation often becomes a mosaic of flat colors. But this is what WCS have.

Why did Microsoft implement flawed methods, and leave unknown about better BasicPhoto method? No one had serious interest in the feature, I knew it.

The method of Zygomatic Color adopts? Sorry, color science is an art which makes you happy. A GMMP guy wrote tons of formulas. Any product should be delivered to the customers in 14 years from the shipment. Did the guy make you happy? I made an online service, not formulas. It will deliver the product for you in a half hour if you have a flatbed photo scanner. Please test it.