In my Canon 60D, there's a setting between Adobe RGB and sRGB. What's the difference and what should I prefer when shooting to RAW ?
sRGB is the most common color-space used anywhere.
AdobeRGB is a wider color-space which can represent more colors but with less precision when looking at the colors which overlap sRGB.
Neither color-space really matters when shooting RAW.
The embedded thumbnail or preview within a RAW file may be affected by the choice of color-space though, so keeping sRGB selected is usually the most sensible thing to do.
sRGB is the default color space, which is way that RGB values translate to actual colors. In RGB, (255,0,0) means "full red", but what exact color is this going to be usually depends on the display or printer that's used for the output. As this is undesirable for professional purposes, people employ color management to ensure their idea of "red" will display the same way everywhere.
Now, apart from the sRGB, there is Adobe RGB, which has slightly bigger gamut (captures more colors) especially in the greens. If you want to make use of these extra colors, you need to employ color management workflow, and make sure the printer you use is able to process Adobe RGB (and has an appropriate ICC profile to translate the color to what the device is able to print), and you also need to have a color profile for your monitor to adjust its output to match what you're going to see on the printer.
Of course, as export to RGB file is done after RAW conversion, the camera setting does not matter when you're shooting RAW, as you can change it afterwards.
The key thing is that unless you're doing color management, you should keep it to default sRGB, because otherwise you're display will interpret the image in its own "probably-slightly-off-sRGB" way and you will get washed out colors.
Color spaces solve two problems related to color information:
- imaging sensors can capture a lot more data than can be displayed by any media or device - the data is therefore useless when transferring and storing images; color space defines the range of data that is preserved
- color space standardizes what each color should look like, so the displaying/printing device does not need to know specifics of imaging sensor capabilities and response curve in order to accurately display pixel for which color channel intensities were measured "45% red, 15% green, 63% blue".
The main difference between AdobeRGB and sRGB is the range of colors an image can cover. Since sRGB has to cover smaller range of colors, colors can be afforded to represent with more precision in that smaller range when using same number of bits to store data.
Here's a little simplified* illustration of this. The first, red row, shows the raw pixel color channel intensity value (4 bits, giving 16 different values); the second, yellow line, shows 4-bit colors of a wide gamut color space (say, AdobeRGB) and the third line shows 4-bit colors of a narrow gamut color space (say, sRGB):
The difference of color spaces will become even more clear if they use less bits than input data, say 3 bits (giving 8 values) for 4-bit input data:
It should be clear from this chart, that storing an image in one color space, and then converting to another, is a lossy operation. There are only three values in second row color space that have to mapped to the 6 useful values of third line color space. Looking at either range or precision of both color spaces, we get the worse one of both of them after conversion from one to another. Also, since some tones don't have exact value in the other color space, the colors will have to change slightly.
For these reasons, you should select target color space when your raw image is converted into a fewer-bit format, such as JPEG - depending on your workflow in camera or in conversion software. When you are working with lots of bits, precision won't be a problem and you could use the widest gamut that your display device allows.
So, what should be the target color space? That depends on output media. On the web, sRGB is the safest choice. For printing, AdobeRGB may or may not give better results - depending on limitations and expectations of printing system.
* - in reality, more bits per channel are used, the mapping is non-linear and may depend on values from other color channels. Proportions of color spaces are illustrational only.
It does not matter what you set in your camera if you shoot raw.
(What matters is how you configure the software that you use for raw conversion.)
sRGB is best for images view on screen, Adobe RGB is best for printing.
These are color spaces, which affect the rendering of an image on the mediums.
I found that sRGB will give you the most consistent result for screens.
NB! No screens will ever give you the exact same result (even if they have been calibrated) color management can be quite complex to master.
sRGB was created by Microsoft many years ago to address the limitations of displays. The variations among displays, color depth, and gamut were far greater then than they are with todays display devices. The "s" in sRGB reputedly stands for "standard", which implies that displays that render sRGB relatively well are in conformance with the standard. Many call this "silly" or "stupid" RGB.
To take the deficiencies of displays gone by into account, the color space is artificially constrained to be far narrower than what can be rendered on a contemporary display. It has the secondary side-effect of this: Once you committed to sRGB by writing the file to a standard format (not a RAW format), you throw away the information that would be out of the sRGB gamut. That gives you less flexibility for after-the-fact corrections should you wish to do color corrections.
Specifically addressing the question on the 60D, if you are shooting RAW, the color space you choose is only provided as a courtesy to your RAW image processor. You normally can override this choice and switch to Adobe RGB or ProPhoto RGB if that's your preferred working color space. However, and this is crucial, if you are shooting JPEG, you have no choice -- the data was lost once the camera did the JPEG conversion. Additionally, when shooting RAW that "courtesy" imposes one extra decision on you: To use a color space other than the one the camera recommended. You can forget to override it and be in the same position of working with a small-gamut color space.
So the question is: When would you use sRGB? When shooting photographs, the answer is "seldom". The only common use for sRGB in this era is for Internet viewing. You may not rely on Web browsers to honor and correctly interpret color space information embedded in a file. So, if you really want to blast your images onto the Web fast and can't be bothered doing color space conversions, then shoot sRGB JPEGs and that's the end of it.
If you have any possible other use, including post-processing, sRGB is not a recommended color space.
The profile you choose in camera is used if you are shooting in jpg mode and it is also used in the preview jpg that is created when shooting RAW. That preview jpg is what your camera uses to display the histogram in your camera. Besides that, the RAW file itself does not use the profile setting.
sRGB is used for screen display and many commercial printers. It has a smaller color gamut than Adobe RBG.
Adobe RGB has a larger color gamut but that only really matters if you are using the file with an output device that can reproduce that larger gamut. A high end monitor or many inkjets can take advantage of the larger color gamut.
When in doubt it's better to use the larger gamut, Adobe RGB, and convert to sRGB later. You can always convert to a smaller profile but you cannot add data back once it's gone.