DD1343 Komprimering · Carl Henrik Ek [email protected] Royal Institute of Technology February 14,...
Transcript of DD1343 Komprimering · Carl Henrik Ek [email protected] Royal Institute of Technology February 14,...
-
DD1343Komprimering
Carl Henrik Ek{chek}@csc.kth.se
Royal Institute of Technology
February 14, 2012
Ek KTH
DD1343 Komprimering
-
Introduktion
Minnes utrymmeantal element × variationer per element
Variationerbool 1 21 2byte, char 8 28 256word, short int 16 216 65536longword, int 32 232 4294967296quad, long int 64 264 1.84467441× 1019
Ek KTH
DD1343 Komprimering
-
Introduction
• Nummer av elementI width=447 height=512⇒ 447× 512 = 228 864• Variationer per element
I Dela upp i röd, grön och blå(kanaler)
I 256 toner av varje färg⇒ 3× 8 = 24
• 447× 512× 243 = 1830912bytes ≈ 1788 kilobyte
• Verklig 61 kilobytes⇒ 611788 ≈ 0.03
Ek KTH
DD1343 Komprimering
-
Kompression
• Okomprimerad data X• Komprimerad data Y• Komprimering T: X → Y
Types• Non-lossy⇒ T bijection• Lossy⇒ T icke-bijection (X 6= T−1(T (X)))
I denna kurs Non-lossy kompression
Ek KTH
DD1343 Komprimering
-
RLE Run Length Endcoding
• Repetitioner av elementI aaaaaabaaaaaaaabbbbbabbbaaaaaaI ababababababababababababababab
• Spara längd av följd av elementenI 6a1b8a5b1a3b6aI 1a1b1a1b1a1b1a. . .1bI 15ab
• Direkt kodning: 30× 8 = 240 bitar• RLE kodning,
I 14× 8 = 112 bitar, kompressions ratio 112240 ≈ 0.47I 60× 8 = 480 bitar, kompressions ratio 480240 = 2I 1× 8 + 2× 8 = 24 bitar, kompressions ratio 24240 = 0.1
Ek KTH
DD1343 Komprimering
-
RLE Run Length Endcoding
• Repetitioner av elementI aaaaaabaaaaaaaabbbbbabbbaaaaaaI ababababababababababababababab
• Spara längd av följd av elementenI 6a1b8a5b1a3b6aI 1a1b1a1b1a1b1a. . .1bI 15ab
• Direkt kodning: 30× 8 = 240 bitar• RLE kodning,
I 14× 8 = 112 bitar, kompressions ratio 112240 ≈ 0.47I 60× 8 = 480 bitar, kompressions ratio 480240 = 2I 1× 8 + 2× 8 = 24 bitar, kompressions ratio 24240 = 0.1
Ek KTH
DD1343 Komprimering
-
RLE Run Length Endcoding
• Repetitioner av elementI aaaaaabaaaaaaaabbbbbabbbaaaaaaI ababababababababababababababab
• Spara längd av följd av elementenI 6a1b8a5b1a3b6aI 1a1b1a1b1a1b1a. . .1bI 15ab
• Direkt kodning: 30× 8 = 240 bitar• RLE kodning,
I 14× 8 = 112 bitar, kompressions ratio 112240 ≈ 0.47I 60× 8 = 480 bitar, kompressions ratio 480240 = 2I 1× 8 + 2× 8 = 24 bitar, kompressions ratio 24240 = 0.1
Ek KTH
DD1343 Komprimering
-
Element Ersättning
Element• Hur skall varje element representeras?• Vad är det atomära beståndsdelen i datan?
Ek KTH
DD1343 Komprimering
-
ASCII tabell
14/02/2012 08:32 Ascii Table - ASCII character codes and html, octal, hex and decimal chart conversion
Page 1 of 1http://www.asciitable.com/
ASCII | Scan Codes and EBCDIC | HTML Codes | Unicode v4
ASCII Table and DescriptionASCII stands for American Standard Code for Information Interchange. Computers can only understand numbers, so an ASCIIcode is the numerical representation of a character such as 'a' or '@' or an action of some sort. ASCII was developed a longtime ago and now the non-printing characters are rarely used for their original purpose. Below is the ASCII character table andthis includes descriptions of the first 32 non-printing characters. ASCII was actually designed for use with teletypes and so thedescriptions are somewhat obscure. If someone says they want your CV however in ASCII format, all this means is they want'plain' text with no formatting such as tabs, bold or underscoring - the raw format that any computer can understand. This isusually so they can easily import the file into their own applications without issues. Notepad.exe creates ASCII text, or in MSWord you can save a file as 'text only'
Extended ASCII Codes
CompareEreaders
Here
Link2MeHosting
UnitConversion
Link2Me LinkExchange
Dialing Codes
Copyright © http://www.asciitable.com 2010
Ads by Google Character Letters Text Codes ASCII Text Editor ASCII
Ads by Google Hex Table Decimal Conversion Hex Viewer Coupons Codes
Ek KTH
DD1343 Komprimering
-
Element Ersättning
Element• Hur skall varje element representeras?• Vad är det atomära beståndsdelen i datan?
Huffman• Statistisk representation• De element som är mest sannolika representeras med minst
antal bitar och vise versa
Ek KTH
DD1343 Komprimering
-
Huffman
AlgoritmHuffman kodning genereras genom binärt träd1. Samanställ frekvens av element2. Skapa noder av alla bokstäver med frekvens som attribut3. Till inga element kvar,
I Koppla samman de två element med lägst frekvensI Skapa ny nod med attribut som summan av barn
4. Associera varje kant med 0,1
Ek KTH
DD1343 Komprimering
-
Huffman
Exempel
• Normal kodning: 5 variationer⇒ 3 bitar per element• Huffman kodning: 24621 +
12623 +
10623 +
8623 +
8623 ≈ 2.23
Ek KTH
DD1343 Komprimering
-
Huffman
Exempel
• Normal kodning: 5 variationer⇒ 3 bitar per element• Huffman kodning: 24621 +
12623 +
10623 +
8623 +
8623 ≈ 2.23
Ek KTH
DD1343 Komprimering
-
Huffman
Exempel
• Normal kodning: 5 variationer⇒ 3 bitar per element• Huffman kodning: 24621 +
12623 +
10623 +
8623 +
8623 ≈ 2.23
Ek KTH
DD1343 Komprimering
-
Lossy Kompression
Manifold Relevance Determination
Ek KTH
DD1343 Komprimering
-
Nästa gång
• Textsökning• Automater
Ek KTH
DD1343 Komprimering
-
e.o.f.
Ek KTH
DD1343 Komprimering
-
References I
Ek KTH
DD1343 Komprimering