What is the purpose of embedding a color profile when saving an image?
I am using RawTherapee to process images. This program (and I suspect many others) has an option called "Working Profile", which you can use to adjust how the image is displayed; and an other called "Output Profile", which is the profile embedded into the image (this functionality is better explained here).
I believe I understand how color management works, and I am thus very curious why on earth you would need to save a picture with a profile. Aren't profiles supposed to make sure the output is consistent across monitors/printers? If yes, then why would you need a separate complexity level at the point where you save the picture? Aren't the colors simply saved as RGB hexadecimal values, which are then rendered in accordance to your monitors profile?
Similarly, if I look at the properties of my profile (in the GNOME3 settings manager) I get two very confusing tabs. One of them showing an example image looks like "if opened with the profile", and an other one showing what the image looks like "if saved with the profile".
I believe both these examples illustrate this point I do not yet grasp. Again, why would anybody "save" an image with a color profile?
Profile is like a address in the space of color reproduction. The monitor profile tells you where your monitor is in this space. The image profile tells you where the image is in this space.
In order to navigate between these points and any other point you need to know:
- where you are
- where you want to go
- what to do with the bits that exceed this conversion (called intent)
So since intent is bundled with the CMS engine (Color Management Systm) settings of the image, you need to know two points the images profile and the target profile.
Why not encode all in sRGB?
It is not optimal it discards color resolution for certain images and is too small in size for others. Additionally certain devices are stupid so you need to optimize stuff for them. Some applications have better use for the space, assume you have a cat scan or xray, you can use this in specialized software, but still look this up in a normal browser for example. Win win. This and any future need not accounted for is why you want to store the profile with your image.
Assuming unprofiled images are sRGB is also a bit naive they may come from profile unaware sources. On your machine it probably means the monitor profile, or whatever profile the device should have. Besides what happens when we eventually deprecate sRGB as a general standard?
So if the image is not for web store the images defined working space and dont convert it until you need to if you want to retain as much data as possible.
PS color profiles are a very convoluted idea i would be careful saying you understand them. Maybe say you understand the general concept instead.