Download presentation
Presentation is loading. Please wait.
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
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.