1 / 56

Chapter 2

Chapter 2. 無失真壓縮方法與標準. Basic Theory. Digital Video Good quality for storage and transmission Immunity of noise Trend of DSP VLSI Problem with a digital video system Huge amount of data Solution: Video Compression. Generic Image/Video Compression System. Source Coding.

honora
Download Presentation

Chapter 2

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. Chapter 2 無失真壓縮方法與標準

  2. Basic Theory • Digital Video • Good quality for storage and transmission • Immunity of noise • Trend of DSP VLSI • Problem with a digital video system • Huge amount of data • Solution: Video Compression

  3. Generic Image/Video Compression System

  4. Source Coding • Reduction of data redundancy • Temporal redundancy • Motion Estimation/Compensation (ME/MC) • Spatial redundancy • Discrete Cosine Transform (DCT) • Statistical redundancy • Variable Length Code (VLC) • Perceptual redundancy • Quantization (Q)

  5. Source Coding: Encoder

  6. Source Coding: Decoder

  7. Compression Measure • Compression Ratio • Bits Per Pixel (bpp)

  8. Fidelity Measure • Objective Fidelity Measure • Easy to generate • Not necessarily correlated to our perception • Seemingly unbiased

  9. Fidelity Measure • Subject Fidelity Measure

  10. Entropy • Basic theory: • A theoretical minimum for the average number of bits per pixel that could be used to encode the image. • Theoretically optimal • A metric for judging the success of a coding scheme.

  11. Entropy • Measure the average in formation in an image pi = the probability of the i-th gray level nk = the total number of pixels with gray value k. L = the total number of gray levels. • The range of the entropy:

  12. Compression Fundamentals

  13. Huffman Coding • Huffman coding will always at least equal the efficiency of Shannon-Fano coding, so it has become the predominate coding method of this type. • It was shown that Huffman coding cannot be improved or with any other integral bit-width coding stream. • JPEG, MPEG, and etc

  14. Huffman Coding • Given the statistical distribution of the gray levels. • Generate a code that is as close as possible to the minimum bound, entropy. • A variable length code.

  15. Huffman Coding • Five Steps: • Find the gray-level probabilities for the image. • Order the input probabilities (Histogram magnitudes) form smallest to largest. • Combine the smallest two by addition. • GOTO step 2 until only two probabilities are left. • By working backward along the tree, generate code by alternating assignment of 0 and 1

  16. 算術編碼 • Huffman 編碼已經被證明是即時碼中最好的 • 只要編碼方法是給每個符號一個整數個位元的碼,那麼它的效能就無法超過 Huffman 編碼。 • Huffman 編碼的問題在於碼的長度必須是整數。 • 假如一個符號的出現機率是 1/3,最好的編碼應該是用差不多1.6 個位元來編碼這個符號。 • Huffman編碼卻只能選擇用一個位元或兩個位元來編碼這個符號, • 無論那一種選擇都將導致壓縮效能跟理論上的推測有段距離。

  17. 算術編碼 • 假設我們所採用的模式計算出某個符號的出現機率為 0.9,那麼它的最佳編碼長度應該是 0.15 個位元。 • Huffman 編碼即使只使用一個位元來編碼它,也比實際所需高六倍。 • Fax • 二元影像 • 算術編碼避開了一個符號一個碼的想法, • 它採取用一個實數來表示一串符號的新點子。

  18. 算術編碼 • 假設我們要壓縮下列的訊息: BILL GATES

  19. 算術編碼 • 首先,我們看到的第一個字母是 B,為了將來能解碼成功,我們最後所編碼得之實數一定得介於 0.2 到 0.3 之間。 • 令 low 及 high 分別表示編碼後所得之實數其可能範圍的下界及上界。 • 在還沒讀入任何輸入符號前,low 設定為 0.0 而 high 則設定為1.0。 • 現在讀入的第一個符號為 B,由範圍表知道其範圍為 0.2 到 0.3,因此我們將 low 重新設定為 0.2,high 重新設定為 0.3。

  20. 算術編碼 • 再讀入下一個符號,I, • 由範圍表知道其範圍為 0.5≤ r<0.6, • 因此在編碼後,輸出實數的可能範圍得縮小到 0.2~0.3 這個範圍的第 50% 到第 60% 的部分, • 即 low 變為 0.25 而 high 變成 0.26。

  21. 算術編碼 • 算術編碼-編碼 第一步:low← 0.0;high←1.0; 第二步:讀入下一個符號,c; 第三步:range← high-low; 第四步:查範圍表,令c的範圍為 l ≤ r < h;    設定 high← low+range×h;low← low+range×l; 第五步:如果還有輸入符號還沒編碼,則回    到第二步,否則執行第六步; 第六步:輸出 low;

  22. 算術編碼: Example

  23. 算術編碼: Example • 因此,最後的 low 值 0.2572167752 將用來編碼 “BILL^GATES” 這個訊息。

  24. 算術編碼: Example • 解碼的程序剛好反過來 • 由範圍表我們知道 0.2572167752 落在 0.2 到 0.3 的範圍內(符號 B 之範圍),因此第一個符號必然是 B。 • 將 B 的影響從 0.2572167752 除去。 • 首先減去 B 的 l值得到 0.0572167752, • 然後除以 B 的範圍,h-l=0.1,這樣做之後我們得到0.572167752。 • 然後,再從範圍表裡找出這個數字落在那個符號的範圍內, • 那也就是我們下一個解碼出的符號,I。 • 重複以上的步驟直到 l變回 0 為止。

  25. 算術編碼 • 算術編碼-解碼 第一步:讀入編碼值,number; 第二步:從範圍表裡找出 number 落在那   一個符號的範圍 內,假設是 c 而   且 c 的範圍從 l 到 h; 第三步:輸出 c; 第四步:number←number - l; 第五步:number←number / (h – l ); 第六步:回到第二步直到 number 為 0;

  26. 算術編碼: example • 解碼: BILL^GATES

  27. 算術編碼 • 和 Huffman 編碼比起來,算術編碼看起來好像比較複雜,但實際寫成程式兩者卻差不了多少。 • 至於壓縮結果算術編碼則比Huffman編碼好一些。 • 和 Huffman 編碼比起來,算術編碼看起來好像比較複雜,但實際寫成程式兩者卻差不了多少。 • 至於壓縮結果算術編碼則比Huffman編碼好一些。

  28. 0 (64) • 1 (128) • 2 (32) • 3 (32) • Code: 002310

  29. Golomb & Rice Code • 幾何機率分布 p(n) = (1- p) pn • 如果 p表示 0 出現的機率,那麼 p(n) 就表示連續出現 n個 0 後出現非 0 的機率。 • 令 n = mq + r • 將q編碼為連續 q個 0 後面接一個 1。 • 如果 ,則使用 個位元來表示它,否則使用 個位元來表示 . • 將 q的碼與 r的碼接起來即為 n的 Golomb 碼。

  30. Golomb & Rice Code: Example

  31. Golomb & Rice Code: Example

  32. Golomb & Rice Code: Example

  33. Golomb & Rice Code: Example

  34. Golomb & Rice 編碼

  35. G3 & G4 • G1:使用類比技術。透過電話線傳真一張 A4 文件大約需要六分鐘。 • G2:也是使用類比技術。透過電話線傳真一張 A4 文件大約需要三分鐘。 • 由於 G1 與 G2 都使用類比通訊,因此都不做資料壓縮。 • G3:使用數位技術。透過電話線傳真一張 A4 文件大約需要一分鐘。 . • G4:也是使用數位技術。傳輸速度與 G3 一樣。 • 由於 G3 與 G4 都使用數位通訊,因此都有做資料壓縮。

  36. G3 & G4 • G3 & G4 使用串長編碼與 Huffman 編碼。 • 1D 方法 • 白色像素的串長、黑色像素的串長、白色像素的串長、黑色像素的串長…… • 串長 r表示為 64m+t (m=1, 2, …, 27). • 再將 m與 t做 Huffman 編碼 • 2D • MR (Modified READ) • G4 使用 MMR (Modified modified READ)

  37. JBIG & JBIG2 • JBIG 與 JBIG2 都使用算術編碼 • 根據前文而改變的算術編碼 • QM 編碼器

  38. JBIG & JBIG2

  39. 無失真 JPEG • 無失真壓縮:

  40. 無失真 JPEG2000 • 使用整數小波 • 使用 JBIG2 對整數小波係數做無失真資料壓縮

  41. LOCO-I / JPEG-LS • JPEG-LS演算法的核心是 • LOw COmplexity LOssless COmpression for Image. • JPEG-LS 要求 : • 低時間複雜度 • 無失真 / 近乎無失真

  42. JPEG-LS:方塊圖

More Related