Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "Computer Graphics Recitation 7. 2 Motivation – Image compression What linear combination of 8x8 basis signals produces an 8x8 block in the image?"— Presentation transcript:

1 Computer Graphics Recitation 7

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

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

4 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 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 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 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 8 Time and Frequency example : g(t) = sin(2  ft) + (1/3)sin(2  (3f)t)

9 9 Time and Frequency example : g(t) = sin(2  ft) + (1/3)sin(2  (3f)t) = +

10 10 Time and Frequency example : g(t) = sin(2  ft) + (1/3)sin(2  (3f)t) = +

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

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

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

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

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

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

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

18 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(2  kft) =

19 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 20 Fourier transform G(f) = g(t)[cos(2  ft) - i sin(2  ft)]dt g(t) = G(f)[cos(2  ft) + i sin(2  ft)]df  Every periodic function can be represented as the sum of sine and cosine functions  Transform a function between a time and freq. domain

21 21 Fourier transform  Discrete g(t) = (1/n) G(f)[cos(2  ft/n) + i sin(2  ft/n)], 0<t<n-1 G(f) = (1/n) g(t)[cos(2  ft/n) - i sin(2  ft/n)], 0<f<n-1

22 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 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 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. f m - Sample i(t) at rate > 2f m - Store the sampled values in a bitmap

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

26 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 27 Discrete Cosine Transform  A variant of discrete Fourier transform - Real numbers - Fast implementation -Separable (row/column)

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

29 29 Discrete Cosine Transform  Example 8 points: Same meaning: the 8 numbers G f tell what sinusoidal func. should be combined to approximate the function described by the 8 original numbers P t

30 30 Discrete Cosine Transform G = (½) C P cos((2t+1)f  /16), C = { f ft f=0 1 f=1…7 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  Example 8 points:

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

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

33 33 Using DCT in JPEG  DCT on 8x8 blocks

34 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 35 Using DCT in JPEG  DCT – basis

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

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

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

39 See you next time


Download ppt "Computer Graphics Recitation 7. 2 Motivation – Image compression What linear combination of 8x8 basis signals produces an 8x8 block in the image?"

Similar presentations


Ads by Google