Understanding Embedded
Image Info
Background
Ask someone to define
"digital photo" and they'll probably tell you some things about taking
photos on a digital camera, viewing them on a monitor, and printing them
on a printer. Let's face it, that's what most of us do: point,
shoot, view, and print. The "casual" digital photographer may
never realize that there is more to their images than the picture that
gets displayed or printed. There is a host of information stored
in most images taken straight from the camera. Of course the picture itself takes up 99% or more
of the data in the image, but do you know what else is embedded in your
photos? Let's take a look at some common embedded information to
see if it can help us in any way.
The image header
The file that contains your
image also has a header that contains information such as the file
format (JPEG, TIFF, etc.), the resolution of the image (3000 x 2000 for
a 6 megapixel image for example), how the image is encoded (RGB for
example), and some other useful tidbits that help software to decode the
photo inside the image file. In addition to this basic
information, "extended" information about the photo may also be included
such as whether the flash was on or off during the shot, the distance
from the camera to the subject, the shutter speed, aperture, and even
GPS information on some cameras. The information (both basic and
extended) is usually stored at the beginning of the file, hence the term
"file header". The actual photo is normally stored immediately
after the header in the file. Let's take a look at some common
types of "extended" information that can be embedded in digital photos.
Embedded EXIF information
By far the most common and
most standardized embedded image information is EXIF, short for
Exchangeable Image File format. Today nearly all digital cameras
embed EXIF information in each image. This information usually
includes dozens of parameters that describe the shot such as the shutter
speed (1/250 for example), the aperture (f/2.8 for example), date/time
of the shot, flash on/off, ISO equivalent film speed, and many more.
In addition to shot-specific information, there are also many fields
that get repeated from shot to shot such as the camera manufacturer,
camera model, lens type, firmware version, etc. Information such
as shutter speed and aperture can help in diagnosing problems such as
motion blur, depth of field issues, etc. If you are not familiar
with these terms and you tend to point-and-shoot most of the time, these
fields may be less useful to you. Some information, however, such
as the date and time of the shot can be useful to everyone since
file dates get changed and almost never indicate the date and
time that the actual picture was taken.
Some image formats such as
the Windows bitmap format (BMP) do not support embedding of extended
header information, so you'll find EXIF information in file types such
as JPEG, TIFF, or raw but if you save your images in an older format
such as BMP, TGA, etc. the header information may be "stripped" from the
file since the file format doesn't support it. Be aware of this should you resave an image in a
different format and find that the embedded information has been lost in
the copy. As with any type of file [header] format, EXIF has its
limitations. The EXIF data stored in photos from your digital
camera is mostly technical in nature and doesn't allow for much (if any)
end-user editing so you cannot really use EXIF to store user data or comments.
To view EXIF information stored in your photos, you can use a tool like
Qimage. Simply roll your mouse cursor over
thumbnails in the thumbnail grid in Qimage for example, and some of the
more important/common EXIF data will be displayed on the status bar on
the bottom of the window. To view some of the less common fields
from the extensive EXIF information in your images, try a dedicated EXIF
viewing tool like
Exifer.
Embedded ICC profiles
While the EXIF header in your images does have a
field called "color space", use of this data is very limited because the
only two values allowed in the EXIF color space field are (1) sRGB and
(2) unspecified. This basically means that there is no way to tell
what color space (ICC profile) to use if the color space is not sRGB (a
standard color space for the PC/Windows platform).
For this reason, an ICC profile describing the specific color space of
the image may be embedded in the file as well. When an ICC profile
is embedded in the image, most ICC aware (color managed) software
applications will automatically recognize the embedded profile by
reading it from the image header. If you are using a color managed
workflow, embedded profiles become quite useful because they take the
guesswork out of how to interpret the color in photos and how to
translate that color to your monitor and printer.
Embedded IPTC information
One popular data format called IPTC, short for
International Press Telecommunications Council, allows users to enter
their own data and have it stored in the embedded image header.
Developed initially for the journalism community, the data field names
can be a bit cryptic. As a result, some programs give the fields
more readable names that don't necessarily follow the standard.
IPTC allows the user to enter information such as keywords, description,
location the picture was taken, photographer's name, priority, etc. Many photo editing
tools allow you to view and edit the IPTC information in images.
One good thing about putting your own information into the original
image is that the image can be passed along to others with the image
itself unchanged. The ability to write comments and other
information into an image can give the photo itself more meaning to
those who may view it out of context.
Other embedded data formats
We round out our look at embedded information
with a few embedded data formats that were developed to help printers
reproduce more faithful color. First up is Epson's PIM (Print
Image Matching) and PIM II. Knowing that full color management
using ICC profiles can be more complicated than some users would like
due to availability of profiles (or lack thereof) for various devices,
Epson introduced PIM as an answer for matching the color from your
digital camera to the print. Once PIM was introduced, many
manufacturers started making their (newest) digital cameras PIM
compatible by embedding the necessary PIM info in the header of each
image captured by the camera. While not as robust and arguably not
as accurate as full color management using (accurate) ICC profiles, PIM
and PIM II do offer a way to transfer information like contrast,
saturation, lighting, etc. from the camera to the printer to allow the
printer to adjust to different image capture conditions.
About a year after the
release of the initial PIM from Epson, EXIF released their EXIF 2.2
format also known as "EXIF Print" at the time. A more
industry-wide and more standard format, EXIF 2.2 endeavored to encompass
much of what Epson's PIM was doing in a format that was already being
used by all manufacturers, i.e. a format considered by most as less
"proprietary". EXIF 2.2 offered capabilities similar to PIM with
respect to recording the image capture conditions to produce a better
print, but proved to be a bit less "automatic" than PIM because the
latter had a more defined workflow. PIM was seen by many as a more
defined solution whereas EXIF 2.2 or "EXIF Print" was seen as "here's
some data about the image: use it however you like".
So far, solutions like PIM,
PIM II, and EXIF 2.2 have yet to take off and solidify themselves as
the standard for managing printed color. In my own
opinion, the reasons for these solutions not taking root in the industry
as the be all/end all solution for printer color management are twofold:
(1) color management via ICC profiles is already the established and
accepted international professional standard for color management of
any device and (2) PIM and EXIF 2.2 solutions tend to be a
bit less robust and less "scientifically accurate" than using ICC
profiles. Both of these points are reasons that many third party
photo and printing applications do not support the special "plugins"
needed to decipher and make use of PIM and EXIF 2.2 printing.
A very robust and accurate international standard for color management
already exists through the ICC (International Color Consortium) in the
form of ICC profiles and third party add-ons for supporting ICC profiles
have been readily available for years.
Summary
Hopefully this article has
given you a taste for some of the information that can be embedded in
images from your digital camera. If any of the above information
appeals to you or you think that any of the mentioned data would be of
benefit to you, simply plug in terms like EXIF, PIM, IPTC, and ICC into
your favorite search engine and you can spend hours looking at
additional information and downloading tools to allow you to view and
manipulate the data. There's a whole hidden world of information
in your images that maybe you didn't even know existed. Sometimes
you don't know how useful the information can be until you have it in
front of you. :-)
Mike Chaney