Last week at COBA, I presented on my annotated image library. After one and a half years, I have reached the end of arduous task of annotating 77,500 images. I’ll write about what I covered in the presentation in a future entry; right now, I want to talk about a recent project, Annotation Copier.
One thing that has been annoying me to no end is the fact that derivative versions of an image often lack the metadata that I worked so hard to enter. By derivative, I refer to an image that’s been converted or processed using several programs such as Capture One, Photoshop CS, DPP, and iView. If you stick to using just one program to do annotating and processing, you’re fine, but the minute you add one, two, or three more programs to the mix, things can get lost in the process.
Enter Annotation Copier. I’ve been honing my AppleScript coding skills lately on various projects, and I’ve finally gotten around to tackling this problem. As you might guess, Annotation Copier is a script that copies image annotations from master iView catalog(s) into new images of the same filename. Since I use the filename as the unique identifier, if the derivative images’ filenames were to ever change, I would have to modify the script to refer to the EXIF capture date. In my informal testing, doing this would slow down the script quite a bit due to the extra work that iView has to do.
For 154 images, it took Annotation Copier 161 seconds to copy annotations into the new images. For a recent wedding that I shot, 553 images took 584 seconds. So, it looks like it takes a tiny bit over a second per picture. I attribute the slowness to two factors:
- AppleScript’s inherent slowness
- 4-year old computer
To increase speed, I’ll probably end up rewriting Annotation Copier in PHP to access my online (currently MySQL) database. I’ll wrap it around a nice AppleScript Studio GUI and call it a day. Doing so will provide a good balance between user friendliness and speed. Until then, I can live with a one second per image annotation copy.