Forutsigende koding

Den prediktive kodingen er en spesiell form for koding som er betydelig basert på prognoser og antagelser.

Ved å bruke de (kjente) dataene som allerede er lest, blir det forsøkt å uttale seg om de kommende dataene. Hvis du for eksempel vet at et objekt beveger seg i bildet, kan du prøve å forutsi hvor det, eller deler av det, vil være på de neste bildene. Forskjellen mellom spådommen og det sanne bildet lagres. I tillegg til videokomprimeringsmetoder, bruker metoder for lyd- og bildekomprimering også prediktiv koding.

Fordelen her er at hvis prognosen er god, er avviket fra de virkelige verdiene bare veldig lite (nær null). Verdiene som skal lagres er derfor veldig små eller like og kan lett reduseres ytterligere ved en påfølgende komprimering (f.eks. Kodelengde for kjørelengde eller koding av entropi ).

Prediktiv koding er derfor ikke en datareduksjon (mengden informasjon forblir den samme), men en transformasjon av verdiene til en form som er et bedre utgangspunkt for andre kodingsmetoder.

Imidlertid har den ulempen å øke dekodingsinnsatsen, siden prediksjonen også må gjøres her for å korrigere den for avviket og dermed beregne utgangsverdien. Videre er koderen og dekoderen avhengig av hverandre; det er ikke mulig å endre typen prediksjon i koderen uten å måtte tilpasse dekoderen.

På grunn av den relative referansen til tidligere verdier, krever prediktiv koding periodisk absolutte støttepunkter hvis en video brukes til streaming eller hvis spoler skal være mulig. Støttepunktene er såkalte I-bilder , som er fullstendig lagret og på grunnlag av hvilke følgende bilder kan forutsies.

Typer prognoser for bildekomprimering

Svært enkle prediksjonsalgoritmer for bilder forutsier et (muligens vektet) gjennomsnitt fra allerede kjente piksler for gjeldende piksel. Siden de fleste rasterbildeformater lagrer bildedata linje for linje fra topp til bunn, per linje fra venstre til høyre, er de kjente pikslene (i dekoderen) til venstre og over gjeldende piksel. The PNG filformat vet fire forskjellige såkalte pre - filtre . Avhengig av bildeinnholdet, vil et annet filter gi et bedre (dvs. mindre etter komprimering) resultat. Siden filtrene kan endres for hver bildelinje, er det et stort antall filterkombinasjonsalternativer. En “optimizer” for PNG-filer kan prøve dem alle for å bestemme den minste filstørrelsen. De fleste programmer som kan skrive PNG-filer, bruker imidlertid et fast forfilter for hele bildet. Dette er enten løst, avhengig av fargedybde, eller bestemmes ut fra bildeinnholdet ved hjelp av en enkel heuristikk.

Typer prognoser for videokomprimering

  • kontekstfri prediksjon (bevegelsesforutsigelse)

Her foregår prediksjonen utelukkende ved å bestemme endringer i lysstyrke i bildet uten semantisk informasjon; det er Z. B. uavhengig av om det blir filmet en bil eller en ball, er bare lysstyrkenes endring viktig.

  • modellbasert prediksjon (bevegelsesforutsigelse)

Basert på forventningen om det viste bildeinnholdet. Et godt eksempel er videotelefoni, der bildet vanligvis bare endres ubetydelig, siden bakgrunnen forblir den samme og personen som ringer, beveger seg lite.

  • objekt- og regionbasert prediksjon (bevegelsesforutsigelse)

Den mest komplekse typen prediksjon er segmentering / gjenkjenning og sporing av objekter. Her gjenkjennes individuelle objekter (semantisk) og bevegelsen forutsies over flere bilder (f.eks. Ruller ballen forbi kameraet).

  • Kamerabevegelse (bevegelseskompensasjon)

Ofte endres et bilde i stor grad på grunn av det faktum at kameraet beveger seg i en rett linje (filmer en forbipasserende vei gjennom sidevinduet til en bil), roterer eller bruker en zoom. I alle tilfeller kan mye bildeinnhold brukes på nytt ved å beholde bildeinnholdet og bare flytte det ved hjelp av bevegelsesvektorer.

Se også

H.264 , MPEG