Data Compression

Introduction

Raw images require so much storage that some type of data compression is used for storage. For example, a 1024 x 1024 24 bit image require 3 Mbytes of space. A 640 x 480 24 bit image requires 1 Mbyte of space so a video that runs at 640 x 480 resolution with 24 bits of color and 30 frames per second (fps) would require 30 Mbytes of storage per second.

There are two types of data compression algorithms, one that maintains data integrity and one that does not. Lossless compression maintains data integrity, i.e., after compression and decompression, the resulting image is exactly the same as the initial uncompressed image. These techniques are also used for compressing data files and executable program files. Lossy compression does not maintain data integrity, i.e., the uncompressed image is similar to but not exactly the same as the initial image. There is a tradeoff between amount of data lost and the amount of compression. Lossy compression methods provide a higher compression ratio than lossless methods.

Another characteristic of data compression methods is symmetric versus assymetric. A symmetric method compresses and decompresses images in the same amount of time. This type of technique would be used for data transmission as in interactive video. An assymetric technique might take a long time to compress an image but the decompression would be rapid. Assymetric techniques can achieve much higher data compression ratios than symmetric techniques.

For Video or on-line computer animation there may be inter-frame compression as well as intra-frame compression. There will be reference frames, e.g. every 15 frames, and successive frames are stored as the difference between them and the reference frames.

Lossless Compression Techniques

Lempel-Ziv Welch (LZW)


Data Compression and Image File Formats
HyperVis Table of Contents

Last modified on March 29, 1999, G. Scott Owen, owen@siggraph.org