Sign in

Not a member? | Forgot your Password?

Search compdsp

Search tips

Find us on Facebook!





Free PDF Downloads

A Quadrature Signals Tutorial: Complex, But Not Complicated

Understanding the 'Phasing Method' of Single Sideband Demodulation

Complex Digital Signal Processing in Telecommunications

Introduction to Sound Processing

C++ Tutorial

Introduction of C Programming for DSP Applications

Fixed-Point Arithmetic: An Introduction

Cascaded Integrator-Comb (CIC) Filter Introduction

Discussion Groups

FIR Filter Design Software

Free Online Books

See Also

Embedded SystemsFPGA

There are 33 messages in this thread.

You are currently looking at messages 1 to .


Is this discussion worth a thumbs up?

0

why DCT - Neo - 2005-05-03 04:51:00

Hi guys,
I was curious to know why is it that DCT is used in image compression.
why not FFT?


Re: why DCT - Neo - 2005-05-03 05:59:00

never mind, I got it.


Re: why DCT - Guido Vollbeding - 2005-05-03 07:51:00

Neo wrote:
> 
> never mind, I got it.

You got it?
I doubt it.
Can you elaborate?

Regards
Guido


Re: why DCT - 2005-05-03 08:16:00

Closest approximation to the Karhonen Loeve transform?


Re: why DCT - Peter K. - 2005-05-03 10:34:00

porterbo...@yahoo.com wrote:

> Closest approximation to the Karhonen Loeve transform?

Same acronym as the Dallas Children's Theater? (www.dct.org)

Ciao,

Peter K.


Re: why DCT - Guido Vollbeding - 2005-05-03 10:59:00

p...@yahoo.com wrote:
> 
> Closest approximation to the Karhonen Loeve transform?

That is usually mentioned, but I have discovered a more
compelling reason.
But I would like to know what the original poster has found.

Regards
Guido


Re: why DCT - glen herrmannsfeldt - 2005-05-03 14:27:00

Neo wrote:


> I was curious to know why is it that DCT is used in image compression.
> why not FFT?


The difference in use between DST, DCT, and DFT are the boundary
conditions.  (This is explained in Numerical Recipes, where I looked
when I wondered some time ago.)

DFT has periodic boundary conditions, DST has the function go to
zero at the boundary, and DCT has the derivative go to zero at the
boundary.  It seems that DCT has a smaller effect on the image
than the others.   That is, the effect of the blocks is less
visible with DCT than DFT or DST.   FFT is an algorithm,
or class of algorithms, for evaluating DFT.

-- glen


Re: why DCT - 2005-05-04 05:15:00

glen herrmannsfeldt wrote:
> Neo wrote:
>
>
> > I was curious to know why is it that DCT is used in image
compression.
> > why not FFT?
>
>
> The difference in use between DST, DCT, and DFT are the boundary
> conditions.  (This is explained in Numerical Recipes, where I looked
> when I wondered some time ago.)
>
> DFT has periodic boundary conditions, DST has the function go to
> zero at the boundary, and DCT has the derivative go to zero at the
> boundary.  It seems that DCT has a smaller effect on the image
> than the others.   That is, the effect of the blocks is less
> visible with DCT than DFT or DST.   FFT is an algorithm,
> or class of algorithms, for evaluating DFT.
>
> -- glen

Hi

Can you explain what is meant by "derivative go to zero" or "function
go to zero" ? and when does it go to zero ?


Thanks
Sandeep


Re: why DCT - Neo - 2005-05-04 05:57:00

guido,
I found out that the DCT distributes most of the energy in the lower
order co-efficients compared to the FFT and also gives a purely real
output. This energy localisation aids in more efficient encoding later
on.
Is this reasonable?


Re: why DCT - Guido Vollbeding - 2005-05-04 07:37:00

Neo wrote:
> 
> guido,
> I found out that the DCT distributes most of the energy in the lower
> order co-efficients compared to the FFT and also gives a purely real
> output. This energy localisation aids in more efficient encoding later
> on.
> Is this reasonable?

No!;-)
Your question was why is the DCT used in *image* compression!
The general term "energy compaction" does not explain why it is good
just for *image* compression, you could say the same thing for any
other compression object.

The actual reason is much simpler, and therefore apparently very
difficult to recognize by complicated-thinking people.

Here is the explanation:

What are people doing when they have a bunch of images and want
a quick preview?  They use thumbnails!  What are thumbnails?
Thumbnails are small downscaled versions of the original image!
If you want more details of the image, you can zoom in stepwise
by enlarging (upscaling) the image.
That is the key to understanding the use of DCT for image compression:

The fundamental property of lossy image compression is the similarity 
of different resolutions of the same image.  "Lossy" compression means 
that we assign *the same* output representation to *multiple*, *similar* 
input representations.  The basic similarity relation for images is 
resolution, or scale, invariance:  If we see the same image in different 
resolutions (scales, sizes), or the same subject from different distances, 
we talk about *the same* image (or subject). 

The  DCT provides the best resolution separation property for digital images. 
The 8-point DCT gives you 8 linearly increasing resolution representations 
from 8 spatial sample values.  You can hardly do better than that. 
Wavelet transforms, as used in JPEG2000, for example, do *not* 
provide such optimal resolution separation. 
See also chapter 4 of my paper at http://jpegclub.org/temp/. 

Everybody who knows the DCT knows that the DC term represents a
1/8 scale  of the input sequence ("thumbnail" version).
The DC and first AC together represent a 2/8 or 1/4 scale of the
input sequence.  The DC and first 2 ACs together represent a 3/8
scale of the input sequence, and so on. 
Every DCT coefficient adds corresponding resolution detail. 
This is easy to demonstrate, but was not known before. 
(See new JPEG scaling features presented at http://jpegclub.org 
which directly apply this property.) 
This fundamental DCT property explains why the DCT is the best 
transform for image compression. 

Regards
Guido


| 1 | | 3 | 4 |