Most folks here use Photoshop, Lightroom, and other commercial systems for their photo editing workflow. I thought I'd speak a bit about a purely open source workflow. It may not be as pretty, it may not be as polished, but it works for me. The tools I mention should work on most any operating system, closed or open (I use OpenBSD). This isn't a post to discuss why to use open source, but instead what kind of tools are available.
Popular tools for RAW open source editing tools these days are RawTherapee, darktable , and (far less popular) UFRaw. For JPGs, there's GIMP, digiKam, and Shotwell. darktable, digiKam, and Shotwell have powerful photo management facilities; while GIMP, RawTherapee, and UFRaw are primarily editors. In this post I'll talk about UFraw (specifically, nufraw), GIMP, and Shotwell. There are plenty of other tools---these are just those that I've used!
Let's start with getting photos from your camera. This part depends upon the camera---whether with an SD card reader, Wifi, and so on---and your system. I use the USB interface to my Nikon and download photos with gphoto, but most operating systems (or if not, then photo management tools) have facilities for doing this themselves. On OpenBSD, I have a hotplugd(8) script download images when I plug in my camera. It uses a notification to my window manager (i3) when the download is complete. This lets me get right back to work after a dive, with my photos ready for viewing and editing when I next take a break.
Once downloaded, my happy time begins with Shotwell. Not to make too much a point about it, but I consider this the "weak link" in my workflow: the tool is slow and buggy. Ideally I'd like something like macOS photos that lets me quickly cull, group, sort, tag, and filter my photos.
With sometimes hundreds of photos from a single dive, I use Shotwell to quickly cull out of focus and poorly exposed photos, grouping the rest into those I'd like to edit. Above we see a quite underexposed Cratena peregrina that looks ripe for some editing fun.
Next is the editing sequence. Shotwell has some editing tools, but I need to work with RAW images. At this point, some folks use darktable, some use RawTherapee, but I prefer pairing GIMP and UFRaw (nufraw). Shotwell lets me open nufraw with a keypress. There's a lot of benefit to working with groups of photos as allowed by darktable and RawTherapee, but I prefer editing one by one, letting each photo have its own flavour. I really like n/ufraw---the source code is simple C, so I can jump in and tune hard-coded parameters if desired.
Here, I'm able to colour correct, adjust exposure levels, saturation, and so on. Above, I've bumped the exposure and saturation, as the original photo is fully stopped down, and also boosted the highlights a bit and raised the black point. I'll often use nufraw to configure each layer of an image, then I send the image to GIMP by using the button in the lower right corner. Once pressed, GIMP picks up the image and I can fit it into my working image.
Here I have two layers: the first is the brightly-exposed photo on top then below is a much darker photo to fade out the vegetation around the subject. In this screenshot, I'm manually bringing in the lower layer with the "erase" tool. Most often, however, I use GIMP just to sharpen the photo and remove sediment and back-scatter. I also really like GIMP: not only is it a workhorse of a tool, I can also interface with a fairly straightforward plugin mechanism in C. I've written a few small plugins that let me despeckle regions by detecting closed regions of contrasting colours and blending with the surrounding colours. A fairly simple matter, but makes removing back-scatter from backgrounds much easier!
Not a bad result---a bit gimmicky, as I've dropped the background a bit too much, but sometimes it's fun to play with our images. If this C. peregrina were to have a voice, it would be whinnying majestically. I follow up by exporting the editing results into a new photo alongside the old one, which is picked up again by Shotwell. I then break apart the originals and the edited files.
I'm happy with ufraw and GIMP, but recently have considered whether using RawTherapee might be more efficient than sending from ufraw to GIMP. As for Shotwell, the question is not if it should be replacement, but simply by what!
Do you have any tips, tricks, or experience with open source workflow that you think I might use?