Sample DCT images

The first stage of a JPEG transformation is to convert the image into the frequency domain. The following images show the orginal image on the left and a normalised version of the frequency domain image in the centre. The frequency domain images show the magnitude of each cell scaled from 0..255 with white representing 0 and 255 black. Although this normalisation makes the matrixes unsuitable for reconversion to the original, I feel they do give a feel for where in the frequency domain most energy is for each of the source images. The basic idea behind JPEG lossy compression is to throw away high frequence information - in the frequency domain (centre) images, high frequency information is in the bottom right corner with low frequency top left.

The right-hand image in each line is the reverse DCT version after fairly seious quantization (using a fixed and crude quantize table to throw away lots of high frequence information). All images are 8x8 greyscale and are stored as GIF files to prevent any lossy compression problems (even still there are some problems with the right hand images - they should be 8x8 pixels of solid grey but look a bit iffy to me).

For more on the JPEG format see my lecture notes or Gregory Wallace's CACM paper entitled "The JPEG Still Picture Compression Standard" (volume 34 number 4, 1991). The images below are based on pascal code which manipulates textual arrays which I then converted into GIFs by a long and windy road. Sample images compressed at different levels are worth looking at.

  Original     Frequency     Reversed