If I were to analyze or change an ICC profile embedded in an image, how should I proceed?

I'd also be glad to understand how an "end-user" is able to create these with a tristimulus colorimeter or a spectrophotometer and if/how this new profile can be added to a color capturing device (i.e. a camera).

My curiosity comes from images that were taken by a professional photographer. When I open them in GIMP, there's a pop-up referring "there is an embedded ICC profile" and if I "would like to convert the image to RGB (sRGB built-in)". I always convert all of them before using them, since the colors are slightly improved.

This is the image as it was provided by the photographer: No ICC

And this is after the embedded ICC profile was applied: With ICC

  • 3
    $\begingroup$ I would take littlecms.com for a spin $\endgroup$
    – joojaa
    Aug 10 '15 at 15:44
  • $\begingroup$ @joojaa This is great! They actually say: "lcms is a CMM engine; it implements fast transforms between ICC profiles". And by their trial of the professional solution, they provide a lot of options ("input for RGB, Gray, and CMYK spaces", "intents", "destination color space", etc.)... I never imagined that it could be so vast. $\endgroup$
    – Armfoot
    Aug 10 '15 at 16:07
  • $\begingroup$ The international color consortium defines 4 transformation intents for the colors that can not fit the gamut, read the tutorial. $\endgroup$
    – joojaa
    Aug 10 '15 at 16:08
  • $\begingroup$ @joojaa actually, in their own program they have a small description associated to all of the 7 types of "rendering intents" we can choose from when converting. $\endgroup$
    – Armfoot
    Aug 10 '15 at 16:13
  • $\begingroup$ hey allow for more intents and different white point/ blackpoint combinations. (adobe thus has 3*4 intents) $\endgroup$
    – joojaa
    Aug 10 '15 at 16:33

I realized that littlecms, suggested by joojaa in a comment above is very complete in dealing with the ICC profiles.

I did a few tests in their color translator program with different destination color spaces and the differences are great as you can see:





adobeRGB1998 (it seems it's the original color space)




And the most desirable results in my case are within the ProPhotoRGB color space:




All of the above were following an automatic rendering intent but other intents bring slight variations (samples applied together with linearProPhotoRGB destination color space):

Absolute Colorimetric

ICC absolute colorimetric

Legacy Unadapted Absolute Colorimetric


I also realized that GIMP was actually restoring the original profile (not the opposite as I thought, i.e. instead of applying an embedded ICC profile, it was taking it off) and with this littlecms, now it does seem much simpler to "translate" color spaces than I thought.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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