I am searching for a tool, that extracts meta data out of raw images produced by a digital SLR (in my case Canon EOS 550D).
The photos can be converted by a recent version of ufraw (here is the PPA for that).
With my compact camera I simply use exif, which only works on jpg and does not work with raw images.
Any hints?
From the description of the package
exifprobe
:Does that work?
I would use exiv2 tool this is the same library as ufraw/darktable uses for accessing exif data in raw images.. http://www.exiv2.org/ which also does support some MakerNotes from manufactors such as Nikon/Canon. With exiv2 it also possible to look at some advanced technical data about image. For example
will output all tags as
tag hex code
tag name
tag data type
tag plain data
tag interpreted data
which contains, for example, ColorMatrix and CameraCalibration values.
From your comment I get it that what you ultimately want to do is renaming the file based on the date. If that's the only reason why you want to use a commandline tool instead of a GUI, you could try phatch (in the repositories) instead of doing the EXIF extraction/file renaming yourself.
Phatch allows to batch process images (i.e. perform a set of actions on every image in a folder for example). One of the possible actions is rename and you can use Variables like
<Exif_Image_DateTime>
to rename it based on the EXIF data. Once you defined and saved your list of actions, you can also use phatch from the commandline.If I were you, I'd consider writing a little Python script to do this, pulling in
pyexiv2
. It's extremely easy to use:Note: Different cameras use different fields for dates. Check first to see what keys are available.
It should support raw images. I know it does for the NEF raw files my Nikon creates.
If it doesn't, do you have JPEG versions too with similar names (ie different extensions)? Even if it can parse your RAW files, it might be worth ticking through the JPEGs for its EXIF data because it'll likely be a bit faster.
Tip: You can use the Python shell instead of having to write a "proper" Python script. This is good for testing things out but if you want something you can use over and over again, you probably want to write a script.
My favorite answer for fussing with EXIF data is exiftool. It's portable, free, open, written in Perl, and can be used as a Perl module for those so inclined.
It even works on Windows.