Re: [Gimp-developer] [Gegl-developer] babl roadmap

2014-10-14 Thread scl

Hi,

I fully agree with Jehan and think it's essential
in a healthy software development process to scrutinize
and review things. Especially the whole color management
stuff is a topic that is not so clear to many of us and
- with all my respect to Pippin - depending on a
single expert's opinion is a risk in every project.
It's natural for this topic that it is also academic.
Academic work is the foundation for many things in the
computer world, may the hands-on-people like it or not.
Perhaps some other color management experts could join in
and share their knowledge?
One thing could be improved from my point of view: the
discussion is spread over the two lists gimp-developer and
gegl-developer. As it is all mainly BABL- and GEGL-related
it would be more helpful if the discussion took place on
a single list. I propose the GEGL-developer list, because
this catches both the GEGL-only devs as well as the GIMP
devs.

Kind regards

Sven

___
gimp-developer-list mailing list
List address:gimp-developer-list@gnome.org
List membership: https://mail.gnome.org/mailman/listinfo/gimp-developer-list
List archives:   https://mail.gnome.org/archives/gimp-developer-list


Re: [Gimp-developer] [Gegl-developer] babl roadmap

2014-10-14 Thread Jehan Pagès
Hi,

On Tue, Oct 14, 2014 at 3:58 PM, Thorsten Stettin
 wrote:
> Am 14.10.2014 um 15:04 schrieb Simon Budig:
>>
>> Hi Thorsten.
>>
>> Thorsten Stettin (thorsten.stet...@gmail.com) wrote:
>>>
>>> with all due respect to you, I think you should contribute instead to
>>> babble.
>>
>> If you perceive Elles texts as "babbling" it seems that this discussion
>> is way over your head and you might want to consider staying out of it.
>>
>> Thanks,
>>  Simon
>>
> Ok, It pisses me off though. I didn't mean to hurt anybody.
> But we don't need any academic discussion.

Of course we do!
These kind of discussions are really helpful to understand things.
Most of these are also over my head (though I wish I understood more
of these!) but I am very grateful that they are done in the open! This
is also part of what makes a sane Free Software.

Now of course, meeting people in LGM or elsewhere is also very good,
but that should not prevent the results of these discussions to also
be discussed publicly here.
Same if it were by phone, I would still always appreciate discussions
to be summarized or continued on the mailing list.

> We need contribution.

Seriously if you don't consider these extremely important
contributions for GIMP (discussion on a good architecture for what is
essentially the core of GIMP!), I wonder what will be!
Of course "code" contributions *too* is nice, but these happen after
the discussions in such cases.

Anyway please, this is the gimp-developer@ mailing list. If you don't
like these discussions about improving the core of GIMP, maybe you are
on the wrong list. Also you don't have to read them all! (there are a
lot which I don't find interesting just by reading the title, I don't
ask people to not write them!).
As long as everybody stays polite and remembers we are on a written
medium (hence misunderstandings and annoyed feelings are easier to
get; when that happens, just breath), please don't interrupt
completely on-topic discussions.
Thanks.

Jehan

> Ok, I'm just a packager, sorry for that.
>
> Cheers
>
> Thorsten
>
>
>
>
> --
> Lao-Tse sagt: Nichtstun ist besser, als mit viel Mühe nichts zu schaffen.
> Und er sagt auch: Ich habe drei Schätze, die ich hüte und hege.
> Der eine ist die Liebe, der zweite ist die Genügsamkeit, der dritte ist die
> Demut.
> Nur der Liebende ist mutig, nur der Genügsame ist großzügig, nur der
> Demütige ist fähig zu herrschen.
>
> ___
> gimp-developer-list mailing list
> List address:gimp-developer-list@gnome.org
> List membership: https://mail.gnome.org/mailman/listinfo/gimp-developer-list
> List archives:   https://mail.gnome.org/archives/gimp-developer-list
___
gimp-developer-list mailing list
List address:gimp-developer-list@gnome.org
List membership: https://mail.gnome.org/mailman/listinfo/gimp-developer-list
List archives:   https://mail.gnome.org/archives/gimp-developer-list


Re: [Gimp-developer] [Gegl-developer] babl roadmap

2014-10-14 Thread Christopher Curtis
On Tue, Oct 14, 2014 at 9:54 AM, Simon Budig  wrote:

While it certainly could be more concise, the discussion has helped me
> tremendously with my glimpse into gegl/babl. So while the
> misunderstandings might be easier to overcome within a phone call
> keeping the discussion on the list helps with potentially getting the
> concepts out there to more people.
>

People seem to be getting frustrated and I don't think that helps anybody.
It seems to me that realigning the conversation in a more appropriate
medium would help to make the mailing list discussion more productive. A
summary of the phone call would then either bring everyone back together,
or continue the dispute on clearer terms.

Of course, folks are free to do whatever...

$0.02,
Chris
___
gimp-developer-list mailing list
List address:gimp-developer-list@gnome.org
List membership: https://mail.gnome.org/mailman/listinfo/gimp-developer-list
List archives:   https://mail.gnome.org/archives/gimp-developer-list


Re: [Gimp-developer] [Gegl-developer] babl roadmap

2014-10-14 Thread Nicolas Robidoux
+1

On 14 October 2014 15:54, Simon Budig  wrote:
>
> While it certainly could be more concise, the discussion has helped me
> tremendously with my glimpse into gegl/babl. So while the
> misunderstandings might be easier to overcome within a phone call
> keeping the discussion on the list helps with potentially getting the
> concepts out there to more people.
___
gimp-developer-list mailing list
List address:gimp-developer-list@gnome.org
List membership: https://mail.gnome.org/mailman/listinfo/gimp-developer-list
List archives:   https://mail.gnome.org/archives/gimp-developer-list


Re: [Gimp-developer] [Gegl-developer] babl roadmap

2014-10-14 Thread Thorsten Stettin

Am 14.10.2014 um 15:04 schrieb Simon Budig:

Hi Thorsten.

Thorsten Stettin (thorsten.stet...@gmail.com) wrote:

with all due respect to you, I think you should contribute instead to
babble.

If you perceive Elles texts as "babbling" it seems that this discussion
is way over your head and you might want to consider staying out of it.

Thanks,
 Simon


Ok, It pisses me off though. I didn't mean to hurt anybody.
But we don't need any academic discussion.
We need contribution.
Ok, I'm just a packager, sorry for that.

Cheers

Thorsten




--
Lao-Tse sagt: Nichtstun ist besser, als mit viel Mühe nichts zu schaffen.
Und er sagt auch: Ich habe drei Schätze, die ich hüte und hege.
Der eine ist die Liebe, der zweite ist die Genügsamkeit, der dritte ist die 
Demut.
Nur der Liebende ist mutig, nur der Genügsame ist großzügig, nur der Demütige 
ist fähig zu herrschen.

___
gimp-developer-list mailing list
List address:gimp-developer-list@gnome.org
List membership: https://mail.gnome.org/mailman/listinfo/gimp-developer-list
List archives:   https://mail.gnome.org/archives/gimp-developer-list


Re: [Gimp-developer] [Gegl-developer] babl roadmap

2014-10-14 Thread Simon Budig
Christopher Curtis (ccurt...@gmail.com) wrote:
> I'll admit that this discussion is way over my head, but as it seems to
> involve only two people would it be better handled over a phone call? It
> appears that there are some basic assumptions that aren't in alignment.

While it certainly could be more concise, the discussion has helped me
tremendously with my glimpse into gegl/babl. So while the
misunderstandings might be easier to overcome within a phone call
keeping the discussion on the list helps with potentially getting the
concepts out there to more people.

That having said, meeting people in person *is* tremendously helpful and
I'd like to extend pippins invitation to the LGM (next year in Toronto)
to everybody who is interested in discussing these topics with e.g.
pippin and me. There will be funds available to help bring people
together.

Bye,
Simon

-- 
  si...@budig.de  http://simon.budig.de/
___
gimp-developer-list mailing list
List address:gimp-developer-list@gnome.org
List membership: https://mail.gnome.org/mailman/listinfo/gimp-developer-list
List archives:   https://mail.gnome.org/archives/gimp-developer-list


Re: [Gimp-developer] [Gegl-developer] babl roadmap

2014-10-14 Thread Christopher Curtis
On Tue, Oct 14, 2014 at 9:04 AM, Simon Budig  wrote:

> If you perceive Elles texts as "babbling" it seems that this discussion
> is way over your head and you might want to consider staying out of it.
>

+1.

I'll admit that this discussion is way over my head, but as it seems to
involve only two people would it be better handled over a phone call? It
appears that there are some basic assumptions that aren't in alignment.

Chris
___
gimp-developer-list mailing list
List address:gimp-developer-list@gnome.org
List membership: https://mail.gnome.org/mailman/listinfo/gimp-developer-list
List archives:   https://mail.gnome.org/archives/gimp-developer-list


Re: [Gimp-developer] [Gegl-developer] babl roadmap

2014-10-14 Thread Simon Budig
Hi Thorsten.

Thorsten Stettin (thorsten.stet...@gmail.com) wrote:
> with all due respect to you, I think you should contribute instead to
> babble.

If you perceive Elles texts as "babbling" it seems that this discussion
is way over your head and you might want to consider staying out of it.

Thanks,
Simon

-- 
  si...@budig.de  http://simon.budig.de/
___
gimp-developer-list mailing list
List address:gimp-developer-list@gnome.org
List membership: https://mail.gnome.org/mailman/listinfo/gimp-developer-list
List archives:   https://mail.gnome.org/archives/gimp-developer-list


Re: [Gimp-developer] [Gegl-developer] babl roadmap

2014-10-14 Thread Simon Budig
Elle Stone (ellest...@ninedegreesbelow.com) wrote:
> On 10/14/2014 07:52 AM, Øyvind Kolås wrote:
> >On Tue, Oct 14, 2014 at 1:34 PM, Elle Stone
> > wrote:
> 
> >>To convert images to and from unbounded linear gamma sRGB, you MUST pass
> >>through XYZ. XYZ is the PCS.
> >
> >I remind you that linear RGB spaces are a single matrix multiplication
> >away from other linear RGB spaces and XYZ.
> 
> Matrix conversions between RGB working spaces can be concantenated. That
> concantenation goes through XYZ. It almost sounds like you want to obscure
> this fundamental distinction between XYZ and unbounded linear gamma sRGB.

for conversions between RGB working spaces there is no fundamental
distinction between XYZ and unbounded linear gamma sRGB.

In mathematical terms both of these span up a three dimensional vector
space (describing color) and the only difference is that they use
different basis vectors.

You can *easily* describe conversions between different RGB primaries
with ulgsRGB as the connecting space (completely replacing XYZ). You
would get a different set of transformation matrices of course.

XYZ is something that has a special role for all of the non-RGB color
spaces Lab, xyY, Luv etc, as well as operations like chromatic
adaptation. Hence it makes sense to use it also as the connecting space
for the different RGB primaries.

> Are you planning on converting non-sRGB images to unbounded linear gamma
> sRGB? Yes or no?

For pixel storage we will use whatever fits our needs, it does not make
sense at this point to specify this.

This might be a Lab-buffer with a cache in front of it that has the
pixels converted to sRGB. Or a Adobe-RGB-Buffer without a cache. Or
unbounded linear gamma sRGB. Or whatever.

The important thing is, that gegl/babl provides the means to access these
data in whatever format is needed by the operation that is happening. A
brightness-invert function might request the data in Lab, do the
inversion on the L channel and feed the results back as Lab to the
gegl/babl infrastructure, which will process it to provide the next
operation in the graph with the input format the next operation needs.

> If yes, are you intending that at least some editing will be done on the
> image while it's encoded using sRGB primaries? Yes or no?

That totally depends on the editing-operation in question and is
orthogonal to the pixel memory storage format.

Bye,
Simon
-- 
  si...@budig.de  http://simon.budig.de/
___
gimp-developer-list mailing list
List address:gimp-developer-list@gnome.org
List membership: https://mail.gnome.org/mailman/listinfo/gimp-developer-list
List archives:   https://mail.gnome.org/archives/gimp-developer-list


Re: [Gimp-developer] [Gegl-developer] babl roadmap

2014-10-14 Thread Thorsten Stettin

Hi, Elle,

with all due respect to you, I think you should contribute instead to 
babble.


Sorry for that

Best regards

Thorsten

--
Lao-Tse sagt: Nichtstun ist besser, als mit viel Mühe nichts zu schaffen.
Und er sagt auch: Ich habe drei Schätze, die ich hüte und hege.
Der eine ist die Liebe, der zweite ist die Genügsamkeit, der dritte ist die 
Demut.
Nur der Liebende ist mutig, nur der Genügsame ist großzügig, nur der Demütige 
ist fähig zu herrschen.

___
gimp-developer-list mailing list
List address:gimp-developer-list@gnome.org
List membership: https://mail.gnome.org/mailman/listinfo/gimp-developer-list
List archives:   https://mail.gnome.org/archives/gimp-developer-list


Re: [Gimp-developer] [Gegl-developer] babl roadmap

2014-10-14 Thread Elle Stone

On 10/14/2014 07:52 AM, Øyvind Kolås wrote:

On Tue, Oct 14, 2014 at 1:34 PM, Elle Stone
 wrote:



To convert images to and from unbounded linear gamma sRGB, you MUST pass
through XYZ. XYZ is the PCS.


I remind you that linear RGB spaces are a single matrix multiplication
away from other linear RGB spaces and XYZ.


Matrix conversions between RGB working spaces can be concantenated. That 
concantenation goes through XYZ. It almost sounds like you want to 
obscure this fundamental distinction between XYZ and unbounded linear 
gamma sRGB.





Let's cut to the chase:

Are you planning on converting non-sRGB images to unbounded linear gamma
sRGB? Yes or no?


Foo or bar? Do you have any idea what "implementation detail" means?



I do know what "implementation detail" means.

You didn't the question, so I'll try again:

Are you planning on converting non-sRGB images to unbounded linear gamma 
sRGB? Yes or no?


If yes, are you intending that at least some editing will be done on the 
image while it's encoded using sRGB primaries? Yes or no?


With respect,
Elle Stone
___
gimp-developer-list mailing list
List address:gimp-developer-list@gnome.org
List membership: https://mail.gnome.org/mailman/listinfo/gimp-developer-list
List archives:   https://mail.gnome.org/archives/gimp-developer-list


Re: [Gimp-developer] [Gegl-developer] babl roadmap

2014-10-14 Thread Øyvind Kolås
On Tue, Oct 14, 2014 at 1:34 PM, Elle Stone
 wrote:
> The above sentence confuses concepts: The babl architecture might require
> that images to be converted to and from unbounded linear gamma sRGB. That
> doesn't mean babl is a CMS. And it doesn't mean unbounded linear gamma sRGB
> has been turned into a PCS.

Babls role in the GEGL and thus GIMP architecture is to be the
internal CMS; this remains unchanged since babl was split out of a
non-linear video editor/compositing system.

>
> To convert images to and from unbounded linear gamma sRGB, you MUST pass
> through XYZ. XYZ is the PCS.

I remind you that linear RGB spaces are a single matrix multiplication
away from other linear RGB spaces and XYZ.

> Let's cut to the chase:
>
> Are you planning on converting non-sRGB images to unbounded linear gamma
> sRGB? Yes or no?

Foo or bar? Do you have any idea what "implementation detail" means?

/pippin
___
gimp-developer-list mailing list
List address:gimp-developer-list@gnome.org
List membership: https://mail.gnome.org/mailman/listinfo/gimp-developer-list
List archives:   https://mail.gnome.org/archives/gimp-developer-list


Re: [Gimp-developer] [Gegl-developer] babl roadmap

2014-10-14 Thread Elle Stone

On 10/14/2014 06:54 AM, Øyvind Kolås wrote:



>So now all chromaticity-dependent editing operations will require a brand
>new "special "specifying"", unless the image is already an sRGB image.
>
>If you didn't intend to convert all images to unbounded sRGB for editing,
>there wouldn't be any reason to "special "specify"" roughly half of all the
>editing operations that you offer through the GIMP UI.

Just like in an ICC based workflow images are converted to unbounded
XYZ for editing? (they are not)


My apologies, I don't have a clue what you mean by what you just said.

But no, XYZ isn't a good color space for image editing, if that is what 
you are asking.



The PCS used by a CMS is an
implementation detail; where choices might have been XYZ, linear sRGB
or some other linear RGB; of the preceding linear sRGB has nicer
properties than any of the others.


The above sentence confuses concepts: The babl architecture might 
require that images to be converted to and from unbounded linear gamma 
sRGB. That doesn't mean babl is a CMS. And it doesn't mean unbounded 
linear gamma sRGB has been turned into a PCS.


To convert images to and from unbounded linear gamma sRGB, you MUST pass 
through XYZ. XYZ is the PCS.


Let's cut to the chase:

Are you planning on converting non-sRGB images to unbounded linear gamma 
sRGB? Yes or no?


If yes, are you intending that at least some editing will be done on the 
image while it's encoded using sRGB primaries? Yes or no?



With respect,
Elle Stone
___
gimp-developer-list mailing list
List address:gimp-developer-list@gnome.org
List membership: https://mail.gnome.org/mailman/listinfo/gimp-developer-list
List archives:   https://mail.gnome.org/archives/gimp-developer-list


Re: [Gimp-developer] [Gegl-developer] babl roadmap: How do you know which images are sRGB images?

2014-10-14 Thread Øyvind Kolås
On Tue, Oct 14, 2014 at 11:20 AM, Elle Stone
 wrote:
> On 10/13/2014 06:36 PM, Elle Stone wrote:
>>
>> How do you plan to tell when an image is an sRGB image and when it's not
>> an sRGB image?
>
>
> The roadmap specifies 24 different formats for sRGB images and 24 additional
> formats for non-sRGB images.

Incorrect, foo and bar a metasyntactical variables; which have a
meaning in software development. They are placeholders, babl doesn't
know, and shouldn't care what these names/concepts are, the only
formats specified in the roadmap are synonyms for the already existing
color formats using the sRGB prefix. The ones with foo and bar
prefixes are illustrative place-holders, GEGL and other things using
babl. Have to choose what different named families of pixel formats
mean for their workflows.

> Presumably the 24 additional formats for non-sRGB images allow GEGL to
> request, as needed, a conversion of the RGB data from being encoded using
> sRGB primaries to being encoded using "User_RGB" primaries and vice versa.

There isn't 24 additional formats, but N*12 additional formats, N
depending on our needs in GEGL, foo and bar might have been replaced
with, "compositing", "chromaticity", "target" or other registered
classes of RGB for the editing session/pipeline.

> Given the 24 additional formats for non-sRGB images, it seems pretty
> important to be able to detect when the user opens an sRGB image and when
> the user opens an image that's in some other RGB working space.

> So again, upon opening an image, how do you plan to detect whether the image
> is an sRGB image or not?

> Will you compare MD5 checksums?
> Will you consult the profile descriptions?
> Will you examine the profile colorants and TRCs?

Deciding on this is outside the scope of babls roadmap, since this is
something that would have to happen in GEGL or other things using
babl. Most likely examination of profile colorants/TRCs since that is
what ICC or other color profile meta-data aware image loaders needs to
provide down to babl anyways. How the loading code does this; and
whether the behavior is configurable in GEGL (without knowing whether
it will be end up configurable in GIMP for that reason). In many
circumstances it is desirable to to treat almost sRGB as sRGB and
consider deviance from the real standard a mistake in labeling; for
instance if it is a low bitdepth image containing dithering - at other
times assuming that the slight off profile has been applied as is
earlier in the production pipeline might be desirable.

/Ø
___
gimp-developer-list mailing list
List address:gimp-developer-list@gnome.org
List membership: https://mail.gnome.org/mailman/listinfo/gimp-developer-list
List archives:   https://mail.gnome.org/archives/gimp-developer-list


Re: [Gimp-developer] [Gegl-developer] babl roadmap

2014-10-14 Thread Øyvind Kolås
On Tue, Oct 14, 2014 at 12:34 AM, Elle Stone
 wrote:
> You designed an architecture around converting images to unbounded sRGB for
> editing.
>
> After 6 months of trying to show you that your architecture has serious
> built-in problems, you finally believe me, or at least you believe Mansencal
> and Sayre. But you want to keep the architecture anyway.

We've acknowledged that chromaticities matter for more than the last
half year - and proposed to extend the architecture in ways that
doesn't break other parts of the architecture. We change what we have,
and avoid fixing what isn'r broken - while trying to address
short-coming like you've pointed out.

> So now all chromaticity-dependent editing operations will require a brand
> new "special "specifying"", unless the image is already an sRGB image.
>
> If you didn't intend to convert all images to unbounded sRGB for editing,
> there wouldn't be any reason to "special "specify"" roughly half of all the
> editing operations that you offer through the GIMP UI.

Just like in an ICC based workflow images are converted to unbounded
XYZ for editing? (they are not) The PCS used by a CMS is an
implementation detail; where choices might have been XYZ, linear sRGB
or some other linear RGB; of the preceding linear sRGB has nicer
properties than any of the others.

/Ø
___
gimp-developer-list mailing list
List address:gimp-developer-list@gnome.org
List membership: https://mail.gnome.org/mailman/listinfo/gimp-developer-list
List archives:   https://mail.gnome.org/archives/gimp-developer-list


Re: [Gimp-developer] babl roadmap: How do you know which images are sRGB images?

2014-10-14 Thread Elle Stone

On 10/13/2014 06:36 PM, Elle Stone wrote:

How do you plan to tell when an image is an sRGB image and when it's not
an sRGB image?


The roadmap specifies 24 different formats for sRGB images and 24 
additional formats for non-sRGB images.


Presumably the 24 additional formats for non-sRGB images allow GEGL to 
request, as needed, a conversion of the RGB data from being encoded 
using sRGB primaries to being encoded using "User_RGB" primaries and 
vice versa.


Given the 24 additional formats for non-sRGB images, it seems pretty 
important to be able to detect when the user opens an sRGB image and 
when the user opens an image that's in some other RGB working space.


So again, upon opening an image, how do you plan to detect whether the 
image is an sRGB image or not?


Will you compare MD5 checksums?
Will you consult the profile descriptions?
Will you examine the profile colorants and TRCs?

If you don't understand the context of the question, see the following 
article: Will the Real sRGB Profile Please Stand Up? 
(http://ninedegreesbelow.com/photography/srgb-profile-comparison.html)


It should be noted that the article doesn't list *all* sRGB profile 
variants (new ones are being made every day). In particular, the article 
doesn't list sRGB profile variants distributed with Canon, Nikon, etc 
proprietary software.


With respect,
Elle Stone
--
http://ninedegreesbelow.com
Color management and free/libre photography


___
gimp-developer-list mailing list
List address:gimp-developer-list@gnome.org
List membership: https://mail.gnome.org/mailman/listinfo/gimp-developer-list
List archives:   https://mail.gnome.org/archives/gimp-developer-list