2
\$\begingroup\$

I've Googled, I've Bing-ed, I've even DuckDuckGo-ed, but I can't figure this out.

Here it is:

My monitor has its own color profile, currently "eyeball" calibrated but soon to be really calibrated.

However, each of my imaging editing programs, specifically RawTherapee and Affinity Photo, have color management settings within which one is supposed to set a (or keep the preset) "default" color profile. I note that in both, I can choose the monitor's profile from a drop-down list. However, the preset color profiles in the image editing programs are sRGB IEC61966 ones. I note too that if I'm not mistaken, they both "keep" the profile embedded in the image by the camera or assign a profile if the photo does not have one (the case for raws, no?).

To round out the information, my monitor is a pretty run of the mill Dell (IPS just the same) that covers the sRGB gamut but not Adobe or other wide gamuts. Because of this limitation, I also have my camera set to sRGB.

But my question is how do the color profiles of the editing programs interact with the "calibrated" color profile of the monitor? If the programs are--I don't know--assuming(?) a standard sRGB, how does my calibrated monitor come into play? Or is it the other way around: If my calibrated monitor has control, what difference does the editing program's color profile make? Does one "override" the other??

I hope that all makes sense! The problem of course being that I'm asking about something that doesn't make sense for me, so...

Anyhoo, thanks in advance for any clarifications that you can share with me!

EDIT:

So just a quick thanks again to all those who have responded, with a special shoutout to LightBender for his great follow-up to my questions. But it's the synthesis of all the contributions that has helped clear up this point for me.

The big take home being that the monitor profile doesn't really "interact" with the image editing software; its role is more so corrective, so that the colors on the screen are as true as possible to the rgb values mapped in the color space (sRGB in my case).

And especially, you don't use the monitor profile as a working space in the editing software!

If I can, I would add one follow-up question: Do I understand correctly that my camera assigns a color space to jpegs, but not to raws?

Again, thanks to all (and in advance for this last question)!

\$\endgroup\$
1
  • \$\begingroup\$ You are correct on your last assumption. Raw files, as the name implies, records the raw values captured from sensor. This will contain the raw reads of each sensel on the chip. On all the the very highest end multi-sensor cameras, this will be values recorded through a Bayer Filter, so it's not actually an RGB image yet. The color space will be used to guide the conversion of those values to RGB by either the camera's software or a desktop application. \$\endgroup\$ Jan 9, 2019 at 19:45

3 Answers 3

2
\$\begingroup\$

Standard color profiles are kind of like units on a blueprint. RGB images store an integer value for each of the red, green, and blue channels. These values don't really mean anything without some kind of reference.

If I told you I have a box that is 8 x 8.5 x 40, you can construct a relative concept of the boxes shape, but without units, you don't know if it's small enough to hold in your hands or the size of a shipping container.

Color standards work in a similar way, by mapping those relative values into a visual gamut. sRGB is one range of color, AdobeRGB1998 is another, but both can be represented in the same raw values.

Monitor and printer profiles serve a different purpose. To extend the metaphor a monitor or printer's color reproduction is more like building something with a piece of string as your ruler. It's about the right length, but it's not perfect. It also changes over time as the components age, like a string stretching over time, or contracting when it gets wet.

A monitor profile is designed to compensate for these variables. The diagram says 1 meter, and I have a string that is supposed to be a meter long. It will be close. But if I measure the string and discover it's actually 101cm long, I need to adjust my measurements accordingly or my box is too big.

Profiles are bound to the file, not the software. The default profile is just a preference that will be used for all new files, files that do not contain a profile, and to display a warning if you open a file that isn't in the same color space as your workflow.

If your hypothetical pixel value is <30,40,50> in sRGB, it only has a true meaning because it's in sRGB because sRGB is a map from a pixel value to an exactly color. sRGB then works as a standard unit of measure throughout the process. In a camera, it is used to encode the real analog signal from a sensor to an accurate pixel value.

When it sends it to the video card, the instruction is not "display <30,40,50>" which is a code with no absolute value (it will just assume something). Instead it says "display <30,40,50> in sRGB" which is a very precise measurement. Then the graphics card looks at its monitor profile and says "they want <30,40,50> sRGB, but the monitor won't display the right color if I send it <30,40,50>, to get the right color, the profiles says to send <31,39,52>".

You never want to use a monitor or printer profile as the profile in the image itself. Then entire system works because, no matter what standard profile you use, you have a solid point of reference. To continue our analogy. It would be much easier to build a box with the length 7.6cm than a box the length of a pencil that has been sharpened, had 400 words written, sharpened again, wrote 100 more words, then the lead broke, sharpened again, and drew 3 flowers and a duck.

With a standard, every element of the process can be calibrated to the same reference without ever having to know what and how many other elements are in the process.

\$\endgroup\$
7
  • \$\begingroup\$ I like the analogy and have a question about it. Is the reference in regard to units like using inches today or inches in the early 19th century (when Britain, the US, and other places all used some form of "inches" but none of them were exactly the same measurement)? As in, do different manufacturers/brands tweak the specs at any point? \$\endgroup\$
    – OnBreak.
    Jan 8, 2019 at 18:55
  • \$\begingroup\$ @Hueco Theoretically, no, provided you're dealing with an ICC profile. Standard profiles are published by the International Color Consortium. Several of the standards have been through various adjustments over the years, but they are all still versioned (sRGB is currently at version 2.1 I believe). That doesn't guarantee anything, but most manufactures will make use of one of the libraries that the ICC has reviewed for accuracy because it's much easier than writing the whole thing yourself. \$\endgroup\$ Jan 8, 2019 at 19:16
  • \$\begingroup\$ @KLE-France Well, it starts further back than that. Your camera accepts a specific analog value based on how much light hit that sensel. This absolute value of light captured will then be compared to the gamut you're using for measurement, be that sRGB or Adobe RGB, and is then translated to the appropriate RGB values for that color. \$\endgroup\$ Jan 8, 2019 at 20:21
  • \$\begingroup\$ Sorry LightBender, I'm still getting use to these comments. I'll paste my full thought in a next comment. If I can. \$\endgroup\$
    – KLE-France
    Jan 8, 2019 at 20:44
  • \$\begingroup\$ So, I take a hypothetical 1 pixel picture for respective rbg values of 30, 40 and 50. I open the picture in the program and it maps those values to e.g. the sRGB space. It then says to the monitor "display this.", which it does with a certain amount of precision (better with good calibration). Am I getting close? If so, what interest is there in setting the monitor's profile as the editing program's default color space, knowing that every monitor out there has its own profile? It would seem better to use a standard sRGB, since it's at least vaguely "the same" across different screens, no? \$\endgroup\$
    – KLE-France
    Jan 8, 2019 at 20:44
1
\$\begingroup\$

I like the old Color Management dialog box Corel Draw had some years ago, where you can see the interactions between devices. It is not exact, because it is from the program's point of view.

enter image description here

The monitor does not interact with the color profiles on the image or the program that is displaying it. Everyone assumes the other is making the job.

A monitor must be calibrated for that same reason because no one knows if he is doing its job correctly. The signal is sent, but there is no inspector to corroborate.

The monitor profile, in reality, is sent to the operating system and it gives instructions to the graphics card to adjust the values sent.


The editing program is managing internally the color profiles assuming the capture device and the intended monitor or output will handle them too.

Things get a bit more complicated when a print profile is added to the mix. For example Photoshop, CorelDraw, Indesign, etc, need to have also a print profile for the intended output. So you should know what is the intended output; offset sheeted print on uncoated paper, or coated one for example.

Then the program itself simulates internally how it more or less will look, making the colors dimmer, and it is also assuming the monitor is showing the colors correctly.

\$\endgroup\$
1
\$\begingroup\$

But my question is how do the color profiles of the editing programs interact with the "calibrated" color profile of the monitor?

In a sense, they don't interact at all. Each type of profile interacts with a set of numbers at different points in the chain from the capture device to the encoding device to the editing program to the display adapter to the monitor.

Think of color spaces like languages. If an image used the Adobe RGB color space and the output needs to be in standard sRGB, the numbers in the Adobe RGB file need to be translated to the different numbers in sRGB that represent the same colors (or the nearest one when a color in Adobe RGB is outside the sRGB gamut). Most of the colors in an image saved in Adobe RGB are usually colors that can be represented in sRGB, but the specific numbers for expressing specific common colors are different in each color space. So they need to be translated.

A monitor profile, on the other hand, is used to insure that an absolute numerical value in, for instance, sRGB is actually displayed as the color represented by that numerical value. If the image has an sRGB value of, say, (156,183,177) there is a specific color that represents. If the GPU sends a value of (156,183,177) to the monitor it should display that color, right?

Well, not exactly. Monitors output will vary over time. Sending the same number to a monitor can result in different colors being displayed under varying conditions, not the least of which is the monitors age. So we need to calibrate the monitor as closely as we can using tools such as the brightness, contrast, and RGB color controls on the monitor. Ideally we do this with the assistance of a measuring device that tells us when the output of the R, G, and B channels is balanced and the brightness and contrast match established standards. Then we use a measuring device to profile the monitor to measure what it is actually displaying when we send that (156,183,177) and many other numbers representing various colors at various brightnesses to it.

If our measurement reveals that an instruction to display (156,183,177) is actually causing the monitor to display the color represented by (159,181,168), then we need to attenuate the number in each of the color channels we send to the monitor. Eventually we find that by sending (154,185,188) to the monitor, we measure the desired color represented by (156,183,177) in the output. At least for now. Next month, when the monitor has aged a bit more, and the ambient temperature may be different, we may need to calculate new values to get the same result.

Automated profiling applications that use measuring devices will measure actual output for values ranging all the way from minimum to maximum brightness for the three color channels in various combinations, apply corrections, measure again, apply finer corrections, until the output is with in the application's allowed range of deviation. The table with the amount of correction needed for various values of R, G, and B are saved in a monitor profile and used by the GPU to convert the "pure" sRGB values coming from the application displaying the photo to the numbers needed to actually display those colors on the monitor (as of the last time the monitor was profiled).

So what does this mean for me when I am asked to select different color profiles?

It means I use a monitor color profile generated for my monitor as my monitor profile. It means I use a color space profile for the output of my image display application(s) that matches the color space capability of my GPU and display device(s). It does not mean I use the monitor profile I generated to be used as my monitor profile as the color profile for my imaging application. If I did that, the colors from my image display application will be improperly "corrected" by my imaging application and then the incorrect "corrected" colors will be corrected again in the same direction by my GPU when it sends them to the monitor. If I have done a calibration/profile of a capture device, such as a camera, I use a camera-specific camera profile as the camera profile applied when I import images from that specific camera into my image editing application's catalog. It means I use a printer/ink/paper profile for my printer so that the instructions sent to the printer causes the color represented by the sRGB number (156,183,177) to be printed on the paper.

Each type of profile does its thing at the different points the image goes through between capture and display of the image. It is important to use the correct type of profile for each step in the process.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.