Image Compression and Decompression

This section describes the applicable functions for compression/decompression standards such as JPEG, MPEG video, and H.26x.

Forward and Inverse DCT Functions

IMGLIB provides forward and inverse DCT (Discrete Cosine Transform) functions. These functions are applicable for a wide range of compression standards such as JPEG Encode/Decode, MPEG Video Encode/Decode, and H.26x Encode/Decode. These compression standards are used in diverse end-applications:

Note that the inverse DCT function performs an IEEE 1180-1990 compliant inverse DCT, including rounding and saturation to signed 9-bit quantities. The forward DCT rounds the output values for improved accuracy. These factors can have significant effect on the final result in terms of picture quality, and are important to consider when implementing DCT-based systems or comparing the performance of different DCT-based implementations.


High Performance Motion Estimation Functions

The following functions are provided to enable high performance motion estimation algorithms that are used in applications such as MPEG Video Encode or H.26x Encode.

Video encoding is useful in video-on-demand systems, streaming media systems, video telephony, etc. Motion estimation is typically one of the most computationally intensive operations in video encoding systems; the provided functions are highly optimized to significantly improve such systems.


Quantization Functions

Quantization is an integral step in many image/video compression systems, including those based on widely used variations of DCT-based compression such as JPEG, MPEG, and H.26x. The function provided below may be used in such systems to perform the required quantization step.


Wavelet Processing Functions

Wavelet processing is used in emerging standards such as JPEG2000 and MPEG-4, where it is typically used to provide highly efficient still picture compression. Various proprietary image compression systems are also wavelet-based. This release includes the utilities IMG_wave_horz and IMG_wave_vert for computing horizontal and vertical wavelet transforms. Together, they can compute 2-D wavelet transforms for image data. The routines are flexible enough, within documented constraints, to accommodate a wide range of specific wavelets and image dimensions.


Copyright 2012, Texas Instruments Incorporated