FaceSaver

Also Known As: None


Type Bitmap
Colors 8-bit
Compression Uncompressed
Maximum Image Size NA
Multiple Images Per File No
Numerical Format NA
Originator Metron Computerware, Ltd.
Platform UNIX
Supporting Applications FaceSaver
See Also None

Usage
A little-used format, but extremely simple and well-known, in part due to the fact that there is support for this format in the PBM utilities.

Comments
This is an interesting format to examine if you are implementing an ID card system or a similar type of system that deals with the storage of small images (e.g., people's faces).

Vendor specifications are available for this format.

Code fragments are available for this format.


The FaceSaver format was created by Lou Katz, and FaceSaver is a registered trademark of Metron Computerware, Ltd. It was created to hold video facial portrait information in a compact, portable, and easy to use form. It is intended to be printed on a PostScript printer. Outside the UNIX graphics world, it is known chiefly because it is supported by the widely used PBM utilities included on the CD-ROM that comes with this book.

Contents:
File Organization
File Details
For Further Information

The original FaceSaver images were digitized using a Truevision TGA M8 video board.

File Organization

Each FaceSaver file consists of several lines of personal information in ASCII format, followed by bitmap data. There must be at least two lines of personal information, and they must include at least the PicData and Image fields.

File Details

The personal information in a FaceSaver file can consist of the following fields:

FirstName:
LastName:
E-mail:
Telephone:
Company:
Address1:
Address2:
CityStateZip:
Date:
PicData:     width - height - image bits/pixel
Image:       width - height - bits/pixel

Following these fields is a blank line, which is required, and which separates the personal information from the bitmap data that follows it.

The bitmap data consists of ASCII-encoded hexadecimal information, suitable for printing on a PostScript printer. The data is stored in scan-line order, starting from the bottom and continuing to the top of the image, and from left to right. The image data comes originally from a video camera, and is first rotated 90 degrees before being written to a file.

Each pixel is transformed before it's written to the file by multiplying its value by the factor:

256 / (max - min)

where max and min are the maximum and minimum pixel values found in the image, respectively.

The Image field in the personal information above is used to correct for non-square pixels. The author writes:

In most cases, there are 108 (non-square) pixels across in the data, but they would have been 96 pixels across if they were square. Therefore, Image says 96; PicData says 108.

For Further Information

For further information about FaceSaver, see the file format specification included on the CD-ROM. You may also contact the author directly for additional information.

Lou Katz
Email: lou@orange.metron.com



Copyright © 1996, 1994 O'Reilly & Associates, Inc. All Rights Reserved.