Help make GIMP operations better (GSoC 2012)

on 27 Mar 2012 by Mukund (@muks)

Just like last year, one of the tasks that we want to offer students in this year's GSoC is porting GIMP image processing code to GEGL. This is a very interesting task and if you are a student with experience in C programming and an interest in computer graphics, be sure to consider it.

GIMP is being modified to use a new image processing library called GEGL. This will bring much requested features to GIMP such as support for more precision in image manipulation operations, and better support for different color formats. For this, we have to rewrite a lot of the image processing code in GIMP and move it to GEGL. The resulting code will do more or less the same things, but will work with a different data format, and inside a different framework (GEGL).

There are many such operations (in the main application and in plug-ins), each doing something entirely different from another. Porting each operation is a relatively simple and straightforward task, but it requires a good command over the C language and ability to review and understand unelegant code.

As this is a large task, it could be sub-divided into smaller tasks (groups of operations) to be taken up by more than one student.

The student is asked to subscribe to the gimp-developer mailing list and send the following:

  1. Your background as it applies to this task (please don't send any personal information)
  2. A code review and algorithm description of some GIMP plug-ins (e.g., cubism, fractal trace, plasma)
  3. A code review and algorithm description of the following GEGL op: gaussian blur
  4. Sample implementation of a new GEGL op. This could be anything of your choice, even Hello World. Please send it as a patch against the GEGL master branch.

If you need any help with any of these tasks, please ask on the gimp-developer mailing list, or by chatting in the #gimp IRC channel.