On 03/03/2014 10:52 AM, Tobias Ellinghaus wrote:
> Am Montag, 3. März 2014, 10:30:21 schrieb Rich:
>> I'm using a profiled display and I believed that Darktable was writing
>> sRGB jpegs, but it turns out it's writing "Darktable sRGB".
>>
>> When using one of these images on Blogger for my photography blog, the
>> colours go very wrong.
>>
>> I expect that Blogger is completely ignoring the colour profile and just
>> stripping it out, but the results are not good.
>>
>> I have added sRGB.icm (found a few copies of this on my system, although
>> annoyingly they're all slightly different - hmmm) into
>> ~/.config/darktable/color/out/ and re-saved my work using that.
>>
>> This appears to result in output that is truer to the version seen in
>> darktable.
>>
>> Does this sound like the right thing to do?
>>
>> Shouldn't DT ship with a standard
>> <http://www.color.org/srgbprofiles.xalter#v2> sRGB profile?

As Tobias notes, the color.org profiles have a non-free license. It 
permits use, copy, and distribution, but not modification.


>> What's the DT sRGB anyway?
>
> darktable creates its own copy of the profile for licensing reasons. Thus the
> fancy name. Same happens for our AdobeRGB profile. However, they are supposed
> to be identical to the "original" profiles (*), just the name differs.
>
> Tobias
>
> (*) this is true for AdobeRGB. For sRGB however there are a couple
> contradicting definitions of how the profile should look like. We use the most
> common/accepted version.

Darktable uses two different versions of sRGB - the built-in Linear 
Rec709 and the built-in sRGB Websafe.

Rec709 and sRGB are supposed to have the same primaries (just different 
tone response curves). However, the Darktable built-in Linear Rec709 and 
the Darktable built-in sRGB Websafe have slightly different primaries:

iccdump -v3 -trXYZ -tgXYZ -tbXYZ darktable-srgb-websafe.icm
0.436066, 0.222488, 0.013916
0.385147, 0.716873, 0.097076
0.143066, 0.060608, 0.714096

iccdump -v3 -trXYZ -tgXYZ -tbXYZ darktable-linearrec709.icc
0.435852, 0.222382, 0.013916
0.385330, 0.717041, 0.097137
0.143021, 0.060593, 0.713852

The Darktable linear Rec709 profile exactly match the primaries from the 
LittleCMS version 2 (LCMS2) built-in sRGB profile.

The Darktable sRGB websafe primaries exactly match the color.org V2 sRGB 
primaries.

Neither of the two Darktable built-in sRGB-like profiles exactly match 
the ArgyllCMS "sRGB.icm", which is located in the ArgyllCMS "ref" folder 
(as Rich noted, other profiles named "sRGB.icm" probably aren't the same 
as the ArgyllCMS sRGB.icm):

iccdump -v3 -trXYZ -tgXYZ -tbXYZ Argyll-v160-sRGB.icm
0.436035, 0.222443, 0.013901
0.385101, 0.716934, 0.097076
0.143066, 0.060623, 0.713928

The reason the ArgyllCMS and LMCS2/Darktable linear Rec 709 primaries 
are different is because the two profiles are made using different 
values for D65. The ArgyllCMS profile is made using the D65 value given 
in the sRGB specs. The LCMS2 profile is made using a Color Correlated 
Temperature definition of D65. I don't know why the LCMS2 profile isn't 
made using the D65 value given in the sRGB specs.

The ArgyllCMS and color.org sRGB primaries both are made using the D65 
white point values given in the sRGB color space specs. However, the 
color.org profile is made doing "something" different during the 
Bradford adaptation calculations. I haven't (yet) figured out what that 
"something" is.

I set up a spreadsheet and did the Bradford adaptation calculations by 
hand 
(http://ninedegreesbelow.com/photography/srgb-color-space-to-profile.html). 
The ArgyllCMS sRGB profile is closer to the calculated values than 
either the color.org version of sRGB or the LCMS2 version of sRGB.

The other difference between the ArgyllCMS sRGB profile and the other 
two versions of sRGB is that only the ArgyllCMS version is well-behaved, 
meaning that for R=G=B=1.0 (floating point), the equivalent CIELAB value 
is (100,0,0):

ArgyllCMS sRGB.icm:
xicclu -ir -pl -v0 sRGB-160.icm
1 1 1 -> 100.000000 0.000000 0.000000

color.org V2 sRGB:
xicclu -ir -pl -v0 sRGB_IEC61966-2-1_black_scaled.icc
1 1 1 -> 99.998820 0.018274 -0.016832

LCMS2 sRGB:
xicclu -ir -pl -v0 darktable-linearrec709.icc
1 1 1 -> 100.000590 -0.002543 0.001017

As far as the most common and accepted primaries for sRGB matrix 
profiles goes:

Proprietary software mostly use the color.org values.

Most open source image editing built-in sRGB profiles are actually the 
LCMS2 built-in sRGB.

I don't have Gimp 2.8 installed, but I will guess that Gimp 2.8 uses the 
LCMS2 built-in sRGB.

Gimp 2.9 from git uses the ArgyllCMS primaries because they produce a 
well-behaved ICC profile and because they are closer to the calculated 
sRGB primaries. In the interest of full disclosure, I'm the person who 
wrote the patch to make this happen.

If you *apply* in turn the color.org V2 sRGB (black scaled version), the 
LCMS2 built-in sRGB, and the ArgyllCMS sRGB.icm profiles to the same 
image, one after another, visually you won't see a difference.

If you assign one of these profiles and then *convert* the image to one 
of the other two profiles, the RGB values will change in the highlights, 
but only very slightly. You'd have to do some ridiculously strong 
saturation moves at high bit depths to actually see a color difference.


Cheers,

Elle Stone

--
http://ninedegreesbelow.com
Articles on color management and open source photography

------------------------------------------------------------------------------
Subversion Kills Productivity. Get off Subversion & Make the Move to Perforce.
With Perforce, you get hassle-free workflows. Merge that actually works. 
Faster operations. Version large binaries.  Built-in WAN optimization and the
freedom to use Git, Perforce or both. Make the move to Perforce.
http://pubads.g.doubleclick.net/gampad/clk?id=122218951&iu=/4140/ostg.clktrk
_______________________________________________
Darktable-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/darktable-users

Reply via email to