Re: GIMP's future internal image data format

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Am 31.01.2012 18:25, schrieb Bogdan Szczurek:
W dniu 12-01-31 15:48, gespertino@xxxxxxxxx pisze:
2012/1/31 Bogdan Szczurek <thebodzio@xxxxxxxxx <mailto:thebodzio@xxxxxxxxx>>

    I agree that having more precision is more favourable
    mathematically. But is it so "visually"? I mean we'd have more
    precisely determined color components but will it really "show"? And
    if it will, then how much? Just a couple of questions, that, I
    believe, can't be answered right now. I said it before, I say it
    again: let's wait and see :). Real world application will for sure
    provide us with "proofs", while continuing this could unfold into
    battle of "I thinks" and "IMHOs" not "knows".


The case of 8 bit being insufficient and the rounding errors caused by
working with such low precision is more common that one would think.
I used to think that it wasn't so critical, but after a couple of simple
tests you might change your mind.
- Gradients. Go from 30% gray to white. Dithering will make it more
pleasing visually, but adjust contrast and you'll see immediately you're
short of shades to work with.
- Create a black shape on white background. Apply 50 px gaussian blur.
Ajdust curves and you'll see banding immediately.
- Painting with soft edge brushes. Banding appears almost instantly when
you make a couple of overlapped strokes.

You're right. I've tried to give some smart*ss answer to that, but failed :).

Grayscale with reduced dynamic range is almost impossible to work with
using 8bpc and the destructive effects will show even with slight
adjustments.
I use to design some brochures for a company that sales cars, and
everytime I have to touch up an image of a car (mostly in silver colors)
I have to duplicate, blur and diher patches to avoid banding. And I
don't do extreme manipulations there.
Another example is banding in skies in landscape photos.

It's not always so bad. I do agree however that the less precise information we have – the less is the extent of acceptable adjustments.

What I'm trying to say all-along is that there are cases when it's actually better to work with less precise data for the sake of memory savings. Sometimes high-precision is just an overkill. That's about it.

Here I have to quote my friend Troy Sobotka who's usually a jerk towards
GIMP :-p but makes a point:
http://troy-sobotka.blogspot.com/2011/01/bit-depth-and-confusion.html

As much as I agree with general idea I want to point out two things about image comparing 8 bit dithered and 15 bit outputs (the square regions). First: they're not of the same dynamic range. The upper one is "brighter", "wider" and "not grayscale" like the bottom one. It makes its "ugliness" more apparent. Second: why to use dithering anyway since internally you're using sRGB, monitor "should be" at least sRGB?… Do you have any other examples maybe?

Don't get me wrong. I'm not trying to "reverse" the example against the case, but merely show its weak spots.

I'm not worried about the excess of data.

I am, because in some cases it means image I'll be editing will take up n times more memory than it's necessary. I've put that argument earlier in the course of this discussion.

That overhead is useful

I'd say: it *might* be useful.

and
will be discarded anyway if you save to a 8bpc format, so I don't see
the problem there.

The problem is the excess use of memory, but again I agree it's excused in some cases – specifically photo editing. I speak for my needs, which often is editing several tenths of thousand pixels wide and high images, that receive only minor, reparative adjustments.

But above all, the discussion raised an idea of "modeless" GIMP. That was my concern and the reason why I joined in. I don't oppose "high-end" image mode, but the idea of "high-end" mode to "rule them all, anycase, whether it makes sense or not".

I just wonder if performance won't be substancially degraded when such
amount of data is handled.
AFAIK other applications as Photoshop or Mypaint are using 15bpc for
working with 8bpc images, leaving higher precision (photoshop) for
higher bitdepth "modes".
I'm sure devs are considering this problem, but my concern is what will
happen with gimp right after GEGL is fully integrated and before it gets
optimizations to make its performance really usable.
What's the plan? Realeasing GIMP with high bit depth when it's ready or
hold the realease until its fast enough?

You've got my sympathy in that. I think nobody knows how it'll end up. I guess we should just wait and observe. Anything else right now is in my opinion, talking about thin air :).

    A focal point is needed and if it had to be RGB… well… so be it.
    Meantime why not to think a little bit about the future? :) Why not
    dwell for moment in a world of non-square pixels, generic
    substractive and additive color models (who said RGB is *the best*
    and *ultimate* solution?), non-orthogonal pixel grids… dreams,
    dreams… :) That's it for the (hopefully) "inceptive" off-topic :)


We had this conversation before,

Oh yes :). We did :).

and I keep my stand about CMYK. If we
can have a CMYK "projection" like Pippin and Peter suggested some time
ago, and if we have control over layers to make them "project" directly
to pure CMYK primaries or spot channels, then we can have a good
CMYK/spot workflow without having to deal with "modes"
For example: Imagine you can fill an RGBA layer with cyan and you can
"tag" that layer to tell gimp it will only separate to cyan in the CMYK
projection. That would address the need of spot channels (and CMYK
primaries, which are used as spot channels as soon as you decide to
define them manually).

I'll wait untill I'll see it in practice. I think this notion will just have to prove itself.

The other situation to solve to get proper CMYK would be controlling the
black generation and that's it.
Color managed conversion from RGB to CMYK with control of the primaries
is all that you need to get proper CMYK, and that wouldn't require a
special "mode".

I'm not convinced whether it's the best way to go (doesn't mean I consider it a bad one), but let's not start it all over again, we've put our arguments once :).

BTW, last time we've talked there was an idea to sum up information about preparation of images for print (CMYK, spot colors, grayscale, etc.). Sadly I didn't have time to take actual action in that matter then. How about starting such editing effort now (as time allows of course)? Give me pm if you're in :).

My best!
thebodzio
_______________________________________________
gimp-developer-list mailing list
gimp-developer-list@xxxxxxxxx
http://mail.gnome.org/mailman/listinfo/gimp-developer-list

As an artist that does a lot of hand drawing i noticed the problems of the 8 bit limit very quickly. Just use the smudge tool and you will see any color, but not the intended colors (rounding errors=new colors). Same goes for the blur brush. Ever tried to to blur larger areas with it? Guess not, since it doesn't work. If the gradient is flat enough it won't blur anymore, since it is just one step away from actually switching a bit in the result. That are very common cases that really would profit from higher color resolutions.

Another thing is color conversion. RGB, as displayed on screen, is not linear and therefore adding light to an image while computing Rx = Ra+Rb is very different from actual visual perception. The user should work with sRGB, while internally it should compute in linear color space for better results. That would be prefect for retouching of images.

A side note: I currently stumbled upon myPaint. A very basic and simple drawing program, specialized for tablets. But at the moment it has three advantages over Gimp, that makes me use it instead of Gimp, even so i still use Gimp.

* The first thing is the higher color precession. It uses 16 bit internally which makes many things (gradients, brushes, ...) better to use. * The second thing is the brush system in it's own. It's relatively easy to configure new brushes and they can have many useful effects. * The third thing is the unlimited canvas. It will just allocate the areas you draw on. No fixed page limits and no hassle to resize layers. Just draw and the image will get as large as you want it.

I hope that my post could give you some inspirations for thoughts that could make Gimp better.

Best whishes from
Tobias Oelgarte


_______________________________________________
gimp-developer-list mailing list
gimp-developer-list@xxxxxxxxx
http://mail.gnome.org/mailman/listinfo/gimp-developer-list



[Index of Archives]     [Video For Linux]     [Photo]     [Yosemite News]     [gtk]     [GIMP for Windows]     [KDE]     [GEGL]     [Gimp's Home]     [Gimp on GUI]     [Gimp on Windows]     [Steve's Art]

  Powered by Linux