This week has been all downtime due to family reasons. With little to do but wait and without access to the Internet (I really should look up those mobile Wifi router thingys from E-Mobile and B-Mobile) I've had plenty of time to fill up with something.
That something is filmcrop.
I use film cameras quite a lot, and scan the developed film for posting online. But while scanning software is good at the scanning itself, they're usually quite painful to use for anything else. In particular, VueScan, the software I use, is unable to automatically find and crop the individual frames from a scanned film strip, and manual cropping is slow and error-prone.
So I've written a small utility called — imaginatively — "filmcrop", that takes a set of scanned film strips and tries to crop them into individual frames. Scan the film strips all at once, then filmcrop will find the probable spaces between the frames and crop them all into same-size images for you.
It is a very early version. It only works on positive films for now; you have to reverse your scans first for negative films. I've only tested it on one single roll of slide film — that's all I had to test on this laptop — and it's likely to fail in interesting ways once I start using it for more scans.
Filmcrop uses Ruby and RMagick, the Ruby bindings of ImageMagick. It runs fine on Ubuntu 11.10; it should work fine on other Linux systems too, but I don't know how to make it work for OSX or Windows.
You can find the latest version — 0.1 right now — of the script on the Filmcrop page on Github. If you find it useful, if you have ideas for improvement or if you've found a bug, please drop me a line at email@example.com.