You are on page 1of 16

Computer Graphics

Case Study
Topic : - GIMP Software

Group Members : -
22401 Amit Singh
22404 Mrigank Dube
22459 Harsh Dube
What is GIMP?

GIMP stands for GNU. The Photo Manipulation Program. The latest type of open-source
application. We can use gimp for photo editing and image retouching. We can also use it for
free for drawing and converting photo formats. It helps in photo editing with gimp and a lot more
with amazing features. And that is also free. GIMP is widely popular as ‘The Photoshop’ of the
open-source application. This gimp case study will help you to increase your photo editing
knowledge.

GIMP is an acronym application for GNU Image Manipulation Program. It is a free program for
such tasks as image retouching. For the image composition and also for image authoring. It has
many cool capabilities. We can also use it as a simple paint application, an expert quality image
retouching tool, an online batch processing unit, a mass production photo renderer, an image to
vector converter, and many more.

GIMP is in total an extendable and extensible program. The programmers have made it
augmented with the plug-ins system. And extensions to do a lot about anything. The advanced
and new scripting interface allows a person of everything. It is from the simplest job to the most
complex photo manipulation procedures. The developers created the GIMP under X11 on UNIX
platforms. But in basic, the same code also plays on Windows and macOS.

History of GIMP photo editing software

Spenser Kimball and Peter Mattis created this open-source application. It appears in
semester-long project work at their university, the University of California, Berkeley. This
application was first published to the public in 1996. The letter ‘G’ in the name stands for
General at first. But later it became GNU. It happened based on the name of the operating
system. It is produced by the founder Richard Stallman under the GNU project. Then Stallman
approved it.

The basic acronym was coined at first with the letter G being added here to -IMP. It is a
reference to “the gimp” in a scene from the 1994 film Pulp Fiction.

In 1996 there was an initial public release of GIMP (0.54). The editor was in a quick mood. A
community of contributors also formed at that time. The community began establishing the gimp
photo editing tutorials. They shared better workflows with amazing techniques.
After the GIMP manipulator passed from a beta establishment in 1998. The very first GIMP
version 1.0 had its first stable release to the internet world. Since the actual release, the
establishment of the application has grown at a rapid pace.

GNU project

In the following year, Kimball and Mattis met with Richard Stallman. He is from the GNU
project. While he visited them at UC Berkeley, he asked them if they could change the name
“General”. It is in the software’s name, GNU. The name is after the operating system, developed
by Stallman, and Stallman approved it. The software subsequently formed part of the GNU
application collection.

The very first release supported Unix systems, such as Linux, Or like the SGI IRIX and HP-UX.
Since then, GIMP has been ported and defined to other operating interfaces including Microsoft
Windows (in 1997, GIMP 1.1) and macOS.

A GUI special toolkit called GTK, popular as the GIMP ToolKit. It facilitates the development of
GIMP. The development of the GIMP ToolKit depends on it. It has been also becoming
disenchanted with the Motif toolkit. GIMP originally used this. The motif was usable until GIMP
0.60.

Versions of GIMP

Major version Initial release Significant changes and notes Latest minor version
0.x 1995-11-21 First release ?
1996-01-31 ?
1998-06-05 ?
2000-12-25 Improvements to the main user interface.
GIMP 2.x
2004-03-23 Switch to the GTK+ 2.x graphical design toolkit. Introduction of tabs.
Docks system. Improvements to script-fu scripting. Text re-editing. CMYK color support.
2004-12-19 Plugin support. The keyboard shortcut editor is amazing. Previews for
transform tools. New GIMP hardware and control support. Improvements to crop/drag. And
copy/paste to the other applications. 2007-10-24 Color management stability.
Scalable brushes. New and rewritten selection tools. Crop tools. Many user-interfaces do
changes. Including full-screen editing. A new iconic theme. Increased file format support
system. Improved printing and editing quality. Improved user interface for external device input.
2008-10-01 Partial implementation of GEGL. The first iteration of UI redesign. 2.6.12
2012-05-03 Single-window mode. Layer groups and tool improvements. 2.8.22
2015-11-27 Porting more features to the GEGL. Improved or new tools. Revamped
user interface.
GIMP 3.x
3.0 TBA 2021? Complete port from unmaintained old GTK+ 2.x to maintained GTK+ 3.24
or GTK 4.0. Better hiDPi and Wacom support. Wayland supports Linux. Multiple layer selection
support. Extensions in Python 3. JavaScript. Lua and Vala. available as 3rd public prerelease
after 2nd and first . Some Blockerbugs on the road to the next version. TBA Non-
destructive editing and some other things.
Legend: Old version Older version, still maintained Latest version Latest preview version Future
release

GIMP’s icon features Wilber

GIMP is at the primary level. The volunteers made it a free application. It is an open-
source application. The project associates both the GNU and GNOME projects workers. Several
developments take place in the public git source code repository system on the public mailing
lists database, in the public social chat channels, and on the GIMPNET IRC network interface.

Brand new features are in public on separate source code branches. It merged into the main
branch or the development branch. When the GIMP team is sure about that. They won’t be able
to damage the existing functions. Sometimes this indicates that amazing feature. That appears
completed and unmerged. It takes months or years before they become available in the GIMP
application.

GIMP itself is a source code program. After a basic source code release, the installers and
different packages are available for different operating systems interfaces by parties. They
might not be in contact with the core maintainers of the GIMP application.
All supported version numbers used in the GIMP are expressed in a major-minor-micro file
format. Here each number carries a specific particular meaning. The first major number system
is incremented only for the major development programs. And it is currently 2. The second
minor number system is incremented with each release of new amazing features. With the odd
numbers reserved for in-progress establishment the different versions and even the numbers
assigned to the very stable releases.

The application’s mascot

The third micro number system is incremented before and after each development and
release. It is resulting in even numbers for each release. And the odd numbers for several
development snapshots. With any of these bug fixes subsequently applied in the database. It
was released for a proper stable version.

Previously, the GIMP application applied for multiple positions in the popular Google Summer of
Code (GSoC). From the year 2006 to 2009 there have been nine different GSoC projects.
Those have been listed as successful projects. Although not all the successful project works
have been merged into the GIMP project immediately. The healing brush is here. The amazing
perspective clone tools and Ruby bindings features were created. It was created as part of the
2006 GSoC. It can be used in version 2.8.0 of the GIMP application.

Although there were three other wonderful projects that were completed successfully, the later
versions were available in a stable mood in GIMP. Those projects are being caused by Vector
database Layers (end 2008 in 2.8 and master) and a JPEG 2000 plug-in mid in 2009. It is in 2.8
and master several of the GSoC project works were completed in 2008. But they have been
merged into a proper stable GIMP release later in the year 2009 to 2014 for versions 2.8.xx and
2.10.x. Some of the projects needed some more basic code work for the master tree program.

Features and versions

The second public establishment is 2.9-Version. It was 2.9.4 with many deep and basic
improvements after the initial Public Version 2.9.2 was released. Third and Public 2.9-
Establishment version is Version 2.9.6. One of the brand new features in this new version is
removing the 4GB size limit of the XCF file and increasing possible data threads to 64. It is also
an obsolete point for the modern parallel execution and in the actual AMD Ryzen system.
And also in Intel Xeon processors. The next recent Version is 2.9.8. It fixes many bugs. And
with many improvements in the gradients and clips. Several improvements were also developed
in the performance section and optimization. All of these beyond the bug hunting were the
established targets for 2.10.0. The amazing MacOS Beta interface is available with version
2.10.4.

The next significant and stable version of the roadmap is 3.0. It is established with a GTK3 port
database. 2.99-Series is the ultimate development Series for the next 3.0.

GIMP associate developers meet during the annual Libre Graphics Meeting and they discuss all
the amazing possibilities. Interaction graphic designers from Open Usability. They have also
contributed to GIMP applications.

Features and Capabilities of GIMP


The features below are only a very quickly thrown-together list of the GIMP application.

● Painting
There is a full suite of amazing painting tools. Including Brush and Pencil. The Airbrush,
Clone, etc are also there to support you.
There is Sub-pixel sampling. It is for all the paint tools. And also for the high-quality anti-
aliasing system.
There is an extremely powerful gradient editor. The blend tool is also stunning.
It also supports custom brushes and patterning programs.

● System
There is a tile-based memory management interface. So, the photo size is limited. It is
only available in the disk space.
There are a virtually unlimited number of photos. We can open it at a one-time slash.

● Advanced Manipulation
There is full alpha channel support for a smooth experience.
Layers and channels are working tirelessly.
Multiple Undo/Redo system (it is limited only by disk space)
There are editable text layers.
There are transformation tools. Including the rotate base, scale, shear feature, and flip.
There are selection tools. Including the rectangle shape, and the rounded rectangle
shape. The amazing ellipse, free, fuzzy features are also added here.
There is a foreground extraction tool.

● Animation
There is load and save animations in a convenient frame-as-layer file format.
The MNG support is quite helpful.
Frame Navigator (in GAP, the GIMP Application Animation Package)
There is onion Skin (in GAP, the GIMP Application Animation Package)
There is Bluebox (in GAP, the GIMP Application Animation Package)

● Distribution
The recent version of the GIMP application works with numerous amazing operating
systems. Including Linux. The macOS and also for the Windows OS. Many Linux distributions
here include GIMP applications as a part of their desktop operating systems. Including the
famous Fedora and Debian system.

GIMP software began to host its programmable downloads. It was after discontinuing the
use of SourceForge in 2013. The website later repossessed the GIMP application’s dormant
account. They hosted the advertising-laden versions of the GIMP application for the Windows
OS.

● Professional GIMP reviews


The Lifewire programs are reviewing the GIMP application favorably in March 2019. It
was for those who have never experienced Adobe Photoshop. GIMP software interface is
simply a very powerful picture manipulation program. And “[i]f you’re willing to invest some
decent time acquiring it. It can be a very good and stunning graphics tool.

GIMP application’s fitness is for use in professional environments. Regular updates and
reviews are available. The designers often compare it to Photoshop. And also some people
suggested it as a possible replacement for the one and only Adobe Photoshop. The GIMP
application has a similar function as Adobe Photoshop. But it has a different user interface with
space.
GIMP 2.6 application can create the famous art in Lucas the Game. It is an independent
video game by Timothy Courtney. Courtney started establishing the Lucas the Game in early
2014. And the next version of that video game was released in July 2015. Both for PC and Mac
OS. Courtney explains the GIMP as a powerful tool. Fully capable of large and significant
professional projects. Such as video games.

The single-window mode of this application was introduced in GIMP 2.8. It was reviewed
in 2012 by Ryan Paul of Ars Technica. Who noted that the user experience is awesome. It feels
“more streamlined and less cluttered”. Michael Burns, a famous designer, wrote for Macworld in
2014. He described the single-window interface of the GIMP 2.8.10 application as a “big
improvement”.

● GIMP Reviews
In his application review of GIMP for ExtremeTech in October 2013. David Cardinal
clarified that GIMP software’s reputation of being hard to use. It is lacking features that changed
dramatically over the last couple of years. And it no longer remained a crippled alternative to
Adobe Photoshop. He described the GIMP application’s scripting process as one of its basic
strengths. It also remarked that some of Adobe Photoshop’s features are either less powerful.
Or sometimes missing. Such as the Text area.

The 3D commands and Adjustment Layers. History is also like that. Mr. Cardinal
favorably described the UFRaw converter. It is for the raw images used with the GIMP
application. There is nothing similar like that. It still requires some patience to figure out how to
use gimp for photo editing.

Cardinal stated about the GIMP application that it is easy enough to try despite not
having as well-established documentation. It helps the interface system as those for Adobe
Photoshop. In conclusion, it has become an improved and worthy alternative to Adobe
Photoshop. It is also for anyone on a budget. Who doesn’t need all of Adobe Photoshop’s vast
set of features?

Other Features of GIMP


Gimp Other Features – Vector Design US, Inc.
Animation tool of GIMP Showing Brushes, the Patterns, and Gradients. All this is Created in the
GIMP application. Those tools of gimp photo editing software are for performing photo editing
and photo retouching. It can be accessed via the stunning toolbox. And also through menus and
the dialogue windows. They include filters and brushes. As well as in the transformation
process. The selection process. And in layer and masking tools set.

● Color
There are different ways of selecting the colors in GIMP. It includes palettes. The color
choosers are using a supportive eyedropper tool. It is to select the color on the broad canvas.
The actual built-in color choosers choose those. It includes the RGB/HSV/LAB/LCH selector or
scales. The water-color selector is one of this kind. The CMYK selector and a color-wheel
selector are also necessary.

Colors in GIMP can also be selected using the hexadecimal color codes. As the same is
used in the HTML color selection. GIMP has native support for indexed-color codes. And RGB
color spaces as well as the other color spaces are supported by using the decomposition
process. Where each channel of the brand new color space becomes a black-and-white photo.
The CMYK, LAB, and HSV(hue, saturation, value) are critically supported in this way. The Color
blending process can be achieved here. By using the Blend toolkit.

And by applying the gradient to the surface level of a photo. And it’ll happen by using
GIMP’s core color modes. The GIMP’s interface Gradients are also integrated into the boost
tools. Such as the most helpful brush tool. When the user interfaces paint this way. The output
of the color slowly changes. There are a few default gradients in GIMP. It is available with the
GIMP; a user can also design and create custom gradients. With the help of tools that GIMP
provided. The Gradient plug-ins are also quite available.

● Selections and paths


GIMP’s selection tools include a rectangular tool. And a circular selection tool. The free
selection tool and fuzzy selection tool (also known as the magic wand) are also here. There are
also more amazing advanced selection tools. Include the selection for the color tool. For
selecting the contiguous regions of the colorful world.

And the scissors selection tool creates wonderful selections. It is doing it semi-
automatically between the space areas of highly contrasting colors. GIMP application also
supports the quick mask mode. Where a user can use a brush tool. To paint the area of a
selection. Visibly this color area looks like a red-colored overlay. It is being added or removed.
The foreground selection tool is an implementation of the Simple interactive object. The
extraction (SIOX) method is used to perform the ultimate extraction of the foreground elements
of this program. Such as a person or a selective tree in the main focus.
The Paths Tool allows to help and create the vectors ( it is also known as Bézier curves).
Users can use selective paths to create complex selections. It includes natural curves. They can
paint or stroke the path’s lines with brushes. Sometimes with the patterns or various selective
line styles. Users can name it and save the paths for reuse.

● Image editing in GIMP


There are many amazing tools in GIMP for image editing. The more common tools in
GIMP include a paintbrush. The pencil, airbrush, and eraser. And the ink tools used to create
brand new blended pixels. The Bucket Fill toolkit is to fill a selection area with a color or pattern
tool. The Blend tool here can be used for filling a selection with a vibrant color gradient. These
color transitions can be applied to a large area of different regions. Or smaller custom path
selections.

GIMP also provides “smart” toolkits. That uses a more complex algorithm to do the things that
otherwise would be more time-consuming or quite impossible. These include:

The clone tool. It copies the pixels using a brush.


He is a healing brush. It copies pixels from a selective area. Then correct the tone and color.
The amazing perspective clone tool. It works like the previous clone tool. But it corrects for the
distance changes.
The blur and the sharpen tool. They blur and sharpen using the brush tool.
The Smudge tool is very supportive. It is to subtly smear a selection path where it stands.
The dodge and burn tool is a brush tool. It makes target pixels lighter (dodges) or darker
(burns).

● Layers, layer masks, and channels


A photo edited in GIMP can consist of many layers. And it can be in a stack. The user-
interface manual suggests that “A good way to visualize the GIMP photo is as a stack of the
transparencies.” Where in the GIMP application terminology. Each level here indicates
(analogous to the transparency) a layered path.

Each layer in a photo has different channels. In an RGB photo. There are normally 3 or 4
different channels. Each consists of a red, green, and blue channel path. The color sublayers
look like different gray photos. But when we put it together, They make a complete picture. The
fourth and final channel.

It may be part of a layered path. That is the alpha channel (or the layer mask). This
channel measures opacity. Where a whole part of a picture can be completely visible. Or
partially visible or can be invisible. Each layer has a different layer mode. That can be a set to
change the colors in the picture.
Text layers can be created using the text tool, allowing a user to write on an image. Text layers
can be transformed in different ways. Such as converting them to a selection path.

● Automation, scripts, and plug-ins


GIMP application has approximately 150 standard photo effects and filters. Including the
Drop Shadow. The Blur and Motion Blur. And the Noise.

GIMP operations can also be automated by scripting the languages. Script-Fu is a Scheme-
based application language. It is implemented using the TinyScheme interpreter. Which is built
into GIMP. GIMP software can also be scripted in Perl. In the Python (Python-Fu). Or in the Tcl.
By using the interpreter’s external way to GIMP.

New features can also be added to the GIMP application. We can not only change the program
code (GIMP core). But also we can create the plug-ins. These are external programs too. Those
are executed and controlled by the main GIMP application. MathMap is a basic example of a
plug-in written in C.

There is alternative support for several methods. It is for sharpening and blurring pictures. It
includes the blur and the sharpen tool perhaps. The unsharp mask selection tool is used to
sharpen a photo selectively. It sharpens only those areas of a picture that are sufficiently
detailed enough.

The Unsharp Mask toolkit Is considered to give more targeted results in the final selection. It is
for photographs rather than a normal sharpening filter. The Selective Gaussian Blur toolkit
works in the same way. Except it blurs areas of a picture with a little detail.

● GEGL
The Generic Graphics Library (GEGL) was first introduced to the world as part of GIMP.
It happened on the 2.6 release of the GIMP application. This initial and basic introduction cannot
exploit all of the capabilities of GEGL. As of the 2.6 release. The GIMP can use the GEGL
platform to perform the high bit of depth color operations. It is because of this less kind of
information. Which is also lost. When performing the color operations.

When GEGL is fully integrated with the GIMP’s main interface. It has got a higher color bit
depth. And a better non-destructive flow of work. GIMP 2.8.xx supports only 8-bit color. Which is
much less than the real arena. Digital cameras produce (12-bit or more than that). Full support
for the high bit of depth path is included with GIMP 2.10. OpenCL enables the main hardware
acceleration for some notable operations.

● File formats
GIMP application supports the importing and exporting program. With a large number of
several file formats. GIMP’s native file-format XCF is designed to store all kinds of information.
That GIMP can contain about a picture. The XCF is named after the eXperimental Computing
Facility. Where the GIMP app was authored.

The import and export capability of GIMP can be extended to additional formats. This means
plug-ins for the main file. XCF file size is quite extended. It is more than 4 GB. Since 2.9.6 and
the new stable tree 2.10.x.

● Forks and derivatives


Because GIMP has a free and open-source interface. Different forks and variants are
available there. Some amazing derivatives of the core computer program have also been
created. It is to fit the needs of their developers. While GIMP is cross-platform. The variants of
the GIMP application may not be so simple.

These variants of GIMPs are neither hosted to the link nor linked on the GIMP site. The GIMP
site does not host those kinds of GIMP builds. Not for Windows or Unix-like operating systems
interface. Although it does include a proper link to a Windows build-up OS.

GIMPshop:A useful derivative that aims to replicate the one and only Adobe Photoshop in
some of its basic forms. Development of the GIMPshop was halted in 2006. And the entire
project was disavowed by the popular developer, Scott Moschella. After an unrelated party
registered to the “GIMPshop”.

As a part of an Internet domain world name. It passed off the selective website as belonging to
Moschella. While accepting the donations and making revenue from advertising. The GIMP
application core team passed on none of the income of Moschella.

GimPhoto: GimPhoto is the following of the Adobe Photoshop-UI. It is a basic tradition of


GIMPshop. More modifications are quite possible with the GimPad toolkit. GimPhoto app stands
at version 24.1 for Linux and Windows (based on GIMP v2.4.3). And version 26.1 on the
macOS(based on GIMP v2.6.8).
Installers are included here for Windows 7, 8.1, and 10. The macOS 10.6+. The Ubuntu 14 and
Fedora, as well as the source code, is notable here as the basic info. Only the developer who is
at project work can do it. He can do the fast updates. And the new versions based on the Gimp
main application 2.8.x or 2.9.x are not planned yet.

McGimp: An independent port for the macOS that aim to run over the GIMP directly. On this
platform, they integrated multiple plug-ins intended for the basic optimized images.

Seashore: It is a lot easier to use photo editing software for macOS.

Glimpse: A UI rewrite stemming from a group of GIMP users. Who considers “GIMP” to be an
all-side ableist slur.

● Extensions
GIMP applications can have functionality extended with the plugins. Notable ones
include down below:

GIMP-ML, which provides machine learning-based photo enhancement in the project work.
GIMP Animation Package (GAP). It is an official plugin for creating amazing animations. GAP
can also save the animations in several file formats. Including GIF and AVI
Resynthesizer. It provides the context-aware fill. The original part of Paul Harrison’s work over
the Ph.D. thesis. Now maintained by Lloyd Konneker in these days.
G’MIC. It adds photo filters and effects.

ARCHITECTURE

● Overview of GIMP Architecture


The architecture here included for GIMP was obtained through a bottom-up approach of
the interface. The architecture of the GIMP application is classified into the User-Interface. In
the Extensions. In the Plug-ins. And in the GIMP Libraries.
● Core
The User-Interface is a basic component. It determines the presence of the application
through a general and Graphical User-Interface (GUI). The layout such as the overall position of
the core menu bar. And the palette is also responsible. The GIMP User Interface is made up of
five different sub-components which are:

Dialogues: A basic template that lets the plug-ins. And the core program to carry out the basic
procedures.

Menus: The function of basic lists is quite about the same as the dialogues. Through the
generic menu templates. The plug-ins and the core theme can differentiate the different types of
menus and menu items.

Widgets: A sub-system of the component. It carries out complex and compound widgets.

Display: A place that holds the User-Interface and the Components.

Graphical User Interface: A component that always plays a significant part in the software.

● Programming Interface
The programming Interface is creative between the User Interface. The plug-ins and the
core are basic forms here. The Application of the Programming Interface is used here to help
the GIMP application User-Interface. It is to communicate with the GIMP Core and plug-ins.

The next component is the extension part. It is made up of 12 files. It does not change the file
format of the document model as its function. The Graphic User-Interface and the User-
Interface is a sub-system that does not interact with the subsequent extension.

The Plug-ins are the basic architecture. It is also handled through the GIMP’s basic plug-in
Application Interface. The plug-in Application Interface passes the complex plug-ins. It creates
the bond and communication with the GIMP core. It causes the dialogue boxes properly. The
menus and the other procedures can take place on behalf of the basic plug-ins. The separation
here is easy that takes place between the GIMP User Interface and the plug-ins.
● GIMP
It is possible through the abstract area of the user interface that defines the user
interface as a text-based form. This form is a common approach to many open-source systems.
As well as the modular software-based system. The GIMP libraries also consist of many
mathematical and graphic functions.

Also, in the color manipulation functions. All the libraries are being separated and organized
here. It is in each of their directories. The functions of the interface. And the UI is called within
the libraries. The GIMP Core here works on the system interface level. Its tasks such as loading
extensions and plug-ins. It configures the basic system and acts. As a central administrator for
the extensions program. The plug-ins. It is what the core does need.

The core needs it to connect with the components between the local layer. And the whole
architecture basic area. The GIMP Core has six sub-components. Those complement each
other are important in the system. The sub-components are:

Actions
This sub-component here shows the functions. It takes place from the main GIMP application
Core area. To the basic User-Interface component. The Action here is for the purpose to hide
the graphical design pattern. To make the interface of the GIMP Core functionality looks more
simple and subtle to the developers.

Libraries

The library sub-component consists of image manipulation functions for image manipulation
tools such as color picker and airbrush tool to the user interface components. All the
components in the sub-components are Graphic User Interface-centric. And it is applied with the
static functions for smooth user interface event interaction.

Data Model

The Data Model is also responsible for the core functions. They are related to photo creation.
And modification internally. Within the GIMP application. It does the reading and writing job of
the raster to vector graphics. The raster information in the photo to the file-format system.

Procedural Database
The Procedural Significant Database of the GIMP is executed as the basic hash table data
structure. The libraries in the sub-component are called the Procedural Database. It is to enroll
or register a new user toolkit. For example, a brand new paintbrush toolkit for manipulation.

Configurator

The main configurator here is the taskmaster. It is to maintain and initialize the basic
configuration of the different components. Those are found in any kind of software upon start-
up. It saves when required by the user. The functions to serialize the configuration. It can also
be found in this sub-component as a LISP-like syntax.

Inner Core

The Inner core sub-component consists of the different basic codes. It linked the main parts of
the GIMP together. A GimpClass data structure is used to store the basic components. The lists
of plug-ins. The pictures and the Graphic User Interface. And the procedural database
references are also available. Besides that, it also has supporting derivatives with needed
functions. Which have relation to the undo and redo memory management program. The ad
also relates to the error handling routines.

You might also like