03 September 2015

How I organize my photos

Not long ago, there was a talk about how people deal with their photos: organize, edit, archive and such, and I gave then a partial answer. Why partial? Because I follow two slightly different processes, one when the photos are made for fun and the other when they are for work. Since that answer was partial and made behind a walled garden, I feel the need to expand it in a public piece. I don't pretend what I do is perfect, actually I recognize some flaws myself, but I got there after years of improvements and is not final.

As a sidenote, I do use a Linux desktop, MATE under Fedora, and almost exclusively Free Software, GIMP, darktable, ImageMagick, UFRaw, G'MIC, but what I do is pretty generic, can be done with various other tools. I may follow with another piece on using these tools.

Fun is fun

organize photos

When I talk about pictures made for fun, I mean they are not made for a paying customer, period. This can include anything from photos made for exhibitions, snapshots with the daughter, pictures for my blog, for Wikipedia and whatnot. Usually I take them with an older APS-C DSLR, a Canon 600D, but sometime I bring the FF DSLR. For the most part, I try to protect the better camera, but sometime I am lazy and grab whatever is closer or greedy and want prettier pictures.

The first thing to be noted is that for fun pictures, in the large majority of cases I shoot in JPEG. ...yes, I hear the outrage for such a blasphemy, but the truth is, JPEG is good enough for most of those pics, RAW would be a waste of space and time. When I feel the shoot is important or the light is really difficult, I do use RAW, even for fun pictures.

As a matter of discipline and to keep myself in shape, I try to take pictures as often as possible, ideally every day, and as soon as possible I download the pictures in my computer and then erase the memory cards. The camera has to be ready at any moment to take as much pictures as possible.

I do not use any fancy software to organize the pictures, just the file manager and a directory structure. Of course, it helps that the file manager, with the right plugin, can display thumbnails even for RAWs. The photos made in a day go into a folder with a name like YYYY-MM-DD, for example yesterday pics are in the folder 2015-09-02. Sometime, when I want to find the folder easier, I add a keyword, as there I have a 2015-08-14-seaside

organize photos

As soon as the pictures are downloaded, I try to process them - the next day probably others will come and the newest are always the most exciting. So, I enter the folder and delete some pictures: those which are failed or boring. I still don't delete enough (or still take too many), but I'm getting there, improving continuously (space is cheap, some will say). From the too many undeleted pictures left, I copy a few in a working folder, to be edited and then published. Every year I have a new working folder, and when there are more pictures from a certain event (say, more than 10), they go in a subfolder.

Almost exclusively I edit my 'for fun' pictures with GIMP, this is the editing software I feel the most comfortable with and the one that gives me the most control. There are not many pictures, so I can take my time with them. If there are RAWs, GIMP will call UFRaw for the import, and in the rare cases it is needed, G'MIC will provide some advanced filters. For batch operations like mass-resize or mass-watermarking, there is ImageMagick.

Speaking of watermarks, I almost never do it, but there are are a few exceptions, like the pictures which I suspect have the potential to be 'stolen' by newspapers (it happened a few times, even with watermarked pictures). I firmly believe a watermark will destroy the image, so I try to avoid that.

Again, because next day may come with another pictures, I try to publish my photos as soon as possible. Still, I don't want to spam my viewers, so sometimes there is a delay. For the photography blog, I don't post more than 4 items a day, and for photography sites (the likes of 500px) I post only once in a while. Social media is something I still have to work on: I lost a lot of readers (or at least interactions with readers) a couple of years ago, I blame the loss on posting too much and try to work on it. Publishing go hand in hand with license, so almost everything shoot for fun is published under a CC-BY-SA license: free to use, free to modify, free to almost anything.

Of course, there is archiving. From time to time (not on a schedule, mostly when I run out of space) I move the unedited pictures, with their directory structure, from the computer's hard drive to two external drives, in a manual process. The edited pictures stay on the computer for the entire year, maybe even next year. They have copies online and at least the copy on G+ is high quality (do you know Facebook destroys your pictures with aggressive compression and metadata removal?)


As I said before, I recognize some flaws. The most important couple of them:

  • I do not have continuous backup, there is one only when pictures are moved to the external drives. What is currently on the computer is at danger of data loss. Still, they are 'for fun' pictures and I am lazy, so the loss won't be huge, only at most a few weeks of 'for fun' pictures;
  • When I am away for a while, in a trip or vacation, I can't properly process the photos, so when returning home a lot of work will pile-up. For a while I will have to process both old and new images.

Work is serious

organize photos

For work, you have to deliver the best result from a technical point of view, so when there is a paying customer I use my full frame DSLR, which happens to be a Canon 6D, a camera recognized for its good low-light performance. As for shooting, the pictures are taken as RAW and JPEG. JPEG is there as a backup, while the RAW is the one to be edited. Here I need 1) to get the most possible from the pictures and 2) deal with low-light situations which happens a lot when doing event photography.

Again, as soon as I get home, I download the pictures from the memory cards. But this time I do not delete the cards, I put them in a closet, to have a backup somewhere until the processing is done. Processing the photos for an event may take up to a few weeks.

I have a different directory hierarchy for the work photos, so I copy there all the files, in a directory named after the specific client or work. If the work was an event, the first thing is to make a quick and small selection (10-20 pictures) which I edit fast and deliver the same day, as a preview. The idea is for the client to have something really fast, and if he wants to post pictures on social media while it's hot, he can post pictures from me, not some crappy phone-made images.

Then I parse the files with the file manager and its native image viewer, deleting only very few, and make a selection with images to be edited and delivered. From this selection I copy all the RAWs in a different, working folder.

organize photos

Considering the large amount of images (for a wedding it can be around 1000 pictures), editing with GIMP would be a poor option, so I use darktable instead. After a few days or weeks, depending of the size of the work, images are exported with darktable at a resolution good for large prints. Then for some images that I think need more advanced editing, I open and process them further with GIMP.

After that, I deliver to the client the images, in two sets: one at big, printable, resolution, and another resized for web use. Of course, there is no watermark in sight, the client paid for the images, they are not to be tainted in any way.

If the job requires it, then I start working on the printed album. Here the work is done with GIMP ...blasphemy I hear again? Why not use Scribus? Simple: the print shop requires sRGB JPEGs, and they do a very nice job with that. When there is to be made an engraving on the album's leather cover, I prepare it with Inkscape and save in a vector format (PDF/EPS).

Only after the printed album was delivered to the client I can consider the job done. Then I move the files (sources, edits, album pages) to the two external drives and erase the memory cards.

Of course, somewhere during this process, when I get the time, a few pictures are added to my online portfolios. I have to advertise myself, right? This time, as the images are made for the client, the license can't be a free one. Sorry for that, I wish clients open to free licenses, I would offer a discount for that.


  • Since there is a lot of time from when the pictures are taken and until I get them in the backup system, for a while the memory cards are the backup. I could probably change that and save them faster;
  • I still have a lot of work to do with promotion.

organize photos


  1. As a fellow photographer it hurts me to hear you do not have instant backup. If Crashplan is available in Bucharest, I find them to be quite a great deal. In the USA, it's $50/year for infinite space (I have 4.8TB backed up to them). Or $110/year for unlimited computers and infinite space. I picked them because they run on Linux/Mac/Windows. I used to use BackBlaze, but it only runs on Windows.

    1. duh! if hardware is available, one can use rsync or such. as for having my data backed-up on the cloud, thanks but no, i'm not interested on that.

  2. The MWG would be horrified. All their good work gone to waste. ;-)

  3. Thanks for sharing.

    First thing I do is to rename all photos to a more meaningful filename (but keeping the original filename in an EXIF tag):
    exiftool -overwrite_original '-OriginalFileName<${filename}' *CR2 *JPG *jpg
    exiftool '-filename<${DateTimeOriginal} 【${Model}】%-c.%e' -d %Y.%m.%d-%H.%M.%S *CR2 *JPG *jpg

    Then I use Picasa on a Windows VM or my Mac because it makes bulk editing and tagging much easier.
    I use GIMP rarely because I'm not super fluent on using it.
    One of Picasa's most powerful feature is face detection and XMP tagging (with people's names synced with my Google Contacts). Once I have hundreds of photos face-tagged, I can recursively search for fotos of Tatiana or Maria like this:

    exiftool -fast -r -T -Directory -FileName -if '$RegionName=~/Tatiana|Maria/' .

    Other Picasa features that I use a lot are batch auto contrast and easy red-eye remover.
    I'm not a professional photographer, I don't take raw pictures, so Picasa is enough for me. But the lossless tagging features of Picasa are very practical.

    I also geotag all my photos using the GPX track constantly recorded by the super useful Moves mobile app (https://moves-app.com/) from my phone. I export my data from their website and do this (-08:00 is the timezone where photos were taken):

    exiftool -api GeoMaxExtSecs=86400 -geotag ../moves_export/gpx/yearly/storyline/storyline_2016.gpx '-geotime<${CreateDate}-08:00' Folder_with_photos_from_Las_Vegas_trip

    Of course your camera clock must be correctly set with seconds precision. If it was not, during the photo session, there are techniques to batch fix your photos time and date.

    And I store photos in filesystem like this:
    National Trips/YYYY-MM Trip Name
    International Trips/YYYY-MM Trip Name
    Party and People/YYYY-MM-DD Event name
    Party and People/YYYY-99 Camera Roll # general everyday photos taken during year YYYY

    About backup, I use rsync to backup both to a secondary disk and to a DreamHost account with infinite storage for $120/year.

    I can't live without exiftool. On Fedora its on package perl-Image-ExifTool

    1. interesting to see your usage pattern, which is radically different from mine