Understanding Embedded Image Info
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.
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