Tuesday, 25 March 2014

Open Source Raw Photo Software

I have a secret. Not a very well-kept secret. I'm a big fan of open source, or free software. What? The idea is "free as in freedom, not as in beer": programmers create software and licence it such that anyone can use it, copy it, distribute it, change it for whatever purposes - so long as the resulting software is licensed to preserve these same freedoms. This allows rapid evolution of software, created by often disparate communities of people, which attracts big communities from a spectrum of people from end-users to co-developers, all feeding in their ideas.

Yeah yeah, but this is about photography

Turns out there's lots of coders who are also really into their photography. We were talking about "shooting raw" the other day. We explained that a camera's raw file is the data as received at its sensors, before it's turned into a (typically JPEG) picture by the camera's own software.

Each tiny dot in a digital image (a pixel) is given a code to represent its colour. In a typical JPEG file each pixel can be one of about 16 million colours. The raw data from the sensor is usually providing around 4,400 billion colours per pixel.

We can't see that many colours, and for the final output a JPEG is perfect. Just. And if you're happy with what your camera produces and you don't need to alter it (e.g. adjust contrast, black point, brightness, saturation, white balance etc.) then all is well. But if you do want more creative control then starting from a JPEG is like trying to create Michelangelo's David out of lego bricks.

Above: the JPEG the camera made.
Note the lack of detail in the
petals - they're just red blobs.
Below: an image produced from raw
showing the detail that the camera
lost.

The task of converting the raw sensor data into a finished image therefore involves picking which bits of that enormous quantity of information to throw away. Once it's gone, you can't get it back. So for me, the digital darkroom process - that of taking the raw data and turning it into the final image yourself - is really important.


Where do I start?

First, find the setting on your camera that keeps a raw file. Many cameras have a JPEG + raw setting, so you get the best of both worlds - if you're happy with the camera's JPEG you don't need to spend any time (and it will take time, lots!) with the raw files. Raw files come up with a different file extension, e.g. my Cannon produces .CR2 files; previously my Fujifilm camera made .RAF files.

There are loads - probably dozens - of open source tools for working with raw camera images ranging from the simple to the definitely not simple. Which you choose will depend on your operating system (e.g. do you use Windows, Mac or Linux?).

My favourites in order are:
  1. darktable - Linux | Mac
  2. Raw Therapee - Linux | Mac | Windows
  3. LightZone - Linux | Mac | Windows
Most programs that deal with raw files aren't like Photoshop - they don't provide you with ways to airbrush this or put text over that. They're focused solely on  perfecting a single image. They mostly come with some sort of file manager/light table tool built in - workflow is really key to anyone doing this stuff a lot, and each is quite different and can take a while to get used to. Darktable's is particularly confusing at first!

At first you'll be dismayed that you can't even do anything. Then you'll be upset that after an hour on one photo the camera's version is still better! And you'll definitely wish your computer was faster. But eventually you'll come to love the fine control and fidelity it gives you.

Darktable and LightZone share a really useful feature in that you can apply many of the tools selectively and multiple times. This is really nice. You want to treat the shadows different to the highlights? Fine. You want to treat skin tones separately? No problem.

Did you know?
  • A lot of people write raw like RAW. These people probably like SUSHI. It's not an acronym, it's just the word raw, meaning unprocessed.
  • That colour you see on your monitor is not the same as on mine. Unless we both have our monitors and graphics cards calibrated and profiled. This is a massive topic, but basically you need special colorimeter hardware to be able to reliably work with colours. The danger is that if (typically) your screen is overly blue, you'll over compensate by making an image that's too warm. Or if your screen is overly warm (Mac users) you'll make your images too cold. Most inexpensive screens can't even display all the colours described in a typical sRGB image.




4 comments:

  1. Bring out your inner geek and delve into the digital darkroom!

    ReplyDelete
    Replies
    1. Hi Rich you give a very convincing point of view, the reason in the past I have stuck with jpeg has been just archiving space and easy of viewing / working on images, but the difference on the detail you show pictures is very convincing.

      Delete
  2. hey Rich would you like to write this up for the OSP blog, it could almost be a cut and paste from this but you could be a guest contributor

    ReplyDelete
  3. Yeah sure, let me know how to go about it.

    ReplyDelete