Ergonomy vs. features?

by

The endless dilema.

Though I am convinced it is possible to achieve highly complex actions through very little effort.

The problem rose again when I had to convince a newbie it was actually easy to use the photos out of my new dSLR camera. Generally the process to extract photos through a dedicated interface is long and tedious. However it is possible to achieve all that efficiently in a single click.

Look at the code below. Thanks to that I can:

  1. download photos from camera and sort them by date of day in folders
  2. remove possible duplicates if I did not erase camera images since last download
  3. convert RAW images to a usable format

All this in one single click!

#!/bin/bash

# Change this to where to store Photos
target=/home/multimedia/Images
camera=”USB PTP Class Camera”
date=$(date –iso-8601)
mkdir -p $target/$date/tmp
cd $target/$date/tmp
# Get all photos from camera
gphoto2 –quiet –camera $camera –port usb: -P
# Do not replace photos that were already uploaded this same day
cp -u $target/$date/tmp/* $target/$date
rm -rf $target/$date/tmp
cd $target/$date
# auto-rotate using exif info
exifautotran *.JPG
# If photos were not erased from camera since last upload, remove duplicates
for i in *.{JPG,CR2}; do
for f in $(find $target -name $i ! -samefile $target/$date/$i); do
if md5sum $f | sed -e “s, .*/, ,” | md5sum –check; then
rm -f $i;
fi
done
done
# decode RAW images if not already done ?
# for i in *.CR2; do if [ ! -e $(basename $i .CR2).ppm ]; then dcraw -w $i; fi; done
# Show them!
gimv -d $target/$date

About these ads

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s


Follow

Get every new post delivered to your Inbox.

Join 50 other followers

%d bloggers like this: