ImageEdit
Entropi koding oppsto på 1940-tallet med innføringen av Shannon–Fano koding, grunnlag for Huffman-koding som ble utviklet i 1950. Transform koding, og kan dateres tilbake til slutten av 1960-tallet, med introduksjon av fast Fourier transform (FFT) koding i 1968 og Hadamard transform i 1969.
En viktig bilde komprimering teknikk er discrete cosine transform (DCT), en teknikk som ble utviklet tidlig på 1970-tallet., DCT er grunnlag for JPEG, en lossy compression format som ble introdusert av Joint Photographic Experts Group (JPEG) i 1992. JPEG reduserer mengden data som kreves for å representere et bilde på bekostning av en relativt liten reduksjon i bildekvalitet, og har blitt det mest brukte image file format. Dens svært effektiv DCT-basert komprimering algoritmen var i stor grad ansvarlig for bred spredning av digitale bilder og digitale bilder.
Lempel–Ziv–Welch (LZW) er en tapsfri komprimering algoritmen utviklet i 1984. Det er brukt i GIF-format, som ble introdusert i 1987., DEFLATE, en lossless komprimering algoritmen som er angitt i 1996, er brukt i den Portable Network Graphics (PNG) – format.
Wavelet-komprimering, bruk av wavelets i bilde komprimering, begynte etter utviklingen av DCT koding. JPEG 2000-standarden ble innført i 2000. I motsetning til den DCT algoritmen brukt av den opprinnelige JPEG-format, JPEG-2000 i stedet bruker diskret wavelet transform (DWT) algoritmer. JPEG 2000-teknologi, som inkluderer Motion JPEG 2000 extension, ble valgt som video coding standard for digital kino i 2004.,
AudioEdit
Audio data komprimering, for ikke å forveksles med dynamic range compression, har den potensial til å redusere overføring båndbredde og krav til oppbevaring av audio data. Audio komprimering algoritmer implementert i programvare som lyd-kodeker. I begge lossy og lossless komprimering, informasjon redundans er redusert, ved hjelp av metoder som koding, kvantisering discrete cosine transform og lineær prediksjon for å redusere mengden av informasjon som brukes til å representere den ukomprimerte data.,
Lossy audio komprimering algoritmer gir høyere kompresjon, og er brukt i en rekke lyd-programmer, inkludert Vorbis og MP3. Disse algoritmene nesten alle er avhengige av psychoacoustics til å eliminere eller redusere gjengivelse av mindre lyder, og dermed redusere plassen som kreves for å lagre eller sende dem.
akseptabel trade-off mellom tap av lydkvalitet og overføring eller lagring av størrelse, avhenger av programmet., For eksempel, en 640 MB compact disc (CD) rommer ca en time av ukomprimert hifi, musikk, mindre enn 2 timer med musikk komprimert losslessly, eller 7 timer komprimert musikk i MP3-format på et middels bit-rate. En digital lydopptaker kan vanligvis store rundt 200 timer med klart forståelig tale i 640 MB.
lydkomprimering uten datatap produserer en representasjon av digitale data som kan dekodes til en nøyaktig digital kopi av det opprinnelige. Komprimering prosenter er rundt 50-60% av opprinnelig størrelse, som er lik de for generisk lossless data compression., Lossless kodeker bruke kurve montering eller lineær prediksjon som grunnlag for estimering av signalet. Parametere som beskriver estimering og forskjellen mellom estimert og faktisk signal er kodet separat.
En rekke lossless audio komprimering formater eksisterer. Se liste over lossless kodeker for en oppføring. Noen formater er forbundet med en tydelig system, slik som Direkte Stream Transfer, brukes i Super Audio CD og Meridian Lossless Pakking, brukes i DVD-Audio, Dolby TrueHD, Blu-ray og HD-DVD.,
Noen audio filformater som har en kombinasjon av et lossy format og et lossless rettelse: dette gjør at stripping korreksjon for å enkelt få en lossy-fil. Slike formater omfatter MPEG-4, SLS (Scalable å Lossless (uten datatap), WavPack, og OptimFROG DualStream.
Når lydfiler som skal behandles, enten ved ytterligere komprimering eller for redigering, er det ønskelig å arbeide fra en uendret opprinnelige (ukomprimert eller losslessly komprimert)., Behandling av en lossily komprimerte filen for noen formål, vanligvis produserer et endelig resultat er dårligere enn etableringen av det samme komprimert fil fra et ukomprimert opprinnelige. I tillegg til lyd redigering eller blanding, lydkomprimering uten datatap er ofte brukt for arkivering og lagring, eller som master kopier.
Lossy audio compressionEdit
Sammenligning av spectrograms av lyd i et ukomprimert format og flere lossy formater., Lossy spectrograms vis bandlimiting av høyere frekvenser, en vanlig teknikk forbundet med lossy audio komprimering.
Lossy audio komprimering brukes i et bredt spekter av applikasjoner. I tillegg til frittstående audio-kun søknader til fil for avspilling på MP3-spillere eller på datamaskiner, digitalt komprimert lyd bekker er brukt i de fleste video-Dvder, digital-tv, direkteavspilling av medier på Internett, satellitt-og kabel-radio, og i økende grad i terrestrial radio sendinger., Lossy komprimering vanligvis oppnår langt større komprimering enn lossless komprimering, ved å forkaste mindre kritiske data basert på psykoakustiske optimaliseringer.
Psychoacoustics erkjenner at ikke alle data i en audio stream kan oppfattes av det menneskelige auditive system. De fleste lossy komprimering reduserer redundans ved først å identifisere sensorisk irrelevant høres ut, det er, lyder som er veldig vanskelig å høre. Typiske eksempler på dette er høye frekvenser, eller lyder som skjer på samme tid som det høyere lyd. De irrelevant lyder er kodet med redusert nøyaktighet eller ikke i det hele tatt.,
på Grunn av tap algoritmer, lyd kvalitet lider en digital generasjon tap når en fil er dekomprimeres og recompressed. Dette gjør lossy komprimering uegnet for lagring av middels resultater i professional audio engineering programmer, for eksempel lyd redigering og flerspors opptak. Imidlertid, lossy formater som MP3 er veldig populært med sluttbrukere som fil-størrelse er redusert til 5-20% av den opprinnelige størrelsen og en megabyte kan lagre omtrent et minutt igjen av musikk med tilstrekkelig kvalitet.,
Koding methodsEdit
for Å finne ut hva slags informasjon i et lyd-signal er perceptually irrelevant, de fleste lossy komprimering algoritmer bruke omformer som er modifisert for discrete cosine transform (MDCT) for å konvertere tid domene samplet bølgeformer i en forvandle domene, vanligvis frekvensdomenet. Når forvandlet, komponent frekvenser kan prioriteres i forhold til hvordan høres de er., Audibility av spektral komponenter er vurdert med den absolutte terskel for hørsel og prinsipper samtidig maskering—fenomenet hvor et signal er maskert av en annen signal adskilt med frekvens—og, i noen tilfeller, timelige maskering—der et signal er maskert av en annen signal adskilt med tid. Lik-loudness konturer kan også brukes til vekt perseptuell betydningen av komponenter. Modeller av den menneskelige øre-hjernen kombinasjon innlemme slike effekter er ofte kalt psykoakustiske modeller.,
Andre typer lossy kompressorer, slik som lineære prediktiv koding (LPC) brukes med tale, er kilde-basert programmerere. LPC bruker en modell av menneskelig vokal tarmkanalen å analysere tale lyder og utlede de parameterne som brukes av modellen for å produsere dem, fra øyeblikk til øyeblikk. Disse endre parametere som er overført eller lagret og brukt til å drive annen modell i-dekoder som gjengir lyden.
Lossy formater er ofte brukt for distribusjon av streaming av lyd eller interaktiv kommunikasjon (for eksempel i mobiltelefon nettverk)., I slike programmer, data må være dekomprimeres som dataflyt, snarere enn etter hele datastrømmen har blitt overført. Ikke alle lyd-kodeker kan brukes for streaming applikasjoner.
Ventetid er introdusert av metodene som brukes til å kode og dekode data. Noen kodeker vil analysere en lengre segmentet, kalt en ramme av data for å optimalisere effektiviteten, og deretter koden det på en måte som krever et større segment av data på en gang for å dekode., Den iboende ventetid for koding algoritme kan være kritisk, for eksempel når det er en to-veis overføring av data, for eksempel med en telefon samtale, betydelige forsinkelser kan alvorlig svekke opplevd kvalitet.
I motsetning til hastigheten av komprimering, som er proporsjonal med antall operasjoner som kreves av algoritmen, her ventetid refererer til antall prøver som skal analyseres før en blokk av lyd er behandlet. I minste fall, ventetid er null prøver (for eksempel, hvis koder/dekoder bare reduserer antall biter som brukes til å kvantisere signal)., Tid domene algoritmer som LPC også ofte har lave latencies, derav deres popularitet i tale koding for telefoni. I algoritmer, som for eksempel MP3, men et stort antall prøver må analyseres for å gjennomføre en psykoakustiske modell i frekvensdomenet, og ventetid på bestilling av 23 ms (46 ms for to-veis kommunikasjon).
Tale encodingEdit
Tale-koding er en viktig kategori av audio data komprimering. Den perseptuelle modeller som brukes til å beregne hva det menneskelige øret kan høre er vanligvis noe forskjellig fra de som brukes for musikk., Den spekter av frekvenser nødvendig for å formidle lyden av en menneskelig stemme er normalt langt smalere enn det som kreves for musikk, og lyden er normalt mindre komplekse. Som et resultat, tale kan være kodet med høy kvalitet ved å bruke en relativt lav bithastighet.
Hvis dataene som komprimeres er analog (for eksempel en spenning som varierer med tid), kvantisering er ansatt for å digitalisere den inn tall (normalt heltall). Dette er referert til som analog-til-digital (A/D) konvertering., Hvis heltall som er generert av kvantisering er 8 biter hver, så hele spekteret av det analoge signalet er delt inn i 256 intervaller og alle signal verdier i et intervall er quantized til det samme nummeret. Hvis 16-biters heltall er generert, så rekkevidden av det analoge signalet er delt inn i 65,536 intervaller.
Dette forholdet illustrerer kompromiss mellom høy oppløsning (et stort antall av analoge intervaller) og høy kompresjon (små heltall generert). Dette programmet av kvantisering er brukt av flere tale-komprimering metoder., Dette er oppnådd, generelt, ved en kombinasjon av to tilnærminger:
- Bare koding lyder som kan være laget av et enkelt menneskelig stemme.
- å Kaste bort mer av data i signal—for å holde bare nok til å rekonstruere en «forståelig» stemme heller enn full frekvens spekteret av menneskelig hørsel.
Kanskje de tidligste algoritmer som brukes i tale-koding (og audio data komprimering generelt) var A-law-algoritmen og μ-law » – algoritme.,
HistoryEdit
Solidyne 922: verdens første kommersielle audio bit-komprimering lydkort for PC, 1990
Perseptuell koding ble først brukt til tale koding komprimering, med lineær prediktiv koding (LPC). Første konsepter for LPC dato tilbake til arbeid Fumitada Itakura (Nagoya University) og Shuzo Saito (Nippon Telegraph and Telephone) i 1966. I løpet av 1970-tallet, Bishnu S. Atal og Manfred R., Schroeder ved Bell Labs utviklet en form for LPC kalles adaptive prediktiv koding (APC), en perseptuell koding algoritme som utnyttet maskering egenskaper av det menneskelige øret, etterfulgt tidlig på 1980-tallet med code-spent lineær prediksjon (CELP) algoritme som oppnådde en betydelig komprimering for sin tid. Perseptuell koding brukes av moderne lyd komprimering formater som MP3 og AAC.
verdens første kommersielle kringkasting automatisering audio komprimering system ble utviklet av Oscar Bonello, engineering professor ved Universitetet i Buenos Aires., I 1983, ved hjelp av psykoakustiske prinsippet om maskering av kritisk band første gang utgitt i 1967, begynte han å utvikle en praktisk anvendelse basert på nylig utviklet IBM PC, og sendingen automatisering systemet ble lansert i 1987 under navnet Audicom. Tjue år senere, nesten alle radiostasjoner i verden var med lignende teknologi som er produsert av en rekke selskaper.
En litteratur kompendium for et stort utvalg av audio coding systemer ble publisert i IEEE Journal på Utvalgte Områder i Kommunikasjon (JSAC), i februar 1988., Mens det var noen papirer fra før den tid, er denne samlingen dokumentert en hel rekke ferdig, arbeider audio kodere, nesten alle av dem ved hjelp av perseptuell (dvs. maskering) teknikker og noen slags frekvens analyse og back-end støyfri koding. Flere av disse avisene skreiv om vanskeligheten av å få god, ren, digital lyd for forskningsformål. De fleste, om ikke alle, av forfatterne i JSAC utgaven var også aktive i MPEG-1 Audio-komité, som ble opprettet i MP3-format.,
VideoEdit
Video komprimering er en praktisk gjennomføring av kilde-koding i informasjon teorien. I praksis vil de fleste video-kodeker brukes sammen med audio komprimering teknikker for å lagre separate, men gjensidig utfyllende datastrømmer som en kombinert pakke ved hjelp av såkalte container-formater.
Ukomprimert video krever en svært høy datarate. Selv om lossless video komprimering kodeker utføre på en komprimering faktor på 5 til 12, og en typisk H. 264 lossy komprimering av video har en kompresjon faktor på mellom 20 og 200.,
to sentrale video komprimering teknikker som brukes i video-koding standarder er discrete cosine transform (DCT) og bevegelseskompensasjon (MC). De fleste video-koding standarder, for eksempel H. 26x og MPEG-formater, bruker vanligvis bevegelse-kompensert DCT video-koding (blokkere bevegelse erstatning).
Koding theoryEdit
Video data kan representeres som en serie stillbilder image rammer. Slike data inneholder vanligvis store mengder av romlig og temporal redundans. Video komprimering algoritmer forsøk på å redusere redundans og lagre informasjon på en mer kompakt.,
de Fleste video-komprimering formater og kodeker utnytte både romlig og temporal redundans (f.eks. gjennom forskjellen koding med bevegelse erstatning). Likheter kan bli kodet av bare lagre forskjeller mellom f.eks. timelig tilstøtende rammer (inter-frame koding) eller romlig tilstøtende bildepunkter (intra-frame-koding).Inter-frame komprimering (en temporal delta koding) er en av de mest kraftfulle teknikker for komprimering. Det (re)bruker data fra ett eller flere tidligere eller senere bilder i en sekvens for å beskrive den nåværende ramme., Intra-frame koding, på den annen side, bruker kun data fra innenfor dagens ramme, effektivt blir fortsatt-bilde komprimering.
En klasse av spesialiserte formater som brukes i kameraer og video redigering bruker mindre kompliserte komprimering ordninger som begrenser deres prediksjon teknikker for å intra-frame prediksjon.
Vanligvis video komprimering i tillegg sysselsetter lossy komprimering teknikker som kvantisering som reduserer aspekter av kildedataene som er (mer eller mindre) er irrelevant i forhold til den menneskelige visuell persepsjon ved å utnytte perseptuelle funksjoner av synet., For eksempel, små forskjeller i farge er vanskeligere å oppfatte enn endringer i lysstyrke. Komprimering algoritmer kan gjennomsnittlig en farge på tvers av disse lignende områder for å redusere plass, på en måte som ligner de som brukes i JPEG-komprimering. Som i alle lossy komprimering, det er en trade-off mellom video kvalitet og bit rate, kostnadene ved behandling kompresjon og dekompresjon, og systemkrav. Svært komprimert video kan presentere synlig eller forstyrrende gjenstander.,
Andre metoder enn de som er utbredt DCT-basert forvandle formater, for eksempel fraktal komprimering, matching pursuit og bruk av diskret wavelet transform (DWT), har vært gjenstand for en del forskning, men er vanligvis ikke brukt i det praktiske produkter (unntatt for bruk av wavelet-koding som still-bilde programmerere uten bevegelse erstatning). Interesse i fraktal komprimering synes å være avtagende, på grunn av de siste teoretisk analyse som viser en komparativ mangel på effektiviteten av slike metoder.,
Inter-frame codingEdit
Inter-frame koding fungerer ved å sammenligne hver ramme i videoen med den forrige. Individuelle bilder av en videosekvens er forhold fra det ene bildet til det neste, og det videokomprimering codec sender bare forskjellene til referanse ramme. Hvis bildet inneholder områder der ingenting har flyttet, kan systemet bare gi en kort kommando som kopierer den delen av forrige bilde i den neste., Hvis deler av rammen gå på en enkel måte, kompressoren kan avgi en (litt lengre) kommando som forteller dekomprimering til skift -, rotere -, lysere eller mørkere kopi. Dette lenger kommando fortsatt er mye kortere enn intraframe komprimering. Vanligvis encoder vil også overføre rester signal som beskriver de resterende mer subtile forskjeller til referanse-bilder. Ved hjelp av entropi koding, disse rester signaler har en mer kompakt representasjon enn full signal., I områder med video med mer bevegelse, komprimering må kode mer data for å holde tritt med større antall punkter som er endret. Vanligvis i løpet av eksplosjoner, ild, flokker av dyr, og i noen panorere skudd, høy frekvens detalj fører til kvalitet nedgang eller økning i variabel bitrate.,
Hybrid blokk-basert forvandle formatsEdit
Behandling stadier av en typisk video encoder
i Dag, nesten alle brukte video komprimering metoder (f.eks., de standarder godkjent av ITU-T eller ISO) deler samme grunnleggende arkitektur som kan dateres tilbake til H. 261 som ble standardisert i 1988 av ITU-T., De stort sett stole på DCT brukes til rektangulære blokker av nærliggende punkter, og timelige prediksjon ved hjelp av bevegelsesvektorer, så vel som i dag også en i-loop-filtrering trinn.
I prediksjon scenen, ulike deduplisering og forskjellen-koding teknikker er brukt som hjelper decorrelate data og beskrive nye data basert på allerede data som overføres.
Så rektangulære blokker av (rester), pixel data er forvandlet til frekvensdomenet for å lette målretting irrelevant informasjon i kvantisering og for noen romlig redundans reduksjon., Den discrete cosine transform (DCT) som er mye brukt i denne forbindelse ble introdusert av N. Ahmed, T. Natarajan og K. R. Rao i 1974.
I de viktigste lossy foredlingsleddet at data blir quantized for å redusere informasjon som er irrelevant i forhold til menneskelig visuell persepsjon.
I den siste fasen statistisk redundans blir i stor grad eliminert av en entropi koder som ofte gjelder noen form for aritmetisk koding.
en ekstra i-loop-filtrering scenen ulike filtre kan brukes på de rekonstruerte bildet signal., Ved å beregne disse filtrene også inne koding loop de kan hjelpe komprimering, fordi de kan brukes til å referere til materialet før det blir brukt i spådommen om prosessen, og de kan bli guidet ved hjelp av det opprinnelige signalet. De mest populære eksempel er deblocking filtre som visker ut blokkere gjenstander fra kvantisering discontinuities på forvandle blokkere grenser.
HistoryEdit
I 1967, A. H. Robinson og C., Cherry foreslått en run-length koding båndbredde komprimering ordning for overføring av analoge tv-signaler. Discrete cosine transform (DCT), som er grunnleggende for moderne videokomprimering, ble introdusert av Nasir Ahmed, T. Natarajan og K. R. Rao i 1974.
H. 261, som debuterte i 1988, kommersielt introdusert utbredt grunnleggende arkitektur av video komprimering teknologi. Det var den første video-koding format basert på DCT komprimering, som ville senere bli standard for alle de store video-koding formater som fulgte. H.,261 ble utviklet av en rekke selskaper, inkludert Hitachi, PictureTel, NTT, BT og Toshiba.
Den mest populære video-koding standarder som brukes for kodeker som har vært MPEG-standardene. MPEG-1 er utviklet av the Motion Picture Experts Group (MPEG) i 1991, og den ble designet for å komprimere VHS-kvalitet video. Det var lyktes i 1994 av MPEG-2/H. 262, som ble utviklet av en rekke selskaper, i hovedsak Sony, Thomson og Mitsubishi Electric. MPEG-2 ble standard video format for DVD og SD digital-tv. I 1999 ble det fulgt av MPEG-4/H.,263, som var et stort sprang fremover for video komprimering teknologi. Det ble utviklet av en rekke selskaper, i hovedsak Mitsubishi Electric, Hitachi og Panasonic.
Den mest brukte video-koding format er H. 264/MPEG-4 AVC. Det ble utviklet i 2003 av en rekke organisasjoner, først og fremst Panasonic, Godo Kaisha IP-Broen og LG Electronics. AVC-kommersielt introdusert den moderne kontekst-adaptive binære aritmetisk koding (CABAC) og kontekst-tilpasset variabel lengde koding (CAVLC) algoritmer., AVC er de viktigste video-koding standarden for Blu-ray-Plater, og er mye brukt av streaming av internett-tjenester som YouTube, Netflix, Vimeo, og iTunes Store, web-programvare, for eksempel Adobe Flash Player og Microsoft Silverlight, og ulike HDTV-sendinger via bakkenett og satellitt-tv.,
GeneticsEdit
Genetikk komprimering algoritmer er den nyeste generasjonen av lossless algoritmer som komprimerer data (vanligvis sekvenser av nukleotider) ved hjelp av både konvensjonelle komprimering algoritmer og genetisk algoritmer tilpasset bestemt datatype. I 2012, et team av forskere fra Johns Hopkins University publisert en genetisk komprimering algoritmen som ikke bruker en referanse genom for komprimering., HAPZIPPER var skreddersydd for HapMap data og oppnår over 20-fold-komprimering (95% reduksjon i filstørrelse), gir 2 – til 4-fold bedre komprimering og langt raskere tid enn den ledende general-purpose komprimering verktøy. For dette, Chanda, Elhaik, og Han introduserte MAF er basert koding (MAFE), noe som reduserer mangfold av datasettet ved å sortere SNPs av de mindre allelet frekvens, og dermed homogenisere datasettet. Andre algoritmer i 2009 og 2013 (DNAZip og GenomeZip) har komprimering prosenter av opp til 1200-fold—slik 6 milliarder basepair diploid menneskelige genomet til å bli lagret i 2.,5 megabyte (i forhold til en referanse genom eller fordelt på mange genomet). For en benchmark i genetikk/genomics data kompressorer, se
Legg igjen en kommentar