gimp/libgimpcolor
Jehan 12b2abce7c libgimpcolor: implement CIEDE2000 distance algorithm to compare colors.
This is used for the gimp_color_is_perceptually_identical() function,
because the Euclidean distance in LCH is extremely limited, if not wrong
in many cases. Indeed LCH is not perfectly perceptually uniform, and for
this exact reason, the CIE defined the specific Delta E algorithms.
Later versions are also based on LCH values, so my intuition to use it
for distance was on a good start, yet these algorithms were refined a
few times to allow for corrections in perceptual uniformity
imperfections.

This was in particular needed to verify if a color is out of a CMYK
space gamut. The idea is to compare the distance of the RGB (or other)
and the CMYK version, since we cannot just check if the CMYK color is
out of the [0; 1] range (it never is). Instead if both colors are
perceptually identical, then we consider that the RGB color was inside
the CMYK space gamut.
The naive algorithm was giving any (or nearly) color as out-of-gamut.
Now using CIEDE2000, I get a much nicer results.
2024-02-11 23:28:03 +01:00
..
gimpadaptivesupersample.c libgimpcolor: rudimentary docs for gimp_adaptive_supersample_area() 2019-08-09 15:24:49 +02:00
gimpadaptivesupersample.h libgimpcolor: Fix annotation in GimpRenderFunc 2021-12-28 21:23:42 +01:00
gimpbilinear.c Add GIR annotations to bilinear utils 2020-05-05 19:37:44 +02:00
gimpbilinear.h Change the license URL from http://www.gnu.org/licenses/ to https:// 2018-07-11 23:29:46 +02:00
gimpcairo.c app, libgimp, pdb, plug-ins: GimpText* using GeglColor. 2024-02-11 23:28:02 +01:00
gimpcairo.h app, libgimp, pdb, plug-ins: GimpText* using GeglColor. 2024-02-11 23:28:02 +01:00
gimpcmyk.c app, libgimp*, pdb, plug-ins: use g_memdup2() instead of g_memdup() 2021-08-26 17:32:09 +02:00
gimpcmyk.h Change the license URL from http://www.gnu.org/licenses/ to https:// 2018-07-11 23:29:46 +02:00
gimpcolor-parse.c app, libgimpcolor: more move to GeglColor. 2024-02-11 23:28:03 +01:00
gimpcolor.c libgimpcolor: implement CIEDE2000 distance algorithm to compare colors. 2024-02-11 23:28:03 +01:00
gimpcolor.def app, libgimpcolor: more move to GeglColor. 2024-02-11 23:28:03 +01:00
gimpcolor.h libgimpcolor: implement CIEDE2000 distance algorithm to compare colors. 2024-02-11 23:28:03 +01:00
gimpcolormanaged.c core: Add simulation intent and BPC to GimpImage 2022-08-13 19:39:47 +00:00
gimpcolormanaged.h core: Add simulation intent and BPC to GimpImage 2022-08-13 19:39:47 +00:00
gimpcolorprofile.c Issue #9994: do not call g_file_info_get_is_hidden() (and others) directly. 2023-09-19 15:34:48 +02:00
gimpcolorprofile.h libgimpcolor: add gimp_color_profile_get_space() 2018-07-16 14:06:32 +02:00
gimpcolorspace.c pdb, libgimp*: add (out caller-allocates) to all GimpRGB* return values 2019-08-01 15:39:13 +02:00
gimpcolorspace.h libgimpcolor: remove deprecated integer RGB <-> HSL conversion functions 2018-10-22 13:29:11 +02:00
gimpcolortransform.c libgimpcolor: fix call to cmsCreateProofingTransform(). 2022-04-20 20:54:20 +02:00
gimpcolortransform.h libgimp*: lots of doc fixes and new docs for structs and enums 2019-07-24 01:18:30 +02:00
gimpcolortypes.h libgimpcolor: rudimentary docs for gimp_adaptive_supersample_area() 2019-08-09 15:24:49 +02:00
gimphsl.c app, libgimp*, pdb, plug-ins: use g_memdup2() instead of g_memdup() 2021-08-26 17:32:09 +02:00
gimphsl.h Change the license URL from http://www.gnu.org/licenses/ to https:// 2018-07-11 23:29:46 +02:00
gimphsv.c app, libgimp*, pdb, plug-ins: use g_memdup2() instead of g_memdup() 2021-08-26 17:32:09 +02:00
gimphsv.h Change the license URL from http://www.gnu.org/licenses/ to https:// 2018-07-11 23:29:46 +02:00
gimppixbuf.c gir: Add missing annotations 2020-05-04 02:11:57 +02:00
gimppixbuf.h Change the license URL from http://www.gnu.org/licenses/ to https:// 2018-07-11 23:29:46 +02:00
gimprgb-parse.c libgimpcolor: Fix gimp_rgb_list_names() for introspection 2021-12-02 12:43:57 +01:00
gimprgb.c app, libgimp*, pdb, plug-ins: use g_memdup2() instead of g_memdup() 2021-08-26 17:32:09 +02:00
gimprgb.h libgimpcolor: new functions gimp_color_set_alpha() and… 2024-02-11 23:28:02 +01:00
meson.build libgimpcolor: implement CIEDE2000 distance algorithm to compare colors. 2024-02-11 23:28:03 +01:00
test-color-parser.c fix compilation of a test 2012-05-03 20:36:28 +09:00