TransWikia.com

Effect of assigning an ICC color profile at different stages

Photography Asked on June 15, 2021

What is the difference between applying/assigning an ICC color profile to an image for color correction

  1. During opening and processing the raw image in some studio software (e.g. Lightroom, CaptureOne), or
  2. after converting the image with no color correction into a tiff format, then opening it again to assign the ICC profile and save it again.

is it so that in the first case the correction is happening on the raw data level whereas in the second case the correction is happening on processed data?
does it have any impact?


[update]
basically, my workflow using seperate software looks something like

"Raw image >> 16-bit tiff color uncorrected >> applying ICC and save 16-bit tiff"

I would like to know how that will be any different from choosing the intended ICC profile from the very beginning when starting to convert the raw image from within a studio software, say, LightRoom


[update 2]

I have the following scenarios:

1- in which I have CaptureOne studio and I have prepared an ICC profile by a color target. So then I import the raw photos I am shooting into CaptureOne studio and choose from the drop-down menu the custom ICC profile I made earlier, hence it is -supposedly- correcting for the colors during the raw conversion when I save/export the corrected image in tiff format (so the raw data are being converted accordingly to suit the ICC profile color space/gamut, right?).

2- the second scenario or workflow I have as well is to use two different stand-alone software, namely Libraw/DCraw and LittleCMS, where the former is responsible for raw image conversion to a tiff format and the latter for applying an ICC profile.
in this scenario, the conversion must happen first from raw to non-raw so that LittleCMS is able to recognize and apply the color profile on it (and here where I am talking about an intermediate color uncorrected tiff image produced by Libraw/DCraw)

Please note that Libraw/DCraw offers during the conversion an output color space to be one of these (raw, sRGB, Adobe RGB, Wide, PhotoPro, XYZ, ACES) and I try to choose "raw", whatever it means, always.
(if somebody can clarify what raw does mean in this context when having a converted image "tiff" please do)

So if am understanding correctly what people are saying about how to use ICC profile optimally, then the second scenario is absurd and will not have the same color correction as in the first scenario, because when Libraw/DCraw has converted the raw image into "color uncorrected" image the raw data/numbers have already been assigned to a certain color space to operate in so they have some meaning, right?


[Update3]

Raw color space offered by Libraw/DCRaw "-o 0" (meaning dcraw doesn’t apply any input profiles or do any conversions to an output/working profile), the image you get will have a strong orange color cast. The color-cast can be color-balanced away to produce a normal-looking image. So it is a valid camera profile. But it’s a little weird.
<Source>


[Conclusion]

Thanks all for the answers.
So if I try to come up with sort of a conclusion based on what people are answering then:

it is clearly valid – and apparently what is happening in any image studio behind the curtains – to convert a raw image data into an intermediate lossless wide gamut tiff image (e.g. 16-bit in ProPhoto color space) and then to carry out some necessary operations/modifications on it if necessary and then converting to the intended ICC color profile to save the end result.

3 Answers

ICC profiles describe hardware. Specifically, how hardware interprets color data relative to a reference standard produced by the International Color Consortium (the ICC).

So an ICC color profile for a camera describes how to interpret the color data the camera produces.

An ICC profile for a monitor describes how it should interpret the color data it receives.

An ICC profile for a printer describes how it should interpret the color data it receives.

An ICC profile for a camera can reproduce built in jpeg profiles on RAW data. A monitor profile will correct for differences between its light output and the reference standard. An ICC profile for a printer will correct for differences in inks and papers.

A TIFF file can have embedded ICC information. This allows a printer to interpret the color data according to how it appeared on screen before applying its own ICC profile.

A color corrected workflow uses ICC profiles at each stage. However the camera step is often ignored and many images are never printed. So screen profiles calibrating monitors are often good enough.

Answered by Bob Macaroni McStevens on June 15, 2021

A raw file without a color/demosaicing profile applied cannot be displayed. At a minimum this will be the camera profile (LR's profiles, RawDigger's built in profiles, etc). And the color space (icc profile) will be whatever is being used by the program (ProPhoto for LR).

At this point both profiles are only applied and the raw data remains unchanged, but they are determining what you are seeing. And in order to change it into another non-raw format the file must be converted. You can convert to a tiff/jpeg/etc w/o including the color space tag; but that is not the same as not having converted the data into/using a specific color space (it just screws up color management).

Essentially; #1 must happen, and #2 cannot happen.

Answered by Steven Kersting on June 15, 2021

I fear there is a misunderstanding of the processes involved: color correction vs color conversion vs "applying/assigning an ICC". (The latter are usually understood as two different things; to avoid ambiguity, it's better to say about assigning a profile).

As others have mentioned, you can't really avoid color conversion when processing raw images. Raw images by definition carry sensor-specific information, and only the conversion software knows about it. It has to convert it to something that everyone else can understand.

To clear things up, let's consider a simple numeric example. (I will make the numbers up). Imagine our image is a single grayscale pixel.

Your camera takes a picture and reads 86% from the sensor. 86% of what? Of this specific sensor capabilities. A typical raw file will record this number as is (86%) and will be tagged with the camera/sensor model. The processing software (raw converter) will then need to have a large database of all sensors to interpret this file correctly. It's a big effort to collect and maintain such a database. Some more advanced "raw" files such as DNG embed the physical interpretation of the data (say, 100% = 1000 lux for our grayscale example), so that the file could be interpreted independently.

Now, no matter which raw converter you use, it will do some conversion in order to produce a valid output. All of them have a selection of the output color profile.

If you select ProPhoto, it might come up with, say, 82% ProPhoto. The attached "ProPhoto" part is as important as the number itself. It's like a physical unit.

If you select sRGB, it may produce 105% sRGB. Oops! We can't store more than 100%, so we'll have to clip and lose data. (I just threw that problem in for fun.) The output file will be: 100% sRGB.

If you select AdobeRGB, it could be 98% AdobeRGB.1 Fine.

If you select, as you do, "raw" - what will it be? I don't know. It doesn't make much sense. Perhaps, it will retain the original number 86%, but this is meaningless without knowing the reference, which is the sensor capabilities in this case. Perhaps the software could compile and attach a special color profile that describes the sensor, but I doubt it is the case, and it would be a large and non-standard profile.

From here, your second step is a bit confusing.

To "assign" a color profile (ICC) is to set the profile without converting the image. It's a technically trivial task like adding an email attachment. But it will likely produce an invalid result unless you know exactly what you are doing.

Say, if you take your converted file "82% ProPhoto" and assign it sRGB, you will get "82% sRGB". Physically, this is a very different thing, like 82 m vs 82 ft.

If you take your dubious converted "raw" "86%", you'll get "86% sRGB" - again a wrong result. (Remember "in truth" it's more than 100% sRGB!).

The only correct thing is to convert the file. Conversion happens from one color profile to another: it necessarily involves two profiles, input and output.

You can convert 82% ProPhoto --> 98% AdobeRGB, for example. Note this involves recalculation of each pixel of the file, and it is not as trivial as this one number. Naturally, when we work with limited resolution (read color depth), we want to minimise the number of conversions, and do them in the "smart" order, so your question is valid on a fundamental level.

If we take our "raw" "86%" file, how can we convert it to something? It may have the most accurate original "number", but we probably don't have the input profile! The file may still be tagged that it was taken by such-and-such camera (carried over from the original raw), but it's a non-trivial task to convert from sensor-specific colors to anything; for one, normal editing software don't have the database of all cameras. This is a job for the specialised raw converters.

So. I suggest there are two typical workflows, depending on the amount of post-raw editing.

  • For minimal editing or converting straight to final, select your desired final ICC right as the raw converter output. This will typically be one of the most common ones such as sRGB or AdobeRGB.

  • For more extensive editing, and particularly for images that contain saturated colors that may not fit in the "lowest common denominator" sRGB, use a reasonably wide ICC as the raw output.

    • One approach here is to use a compromise that is "ought to be enough for everyone" - AdobeRGB. It is wide enough to cover what can actually be displayed on modern monitors, and is convenient as a working profile: for example, it presents a reasonable histogram. And it is still OK for 8-bit depth.
    • Another approach is to use a super-wide profile such as ProPhoto. This will require at least 16-bit color depth.

    After converting to this intermediate profile from raw, do all the editing (necessarily with the properly color-managed software), and then convert to the final common profile. This is usually recommended as the last step before saving the final file. But if you don't do editing and just convert from raw, there is no point in such two-step process.


1 Of course, real sRGB and AdobeRGB have the same gray curve. It's just a made-up example to demonstrate the process. Consider it the green channel if you like.

Answered by Zeus on June 15, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP