Adaptiv koding - Adaptive coding

Adaptiv koding refererer til varianter av entropykodingsmetoder for tapsfri datakomprimering . De er spesielt egnet for strømming av data, da de tilpasser seg lokale endringer i kjennetegnene til dataene, og krever ikke et første passering over dataene for å beregne en sannsynlighetsmodell. Kostnaden som er betalt for disse fordelene er at koderen og dekoderen må være mer komplekse for å holde tilstandene synkroniserte, og det kreves mer regnekraft for å fortsette å tilpasse koderen / dekodertilstanden.

Nesten alle datakomprimeringsmetoder involverer bruk av en modell , en prediksjon av sammensetningen av dataene. Når dataene samsvarer med prediksjonen laget av modellen, kan koderen vanligvis overføre innholdet i dataene til en lavere informasjonskostnad ved å henvise til modellen. Denne generelle uttalelsen er litt misvisende som generell datakomprimeringsalgoritmer ville inkludere de populære LZW og LZ77 algoritmer, som er knapt sammenlignes med komprimeringsteknikker vanligvis kalt adaptiv . Kjørelengdekoding og den typiske JPEG- komprimeringen med kjørelengdekoding og forhåndsdefinerte Huffman-koder sender ikke en modell. Mange andre metoder tilpasser modellen til den gjeldende filen og trenger å overføre den i tillegg til de kodede dataene, fordi både koderen og dekoderen trenger å bruke modellen.

I adaptiv koding er koderen og dekoderen i stedet utstyrt med en forhåndsdefinert metamodell om hvordan de vil endre modellene sine som svar på det faktiske innholdet i dataene, og ellers starte med en tom skifer, noe som betyr at ingen startmodell trenger å være overført. Når dataene blir overført, tilpasser både koderen og dekoderen modellene sine, slik at med mindre dataenes karakter endres radikalt, blir modellen bedre tilpasset dataene den håndterer og komprimerer dem mer effektivt for å nærme effektiviteten til den statiske kodingen.

Adaptiv metode

Giver

  1. Initialiser datamodellen i henhold til avtale.
  2. Mens det er mer data å sende
    1. Koder neste symbol ved hjelp av datamodellen og send det.
    2. Endre datamodellen basert på det siste symbolet.

dekoder

  1. Initialiser datamodellen i henhold til avtale.
  2. Mens det er mer data å motta
    1. Avkod det neste symbolet ved hjelp av datamodellen og send det ut.
    2. Endre datamodellen basert på det dekodede symbolet.

Enhver adaptiv kodingsmetode har en tilsvarende statisk modellmetode , der datamodellen blir forberegnet og deretter overført med dataene.

Statisk metode

Giver

  1. Initialiser datamodellen basert på en første passering over dataene.
  2. Overfør datamodellen.
  3. Mens det er mer data å sende
    1. Koder neste symbol ved hjelp av datamodellen og send det.

dekoder

  1. Motta datamodellen.
  2. Mens det er mer data å motta
    1. Avkod det neste symbolet ved hjelp av datamodellen og send det ut.

eksempler

Adaptiv bildekoding brukes for tiden av Cassini-Huygens håndverk for å videresende bilder fra Saturn . Bare rundt 5% av bildene viser synlige tegn på skade. Siden romfartøyet har en feil med å korrigere Flash-stasjonen og lange tidsrammer mellom bilder som tar hendelser, kan skadede bilder som dette bli sendt på nytt. Det antas at antall skadede, men uopprettelige bilder fra Cassini-oppdraget er omtrent 0,01% eller mindre.

Image
Cassini-kameraet pekte mot DIONE i en avstand på omtrent 548,210 kilometer. Bildet ble tatt med CL1- og CL2-filtrene 17. mai 2010.

Cassini Lossless Compression

  • Både konverterte (8-biters) og ukonverterte (12-biters) data kan komprimeres tapløst. Cassini maskinvaredatakompressor bruker et modifisert Huffman-kodingsskjema som en del av sin adaptive kompressor.
  • Hvert komprimert bilde kan rekonstrueres på bakken uten tap av informasjonsinnholdet i bildet, forutsatt at bildens entropi ikke overskrider terskelen der 2: 1-komprimering er nådd.
  • På grunn av kameraproblemer og behovet for å redusere filstørrelse, er det en liten endring av bildekodingsskjemaet, slik at hver komprimerte linje effektivt er båndbredde begrenset av antall tilgjengelige biter for å kode den.