Download presentation
Presentation is loading. Please wait.
1
CSI-447: Multimedia Systems
Chapter 8: Data Compression (c)
2
Outline Transform Coding – Discrete Cosine Transform
3
Transform Coding ⎢⎣ xk ⎥⎦
⎢ ⎥ ⎢ x2 ⎥ Let X ⎢ . ⎥ be a vector of samples. There is a ⎢ ⎥ ⎢ . ⎥ ⎢⎣ xk ⎥⎦ good chance that a substantial amount of correlation is inherent among neighboring samples xi. The rational behind transform coding is that if Y is the result of a linear transform T of X in such a way that the components of Y are much less correlated, then Y can be coded more efficiently than X
4
Transform Coding In dimensions higher than 3, if most information is accurately described in the first few components of a transformed vector, the remaining components can be coarsely quantized or even set to zero with little signal distortion. The less effect one dimension has on another, the more chance we have of dealing differently with axes that store relatively minor amounts of information without affecting reasonably accurate reconstruction of the signal from its quantized or truncated transform coefficients. Therefore, compression comes from the quantization of the components of Y.
5
Discrete Cosine Transform
2D DCT: Given a function f(i, j) over two integer variables i and j (e.g. a piece of an image), the 2D DCT transforms it into a new function F(u, v), with integers u and v running over the same range as i and j such that F (u, v) 2C(u)C(v) cos (2i 1)u cos (2 j 1)v f (i, j) M 1 N 1 MN 2M 2N i0 j 0 where i,u = 0, ..., M – 1 and j,v = 0, ..., N – 1 and ⎧ 1 ⎪ if x 0 C(x) ⎨ 2 ⎪ ⎩1 otherwise
6
Discrete Cosine Transform
For N = M = 8 (used for JPEG Standard), the 2D DCT is ... The inverse DCT (2D-IDCT) is ~(i, j) C(u)C(v) cos (2i 1)u cos (2 j 1)v F (u, v) 7 7 f u 0 v0
7
Discrete Cosine Transform
1D DCT: Given a function f(i) over integer variable i, the 1D DCT transforms it into a new function F(u), with integer u running over the same range as i such that (M=8) F (u) C(u) cos (2i 1)u f (i) 7 2 where i,u = 0, ..., 7 and 16 i0 ⎧ 1 ⎪ if x 0 C(x) ⎨ 2 ⎪ ⎩1 otherwise
8
Discrete Cosine Transform
The inverse 1D-DCT is defined by ~(i) C(u) cos (2i 1)u F (u) 7 f 2 16 u 0 where i,u = 0, ..., 7 and ⎧ 1 ⎪ if x 0 C(x) ⎨ 2 ⎪ ⎩1 otherwise
9
Discrete Cosine Transform
An electrical signal with constant magnitude is known as a DC signal (Direct Current) For example, a 9-volts battery. An electrical signal that changes its magnitude periodically at a certain frequency is known as an AC signal (alternating Current) For example, household electric power circuit (110 volts, 60Hz vs. 220 volts 50Hz) Although most signals are complex, any signal can be expressed as a sum of multiple signals that are sine or cosine waveforms at various amplitudes and frequencies. This is known as Fourier Analysis
10
Discrete Cosine Transform
If a cosine function is used, the process of determining the amplitudes of the AC and DC components of the signal is called a Cosine Transform, and the integer indices make it a Discrete Cosine Transform. When u=0, F(u) yields the DC coefficient When u = 1, 2, ..., 7, F(u) yields the first, second, ..., seventh AC coefficient.
11
Discrete Cosine Transform
The inverse transform uses a sum of the products of the DC or AC coefficients and the cosine functions to reconstruct the function f(i), now known as f~(i). Both DCT and IDCT use the same set of cosine functions, known as basis functions. The idea behind Transform Coding is to use only a few coefficients that result in the highest energy
12
Examples (1D-DCT)
13
Examples (1D-DCT)
14
Examples (1D-IDCT)
15
Discrete Cosine Transform
Approximation of the ramp function using a 3-term DCT approximation vs. a 3-term DFT approximation.
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.