CS631 Paper Response Form
Paper Title: The JPEG still picture compression standard
Author(s): G.K. Wallace
Main Point(s):
JPEG is a compression standard for continuous tone still images
(both gray and color) that can handle an arbitrary number of
dimensions per frame and arbitrary resolution, color space and
pixel aspect ratios. The standard encompasses 4 modes of operation,
namely sequential, progressive, lossless and hierarchical encoding.
Multidimensional data is regarded as a collection of grayscale images
that are compressed separately and interleaved on the level of MCU's
(= Minimal Coded Units) which are allowed to have different sizes
so that the different dimensions of the input can have different sampling
rates. The compression of a grayscale image proceeds by chopping up the
original image into 8x8 blocks, applying the forward DCT on it, quantizing
the result by a given quantizing table, reading the values into a 64-value
vector by zig-zagging the 8x8 block, computing the difference of the
first DCT coefficient (the DC value) to the DC value from the previous
block and entropy encoding the other 63 coefficients with either Huffman
coding or arithmetic coding after runlength-encoding them.
Depending on the desired quality, JPEG reduces the storage requirement per
pixel to 0.25 - 2 bits.
Possible Use(s):
By knowing the different stages of the JPEG compression, one can exploit
the fact that many operations can already performed on intermediate representations
and decompress jpeged data only as far as necessary for the task at hand, thereby
saving the time for full decompression and recompression when processing image data.
Extensions:
One could try to reduce the length of the runlength encoded data by ignoring all but
the four coefficients with the biggest absolute values, or by only using the first 32 coefficients. It may also
help to encode the difference to the previous block for the AC values as well.
In order to get reasonable results for the first blocks in a row, maybe one should
compute the difference to the block above it instead the difference to the last block
of the previous row.
CS631 home page