you're reading...


Digital Photography Tools on GNU/Linux

I’ve been a long time GNU/Linux user and have been using Fedora Linux for almost all of the digital computing. Just recently I bought a Nikon D3100 DSLR and plunged into a new realm — Digital Photography. Until before, most of my work consisted of System Administration, at which GNU/Linux was pretty powerful and I had a good time with it. Now on with digital photography and all of image editing, and Adobe monopolizing this market, I had to go search for appropriate Free and Open Source (FOSS) tools for my work. It didn’t come much to a surprise that I found much of the tools and features that helped me to be in my seat of a proud open source user. For a open source enthusiast, trying to start photography, I would suggest the following tools and workflow to cut the long search and knowing of the how-tos.

Set up your monitor profile

Colours are very important. If your monitor is not properly calibrated, the vivid colours would completely blow out and would look different. There are different tools on Linux to help you calibrate and set up a colour profile for your monitor. You can either use Little CMS (http://www.littlecms.com/) or Agryll CMS (http://www.argyllcms.com/). Also look for the driver CD that might have come packaged with the monitor that you bought and look for the device colour profile in the CD (you can also search for it on the vendor’s website). Fedora 14 come with a little tool called Color Management which you can access from System > Preferences > Color Profiles. Open up the tool, select your monitor, and on the other pane, select the Other item from the Color Profile drop down menu. There you can select the ICM color profile for your monitor, and thus you properly set up the colour profiling.

Install GIMP

GIMP – The GNU Image Manipulation Program has come along quite a way through a series of evolution and now supports a lot of features. It is the best choice for image editing (except that it does not yet support editing in 16bit per channel, but 8-bit is the one you would be doing most of the times). GIMP is a nice tool for photo touchup and corrections, though it is not as powerful as Adobe Photoshop. I would recommend to install GIMP with a few of its useful plugins as below:

  • GIMP extra patterns
  • GREYCstoration plugin: GREYCstoration is an image regularization algorithm which is able to process a color image by locally removing small variations of pixel intensities while preserving significant global image features, such as edges and corners. The most direct application of image regularization is image denoising. By extension, it can also be used to inpaint or resize images.
  • Resynthesizer plugin: Resynthesizer is a Gimp plug-in for texture synthesis. Given a sample of a texture, it can create more of that texture. This has uses including: Creating more of a texture (including creation of tileable textures), Removing objects from images (great for touching up photos), Creating themed images (by transfering a texture from one image to another).
  • Liquid Rescale Plugin: It is a free, open source frontend to the Liquid Rescale Library, which provides an implementation of the Seam Carving algorithm as described in this paper by Shai Avidan and Ariel Shamir.
  • GimpFX Foundry Plugin: It is a collection of 117+ new scripts for GIMP that are not part of the graphic software’s standard installation. This plugin adds a new menu to GIMP and contains filters for a variety of purposes including cross-processing, photo effects, Roy Lichtenstein effects and a lot others.

To install GIMP with all these plugins on a Fedora Machine, execute as a root at the terminal:

yum -y install gimp gimp-data-extras GREYCstoration-gimp gimp-help gimp-lqr-plugins gimp-resynthesizer gimpfx-foundry

Install Raw Therapee

If you take your shots in a Camera Raw format, you definitely need this tool. I used and compared three tools to process RAW on GNU/Linux (viz. UFRaw, RawStudio, and RawTherapee), and found Raw Therapee to be the best tool. Although it is in alpha stage of development, but the product is very promising with a lot of interesting features. It has a powerful workflow, batch processing features, and high performance demosaicing algorithms (EAHD and HPHD and VNG-4). To install Raw Therapee on Fedora:

yum -y install rawtherapee

Install Hugin

I’m myself a fan of landscape and wide angle lenses/photography and panorama. Unluckily, I don’t own a wide angle lens. In such a case, when you need to create a panorama image, Hugin is the tool at help. You can take multiple shots of the place with a few degrees of overlap between two consecutive images, and then stitch all of them together using hugin to create an outstanding panorama. The interface of hugin is quite intuitive and eases the process. Remember, Panaroma is an art and hugin will produce good results only when you are good at taking proper shots. To install hugin on Fedora:

yum -y install hugin


Install Luminance HDR Imaging

Luminance HDR Imaging (formerly known as qtpfsgui) is a tool to help you produce High Dynamic Range (HDR) images. To create an HDR with a local tone mapping, all you need is three shots with -1ev, 0ev , +1ev exposure compensation; and then using those three shots with this tool, you can create a HDR image. You can use the Bracketing feature of your camera to help you take those three shots with different exposure. In case your camera does not support bracketing, you can take shots in Raw and then generate the required images using Raw Therapee. To install on Fedora:

yum -y install qtpfsgui


Install Shotwell Photo Manager

Shotwell is a digital photo organizer that runs on Linux. It is the default photo manager in Ubuntu 10.10 and Fedora 14. There are other photomanagers like DigiKam, F-Spot, and Picasa. Among them DigiKam seems to be the most powerful with features, but it bulky and is a KDE application. F-Spot is also a good tool built around Mono .NET runtime environment. Picasa is another tool from Google which hosts good features, but lacks native Linux support and runs emulated through wine, also that it is not able to support other hosting services besides Picasa. I prefer Shotwell because:

  • I’m not very much comfortable with KDE applications.
  • Shotwell supports many file formats.
  • Shotwell supports uploading images to different image hosting services like Picasa, Flickr, and Facebook.
  • It is light weight and a native GNOME application.
  • I don’t use photo managers to do image editing, and rather use them just to organize my photographs.

Note: You can use Cinepaint to edit the images in 16-bit per channel (but the interface is quite buggy). Also that if you send the image from Raw Therapee to GIMP, it will lose EXIF data. So if you would like to preserve the EXIF data, export the image as a file (jpg, or png) and then edit that image file in GIMP.


8 Responses to “Digital Photography Tools on GNU/Linux”

  1. From what I tried, I found Darktable the best tool for RAW images and a very powerful editor for all kind of photography. The interface is a bit awkward (seems inspired by Lightroom) but there is a lot of power under it.

    Posted by nicu | March 8, 2011, 7:41 am
    • Nicu,
      I chose Raw Therapee out of the three options – UFRaw, RawStudio, and Raw Therapee. I haven’t given a look at Darktable. I will try it. Raw Therapee seems very promising though.

      Posted by Abhishek Singh | March 8, 2011, 7:46 am
    • A quick comparison between Darktable and Raw Therapee reveals that Dark Table has a sleek and light interface, has a full control over which panels to display and which to hide, features automatic snapshots and history compression, and good choice of plugins. The interface is good for beginners and you can switch to advanced mode by brining more panels. Raw Therapee has most of the controls upfront, and has a powerful curve editor, but is bulky as compared to Darktable.

      Posted by Abhishek Singh | March 8, 2011, 8:10 am
      • For myself I use the GIMP UFRaw plugin for all my needs (after the raw processing I need the surgery tools from GIMP) but to all beginners I recommend Darktable.

        BTW, about Hugin, I do own a wide lens, but it is no replacement for panorama tools, you will need you for 360 degree wide undistorted images, wide is to be used for things like this

        Posted by nicu | March 8, 2011, 11:45 am
  2. For high quality raw image processing I recommend . Rawtherapee is good but looks ancient and is limited to the basics, Darktable looks good but the quality of the results…

    Posted by nelu | March 15, 2011, 10:06 pm
  3. Answering some of the comments: RawTherapee to do the raw conversion, any day; Darktable for finishing/styling, any day. Horses for courses; don’t expect one tool to do it all from camera to print for you.

    FWIW my workflow is:
    1) multiple hand-held images in burst mode (each sharp, but with jitter between them)
    2) RawTherapee (per-ISO custom profiles including NR and up-scaling)
    3) enfuse –wEntropy=1 –wExposure=1
    4) Darktable for black&white, duotoned, grainy vignetted soulful finishing effects.

    I do part 1 with part 3 in mind: when a pixel is calculated from more than one source image, it’s bound to be of better quality (either lower noise (stacking) or higher resolution (super-resolution)).

    Posted by Tim | December 27, 2011, 3:41 am
  4. Critically misses mentioning Darktable as an alternative to RawTherapee.

    Posted by Moritz Moeller | August 15, 2014, 6:08 pm


  1. […] an application that runs in linux that allows me to adjust photo properties simply.  I read ‘Digital Photography Tools on GNU/Linux‘ and got some great suggestions for packages in Fedora.  I had installed Darktable a few […]

    Darktable - March 16, 2011

Post a Comment