260 likes | 371 Views
2004-10-14/BE 2005-10-10/BE. Telekommunikation, Kiruna Källkodning F14_B. When Saving Space Is More Important than Absolute Fidelity
E N D
2004-10-14/BE 2005-10-10/BE Telekommunikation, KirunaKällkodning F14_B F14_B_be
When Saving Space Is More Important than Absolute Fidelity You also have the option of saving your JPEG2000 images to a lossy format that can be up to 200 times smaller than a comparable-quality smaller JPEG. This is a worthwhile option to consider if you have to transmit high-quality files over the Internet, as the time saved can easily outweigh the loss of data. If you use a high-quality setting, it takes an expert to tell the difference. In Figure 2, you see two small sections of the same part of the same image of driftwood on a beach. The image on the left was saved to a lossless PSD file and requires just over 9MB to store. The same section of the image, shown on the right, was stored in "lossy" JPEG2000 at a quality level of 50. The stored file uses only 1.1MB. 9 MB 1.1 MB F14_B_be
Jpeg 28 kB 52 kB 98 kB 0.60 bit/pixel 1.17 bit/pixel 0.88 bit/pixel F14_B_be
Svartvit bild, 200*200 pixel, 1 bit/pixel Svart_sum = 6382 Vitt_sum =33618 Bild vektor 1 1 1 1 1 1 1 1 1 0 … Ide’ till Kodning? F14_B_be
R = datahastighet bit/s R1 R2 Käll- Kodare Diskret Signalkälla ADC • Förlustfri kodning R2 = R1 (”Lossless”) • Kodning med förluster R2<R1 • (”Lossy”) Analog Signalkälla F14_B_be
Exempel: En svartvit bild kodas med 8 bitar/pixel (Gråskala 0 (Svart)– 255 (Vitt) ) 100*100 Pixel Informationsmängd 100*100*8 bit För sparad bild-fil: 10 kB = 10240 bit F14_B_be
100*100 Pixel Informationsmängd 100*100*8 bit För sparad bild-fil: 5 kB = 5120 bit F14_B_be
Minns Vi: • Entropi • Egeninformation • Shannons formel ( 1 av flera ) F14_B_be
HUFFMANKOD Antag att en diskret signalkälla arbetar med symboler med olika grad av sannolikhet. IDE’: Koda symbolerna med olika antal bitar beroende på sannolihet. Stor sannolikhet ger kort kod etc. Jämför MORSE-kod. F14_B_be
1 0 1 0 1 0 B0.125 A0.125 C0.25 0.25 0.5 D0.5 1 HUFFMANKOD exempel 1: 4 Symboler A,B,C,D med olika sannolikheter 111 110 10 0 F14_B_be
ENTROPI H(X): >> P1=[0.125 0.125 0.25 0.5]; >> sum(P1) = 1 %Rimligt eller hur ? >> sum(P1.*log2(1./P1)) = 1.7500 %Entropin i bit Medelordlängden N: F14_B_be
HUFFMANKOD exempel 2: F14_B_be
Kod: 0 1 0 0.71 0.29 1 0 0.42 0.29 1 0 1 0 0.01 0.01 Kod: 111100 F14_B_be
Beräkningar visar att: H(3-sym)=2.1560 bit H(1-sym)=2.1560/3=0.8387 bit Nmedel = 3 bitar (utan hänsyn till sannolikhet) Nmedel = 0.8981 bitar ( med ” ) = 93.38 % (verkningsgrad) F14_B_be
Shannons kodningssats är godtyckligt liten F14_B_be
KODEFFEKTIVITET : Oftast <1 (100%) F14_B_be
B0.3 C0.2 D0.2 A0.3 HUFFMANKOD exempel 3: Kolla att H(X)=1.971, N = 2.0 Kodeffektivitet 1.971/ 2.0 = 98.55% Baka ihop 2 av symbolerna A – D till 16 nya symboler, t.ex AC, BC, BB, CD … Kolla att H(X)=3.9419, N = 3.98 Kodeffektivitet 3.9419/3.98 = 99.04% F14_B_be
Är Huffman-koden ”lossy” Är run-length-koden ”lossy” Ge förslag på hur en ”lossy”- algoritm kan se ut ! F14_B_be
Prefixkod • En brusfri kod bör vara-unikt avkodningsbar - momentant avkodningsbar • Ett nödvändigt och tillräckligt villkor för detta är att ett godkänt kodord inte får vara prefix i ett annat kodord F14_B_be
Vilken kod är bäst ?? F14_B_be
1 0 1 0 1 0 B0.125 A0.125 0.25 C0.25 0.5 D0.5 1 HUFFMANKOD exempel 1 igen : 111 110 10 0 |0|111|10|0|10|10| D A C 0 C C F14_B_be
Momentant avkodbar • En kod är momentan om den kan avkodas utan att man betraktar kommande • kodord • s10, s201, s311 är inte momentant av- kodningsbar ty meddelandet 0001... kan bara tolkas om man känner nästa symbol F14_B_be
s10, s210, s311 är i momentant av- kodningsbar ty meddelandet 0001110... kan tolkas utan att man känner nästa symbol F14_B_be
Kodordens längd • En kod med variabel kodlängd kan erhållas om längden på kodorden Niväljs så att: F14_B_be
Konstruera en lämplig kodningav detta: Svar: exempel på kod: 1,011,010,001,0001,00001,00000 N=2.44, H=2.37 effektivitet 97.4% F14_B_be