22.08.2013 Views

Mjukvarurealiserad bildtelefoni - Umeå universitet

Mjukvarurealiserad bildtelefoni - Umeå universitet

Mjukvarurealiserad bildtelefoni - Umeå universitet

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Förlustfri komprimering<br />

De flesta typer av förlustfri komprimering (lossless compression) baserar sig på ansatsen att finna<br />

ett mer effektivt sätt att representera informationen (till skillnad mot dataförstörande som väljer<br />

bort information efter en given strategi). Den maximala kompressionsnivån som kan uppnås av en<br />

förlustfri komprimering definieras av datamängdens inneboende entropi (energiinnehåll), vilken i<br />

runda ordalag definierar hur mycket information det egentligen finns i en datamängd och ger därigenom<br />

även indirekt ett mått på den mest effektiva representationens storlek. Vi skall här översiktligt<br />

gå igenom ett antal exempel på förlustfri kompression, vilka alla har förenklats en smula<br />

för läsarens intuitiva förståelses skull. De finns med här för att erbjuda läsaren en introduktion till<br />

komprimering och en bättre bild av hur olika tekniker för komprimering är uppbyggda.<br />

Run–Length Encoding<br />

Run–Length Encoding (hädanefter kallad RLE) är en av de enklaste varianterna av komprimering<br />

och baserar sig på antagandet att det i data finns återkommande sekvenser av samma värde (så<br />

kallade run–lengths). Dessa sekvenser kodas efter identifierandet i termer av tecken bestående av<br />

värdet och längden på sekvensen. RLE kan (och görs ofta) även med fördel appliceras på tvådimensionella<br />

datastrukturer och uppnår oftast sin högsta effektivitet på datamängder med enkel<br />

struktur. Ett vanligt förekommande exempel på sådana datamängder är text eller bilder med lågt<br />

färgdjup (lågt antal distinkta färger i bilden), varför RLE återfinns inom ett flertal standarder för<br />

telefax och liknande tillämpningar.<br />

Predictive coding<br />

Predictive coding kan ses som en utökning av RLE då denna variant fokuserar på att identifiera<br />

strukturer av vanligt förekommande data och kodar sedan informationen i termer av avvikelser<br />

från denna förutsägelse. Härledningsmässigt gäller dock inte detta släktskap då predictive coding<br />

egentligen baseras på statistiska analyser av tillämpningsmässigt data. Predictive coding finner<br />

sina tillämpningar främst inom överföringstillämpningar där det finns utförlig kunskap om vanligt<br />

förekommande datastrukturer i data, snarare än möjlighet att analysera det data som genereras i sin<br />

helhet.<br />

Dictionary based coding<br />

En till Predictive coding närbesläktad ansats är Dictionary based coding, vilken liksom den förstnämnda<br />

baseras på statistisk analys av data. Här fokuseras dock på att identifiera strukturer i data<br />

vilka lagras i speciella uppslagstabeller. Informationen kodas sedan om i termer av index in i dessa<br />

tabeller istället för som tidigare i termer av sekvensstorlekar. Rent generellt lämpar sig dessa algoritmer<br />

bättre för lagringstillämpningar snarare än överföringstillämpningar eftersom ett effektivt<br />

identifierande och uppbyggande av dessa tabeller baserar sig på en överblick över den fullständiga<br />

datamängden. Detta ställer i sin tur krav på tillgängligheten av data som inte alltid uppfylls av<br />

överföringstillämpningar, vilka oftast börjar överföra data innan allt data är genererat. Naturligt<br />

följer effekten att dessa algoritmer tenderar att ignorera kunskap om datakällan och istället fokusera<br />

på de strukturer som finns i tillgängligt data. Därmed har dessa algoritmer en generalitet som<br />

gör att de kan appliceras på godtyckligt data och de återfinns därför ofta i tillämpningar för kompression<br />

av godtyckliga datafiler (såsom verktygen pkzip och UNIX compress). Värt att notera är<br />

även att dessa algoritmer når en hög effektivitet vid kompression av homogena bilder (vilka exempelvis<br />

kan ha mycket bakgrund i sig) och därför även återfinns i många komprimeringsbaserade<br />

filformat för grafik, såsom GIF (Graphics Interchange Format).<br />

24

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!