# Monday, March 09, 2009

While my Windows Mobile phone is fantastic at synchronizing data with my PC and operating seamlessly with Exchange, it does lack in some of the non-business areas. Most frustrating for me lately: no EXIF information on the pictures it takes.

What is EXIF data and why does it matter? EXIF (Exchangeable image file format) is a standard that specifies, among other things, the metadata tags included in image files. The key bit of metadata that my camera pictures lack is the date and time I took the pictures. The pictures do have a date & time they were modified, but not having a separate entry for when the picture was taken leads to the date information being lost when the pictures is edited or copied to another PC. As a result, I have a lot of pictures from my camera phone like the example below, created in 2009, modified in 2007 and I have no clue if I took the picture on either of the dates... or some completely different date and time.

image

(Oh, by the way, iPhone owners, this is one more thing you can use to taunt your non-iPhone owning friends about: the iPhone adds EXIF data to the pictures.)

While I may have lost the historical data I haven't given up on my future pictures. I'm now using an excellent app from Phil Harvey, ExifTool. This powerful command line app allows me to preserve the date taken by copying the modified date to the date taken. In the process of adding the date taken I am also adding extra info to indicate what phone I used and correcting the time taken since my pictures are all date stamped in GMT (no, I don't know why, I've stopped being surprised by stuff like this).

Downloading and installing ExifTool

ExifTool is Perl based and will work on Unix, Windows or Mac OS X, your install steps will depend on your platform. From the ExifTool home page you can pick the version you want, Windows and Mac users will want to get the platform-specific version for simplicity. The Windows executable is a single file "install." Unzip the download and you have an EXE file, there is no installation or required dll's. Clean & simple (monolithic is good, right Jud?).

Creating and/or changing the date taken

Once you have ExifTool, creating date taken info based off the file's modified date is a simple command line operation.

  1. Open up a command window.  If you're using Windows, bring up the command line by clicking the start menu and typing "cmd" (for Vista or Windows 7) or selecting run then typing "cmd" (for XP).
  2. Change directories to the location you saved ExifTool (e.g. if it's in your documents folder, type "CD C:\Users\ME\Documents\ExifToolFolder").
  3. Create a date taken by coping it from date modified like this (you'll need to specify the path to your picture):
    exiftool.exe -"filemodifydate>datetimeoriginal" c:\Users\Me\Pictures\picture.jpg

Straight forward enough, no?

(Almost) unlimited power

Now that you have the basic info you can go crazy. Unlike the EXIF editing capbilities of most photo software (like PhotoShop or Windows Live Gallery) ExifTool allows you to create/edit fields like the camera's manufacturer. 

  • ExifTool can make changes to an entire directory of files by replacing the path to a picture with a folder path (e.g. exiftool.exe -"filemodifydate>datetimeoriginal" c:\Users\Me\Pictures\).
  • You can make relative date changes to files with -datetimeoriginal. For example, I need to take 7 hours off the time for all my pictures with -DateTimeOriginal-=7. You can also make changes in years, months and days if your camera clock was reset by mistake .
  • You can move files with the directory parameter, allowing you to move files from a temp directory after they've been corrected .
  • Since this is a command line tool it's really easy to create a batch file to make a whole list of changes .
  • Get plug-ins to use ExifTool from inside your some of your favorite apps like Photoshop or Lightroom.

To help make the process auto-magic for myself I've created a batch file which creates the datetimeoriginal data, adds the camera model and maker, corrects the time taken and, finally, copies the pictures from the staging folder to their final location. I have this batch file set to run periodically using a scheduled task. Now I just need to learn to have the scheduled task be triggered by new photos showing in the staging folder. smily face

 


Posted by Reeves  March 9, 2009
#    Disclaimer  |  Comments [0]  
# Tuesday, February 10, 2009

If you’re shooting in RAW format you have the luxury of tweaking white balance as you open your images. This can allow you to adjust for camera inaccuracies or even for artistic effect. If, however, your image is a JPEG you're not out of luck.

My old D100 still takes decent pictures but it certainly ain’t fast. If I shoot RAW it literally takes eight to ten seconds to write an image to memory. When trying to take rapid fire pictures of a running greyhound this doesn’t cut the mustard (though one could argue the merits of mustard cutting). Yesterday I was taking pictures of Finney romping in the snow and found the morning light plus snow combo had confused the heck out of my poor, senior citizen of a digi-cam. Everything came out with a blue wash. Fortunately my buddy Rob showed me this common and easy technique.

Pick an area that has both black and white areas (or areas that should be white) and zoom in. You’ll be using an eyedropper tool, so zooming in will allow you to pick the right spot more easily.

From Photoshop's Image menu choose Adjustments > Levels. This will bring up the levels window with a histogram. First thing you’ll do is grab the little white tab on the right side of the histogram and start dragging it to the left.

As you drag you’ll see the image becomes more and more washed out. The goal is to emphasize the blackest of the areas on the picture. Once you’ve identified the blackest of the areas on your image you’ll use the Set The Black Point dropper (the black dropper from the levels window) to sample your new "black". Once you take the sample the image will go back to looking more normal.

Next repeat the steps by grabbing the black slider to the right. This will darken the image to allow you to identify the whitest of the white areas in the image.

As with picking the black areas, you’ll need to play with the slider to get the right contrast, then use the dropper to pick the location you’d like to define as white. Once you use the dropper the image will once again snap back to "normal". After picking the white level, however, the color issues should be largely fixed in your image. Here’s a before/after comparison of the picture with the as-shot on the left and the corrected on the right.

But hey, right next to the Levels menu item is an Auto Levels item. Why not just use that? Actually, there’s no reason not to try it out. It will often correct the color just about as well as this manual technique and take a fraction of the time. The auto levels correction, however, is not quite as accurate and I find the results from the manual method give me an image that looks much more the way I remember the scene in my mind’s eye. I do, however, often just blast through a bunch of pictures using auto level when I’m trying to speed through a big batch.

I owe two thanks to Rob for the above. 1. Thanks for showing me how to do this. 2. Thanks for taking such awesome pet pictures and inspiring me to point my camera at Finney and try to capture some of his personality.

If you live in the bay area and would like to get pictures taken of your pet, your first (and only) stop should be Murphy Dog Studios. Rob is a wonderfully talented photographer and he loves pets (his business is named after his late lab, Murphy). Don’t worry, if you don’t have a dog, or even a pet, Rob can shoot just about anything. Check out his amazing sports photography too.

 


Posted by Reeves  February 10, 2009
#    Disclaimer  |  Comments [1]  
# Sunday, February 08, 2009

... and a faster shutter speed.

I made my first attempt to take pictures of Finney playing in the yard today, but most of the results were blurry. In retrospect I should have set the camera to shutter priority before getting him worked up (I just used full auto for my first try to see what came of it). When trying to chase a dog who can go over 40 Mph it’s just not going to cut it if your shutter speed is 1/90. Um duh. Oh, also, if you're chasing a fast dog with a camera, you better not be worried about looking like an idiot.

When he’s not romping, Finney’s preferred place is Velcroed to my thigh.

Another photographic note for myself: If I want a keeper picture, don’t wear an old sweatshirt with frayed sleeves. smily face

 


Posted by Reeves  February 8, 2009
#    Disclaimer  |  Comments [0]  
# Sunday, January 25, 2009

If you record cable TV using Windows Media Center you may have wondered about recording high definition signals off the cable (or, like me, struggled unsuccessfully to make it happen). If you’re willing to take the beta plunge, Windows 7 has made getting some high-def content off your cable a lot easier.

First, the hurdles: you’ll want to do this only if you’re willing to run beta software and are not afraid of using RegEdit. To get it done without running a beta operating system you can track down the TV Pack for Vista Media Center (code named fiji), some other software and do some registry changes. If you believe the forums, upgrading Vista is more work (clean install plus two additional software installs), however, than running Windows 7. Windows 7 is just the singular install… but keep in mind you’ll need to be ready to buy it when the full version comes out.

The whole process was completely painless for me. I needed more hard drive space so I just took the old drive out to be an easy backup. I put in a new, bigger hard drive, installed Windows 7 Beta then headed over to Mike Wren’s blog for the registry setting for my card (Hauppauge HVR 1600). A quick reboot later and Media Center could see the clear QAM channels! Sweet! No more weather interference when watching local high definition broadcasts. 

Keep in mind, this doesn’t mean you can get all the high definition channels. Even if you subscribe to HBO (for example) the signal will be encrypted. Clear QAM is the unencrypted digital content broadcast over cable. For Comcast in my area this is our local stations in high definition as well as standard definition duplicate versions of some other channels (like Speed). It’s worth noting, just because it’s digital, it doesn’t mean it’s high definition. If you want to get all the content off your cable you’ll need to pay the big bucks for a CableCARD approved Vista PC. If, however, you’re like us and you really only care about HD from the major networks this does it.

 


Posted by Reeves  January 25, 2009
#    Disclaimer  |  Comments [0]  
# Wednesday, January 21, 2009

It's been a while since we had a dog and this past summer Paula and I started researching greyhounds. It took us a while to be ready to get a new dog, but this past weekend Paula and I adopted an ex racer from from a local greyhound rescue organization.

Ex-racers are very used to competing with other dogs for human attention, so they tend to be very attentive. They do, however, need some time to get used to being a member of a family and living in a new environment. So right now, he just sleeps most of the time. 

Our new family member has a number of Irish ancestors, and since we had been in Ireland for a while we decided on an Irish name for him. Finian (pronounced fin-yan) is Irish for "white haired".

 


Posted by Reeves  January 21, 2009
#    Disclaimer  |  Comments [0]  
# Saturday, January 17, 2009

Discovering that Raggedy Andy liked playing with dolls more than girls, Raggedy Ann went on a 3 day bender, heading to rehab only after making a scene for the paparazzi.

 


Posted by Reeves  January 17, 2009
#    Disclaimer  |  Comments [1]  
# Friday, January 16, 2009

Ever had a folder full of files and needed a text listing of all those files? Here’s a quick n’ dirty way to do it.

image I have a whole folder full of new icons for the next version of SharePoint and need to check them into source control. The big pain here is that I’ll need to go into source control and type in each file name to unlock it for editing, copy in the new file, then type in each file name to check it in. If, however, I had a list of all the files I could make a quick batch file to do it for me.

  1. Open your command prompt (on Vista, type cmd then right-click and run as administrator)
  2. Change directories to where you need a listing
  3. On the command line type: dir /b > filename.txt

Windows will create a new text file named “filename.txt” (you can name it anything you like on the command line). One thing to note: your text file will be included in the list, you may want to remove that line before using it to do any bulk operations. Enjoy!


Edit: A good reference for directory listings: http://www.computerhope.com/dirhlp.htm

 


Posted by Reeves  January 16, 2009
#    Disclaimer  |  Comments [0]  
# Wednesday, January 14, 2009

After setting it aside to prepare for Christmas, I finally shipped off my Xbox for [free] repair of the three rings of death. It’s now in the hands of the hardware pixies and I hope to have it back soon!

Fortunately I haven’t been completely without fraggy goodness, I do have a second Xbox. It is, however, a European Xbox so won’t play some titles. I don’t think I’ll get to see Trina online again until I can play Rock Band.

 


Posted by Reeves  January 14, 2009
#    Disclaimer  |  Comments [0]  
ss_blog_claim=73fdb325cd97b8c66954cf4e895da7f4