Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am looking for free, preferably open, alternatives to ACDSee for batch editing work. While I can do much of the work well on ACDSee, it's not entirely satisfactory despite having to pay for it. I need at least the following batch editing functions:

  • Resize using either height or width while maintaining aspect ratio
  • Auto contrast
  • text overlays
  • and occasionally, cropping
  • oh, I make extensive use of renaming features as well

Couple of issues with ACDSee are: I always need to highlight the Exposure section or auto contrast will not be done despite it being saved in the preset; and I can't define, move around the cropping box, forcing me to manually crop tons of images.

I'm not an advanced, or "power photo-editor". I only require the basic stuff I described to be automated. My personal feature wish list (I'm pretty sure something so niche doesn't exist) would be text overlay based on the image names (images are named as image-1_1, image-1_2 or image-2_c1_1, image-2_c1_2, and text overlay would Image-1 and Image-2 C1 and Image-2 C2).

I tried digiKam, but damn that thing is huge. It runs very slowly on my Pentium 4 and 1.5 GB RAM. On top of being a program with over 1 GB of files, the KDE library it uses is always slow regardless of it running on either Windows or Linux.

share|improve this question

If you're not afraid of typing commands and learning some very basic shell scripting, ImageMagick is a immensely powerful command-line driven open source suite to manipulate pictures available also for Windows. With it you can, among other things, do just what you asked:

It is available on Linux and Mac too, so if you'll ever switch you will find the same tools everywhere.

share|improve this answer
By the way, all of that documentation could look overwhelming. Here's a quick introduction to the basics features: Here's a guide tailored to Windows users. – Dakatine Jun 25 '12 at 9:27
Well, I would love to use Linux, but tagged the question as Windows as that's where I need to edit all those images. – Oxwivi Jun 25 '12 at 10:22
Yep, I've created batch jobs in the past to automate the production of web-ready images: resizing, reducing the size, adding watermark text. However, see my note below about renaming using the embedded EXIF data. – Julian Knight Jun 25 '12 at 10:27
@Oxwivi it does work in Windows, too. That's why I suggested it. If you read my comment above, there's also some documentation specifically tailored towards windows users. In fact, when I wrote "it works on Linux and Mac too", that meant implicitly "other than Windows". – Dakatine Jun 25 '12 at 11:19
Ah, I see. Sorry about that and thanks. – Oxwivi Jun 25 '12 at 16:28

Maybe IrfanView can do some of that for you. I like using it for the occasional batch processing of images.

Batch processing overview

IrfanView batch processing dialog
click to enlarge

Renaming options

enter image description here

share|improve this answer

I agree with @Anal that ImageMagick is the basic tool that you need.

However, I wanted to add a couple of tools that I use for batch renaming. When importing loads of images from cameras, I like to rename to a specific format

2007-05-30 13-24-05-Canon PowerShot A720 IS.jpg

Which allows me to have folders with shots from several cameras taken at the same time without clashes.

To do this, I use 2 tools:

I use jhead for most of the renaming tasks for standard images but it doesn't work well with Nikon RAW and some video formats, exiftool is used for that.

Using these, I can rename based on the embedded timestamp & camera type and I can also set standard IPTC fields such as by-line and copyright if I want to.

I use a shell script to do all of the repetitive donkey work.

These tools & ImageMagick are also cross platform if needed on Linux & Windows. I tend to use them via Cygwin on Windows but only because it allows me to use the shell script. You could just as easily do it all with a Windows command batch script or even get clever with an HTML Application script (.HTA) which could give you a GUI very easily.

Here is a snippet of the script:

case $1 in
    echo ' '
    echo 'Rename a folder full of files to match the date/time taken and the camera model:'
    echo '  "IMG_0001.jpg"   ==>   "2007-05-30 13-24-05-Canon PowerShot A720 IS.jpg"'
    echo '  Adds a letter to end of name if the result is not unique'
    echo ' '
    echo 'Please use as:'
    echo ' folderName [t]'
    echo 'Where:'
    echo '  folderName is absolute or relative to current folder'
    echo '  t, if present prints the command that would be used'
    echo ' '
    echo 'Requirements:'
    echo '  1) jhead (detects camera type)'
    echo '  2) exiftool (renames non-jpg files)'
    echo ' '
    echo 'Use the following workflow:'
    echo '  1) Copy files and folders from the camera(s) to a temp folder'
    echo '  2) Run this against the temp folder and check the renames'
    echo '  3) Manually rename any left-overs'
    echo '  4) Add IPTC comments, locations, etc.'
    echo '  5) Run '
### ---> sort out folder names and other stuff here <---- ###
# There are a number of these kinds of lines for different cameras
jhead -model A70 -exonly -nf'%Y-%m-%d %H-%M-%S-Canon PowerShot A70' -ft *.jpg
# Deal with .NEF (Nikon Raw) files (rename to YYYY-MM-DD HH-MM-SS-NIKON D90-DSC_????.NEF)
exiftool '-FileName<${CreateDate}-NIKON D90-%f.%e' -d '%Y-%m-%d %H-%M-%S' DSC_????.NEF
# Use %c to add seq num where required

I've always meant to get round to replacing jhead with just exiftool - one day perhaps!

share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .