JPEG Encoder and Decoder

Presentation

This project was developed for the Multimedia Technologies and Applications course in City University of Hong Kong during the Semester A 2009/2010.

The goal of the project is to understand better how image compression works. We chose the JPEG method of compression because it is one of the most popular. JPEG is a lossy compression method, which removes information from the image.

The encoding process consists of the following steps:

  1. Transform RGB to YIQ or YUV and subsample color
  2. Perform DCT on images blocks
  3. Apply Quantization
  4. Perform Zigzag ordering and run-length encoding
  5. Perform Entropy coding

To decode the a JPEG image, these steps must be applied in the opposite way.

Features

The program has the following features:

Download

Contact

51720666 Vincent Legout vincent@legout.info
51567250 Li Jia pnz116@gmail.com
51738610 Huang Xiao xiaohuang9@student.cityu.edu.hk

Screenshots

Initial State

After Running

Option Dialog

Block Dialog

Encoder Statistics

Encoded Image with Q=1

Encoded Image with Q=40

Encoded Image with Q=90