1 / 39

Computer Graphics

Computer Graphics. Recitation 7. Motivation – Image compression. What linear combination of 8x8 basis signals produces an 8x8 block in the image?. The plan today. Fourier Transform (FT). Discrete Cosine Transform (DCT). What is a transformation?.

drago
Download Presentation

Computer Graphics

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Computer Graphics Recitation 7

  2. Motivation – Image compression What linear combination of 8x8 basis signals produces an 8x8 block in the image?

  3. The plan today • Fourier Transform (FT). • Discrete Cosine Transform (DCT).

  4. What is a transformation? • Function : rule that tells how to obtain result y given some input x • Transformation : rule that tells how to obtain a function G(f) from another function g(t)

  5. What do we need transformations for? • Mathematical tool to solve problems • Change a quantity to another form that might exhibit useful features • Example: XCVI x XII  96 x 12 = 1152  MCLII

  6. Periodic function • Definition: g(t) is periodic if exists P such that g(t+P) = g(t) • Period of a function: smallest constant P that satisfies g(t+P) = g(t)

  7. Attributes of periodic function • Amplitude: max value it has in any period • Period: P • Frequency: 1/P, cycles per second,Hz • Phase: position of function within a period

  8. Time and Frequency • example : g(t) = sin(2pft) + (1/3)sin(2p(3f)t)

  9. Time and Frequency • example : g(t) = sin(2pft) + (1/3)sin(2p(3f)t) = +

  10. Time and Frequency • example : g(t) = sin(2pft) + (1/3)sin(2p(3f)t) = +

  11. Time and Frequency 1, -a/2 < t < a/2 0, elsewhere • example : g(t) ={

  12. Time and Frequency 1, -a/2 < t < a/2 0, elsewhere • example : g(t) ={ = + =

  13. Time and Frequency 1, -a/2 < t < a/2 0, elsewhere • example : g(t) ={ = + =

  14. Time and Frequency 1, -a/2 < t < a/2 0, elsewhere • example : g(t) ={ = + =

  15. Time and Frequency 1, -a/2 < t < a/2 0, elsewhere • example : g(t) ={ = + =

  16. Time and Frequency 1, -a/2 < t < a/2 0, elsewhere • example : g(t) ={ = + =

  17. Time and Frequency 1, -a/2 < t < a/2 0, elsewhere • example : g(t) ={ = A (1/k)sin(2pkft)

  18. Time and Frequency • If the shape of the function is far from regular wave its Fourier expansion will include infinite num of freq. A (1/k)sin(2pkft) =

  19. Frequency domain • Spectrum of freq. domain : range of freq. • Bandwidth of freq. domain : width of the spectrum • DC component (direct current): component of zero freq. • AC – all others

  20. Fourier transform • Every periodic function can be represented as the sum of sine and cosine functions • Transform a function between a time and freq. domain G(f) = g(t)[cos(2pft) - isin(2pft)]dt g(t) = G(f)[cos(2pft) + isin(2pft)]df

  21. Fourier transform • Discrete G(f) = (1/n) g(t)[cos(2pft/n) - isin(2pft/n)] , 0<f<n-1 g(t) = (1/n) G(f)[cos(2pft/n) + isin(2pft/n)] , 0<t<n-1

  22. FT for digitized image • Each pixel Pxy = point in 3D (z coordinate is value of color/gray level • Each coefficient describes the 2D sinusoidal function needed to reconstruct the surface • In typical image neighboring pixels have “close” values  surface almost flat  most FT coefficients small

  23. Sampling theory • Image = continuous signal of intensity function i(t) • Sampling: store a finite sequence in memory i(1)…i(n) • The bigger the sample, the better the quality? – not necessarily

  24. Sampling theory • We can sample an image and reconstruct it without loss of quality if we can : • - Transform i(t) function from time to freq. Domain • - Find the max freq. fm • - Sample i(t) at rate > 2fm • - Store the sampled values in a bitmap

  25. Sampling theory • Some loss of image quality because: -fm can be infinite: choose a value s.t freq. > fm do not contribute much (low amplitudes) - Bitmap may be too small • 2fm is Nyquist rate

  26. Fourier Transform • Periodic function can be represented as sum of sine waves that are integer multiple of fundamental (basis) frequencies • Freq. domain can be applied to a non periodic function if it is nonzero over a finite range

  27. Discrete Cosine Transform • A variant of discrete Fourier transform - Real numbers - Fast implementation -Separable (row/column)

  28. Discrete Cosine Transform • Example: DCT on 8 points f=0 1 f=1…7 G = (½) C P cos((2t+1)fp/16) , C = { f t f f • Fourier transform on 8 points G = P cos(2pft/8) – i P sin(2pft/8) , f=0,1,…,7 t f t

  29. Discrete Cosine Transform • Example 8 points: Same meaning: the 8 numbers Gf tell what sinusoidal func. should be combined to approximate the function described by the 8 original numbers Pt

  30. Discrete Cosine Transform • Example 8 points: f=0 1 f=1…7 G = (½) C P cos((2t+1)fp/16) , C = { f t f f • G3 = contribution of sinusoidal with freq. 3tp/16 to the 8 numbers Pt • G7 = contribution of sinusoidal with freq. 7tp/16 to the 8 numbers Pt

  31. Discrete Cosine Transform • Example 8 points: The inverse DCT P = (½) C G cos((2t+1)jp/16) , t=0,1,…,7 j t j

  32. Discrete Cosine Transform • 2D DCT G = C C Pxy cos((2x+1)ip/2n)cos((2y+1)jp/2n) j i ij • 2D Inverse DCT (IDCT) P =¼ C C Gij cos((2x+1)ip/16) cos((2y+1)jp/16) xy j i C f = { f=0 1 f=1…7

  33. Using DCT in JPEG • DCT on 8x8 blocks

  34. Using DCT in JPEG • Block size : small block • - faster • - correlation exists between neighboring pixels • large block • - better compression in “flat” regions • Power of 2 – for fast implementation

  35. Using DCT in JPEG • DCT – basis

  36. Using DCT in JPEG • For almost flat surface most Gij=0 • For surface that oscillates much many Gij non zero • G00 = DC coefficient • Numbers at top left of Gij contribution of low freq. sinusoidal to the surface, bottom right – high freq.

  37. Using DCT in JPEG • Numbers at top left of Gij contribution of low freq. sinusoidal to the surface, bottom right – high freq. • Scan each block in zig-zag order

  38. Image compression using DCT • DCT enables image compression by concentrating most image information in the low frequencies • Loose unimportant image info buy cut Gij at right bottom • Decoder computes the inverse IDCT

  39. See you next time

More Related