Digital Communications III (ECE 154C) Introduction to Coding and Information Theory Tara Javidi These lecture notes were originally developed by late Prof. J. K. Wolf. UC San Diego Spring 2014 1 / 26 Lossy Source Coding • Lossy Coding • Distortion A/D & D/A Scalar Quantization Vector Quantization Audio Compression Coding With Distortion 2 / 26 Coding with Distortion Lossy Source Coding • Lossy Coding • Distortion A/D & D/A Scalar Quantization Vector Quantization Audio Compression Placeholder Figure 1 2 ǫ = lim T →∞ T Z T /2 −T /2 A E(x(t) − x ˆ(t))2 dt = M.S.E. 3 / 26 Discrete-Time Signals Lossy Source Coding • Lossy Coding • Distortion A/D & D/A If signals are bandlimited, one can sample at nyquist rate and convert continuous-time problem to discrete-time problem. This sampling is part of the A/D converter. Scalar Quantization Vector Quantization Audio Compression Placeholder Figure A m 1 X 2 E(xi − x ˆ i )2 ǫ = lim m→∞ m i=1 4 / 26 Lossy Source Coding A/D & D/A • A/D • D/A • D/A • D/A Scalar Quantization Vector Quantization Audio Compression A/D Conversion and D/A Conversion 5 / 26 A/D Conversion Lossy Source Coding A/D & D/A • A/D • D/A • D/A • D/A Scalar Quantization Vector Quantization Audio Compression • Assume a random variable X which falls into the range (Xmin , Xmax ). • The goal is for X to be converted into k binary digits. Let M = 2k . • The usual A/D converter first subdivides the interval (Xmin , Xmax ) into M equal sub-intervals. • Subintervals are of width ∆ = (Xmax − Xmin )/M . • Shown below for the case of k = 3 and M = 8. Placeholder Figure A • We call the ith sub-interval, ℜi . 6 / 26 D/A Conversion Lossy Source Coding A/D & D/A • A/D • D/A • D/A • D/A • Assume that if X falls in the region ℜi , i.e. x ∈ ℜi ˆ = Y which • D/A converter uses as an estimate of X , the value X is the center of the ith region. ˆ is • The mean-squared error between X and X Scalar Quantization Vector Quantization Audio Compression ˆ 2] = ǫ2 = E[(X − X) Z Xmax Xmin ˆ 2 fx (x)dx (X − X) where fx (x) is the probability density function of the random variable X . • Let fX|ℜi (x) be the conditional density function of X given that X falls in the region ℜi . Then ǫ2 = M X i=1 P [x ∈ ℜi ] Z x∈ℜi (x − yi )2 fx|ℜi (x)dx 7 / 26 D/A Conversion Lossy Source Coding A/D & D/A • A/D • D/A • D/A • D/A Scalar Quantization Vector Quantization Audio Compression • Note that for i = 1, 2, ..., M M X i=1 P [x ∈ ℜi ] = ∆ and Z x∈ℜi fX|ℜi (x)dx = 1. • Make the further assumption that k is large enough so that fX|ℜi (x) is a constant over the region ℜi . 1 • Then fX|ℜi (x) = ∆ for all i, and Z 1 (x − yi ) fX|ℜi (x)dx = ∆ x∈ℜi Z 1 = ∆ Z 2 b a b−a 2 )) dx (x − ( 2 ∆ 2 −∆ 2 1 2 · · = ∆ 3 (x − 0)2 dx ∆ 2 3 ∆2 = 12 8 / 26 D/A Conversion Lossy Source Coding A/D & D/A • A/D • D/A • D/A • D/A Scalar Quantization Vector Quantization Audio Compression 2 • In other words, ǫ = M X i=1 ∆2 ∆2 P [x ∈ ℜi ] · = 12 12 • If X has variance σx2 , the signal-to-noise ratio of the A to the D ∆2 2 σx / 12 (& D to A) converter is often defined as • If Xmin is equal to −∞ and/or Xmax = +∞, then the last and first intervals can be infinite in extent. • However fx (x) is usually small enough in those intervals so that the result is still approximately the same. Placeholder Figure A 9 / 26 Lossy Source Coding A/D & D/A Scalar Quantization • Quantization • Quantizer • Optimal Quantizer • Optimal Quantizater • Optimal Quantizater • Iterative Solution • Comments • Comments SCALAR QUANTIZATION of GAUSSIAN SAMPLES Vector Quantization Audio Compression 10 / 26 Scalar Quantization Lossy Source Coding A/D & D/A Scalar Quantization • Quantization • Quantizer • Optimal Quantizer • Optimal Quantizater • Optimal Quantizater • Iterative Solution • Comments • Comments Vector Quantization Placeholder Figure • ENCODER: Audio Compression • DECODER: x ≤ −3b −3b < x ≤ −2b −2b ≤ x ≤ −b −b ≤ x ≤ 0 000 001 010 011 A 000 001 010 011 −3.5b −2.5b −1.5b −.5b 0<x<b b < x ≤ 2b 2b < x ≤ 3b 3b < x 100 101 110 111 100 101 110 111 +.5b +1.5b +2.5b +3.5b 11 / 26 Optimum Scalar Quantizer Lossy Source Coding A/D & D/A Scalar Quantization • Quantization • Quantizer • Optimal Quantizer • Optimal Quantizater • Optimal Quantizater • Iterative Solution • Comments • Comments • Let us construct boundaries bi , (b0 = −∞, bM = +∞ and quantization symbols ai such that bi−1 ≤ x < bi −→ x ˆ = ai i = 1, 2, ..., M Vector Quantization Placeholder Figure A Audio Compression • The question is how to optimize {bi } and {ai } to minimize distortion ǫ2 2 ǫ = M Z X i=1 bi bi−1 (x − ai )2 fx (x)dx 12 / 26 Optimum Scalar Quantizer Lossy Source Coding A/D & D/A Scalar Quantization • Quantization • Quantizer • Optimal Quantizer • Optimal Quantizater • Optimal Quantizater • Iterative Solution • Comments • Comments Vector Quantization Audio Compression • To optimize ǫ2 = PM R bi i=1 bi−1 (x − ai )2 fx (x)dx we take derivatives and putting them equal to zero: δǫ2 =0 δaj δǫ2 =0 δbj • And use Leibnitz’s Rule: δ δt Z b(t) a(t) δb(t) f (x, t)dx =f (b(t), t) δt δa(t) − f (a(t), t) δt Z b(t) δ + f (x, t)dt a(t) δt 13 / 26 Optimum Scalar Quantizer Lossy Source Coding δ δbj A/D & D/A Scalar Quantization • Quantization • Quantizer • Optimal Quantizer • Optimal Quantizater • Optimal Quantizater • Iterative Solution • Comments • Comments δ δbj Z bj M Z bi X i=1 bi−1 (x − ai )2 fx (x)dx δ (x − aj )2 fx (x)dx + δbj bj−1 Z bj+1 bj ! = (x − aj+1 )2 fx (x)dx = (bj − aj )2 fx (x)|x=bj − (bj − aj+1 )2 fx (x)|x=bj = 0 Vector Quantization Audio Compression b2j − 2aj bj + a2j = b2j − 2bj aj+1 + a2j+1 2bj (aj+1 − aj ) = a2j+1 − a2j bj = aj+1 +aj 2 (I) 14 / 26 Optimum Scalar Quantizer Lossy Source Coding A/D & D/A Scalar Quantization • Quantization • Quantizer • Optimal Quantizer • Optimal Quantizater • Optimal Quantizater • Iterative Solution • Comments • Comments δ δaj M Z X i=1 bi−1 bi (x − ai )2 fx (x)dx aj Z bj fx (x)dx = bj−1 Vector Quantization Audio Compression aj = R bj ! Z = −2 Z bj (x−aj )fx (x)dx = bj−1 bj xfx (x)dx bj−1 bj−1 xfx (x)dx R bj bj−1 fx (x)dx (II) 15 / 26 Optimum Scalar Quantizer Lossy Source Coding A/D & D/A Scalar Quantization • Quantization • Quantizer • Optimal Quantizer • Optimal Quantizater • Optimal Quantizater • Iterative Solution • Comments • Comments Vector Quantization Audio Compression • Note that the {bi } can be found from (I) once the {ai } is known. ◦ In fact, the {bi } are the midpoints of the {ai }. • The {ai } can also be solved from (II) once the {bi } are known. ◦ The {ai } are centroids of the corresponding regions. • Thus one can use a computer to iteratively solve for the {ai } and the {bi } 1. 2. 3. 4. One starts with an initial guess for the {bi }. One uses (II) to solve for the {ai }. One uses (I) to solve for the {bi }. One repeats steps 2 and 3 until the {ai } and the {bi } ”stop changing”. 16 / 26 Comments on Optimum Scalar Quantizer Lossy Source Coding A/D & D/A 1. 2. Scalar Quantization • Quantization • Quantizer • Optimal Quantizer • Optimal Quantizater • Optimal Quantizater • Iterative Solution • Comments • Comments Vector Quantization This works for any fx (x) If fx (x) only has a finite support one adjusts b0 &bM to be the limits of the support. Placeholder Figure 3. One needs to know β X A fx (x)dx and α Audio Compression 4. β X xfx (x)dx (true for α any fx (x)) For a Gaussian, we can integrate by parts or let y = x2 Z β α 1 2 1 √ e− 2 x dx = Q(β) − Q(α) 2π Z β α 1 2 1 x √ e− 2 x dx = ... 2π 17 / 26 Comments on Optimum Scalar Quantizer Lossy Source Coding 5. A/D & D/A Scalar Quantization • Quantization • Quantizer • Optimal Quantizer • Optimal Quantizater • Optimal Quantizater • Iterative Solution • Comments • Comments 6. If M = 2a one could use a binary digits to represent the quantized value. However since the quantized values are not necessarily equally likely, one could use a H UFFMAN C ODE to use fewer binary digits(on the average). After the {ai } and {bi } are known, one computes ǫ2 from 2 ǫ = M Z X i=1 Vector Quantization Audio Compression 7. For M = 2 and fx (x) bi bi−1 =√ (x − ai )2 fx (x)dx 1 2πσ 2 − 12 e x2 σ2 we have b0 = −∞, b1 = 0, b2 = +∞, and a2 = −a1 = 8. Also easy to show that ǫ2 = (1 − π2 )σ 2 = .3634σ 2 . r 2σ 2 π 18 / 26 Lossy Source Coding A/D & D/A Scalar Quantization Vector Quantization • Quantization • Gaussain DMS • Gaussain DMS Audio Compression Vector Quantization 19 / 26 Vector Quantization Lossy Source Coding A/D & D/A Scalar Quantization Vector Quantization • Quantization • Gaussain DMS • Gaussain DMS • One can achieve a smaller ǫ2 by quantizing several samples at a time. • We would then use regions in an m-dimensional space Audio Compression Placeholder Figure A • Shannon characterized this in terms of ”rate-distortion formula” which tells us how small ǫ2 can be (m → ∞). • For a Gaussian source with one binary digit per sample, 2 ǫ ≥ σ2 4 = 0.25σ 2 ◦ This follows from the result on the next page. ◦ Contrast this with scalar case: ǫ2s = (1 − π2 )σ 2 = .3634σ 2 . 20 / 26 VQ: Discrete Memoryless Gaussian Source Lossy Source Coding A/D & D/A Scalar Quantization Vector Quantization • Quantization • Gaussain DMS • Gaussain DMS • Let source produce i.i.d. Gaussian samples X1 , X2 , ... where 1 e fX (x) = √ 2πσ 2 −1 x2 2 σ2 Audio Compression • Let the source encoder produce a sequence of binary digits at a rate of R binary digits/source symbol. ◦ In our previous terminology R = log M ˆ1, X ˆ 2 , ..., X ˆ i , ... • Let the source decoder produce the sequence X ˆ i } is ǫ2 . such that the mean-squared error between {Xi } and {X n 1X 2 ˆ i )2 } E{(Xi − X ǫ = n i=1 21 / 26 VQ: Discrete Memoryless Gaussian Source Lossy Source Coding A/D & D/A Scalar Quantization Vector Quantization • Quantization • Gaussain DMS • Gaussain DMS Audio Compression • Then one can prove that for any such system 1 σ2 R ≥ log2 ( 2 ) 2 ǫ for ǫ2 ≤ σ 2 ◦ Note that R = 0 for ǫ2 ≥ σ 2 . What does this mean? ◦ Note that for R = log M = 1, σ2 σ2 1 1 ≥ log2 ( 2 ) ⇒ 2 ≥ log2 ( 2 ) 2 ǫ ǫ σ2 ⇒ 4 ≥ 2 ⇒ ǫ2 ≥ (1/4)σ 2 ǫ • This is an example of “Rate-Distortion Theory.” 22 / 26 Lossy Source Coding A/D & D/A Scalar Quantization Vector Quantization Audio Compression • MP3 • CD • MPEG-1 Layer 3 Reduced Fidelity Audio Compression 23 / 26 Reduced Fidelity Audio Compression Lossy Source Coding A/D & D/A Scalar Quantization Vector Quantization • MP3 players use a form of audio compression called MPEG-1 Audio Layer 3. Audio Compression • MP3 • CD • MPEG-1 Layer 3 • It takes advantage of a psycho-acoustic phenomena whereby ◦ a loud tone at one frequency “masks” the presence of softer ◦ tones at neighboring frequencies; hence, these softer neighbouring tones need not be stored(or transmitted). • Compression efficiency of an audio compression scheme is usually described by the encoded bit rate (prior to the introduction of coding bits.) 24 / 26 Reduced Fidelity Audio Compression Lossy Source Coding A/D & D/A Scalar Quantization Vector Quantization Audio Compression • MP3 • CD • MPEG-1 Layer 3 • The CD has a bit rate of (44.1 × 103 × 2 × 16) = 1.41 × 106 bits/second. ◦ The term 44.1 × 103 is the sampling rate which is ◦ ◦ ◦ approximately the Nyquist frequency of the audio to be compressed. The term 2 comes from the fact that there are two channels in a stereo audio system. The term 16 comes from the 16-bit (or 216 = 65536 level) A to D converter. Note that a slightly higher sampling rate 48 × 103 samples/second is used for a DAT recorder. 25 / 26 Reduced Fidelity Audio Compression Lossy Source Coding A/D & D/A Scalar Quantization Vector Quantization Audio Compression • MP3 • CD • MPEG-1 Layer 3 • Different standards are used in MP3 players. • Several bit rates are specified in the MPEG-1, Layer 3 standard. ◦ These are 32, 40, 48, 56, 64, 80, 96, 112, 128, 144, 160, 192, 224, 256 and 320 kilobits/sec. ◦ The sampling rates allowed are 32, 44.1 and 48 kiloHz but the sampling rate of 44.1 × 103 Hz is almost always used. • The basic idea behind the scheme is as follows. ◦ A block of 576 time domain samples are converted into 576 ◦ ◦ ◦ frequency domain samples using a DFT. The coefficients then modified using psycho-acoustic principles. The processed coefficients are then converted into a bit stream using various schemes including Huffman Encoding. The process is reversed at the receiver: bits −→ frequency domain coefficients −→ time domain samples. 26 / 26
© Copyright 2024