Why GIMP is Inadequate

January 10th, 2011 from The Driblet of an Aphorism



Famous or Infamous?

GIMP is perhaps one of the most well known imaging apps available in Libre software. Its virtues are endorsed by many in the Libre software community. In a practical sense however, within North American art and design circles, its uptake is effectively zero.

There are reasons behind this, although any attempts to tackle the issues have a tendency to erupt into nothing more than hyperbole and animosity, leaving behind the core issues at hand.

This is an attempt to outline three key reasons why some graphic artists and designers perceive GIMP as inadequate when it comes to its suitability in their imaging pipelines[1].

Precision

Public bug reported in 2002 and covers deeper than 16bpc.

Pixels are stored in discrete units of bits. GIMP has a hard limit of eight bits per channel at its highest depth. This means that all colour is locked into 0 to 255 steps.

Why is this an issue?

Ultimately this is a question of quality. There is no arguing that insufficient bit depth will always lead to a degradation of image quality. Posterization is the most obvious impact of restricted bit depths.


Every action in GIMP throws data out. Import an inexpensive camera's output in RAW format and you throw out data, irreversibly forcing the 12-14 bit per channel data into 8 bit per channel internal resolution. Color selections, blurs, and every data related manipulation will be fundamentally restricted.

Pundits that suggest this is negotiable are simply and flagrantly incorrect[2]. Quality is quality. Good enough is not good enough given these constraints.

Performance

Related to this bug report from 2005, but likely covers a little more as it applies to purely round brushes as well.

Print work operates at a high DPI count. If we assume 300DPI as a baseline for work, we can quickly see how the numbers grow as our dimensions increase. A standard letter sized print at 8.5"x11" would yield dimensions of 2550x3300[3].

At those dimensions, large brushes are required. Setting a brush to a radius of 50 and working at a 1:1 resolution yields performance that is well beyond sub-optimal.

All manipulations on this size suffer. Multi-core processing may help, but ultimately this is the domain of less-than-glamorous profiling and optimizing. Graphics processor acceleration is device dependent and can yield inconsistencies across platforms or graphics cards[4].

Linear Light

As a result of cathode ray tubes and other legacy alchemy, the images you view on your computer monitor come preset and "baked" with various imaging variables. One of which is known as gamma.

When doing manipulations on images within this preset world, the math falls apart. You cannot simply add one unit of red to one unit of red and get to two units of red.

Linear light solves this by reversing the gamma present in images and formatting all of the pixels into a linear space. Certain image manipulations involving light based concepts such as light leaks are much more efficient to achieve using a linear light model.

In addition to this, a linear light option allows imaging pipelines to integrate with the system, as many higher end pipelines rely on linear light models.

The Long Road

GIMP is a valuable tool to hobby imaging. In its current incarnation, GIMP has many shortcomings that inhibit its usage by many talented artists. There are certainly an extremely rare and dedicated few that have created spectacular work using the GIMP, and those people are indispensable to increasing GIMP's credibility and acceptance. Unfortunately, personal and ethical software choices cannot alone create and evolve artist tools within a project.

With its inherent low ability ceilings, lack of industry support, and fundamental core issues, aspiring graphics arts individuals often simply skip over GIMP and move onto alternate options.

What is Wrong?

If we read and accept the current state of GIMP's development to be dire with only two principal developers left, we can see that the project might have a rough road ahead.

How is it that the flagship imaging application struggles along with only two principal developers working on it and an alternate project such as Blender is absolutely thriving in Libre software? To an outsider, this might be interpreted as a symptom of a lower level dysfunction.

Back to Audience

Are there any solutions out there for the GIMP dilemma?

It would seem logical that with GIMP's currently suffocating level of principal developers that an investment in priorities would be well spent.

Is GIMP seeking to be an advanced or professional grade imaging tool or is it a hobby grade application?

In a private discussion, Michael Terry of the University of Waterloo offered that the largest percentage of GIMP's user base was amateur and hobby individuals. Should GIMP perhaps alter its course to focus and elevate its usefulness to this audience? Even acknowledging an amateur imaging audience doesn't eradicate the above issues either, as it is more likely that an amateur photographer will require exposure correction that uses the deeper bit depth than a seasoned veteran.

If GIMP has aspirations to be a professional grade tool, then it indeed needs to prioritize the needs of the artists and technicians in those environments above all else. Is single window mode a priority over deep bit depths when the vast bulk of professional artists are working in a multi window Photoshop on an Apple Macintosh product environment?

The Future?

It is a sincere hope that GIMP finds itself in the near future. Current and, more importantly, future Libre artists rely on it extensively.

All that we can do is ask questions. Is there something wrong with the GIMP development model that prevents growth? Is there anything that could be done to help GIMP achieve the dedicated and passionate developer core that Blender currently has? What can we do as a community to ensure that Libre raster imaging software is a growth area?

GIMP's situation is troubling.

GIMP has factual and easily verifiable shortcomings as an imaging app. Arguing that fact is simply in the realm of delusion. This post has attempted to outline three potential show stoppers for digital artists.

Does GIMP have an identity crisis between the desire to be an advanced imaging editor and the practical reality of its ability? What would sharp and deliberate decisions about audience do to the project[5]?

Does GIMP have an eroding development model? Is there a similarity between GIMP and the erosion that happened at Open Office?

Is there anything that can be done to rectify this situation[6]?

Thank you all for reading...

[1] Interface elements have been left out. Indeed, some of the recent pursuits over single window mode seem glaringly strange given the lack of software ability. It also leaves out some obvious complicating deficiencies in the performance section regarding CMYK subtractive colour modelling for print.
[2] You cannot sandwich images together. Anyone that suggests this as a workaround is about as far away from a credible opinion as you could ask. Also, it still fails to address manipulations within the application such as masking, blurring, scaling, rotating, and other such tools beyond the scope of a RAW image editor.
[3] This obviously is a very basic value as you would most certainly have to include bleeds and like details in a pre-press image.
[4] This doesn't even begin to discuss the complexities of closed and open graphics card driver dilemmas.
[5] Krita recently has made this difficult decision and has been making what appears to be solid progress with a fresh and refined perspective.
[6] Please resist suggesting funding as this appears to be a community based issue. There are countless examples of funding that yields nothing, let alone the practical cost / benefit example of simply purchasing proprietary software. It is, in this context, a completely tangential discussion.