Disclaimer: This is an example of a student written essay.
Click here for sample essays written by our professional writers.

Any opinions, findings, conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of UKEssays.com.

Optimisation of Image Compression System

Paper Type: Free Essay Subject: Information Technology
Wordcount: 1724 words Published: 18th May 2020

Reference this


Image compression can be made by using serval techniques to produce a compressed image without reducing the quality of an image but reducing in file size. The Discrete Cosine Transform (DCT) has been widely used for efficient decorrelation and energy compaction properties. Many Industries have been focused on the discrete wavelet transform and observed better results using wavelet coders.

In this project, we will demonstrate to optimize the image compression system so that the reconstructed decompressed images have PSNR of at least 29dB achieved with the minimal possible number of retained transform coefficients assuming the image compression system uses the wavelet transform with Daubechies-3 filter-bank.

The coders work on transforming the data to eliminate redundancy, then quantizer the transform coefficients, and finally entropy coding the quantizer output. Since a wavelet basis consists of functions with both low and higher frequencies, wide smooth areas of an image may be represented with very few bits.  There are two types of image compression lossless and lossy, with lossless compression, the original image can be extracted after decompression but with images of natural scenes are rarely possible to obtain error-free compression at a rate beyond 2:1. Much higher compression ratios can be obtained if some error which is usually difficult to perceive,  is allowed between the decompressed image and the original image. In videos, every frame has to be compressed and reconstruct the decompressed frame. In the image compression technique, we convert the frames in the matrix data and applying transform for the image approximation to create encoded data in a compressed version for the frame.

Get Help With Your Essay

If you need assistance with writing your essay, our professional essay writing service is here to help!

Essay Writing Service

Wavelet-based image approximation:

In wavelet-based image approximation, the image is quantized to reduce the precision of the floating-point values of the wavelet transform, these transform quantized values, wavelet transforms will produce approximately to the image when an inverse transform is applied, which results in lossy compression. The purpose of the wavelet transform is that it produces a large number of values zero magnitudes. This transform can set threshold and all values with magnitudes less than the limit will be set to zero and large area of gray background indicate zero in the thresholded transform.  Two widely used measures for quantifying the error between images are a mean square error (MSE) and peak signal to noise ratio (PSNR). The MSE between two images a and b is defined by

   MSE = 1/N Σ (a [j, k] – b [j, k]) ²

Here the sum over a, b denotes the sum over all pixels in the images, and N is the number of pixels in each image. The PSNR (peak signal to noise ratio) will give the value between the compressed and uncompressed images. Increasing the PSNR represents increasing fidelity of compression.

   PSNR = 10 log102552MSE

   MSE (Mean square error)

Wavelet Transform:

A wavelet is a waveform of limited duration that has an average value of zero. Unlike sinusoids that theoretically extend from minus to plus infinity, wavelets have a beginning and an end. Sinusoids are smooth and predictable and are good at describing constant frequency signals. Wavelets are irregular, of limited duration, and often non-symmetrical. They are better at describing anomalies, pulses, and other events that start and stop within the signal. 

Wavelet Filters:

Wavelets are early stage of the digital age. Some wavelets are defined by a mathematical expression and are drawn as continuous and infinite. These are called crude wavelets. However, to use them with our digital signal, they must first be converted to wavelet filters having a finite number of discrete points. In other words, we evaluate the crude wavelet equation at the desired points in time to create the filter values at those times. Other wavelets start out as filters having as 2 points. Then an approximation or estimation of a continuous wavelet is built by interpolating and extrapolating more points. For theses wavelet, there really is no true continuous form, only an estimate built from the original filter points.

The Daubechies wavelet are orthogonal wavelets have the highest number X of vanishing moments for the width N=2X, and among the 2x1

possible solutions among one will be considered based on scaling filter. Some wavelets have symmetry such as Biorthogonal wavelet pairs. Shannon or “Sinc” wavelets can find events with specific frequencies. Haar wavelets are good for edge detection and reconstructing the binary pulses. Coiflets wavelets are good for data with self-similarities such as financial trends.

MATLAB Execution:

The MATLAB is a tool designed specifically for the complex mathematical calculations, signal processing, and image processing. It is a matrix-based language allowing most natural expressions of computational mathematics. Using this platform, we will select the image compression system using the wavelet transform wit Daubechies 3 filter bank and try to reconstruct decompressed image having PSNR of at least 29dB achieving with the minimal possible number of retained transform coefficients. Now we will vary the decomposition levels from 1 to 9 and fixing the threshold to 10%, 20%… of the maximum value then calculate the MSE and PSNR value. The reconstructed images are displayed on the window with the Threshold levels. Now we store the wavelet coefficients and number of coefficients in each layer and then reconstruct the 2D matrix that contains an image. The coefficients unwrapped into a single vector needed for the standard 2D wavelet inverse function and the initial result is stored in the form of a vector with all wavelet coefficients. Here we can observe the coefficient value varies for each decomposition levels in graph with PNSR value at Y-axis and coefficient on X-axis. At decomposition level N=1 we observed the PNSR value was 45 dB with 15% coefficient, now N=2 at this point PNSR value is 38 dB with 4% coefficient, at N=3 PNSR is 32 dB with 1% coefficient, N=4 PNSR value is 27.2 dB with 0.3% coefficient and at N=5 the PNSR value is 23.6 dB but with 1% coefficient. Here onwards the coefficient value has started increasing and we preferred to conclude with the above results.

Figure 1: Compressed Image

When we compare all coefficient value with respect to the PNSR Value we found the best number of decomposition level N=4 with the minimal retained coefficient at PSNR 27.2db.

Figure 2: PSNR vs Total percentage of Coefficient

The above figure1 relates graph between PSNR and total coefficient percentage at each decomposition levels ranging from N=1 to N=5.

   Figure 3: Graph on MSE vs Total percentage of Coefficient

The above figure3 represents the graph between MSE and total coefficient percentage at each decomposition levels ranging from N=1 to N=5.

         Figure 4: Reconstructed Images at particular threshold

The images in above figure4 are the images at different composition levels ranging from 1 to 5 at different threshold levels representing the image quality at each level.

Personal Contribution.

This project made me gain real-time industry level of practical knowledge. I had learned about wavelets and filters especially on Daubechies wavelet to contribute towards my project and develop the code. We three divided the work and I started working on the coding part. I created MATLAB credentials to download the trial version and selected the R2019a for my project and based on the examples and libraries available on online documentation I understood how to code and execute my requirement. Initially, I had faced some issues and later with our library book reference and support of lecturer Dr. XXX we fixed and then we three started working together by sharing each other knowledge and ability to complete our project successfully.

I would like to thank my lecturer Dr. XXX for guiding us to complete our project and a special thanks to our UNIVERSITY_ NAME_XXX for providing all the necessary facilities to us. I thank my team members for their contribution and dedication towards the project. I also thank my classmates for their support.


  • Bearcave.com. (n.d.). The Daubechies D4 Wavelet Transform. [online] Available at: http://bearcave.com/misl/misl_tech/wavelets/daubechies/index.html [Accessed 7 Sep. 2019].
  • Gwyddion.net. (n.d.). Wavelet Transform. [online] Available at: http://gwyddion.net/documentation/user-guide-en/wavelet-transform.html [Accessed 7 Sep. 2019].
  • Mathworks.com. (n.d.). MATLAB – MathWorks. [online] Available at: https://www.mathworks.com/products/matlab.html [Accessed 8 Sep. 2019].


Cite This Work

To export a reference to this article please select a referencing stye below:

Reference Copied to Clipboard.
Reference Copied to Clipboard.
Reference Copied to Clipboard.
Reference Copied to Clipboard.
Reference Copied to Clipboard.
Reference Copied to Clipboard.
Reference Copied to Clipboard.

Related Services

View all

DMCA / Removal Request

If you are the original writer of this essay and no longer wish to have your work published on UKEssays.com then please: