Slashdot Log In
Linux Color Calibration?
Posted by
Cliff
on Mon Nov 20, 2000 11:50 AM
from the hue-red-light-green-saturation-blue dept.
from the hue-red-light-green-saturation-blue dept.
eweaver asks: "Windows has built-in color matching modules like ICM and sRBG, and 3rd-party solutions like Colorific and ColorBlind, but what is the Linux/XFree86 equivalent? Caldera Graphics seems to have some sort of solution, but I don't think it's universal, it seems to work only in their programs. What can I do so that the colors I see in all my Linux graphics apps (mainly GIMP and Blender) are accurate (adjusted for gamma, white point, lighting, etc.)?"
This discussion has been archived.
No new comments can be posted.
Linux Color Calibration?
|
Log In/Create an Account
| Top
| 140 comments
(Spill at 50!) | Index Only
| Search Discussion
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
(1)
|
2
(1)
|
2
It's My Understanding.. (Score:3)
Re:Leave color calibration to desktop publishers. (Score:3)
It's probably a desktop publisher that's asking the question! If Linux advocates want it to be accepted past its current geeky bounds, it is going to have to start incorporating features used by people from other walks of life.
Herbie J.
Color calibration (Score:4)
XRainbow (Score:3)
Re:It's My Understanding.. (Score:4)
Well, in the design world what's really important is that the monitor output matches the printed output; that's what color matching is all about.
Physical systems like Pantone were created so that, for spot colors anyway, we could all know that we were working with the same color because we referenced it with a number, and everyone who had a Pantone swatch book could look at an identical print. So we all have a common frame of reference. Of course, that only applies to spot colors and professional plate printing. With CMYK, even if your printer is Pantone calibrated, you still have to do the proofing stage to make sure the balance is right.
In the desktop-publishing/PC world, the final output is not done by a printing press with Pantone inks, it's done on a desktop inkjet. So specifying a Pantone color doesn't gain you anything, as printers vary wildly in there outputs. Hence the need for software (like Apple's ColorSync) that comes with a vast database of "color profiles" and can automatically map one device's capabilities to another (ie, your monitor -> your printer for prrofs, and then your monitor -> The Big Printer for production usage). It's not providing a common frame of reference, but relative mappings.
I hadn't heard of that Caldera Graphics product; it sounds interesting, but as it appears to have been written by ESL, I'm not sure I'm getting all the details accurately. Any Francophones out there?
Nate
Some info (Score:5)
The main thing that's lacking right now is integration. A lot of the pieces exist, but they're tied together yet. I plan on integrating Argyll into Ghostscript over the next few months, so that's likely to be a good start.
Interestingly enough, X had a very good start at a color management system (XCMS). However, as far as I know, nobody ever used this seriously, so it's yet another hunk of worthless junk hanging off the X server. This type of thing still "works", though:
xterm -fg CIEXYZ:0.371298/0.201443/0.059418
Of course, the chance of your monitor actually matching the CIE color is pretty close to nil.
In any case, there's quite a bit of work underway, and it's reasonable to expect that Linux will eventually have good color management. If you want it sooner rather than later, contribute to one of the projects!
Re:Emulation (Score:3)
As for the question of "why calibrate": it's mostly for publication purposes. When you're doing up an Add that's going to get 1 Million Dead Tree copies, it's worth spending the time and money to make sure that the soft blue hue isn't going to come out light navy (worst case).
For stuff that's going to get 1 million Dead Electron (Video) impressions, there's no way to make sure that the color on your screen is going to be seen exactly the same on another screen. On the other hand, if you have a (reasonably) well calibrated screen, there's at least some hope that things won't be as far out on average.
Example: If you're calibrated good, and I'm dark, your work will seem no worse than most other good images. On the other hand: If you're calibrated light and I'm calibrated dark, your image may still stand out as noticibly bad on my (already improperly calibrated) video screen.
If you're the only person who's going to see your graphics work, then calibration isn't terribly necessary. On the other hand, simple calibration will make it easier to match stuff from your scanner and it's usually nice to know that you're seeing an image in somewhat the same colors as was intended by the artist that created it.
`ø,,ø`ø,,ø!
Actually X can do it all! (Score:5)
As I posted below [slashdot.org], the whole point of the color calibration stuff in X is it can handle color in a device-independent way by using CCCs (Color Conversion Contexts) to specify a display's color pecularities. Do your own monitor color calibration and simply load the calibration data onto your Xserver using xcmsdb. Once you've done that your example of specifying a device-independent foreground color in xterm using the CIE XYZ color space would give a properly calibrated color on your monitor. That's pretty useful. Your criticism of color management in X is inaccurate and misleading because you don't understand how to use it properly.
As a footnote, doing an accurate color calibration of a monitor, requires expensive test equipment like a tele-spectrophotometer.
Re:Emulation (Score:3)
You really like to talk about things of which you know nothing, don't you?
Try using the Gimp to create a banner... use some True-Type fonts (which, by the way, work fine with older versions of X as long as you have a font server that supports them, like xfstt). OK, use the text tool, type in your message, press OK.
Oh look! Those letters in the image are antialiased! Gee, what a suprise, and here I was thinking that buttfucker2000 knew his ass from a hole in the ground.
Look, dipshit (and I wouldn't be so rude if you weren't obviously either a liar or a parrot), X can't antialias fonts that it draws directly (because the X protocol treats fonts as a 1-bit mask), but any application can take the task unto itself and antialias whatever the hell it wants to.
"Free your mind and your ass will follow"
Look for the Union label (Score:4)
Color Calibration fun... (Score:4)
The idea behind color profiling is that each device you use, input or output, has a profile. This profile allows you to take an image from the device specific color space to a neutral color space, such as XYZ or CIE Lab. Some devices come with profiles from the manufacturer, but if you want to get serious about color profiling, you must create your own profile.
One way to create a profile for a monitor is to buy a program that profiles your monitor using a colorimeter that you attach to your screen. For a printer, you can print out a series of color swatches and then scan in all of the color swatches with a colorimeter. (In short, a colorimeter is a very accurate color scanner.)
For example, say your monitor always has a bluish tint. When you profile your monitor, the colorimeter will "see" that more blue is always coming out of your monitor. The ICC profile that gets generated will have values that de-emphasize blue. Thus, when you install your ICC profile on Windows 98/2K or MacOS, the operating system will apply this profile to all images and colors generated from the screen and a more accurate color will be generated.
Printers are also interesting with respect to ICC profiles. Color printers are generally CMYK devices--not RGB devices. CMYK stands for the ink colors Cyan, Magenta, Yellow, blacK. ICC profiles for printers will convert to and from CMYK colors.
Color can be a tricky issue--I'm really glossing over a lot of important details. If people are interested in this issue, then can send me mail and I will try to dig up a reference or two.
Of course, what would a Slashdot posting be without some unsolicited advice? Most monitors come from the shop with the brightness all the way up and the color temperature at 9000 degrees Kelvin. This "looks good" the same way loud music "sounds better." Set your monitor to 6500 Kelvin or 5000 Kelvin and turn down the brightness significantly. Your monitor may seem more brown or yellow, but in reality it is a more neutral white. After time, your eyes will adjust to the newer whites and you will be happier. Also, if you turn down the brightness on your monitor, it will last longer!
Java has excellent color management (Score:3)
See: http://java.sun.com/produc ts/ java-media/2D/index.html [sun.com]
-- michael
From long experience .... (Score:3)
The problem is that you can't satisfy everyone - even though you might be able to get it close to 'right' for one person everyone's eyes are different - the numbers of rods and cones vary widely enough that the way we perceive colors from phosphors and reflected from paper is different enough from person to person that you can't get it right, just close (for example at one extreme is the 10% of the male population who are red-green color blind).
Another example of this is the way that ambient light plays in our perceptions - colors can look totally different in the morning than in the evening in the same room because the color composition of the ambient light changes - people in publishing who are serious about this sort of stuff have 'white rooms' with known lighting and no outside windows to look at stuff in.
In my experience this area is enough of a sinkhole that you can/will get lots of competing schemes for color matching with lots of area for arguing - IMHO any color calibration system that doesn't calibrate for the individual user's eyes is worthless - but at the same any system that does so is so subjective that it can't be reliably measured.
Oh yeah - and look very closely at any system that performs liner math (multiplication, matrix ops etc) on gama corrected (logrithmic) pixels [hint almost any HDTV system that does picture scaling does this]
Re:How about color _separations_? (Score:3)
dvips image -h aurora.pro -h magenta.pro -o image-magenta.ps
Raph, interesting patent stuff there... (Score:3)
The Schriber patent (US4500919) seems extremely overbroad- may or may not be valid and seems to describe something slightly different than what we're looking for in a calibration system upon a detailed reading of what is exactly claimed in the patent. May apply, may not. Expires sometime in 2005 in any case.
The Walowit patent (US4941038) should probably be overturned- I've some nagging prior art suspicions on this one as it simply describes a system that does RGB to CMY conversion, adjusting for gamut differences in the original image and the target environ. (Now, where do I remember seeing code for that... Perhaps this one should be submitted for a bounty.)
The Arazi patent (US5212546) looks to be obvious (verging on common sense) and I'd think that it'd be covered by prior art anyhow (Wasn't Kodak or Fuji doing this sort of thing years ago, prior to the patent grant?)
(By the way, you might want to change the URLs to refer to 'http://www.delphion.com/' instead of 'http://www.patents.ibm.com/' as IBM's basically given the services to the Delphion IP Network...)
there is no "accurate" (Score:3)
So, what should you do? Often, you can work reasonably well without more than a rough calibration. In fact, most critical color correction can be done completely in black and white--matching known colors (logos, skin color, neutrals) correctly is actually better and much more accurately done numerically than "by eye". Once you have established those anchor colors, you have a visual context, and you can fiddle with the other, less specific colors around them by eye without worrying too much about monitor calibration.
For on-line applications, you need to worry even less: none of your colors will display "accurately" on most machines anyway. You simply have to make sure that your images look OK on "average" PCs. While having a consistent starting point for designing those kinds of images is kind of nice, most good graphics cards and good monitors are probably going to be "in the ballpark" if they are reasonably well set up.
Maybe you really do need calibration for some of your applications; I have occasionally needed it for some really obscure work. But I think in many cases people want calibration for all the wrong reasons: for print work, calibration isn't accurate enough, and for on-line work, it doesn't help you much.
Re:Color calibration pisses me off (Score:3)
pngcrush -replace_gamma
If pngcrush isn't already on your system you can get it from
pmt.sourceforge.net [sourceforge.net]
gcms (Score:3)