GNOME Bugzilla – Bug 608961
Make GIMP color management behavior reasonable
Last modified: 2015-10-21 21:59:40 UTC
Created attachment 152991 [details] File color management spec v1 This was discussed in the gimp-developer thread "Minimal color management strategy for GIMP 2.8". There are a number of related bugs open, but I wanted one canonical place to post updates and patches. I have written up the spec as it exists so far and attached it. I will be working to implement this spec for the GIMP 2.8 timeframe. Bugzilla powers that be: please assign this bug to me.
Thanks for driving this matter If it's OK I'd rather keep it assigned to GIMP Bugs, it's better to have bugs owned by everyone than a specific person
Created attachment 155258 [details] [review] Add sRGBv2 profiles to the GIMP distribution The distribution terms for the profiles is as follows. I believe this allows us to distributed them with GIMP. Terms of use To anyone who acknowledges that the files "sRGB_IEC61966-2-1_no_black_scaling.icc" and "sRGB_IEC61966-2-1_black scaled.icc" are provided "AS IS" WITH NO EXPRESS OR IMPLIED WARRANTY, permission to use, copy and distribute these file for any purpose is hereby granted without fee, provided that the files are not changed including the ICC copyright notice tag, and that the name of ICC shall not be used in advertising or publicity pertaining to distribution of the software without specific, written prior permission. ICC makes no representations about the suitability of this software for any purpose.
I am afraid that this license is not compatible with the GPL. It doesn't give the user the right to modify the profile. I am not a lawyer though and may be interpreting this wrongly. Why do we need to include these files at all? lcms has a builtin sRGB profile. Isn't that sufficient for our needs?
Review of attachment 155258 [details] [review]: Looks fine to me, except we need line breaks in COPYING.
Doesn't FSF have people we can ask about the licence/legal aspects of this? Could you contact them for advice Omari?
Any updates here? Are you still aiming for 2.8?
Apparently not.
The only concrete topic discussed in this bug report is whether to add the color.org V2 sRGB profile variants to be distributed with Gimp. I'm not a lawyer, but I'm 99% certain the color.org licence is incompatible with open source in general and also with the requirements of specific Linux distributions (some of which take a harder line than others). There is not only the actual profile licence, but also the "shrink-wrap" notice you have to agree with before you can even access the profiles (http://color.org/resourcemain2.xalter). The bigger question is whether Gimp should take on the task of distributing any ICC profiles at all. The situation might have been different in 2010, but in 2013 there are existing open source profile packs that provide high quality, open-source-compatible ICC profiles, including the lcms V4 sRGB profile, the argyllcms V2 sRGB profile, and a nice assortment of other RGB working space profiles. If there is ever a need for additional color space profiles, it would seem to make more sense to ask one of the profile pack maintainers to add that profile to a profiles pack for everyone to use, instead of taking on the task of maintaining a separate "Gimp" set of profiles. If an individual user wants the color.org profiles, they are always free to download them directly themselves. It seems to me that this bug could be closed.
Created attachment 267191 [details] sample code for making ICC profiles for Gimp
Having taken a close look at the available floss ICC profiles (http://ninedegreesbelow.com/photography/linux-icc-profiles.html), perhaps GIMP really should distribute its own profiles: 1. A profile's specifications give unadapted primaries and a source white point. Existing floss profiles often are made using (probably) the right primaries plus whatever source white point seemed reasonable to the profile maker, resulting in a bunch of variants many of which were made using the wrong source white point, so the resulting adapted primaries are slightly off. 2. Even if existing floss profiles were perfect, not every Linux GIMP user has access to all the profile packs, and Windows and MacIntosh GIMP users don't have access to Linux profile packs. 3. Linear gamma image editing requires linear gamma ICC profiles when opening linear gamma image files (which can be in any color space and not just linear gamma sRGB). But the available profile packs don't include linear gamma profiles. Also, there may be other tone response curve variants of the standard RGB working spaces (eg perceptually uniform, bt-709, and the sRGB tone response curves) that GIMP users might find useful, but again, the available profile packs so far don't include profiles with alternate tone response curves. I attached code that uses LCMS2 to make five floss profiles: sRGB, Adobe-compatible, WideGamut, ProPhoto, and the AllColorsRGB, which is close to but very slightly larger than the new ACES color space. The file names and profile descriptions are tentative suggestions only. And the source code copyright needs to be changed. I don't think the WideGamut and ProPhoto profile names are trademark-encumbered, but I'm not a lawyer. "Clay" (the name Argyllcms uses for Adobe-compatible), "Wide", and "Large" (the name RawTherapee uses for ProPhoto) might be suitable substitutes. The code as it is isn't a patch, just profile-making code. It only makes five V2 profiles, each with its standard tone response curve. If there is an interest in distributing RGB working space profiles with Gimp, I can add other profiles as requested by users, each with tone reponse curve variations (linear gamma sRGB, linear gamma ProPhoto, etc), in V4 as well as V2 versions.
Elle and I have been having a long email exchange about CM and colour profiles, and I have to say that I am in full agreement with this proposal (not least because it would allow the patch I posted against Bug 492048 to be better preconfigured). It is usually quite easy to find multiple versions of even sRGB that are NOT standard or identical. For other colour spaces the problem is also present (although usually not quite as many variations). There are also multiple conflicting locations for ICC colour profiles. As suggested by Elle, perhaps '/usr/share/color/icc/gimp' might be an idea? As I posted in another bug report, this would also simplify things, in that there would be fewer colour profiles to scroll through when searching for the correct profile to use. And - with fewer options to choose from - probably a greater chance of correctly choosing the right profile. In my opinion, with the possible exception of AdobeRGB1998, the five profiles listed above should be sufficient for almost all possible uses. And personally I would be happy to use ClayRGB1998 for *most* uses (with the possible exception of print shops).
If Gimp were to install its own profiles in /usr/share/color/icc/gimp, that would only apply to Linux installations. It was just a suggestion. Another possibility would be in a folder alongside the brushes, plugins, etc folders. I don't see how Gimp supplying ICC profiles would mean fewer profiles to scroll through. It would actually be more profiles to scroll through, unless Gimp only allowed the user to use profiles in one directory. Which doesn't seem like a good idea because it would force people to copy the profiles they want to use over to the Gimp directory. A good naming scheme would make it easy for the user to pick out which profiles were provided by Gimp. If a Gimp user feels the need for AdobeRGB1998 as supplied by Adobe, they can get it from Adobe. Gimp can't supply that profile. It's not floss. As far as the five profiles in the code that I attached, that was just to show sample code. Everyone has their own preferred ICC profiles to use. People have different workflows. If Gimp were to supply ICC profiles, it would be nice to ask Gimp users which profiles they actually use, and then make an effort to supply those profiles.
I put together a sample ICC profile pack, which can be downloaded here: http://ninedegreesbelow.com/gimpgit/gimp-icc-profiles.html It has several RGB working space profiles plus Gray, LAB, and XYZ.
I think color management now behaves pretty reasonable in git master. Also this bug is too generic, we have many other more detailed bugs about color management.