ImageEdit
Entropikodning härstammar från 1940–talet med införandet av Shannon-Fano-kodning, grunden för Huffman-kodning som utvecklades 1950. Transform coding går tillbaka till slutet av 1960-talet, med införandet av fast Fourier transform (FFT) kodning 1968 och Hadamard transform 1969.
en viktig bildkomprimeringsteknik är discrete cosinus transform (DCT), en teknik som utvecklades i början av 1970-talet., DCT är grunden för JPEG, en förstörande komprimeringsformat som infördes av Joint Photographic Experts Group (JPEG) 1992. JPEG minskar kraftigt mängden data som krävs för att representera en bild på bekostnad av en relativt liten minskning av bildkvaliteten och har blivit det mest använda bildfilformatet. Dess högeffektiva DCT-baserade komprimeringsalgoritm var till stor del ansvarig för den breda spridningen av digitala bilder och digitala bilder.
Lempel–Ziv–Welch (LZW) är en förlustfri komprimeringsalgoritm som utvecklats 1984. Den används i GIF-format, infördes 1987., DEFLATE, en förlustfri komprimeringsalgoritm som anges i 1996, används i Portable Network Graphics (PNG) format.
wavelet-komprimering, användningen av wavelets i bildkomprimering, började efter utvecklingen av DCT-kodning. JPEG 2000-standarden infördes 2000. I motsats till DCT-algoritmen som används av det ursprungliga JPEG-formatet använder JPEG 2000 istället diskreta wavelet transform (DWT) algoritmer. JPEG 2000 technology, som inkluderar Motion JPEG 2000 förlängning, valdes som video coding standard för digital cinema 2004.,
AudioEdit
ljud datakomprimering, inte att förväxla med dynamiskt omfång komprimering, har potential att minska överförings bandbredd och lagringskrav för ljuddata. Ljudkomprimeringsalgoritmer implementeras i programvara som audio codecs. I både förstörande och förlustfri komprimering reduceras informationsredundans med hjälp av metoder som kodning, kvantifiering diskret cosinusomvandling och linjär förutsägelse för att minska mängden information som används för att representera de okomprimerade data.,
förstörande ljudkomprimeringsalgoritmer ger högre komprimering och används i många ljudprogram, inklusive Vorbis och MP3. Dessa algoritmer är nästan alla beroende av psykoakustik för att eliminera eller minska trovärdigheten hos mindre hörbara ljud, vilket minskar det utrymme som krävs för att lagra eller överföra dem.
den acceptabla avvägningen mellan förlust av ljudkvalitet och överföring eller lagringsstorlek beror på ansökan., Till exempel rymmer en 640 MB CD (CD) ungefär en timmes okomprimerad Hifi-Musik, mindre än 2 timmars musik komprimerad förlustfritt eller 7 timmars musik komprimerad i MP3-format med en medium bithastighet. En digital ljudinspelare kan normalt lagra cirka 200 timmar tydligt begripligt tal i 640 MB.
förlustfri ljudkomprimering ger en representation av digitala data som kan avkodas till en exakt digital kopia av originalet. Kompressionsförhållanden är cirka 50-60% av den ursprungliga storleken, vilket liknar dem för generisk förlustfri datakomprimering., Förlustfria codecs använder kurvmontering eller linjär förutsägelse som grund för att uppskatta signalen. Parametrar som beskriver uppskattningen och skillnaden mellan uppskattningen och den faktiska signalen kodas separat.
det finns ett antal förlustfria ljudkomprimeringsformat. Se Lista över förlustfria codecs för en notering. Vissa format är associerade med ett distinkt system, såsom Direct Stream Överföring, som används i Super Audio CD och Meridian Förlustfri Packning, som används i DVD-Audio, Dolby TrueHD, Blu-ray och HD-DVD.,
vissa ljudfilformat har en kombination av ett förstörande format och en förlustfri korrigering; detta gör det möjligt att ta bort korrigeringen för att enkelt få en förstörande fil. Sådana format inkluderar MPEG-4 SLS (skalbar till förlustfri), WavPack och OptimFROG dualstream.
När ljudfiler ska bearbetas, antingen genom ytterligare komprimering eller för redigering, är det önskvärt att arbeta från ett oförändrat original (okomprimerat eller förlustfritt komprimerat)., Bearbetning av en förlusttäckt fil för något ändamål ger vanligtvis ett slutresultat som är sämre än skapandet av samma komprimerade fil från ett okomprimerat original. Förutom ljudredigering eller blandning används förlustfri ljudkomprimering ofta för arkivlagring eller som huvudkopior.
förstörande ljudkompressionedit
jämförelse av spektrogram av ljud i okomprimerat format och flera förstörande format., De förstörande spektrogrammen visar bandlimiting av högre frekvenser, en vanlig teknik i samband med förstörande ljudkomprimering.
förstörande ljudkomprimering används i ett brett spektrum av applikationer. Förutom fristående ljud-endast tillämpningar av filuppspelning i MP3-spelare eller datorer, digitalt komprimerade ljudströmmar används i de flesta Video-DVD-skivor, digital-tv, strömmande media på Internet, satellit-och kabelradio, och alltmer i markbundna radiosändningar., Förstörande komprimering uppnår vanligtvis mycket större kompression än förlustfri komprimering, genom att kassera mindre kritiska data baserat på psykoakustiska optimeringar.
psykoakustik erkänner att inte alla data i en ljudström kan uppfattas av det mänskliga hörselsystemet. De flesta förstörande komprimering minskar redundans genom att först identifiera perceptuellt irrelevanta ljud, det vill säga ljud som är mycket svåra att höra. Typiska exempel är höga frekvenser eller ljud som uppstår samtidigt som högre ljud. De irrelevanta ljuden är kodade med minskad noggrannhet eller inte alls.,
på grund av den typ av förstörande algoritmer, lider ljudkvalitet en digital generation förlust när en fil dekomprimeras och kompresseras. Detta gör förstörande komprimering olämplig för att lagra de mellanliggande resultaten i professionella Audio engineering applikationer, såsom ljudredigering och multitrack inspelning. Dock, förstörande format som MP3 är mycket populära hos slutanvändare som filstorleken reduceras till 5-20% av den ursprungliga storleken och en megabyte kan lagra ungefär en minuts värde av musik på tillräcklig kvalitet.,
Kodningsmetodsedit
för att avgöra vilken information i en ljudsignal är perceptuellt irrelevant, använder de flesta förstörande komprimeringsalgoritmer transformationer som den modifierade diskreta cosinusomvandlingen (MDCT) för att konvertera tidsdomän samplade vågformer till en transformationsdomän, vanligtvis frekvensdomänen. När omvandlas, kan komponentfrekvenser prioriteras enligt hur hörbara de är., Hörbarhet av spektrala komponenter bedöms med hjälp av den absoluta tröskeln för hörsel och principerna för samtidig maskering-fenomenet där en signal maskeras av en annan signal åtskild av frekvens—och i vissa fall temporal maskering-där en signal maskeras av en annan signal åtskild av tiden. Equal-loudness konturer kan också användas för att väga den perceptuella betydelsen av komponenter. Modeller av den mänskliga öron-hjärnkombinationen som innehåller sådana effekter kallas ofta psykoakustiska modeller.,
andra typer av förstörande kompressorer, som den linjära prediktiva kodningen (LPC) som används med tal, är källbaserade kodare. LPC använder en modell av människans vokalkanal för att analysera talljud och dra slutsatsen att parametrarna som används av modellen för att producera dem ögonblick till ögonblick. Dessa förändrade parametrar överförs eller lagras och används för att driva en annan modell i dekodern som återger ljudet.
förstörande format används ofta för distribution av strömmande ljud eller interaktiv kommunikation (t.ex. i mobiltelefonnät)., I sådana tillämpningar måste data dekomprimeras som dataflöden, snarare än efter att hela dataströmmen har överförts. Inte alla audio codecs kan användas för strömmande program.
latens införs genom de metoder som används för att koda och avkoda data. Vissa codecs kommer att analysera ett längre segment, kallas en ram, av data för att optimera effektiviteten, och sedan koda det på ett sätt som kräver ett större segment av data på en gång för att avkoda., Den inneboende latensen hos kodningsalgoritmen kan vara kritisk; till exempel, när det finns en tvåvägsöverföring av data, till exempel med ett telefonsamtal, kan betydande förseningar allvarligt försämra den upplevda kvaliteten.
i motsats till komprimeringshastigheten, som är proportionell mot antalet operationer som krävs av algoritmen, hänvisar latens här till antalet prover som måste analyseras innan ett ljudblock behandlas. I det minsta fallet är latens nollprover (t.ex. om kodaren/dekodern helt enkelt minskar antalet bitar som används för att kvantifiera signalen)., Tidsdomänalgoritmer som LPC har också ofta låga latenser, därav deras popularitet i talkodning för telefoni. I algoritmer som MP3 måste dock ett stort antal prover analyseras för att implementera en psykoakustisk modell i frekvensdomänen, och latens är i storleksordningen 23 ms (46 ms för tvåvägskommunikation).
Speech encodingEdit
Speech encoding är en viktig kategori av ljuddatakomprimering. De perceptuella modellerna som används för att uppskatta vad ett mänskligt öra kan höra är i allmänhet något annorlunda än de som används för musik., Frekvensområdet som behövs för att förmedla ljudet av en mänsklig röst är normalt mycket smalare än det som behövs för musik, och ljudet är normalt mindre komplicerat. Som ett resultat kan tal kodas med hög kvalitet med en relativt låg bithastighet.
om data som ska komprimeras är analog (t.ex. en spänning som varierar med tiden) används kvantifiering för att digitalisera den till siffror (normalt heltal). Detta kallas analog-till-digital (A/D) konvertering., Om heltal som genereras av kvantifiering är 8 bitar vardera, är hela intervallet för den analoga signalen uppdelad i 256 intervall och alla signalvärden inom ett intervall kvantifieras till samma nummer. Om 16-bitars heltal genereras, är intervallet för den analoga signalen uppdelad i 65.536 intervall.
denna relation illustrerar kompromissen mellan hög upplösning (ett stort antal analoga intervall) och hög kompression (små heltal genereras). Denna tillämpning av kvantifiering används av flera talkomprimeringsmetoder., Detta uppnås i allmänhet genom en kombination av två tillvägagångssätt:
- endast kodningsljud som kan göras av en enda mänsklig röst.
- kasta bort mer av data i signalen—hålla bara tillräckligt för att rekonstruera en ”begriplig” röst snarare än hela frekvensområdet av mänsklig hörsel.
kanske de tidigaste algoritmerna som används i talkodning (och ljuddatakomprimering i allmänhet) var a-law-algoritmen och μ-law-algoritmen.,
HistoryEdit
Solidyne 922: världens första kommersiella ljudbitskomprimering ljudkort för PC, 1990
Perceptuell kodning användes först för talkodningskomprimering, med linjär prediktiv kodning (LPC). Inledande begrepp för LPC går tillbaka till arbete Fumitada Itakura (Nagoya University) och Shuzo Saito (Nippon Telegraph and Telephone) i 1966. Under 1970-talet, Bishnu S. Atal och Manfred R., Schroeder At Bell Labs utvecklade en form av LPC kallad adaptive predictive coding (APC), en perceptuell kodningsalgoritm som utnyttjade maskeringsegenskaperna hos det mänskliga örat, följt i början av 1980-talet med algoritmen Code-excited linear prediction (CELP) som uppnådde ett signifikant kompressionsförhållande för sin tid. Perceptuell kodning används av moderna ljudkomprimeringsformat som MP3 och AAC.
världens första kommersiella broadcast automation ljudkomprimeringssystem har utvecklats av Oscar Bonello, en teknisk professor vid University of Buenos Aires., 1983, med hjälp av den psykoakustiska principen om maskering av kritiska band som publicerades första gången 1967 började han utveckla en praktisk tillämpning som bygger på den nyligen utvecklade IBM PC-dator och broadcast-automation-system lanserades 1987 under namnet Audicom. Tjugo år senare använde nästan alla radiostationer i världen liknande teknik som tillverkades av ett antal företag.
ett litteraturkompendium för ett stort antal ljudkodningssystem publicerades i IEEE: s Journal on Selected Areas in Communications (JSAC), i februari 1988., Medan det fanns några papper från före den tiden dokumenterade denna samling en hel mängd färdiga, fungerande ljudkodare, nästan alla med hjälp av perceptuella (dvs maskering) tekniker och någon form av frekvensanalys och back-end ljudlös kodning. Flera av dessa papper påpekade svårigheten att få bra, rent digitalt ljud för forskningsändamål. De flesta, om inte alla, av författarna i jsac-utgåvan var också aktiva i MPEG-1-ljudkommittén, som skapade MP3-formatet.,
VideoEdit
videokomprimering är en praktisk implementering av källkodning i informationsteori. I praktiken används de flesta video-codecs tillsammans med ljudkomprimeringstekniker för att lagra separata men kompletterande dataströmmar som ett kombinerat paket med så kallade containerformat.
okomprimerad video kräver en mycket hög datahastighet. Även förlustfri videokomprimering codecs utföra vid en kompressionsfaktor på 5 till 12, en typisk H. 264 förstörande komprimeringsvideo har en kompressionsfaktor mellan 20 och 200.,
de två viktiga videokomprimeringsteknikerna som används i videokodningsstandarder är discrete cosinus transform (DCT) och motion compensation (MC). De flesta videokodningsstandarder, som H. 26x-och MPEG-format, använder vanligtvis rörelsekompenserad DCT-videokodning (block motion compensation).
kodning av theoryEdit
videodata kan representeras som en serie stillbildsramar. Sådana data innehåller vanligtvis rikliga mängder rumslig och tidsmässig redundans. Video komprimeringsalgoritmer försöker minska redundans och lagra information mer kompakt.,
de flesta videokomprimeringsformat och codecs utnyttjar både rumslig och tidsmässig redundans (t.ex. genom differenskodning med rörelsekompensation). Likheter kan kodas genom att endast lagra skillnader mellan t.ex. temporalt intilliggande ramar (inter-frame kodning) eller rumsligt intilliggande pixlar (intra-frame kodning).Inter-frame komprimering (en temporal delta kodning) är en av de mest kraftfulla komprimeringstekniker. Den (re) använder data från en eller flera tidigare eller senare ramar i en sekvens för att beskriva den aktuella ramen., Intra-frame kodning, å andra sidan, använder endast data inifrån den aktuella ramen, effektivt är stillbildskomprimering.
en klass av specialiserade format som används i videokameror och videoredigering använder mindre komplexa komprimeringssystem som begränsar deras förutsägelsestekniker till intra-frame förutsägelse.
vanligtvis använder videokomprimering dessutom förstörande komprimeringstekniker som kvantifiering som minskar aspekter av källdata som (mer eller mindre) är irrelevanta för den mänskliga visuella uppfattningen genom att utnyttja perceptuella egenskaper hos mänsklig syn., Till exempel är små skillnader i färg svårare att uppfatta än förändringar i ljusstyrka. Komprimeringsalgoritmer kan i genomsnitt en färg över dessa liknande områden för att minska utrymmet, på ett sätt som liknar dem som används i JPEG-bildkomprimering. Som i alla förstörande komprimering, det finns en avvägning mellan videokvalitet och bithastighet, kostnaden för bearbetning av komprimering och dekompression, och systemkrav. Mycket komprimerad video kan presentera synliga eller distraherande artefakter.,
andra metoder än de vanliga DCT-baserade transformationsformaten, såsom fraktalkomprimering, matchande strävan och användningen av en diskret wavelet transform (DWT), har varit föremål för viss forskning, men används vanligtvis inte i praktiska produkter (förutom användningen av wavelet-kodning som stillbildskoder utan rörelsekompensation). Intresset för fraktalkompression verkar vara avtagande, på grund av den senaste teoretiska analysen som visar en jämförande brist på effektivitet hos sådana metoder.,
inter-frame codingEdit
inter-frame coding fungerar genom att jämföra varje ram i videon med den föregående. Enskilda ramar i en videosekvens jämförs från en ram till nästa, och videokomprimeringskoden skickar endast skillnaderna till referensramen. Om ramen innehåller områden där ingenting har flyttat kan systemet helt enkelt utfärda ett kort kommando som kopierar den delen av föregående ram till nästa., Om delar av ramen rör sig på ett enkelt sätt kan kompressorn avge ett (något längre) kommando som talar om för dekompressorn att flytta, rotera, lätta eller mörka kopian. Denna längre kommando fortfarande mycket kortare än intraframe komprimering. Vanligtvis kommer kodaren också att sända en restsignal som beskriver de återstående mer subtila skillnaderna till referensbilden. Med entropikodning har dessa restsignaler en mer kompakt representation än hela signalen., I områden med video med mer rörelse måste komprimeringen koda mer data för att hålla jämna steg med det större antalet pixlar som förändras. Vanligen under explosioner, lågor, flockar av djur, och i vissa panorering skott, högfrekventa detaljer leder till kvalitet minskar eller ökar i variabel bitrate.,
Hybrid block-based transform formatsEdit
bearbetningssteg för en typisk videokodare
idag har nästan alla vanliga videokomprimeringsmetoder (t. ex. de i standarder som godkänts av ITU-T eller ISO) samma grundläggande arkitektur som går tillbaka till H. 261 som var standardiserad 1988 av itu-T., De är mest beroende av DCT, appliceras på Rektangulära block av närliggande pixlar, och temporal förutsägelse med hjälp av rörelsevektorer, liksom nuförtiden också en in-loop filtrering steg.
i prediktionsstadiet tillämpas olika deduplicerings-och differenskodningstekniker som hjälper till att dekorrelatera data och beskriva nya data baserat på redan överförda data.
sedan omvandlas Rektangulära block av (rest) pixeldata till frekvensdomänen för att underlätta inriktningen av irrelevant information i kvantifiering och för viss minskning av rumslig redundans., Den diskreta cosinustransformen (DCT) som används allmänt i detta avseende introducerades av N. Ahmed, T. Natarajan och K. R. Rao 1974.
i det huvudsakliga förlustbehandlingsstadiet som data blir kvantifierade för att minska information som är irrelevant för mänsklig visuell uppfattning.
i det sista steget blir statistisk redundans i stor utsträckning eliminerad av en entropikoder som ofta tillämpar någon form av aritmetisk kodning.
i ett ytterligare in-loop-filtreringsstadium kan olika filter appliceras på den rekonstruerade bildsignalen., Genom att beräkna dessa filter också inuti kodningsslingan kan de hjälpa komprimering eftersom de kan appliceras på referensmaterial innan det används i prediktionsprocessen och de kan styras med den ursprungliga signalen. Det mest populära exemplet är deblocking filter som suddar ut blockerar artefakter från kvantifiering diskontinuiteter vid transform block gränser.
HistoryEdit
I 1967, A. H. Robinson och C., Cherry föreslog en run-length kodning bandbredd komprimeringsschema för överföring av analoga tv-signaler. Discrete cosinus transform (DCT), som är grundläggande för modern videokomprimering, introducerades av Nasir Ahmed, T. Natarajan och K. R. Rao 1974.
H. 261, som debuterade 1988, introducerade kommersiellt den utbredda grundläggande arkitekturen för videokomprimeringsteknik. Det var det första videokodningsformatet baserat på dct-komprimering, vilket senare skulle bli standard för alla de stora videokodningsformaten som följde. H.,261 utvecklades av ett antal företag, inklusive Hitachi, PictureTel, NTT, BT och Toshiba.
de mest populära videokodningsstandarderna som används för codecs har varit MPEG-standarderna. MPEG-1 utvecklades av Motion Picture Experts Group (MPEG) 1991, och det var utformat för att komprimera vhs-kvalitet video. Det ersattes 1994 av MPEG-2./H. 262, som har utvecklats av ett antal företag, främst Sony, Thomson och Mitsubishi Electric. MPEG-2 blev standard videoformat för DVD och SD digital-tv. 1999 följdes det av MPEG-4 / H.,263, vilket var ett stort steg framåt för videokomprimeringsteknik. Det utvecklades av ett antal företag, främst Mitsubishi Electric, Hitachi och Panasonic.
det mest använda videokodningsformatet är H. 264 / MPEG-4 AVC. Det utvecklades 2003 av ett antal organisationer, främst Panasonic, Godo Kaisha IP Bridge och LG Electronics. AVC introducerade kommersiellt den moderna kontexten-adaptive binary aritmetic coding (CABAC) och context-adaptive variable-length coding (CAVLC) algoritmer., AVC är den viktigaste videokodningsstandarden för Blu-ray-skivor, och används ofta av strömmande internettjänster som YouTube, Netflix, Vimeo och iTunes Store, webbprogram som Adobe Flash Player och Microsoft Silverlight och olika HDTV-sändningar över markbunden och satellit-TV.,
GeneticsEdit
Genetikkomprimeringsalgoritmer är den senaste generationen förlustfria algoritmer som komprimerar data (vanligtvis sekvenser av nukleotider) med hjälp av både konventionella komprimeringsalgoritmer och genetiska algoritmer anpassade till den specifika datatypen. I 2012 publicerade ett team av forskare från Johns Hopkins University en genetisk komprimeringsalgoritm som inte använder ett referensgenom för kompression., HAPZIPPER skräddarsyddes för HapMap-data och uppnår över 20-faldig komprimering (95% minskning av Filstorlek), vilket ger 2 – till 4-faldig bättre komprimering och i mycket snabbare tid än de ledande allmänna kompressionsverktygen. För detta introducerade Chanda, Elhaik och Bader MAF-baserad kodning (MAFE), vilket minskar heterogeniteten hos datauppsättningen genom att sortera SNPs med sin mindre allelfrekvens och därigenom homogenisera datauppsättningen. Andra algoritmer i 2009 och 2013 (dnazip och GenomeZip) har kompressionsförhållanden på upp till 1200-faldigt—vilket gör att 6 miljarder basepair diploida mänskliga genom att lagras i 2.,5 megabyte (i förhållande till ett referensgenom eller i genomsnitt över många genom). För ett riktmärke inom genetik / genomik datakompressorer, Se
Lämna ett svar