Wavelet based Image Compression on the Texas Instrument Video Processing Board TMS320dM6437

Project Enquiry:

Fields with * are mandatory


Time has become a crucial issue in today’s lifestyle and to keep up the pace with the world we need to come up with technologies that can process things faster. With high speed technology in image  processing industry, the demand of good quality data is increasing rapidly. The usage of image and streaming of video on internet have increased exponentially. In addition, more storage capacity and  more bandwidth as HD (High  Density) image and video have become more and more popular.

In this project, mainly I demonstrated two different methods of image compression DCT based image compression and WAVELET based image compression on JPEG2000 image standard. I designed DCT based  image compression and WAVELET based image compression codes in matlab and compared their results.  After that, I implemented the wavelet algorithm using C and C# in visual studio to verify the design. Finally I implemented  the same algorithm on TI’s digital signal processing board EVM320DM6437,  based on C language.

In addition, for implementing discrete wavelet transform on EVM 320DM6437 board, I captured the  image frame from a video signal. Then, I extracted the Y v components of the image. Then I used Code Composer Studio software to implement the code written in C language to successful display the compression result on Television.


Introduction to Image Compression and Decompression:

Any image taken from a camera is stored in a computer in form of a matrix. Each pixel is represented by a value from 0 to 255. More pixels in an image means that more memory is needed to store that  image. Therefore, digital image processing concept is concentrated on reduction of memory  consumption. It has been found that general 1024X1024-color image occupies 3 MB of memory for  storage.

Types of Image Compression Techniques:

Digital image compression can be divided mainly in two large categories: lossless and lossy compression. Lossless compression is used for artificial images. They use low bits rate. There is a possibility of loss some of the data during this process. While lossless compression is preferred in medical images and military images.

Two Different Formats JPEG and JPEG 2000:

In this section, two different image standards JPEG and JPEG 2000 are discussed.

 Introduction to Image Standard JPEG

JPEG (Joint Photographic Experts Group) comes from the committee name that introduced this standard. This is a lossy type of image compression. It is effectively used on still images. On the other  hand, MPEG is used for moving image standards. JPEG is called lossy because the reconstructed image  on the receiver side is not the same as the transmitter side. The advantage is that one can achieve  much higher compression with this standard but at the cost of some data. The small difference in  color is invisible to human eye and JPEG standard works on that concept.

Introduction to Image Standard JPEG 2000

JPEG 2000 is a result of extended study performed on JPEG standard for improvements. Although studies are being done since 1996, the first paper on JPEG 2000 was published in December 2000. The  Committee’s initial aim was to introduce these concepts of high bit rate and better quality. Later scalability and Region of interest concept were introduced. This makes it even more powerful. It can  compress data with low bit rate but without losing and the data image can be recovered.


Wavelet Based Image Processing:

Wavelet is a lossless algorithm, implemented on JPEG 2000 standard, which analyzes images in a  recursive style. Users can get a series of images and with improvement at every level. It is almost similar to DCT, except we get a better resolution at the end.

 Steps Involved in Wavelet Based Compression.

Steps Involved in Wavelet Based Compression.


Matlab Representation of DCT Based Signal Processing:

The main aim of this project was to show the difference between DCT based image processing and  Wavelet based image processing. The first thing I did was implement DCT based image compression and decompression on an image. I took same image to do the wavelet transform too.

Original Test Image of Sunview.

Original Test Image of Sunview.

Wavelet Based Signal Processing:

Now, the next step was to implement wavelet-based image processing. From the results, it is seen  that the difference between PSNR and image quality between two methods is noticeable. Initially, the region of interest is accessed from where we want to do the compression. After that, the method of  wavelet should be selected. Here, in this case it is DWT. Then RLE should be performed, this can significantly reduce the number of bits.

Input Image for Wavelet Based Image Compression

Input Image for Wavelet Based Image Compression.


TI DAVINCI Signal Processing Board

TI DAVINCI Signal Processing Board.

Componets on Hardware and Interface:

This is the best platform to work with especially when someone is looking for a platform, which is best suited for both image, and video application. Also, some of the best features of this kit is  TMS320C64x TMDSP core are operating frequency of 600 MHz, 128 KB L2 cache and 32 KB L1 cache. This  is the block diagram of the platform shown in diagram.

Block Diagram for TI DAVINCI Signal Processing Board.

Block Diagram for TI DAVINCI Signal Processing Board.

Wavelet Based Image Processing Using C and C#:

The algorithm was implemented using same theory we did in matlab but the problem was to show the result to verify it. C does not have anything with which one can display the image and see the processed result. Therefore, for that we took help of one of my friend who is in computer science  department he knows C#. He help us developed some forms to open an image. We implement that algorithm on image and saw the result using C# to verify that. The implementation was so perfect we achieved  the very good ratio using that algorithm.

Image Used to do Wavelet Processing Using C#.

Image Used to do Wavelet Processing Using C#.


The major idea behind this project was to show a difference between the DCT based image compression  and a wavelet based image compression. The concept was implemented in software language C/C++, so  that the logic can be implemented on a Texas Instrument’s DSP board. I have successfully  implemented, both DCT based and wavelet-based algorithm in MATLAB. By viewing the SNR for both the DCT and wavelet based image compression, a clear quality difference between them can be noticed.

It  can be observed that wavelet can give better SNR as high as 20% in comparison to DCT. In addition,  wavelet based image compression is best for edge detection and due to level based compression, it is also flexible. We can use any level to do the processing. Reliability has helped the Police department to use this algorithm for a finger print reader. In hospitals to check images this algorithm is been used. At both these places accuracy and quality is very essential.

PSNR achieved by DCT based compression. Code can be found below inappendix to verify the result. PSNR calculated by wavelet based processing method. Hence, from the results it can be inferred that  quality in received image after wavelet based processing is higher than DCT.

A logic based on above concept was developed using C language and C#. This can be very useful for future reference. Dr. Pang is working on a TI’s DSP board TMS320DM6437 that only supports C and C++  language. In addition, with this algorithm one can achieve a higher level of compression.

Source: California State University
Author: Riken Shah

Download Project

>> Image Processing Project Topics with Full Reports and Free Source Code

>> Best Matlab Project Ideas for Engineering Students with Full Project Materials

Project Enquiry:

Fields with * are mandatory

Leave a Comment

Your email address will not be published. Required fields are marked *