kodiranje i kompresija

54
Podatkovni višemedijski prijenos i računalne mreže Kodiranje i kompresija Kodiranje i kompresija Kodiranje i kompresija B. Ždrnja

Upload: ace

Post on 16-Jan-2016

61 views

Category:

Documents


1 download

DESCRIPTION

Kodiranje i kompresija. B. Ždrnja. Kompresija zvuka. ITU-TS serija shema kompresije zvuka, G.721, G.722, G.723, G.728 G.721 preporučuje sažimanje 64 Kbps streama na 32 Kbps, ADPCM metodom Razlika je kodirana sa 4 bita, uzorkovanje na 8 kHz - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Kodiranje i kompresija

Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Kodiranje i kompresijaKodiranje i kompresija

B. Ždrnja

Page 2: Kodiranje i kompresija

2Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Kompresija zvukaKompresija zvuka

• ITU-TS serija shema kompresije zvuka, G.721, G.722, G.723, G.728

• G.721 preporučuje sažimanje 64 Kbps streama na 32 Kbps, ADPCM metodomRazlika je kodirana sa 4 bita, uzorkovanje na 8 kHz

• G.722 sub-band ADPCM metoda, uzorkovanje 16 kHz, amplituda 14 bita

Page 3: Kodiranje i kompresija

3Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Kompresija zvukaKompresija zvuka

• G.723 malo korišten, lossy, 24 Kbps

• G.728 mali bit rate, 16 Kbps, bw 3.4 kHz, vektorska kvanzizacija LD-CELP

• GSM standard, telefonija. 13.2 Kbps, uzorkovanje 8 kHz, slaba kvaliteta

Page 4: Kodiranje i kompresija

4Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

CELPCELP

• Code excited linear prediction

• Opća kompresija glasa, do 4.8 Kbps

• LPC, linear predictive coding, sve do 2.4 Kbps

• Koristi se code-book koji već postoji na oba kraja, prilikom kompresije i dekompresije

• Razlika uzorka se kompresira i šalje sa indeksom u code-booku

Page 5: Kodiranje i kompresija

5Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

MPEG-AudioMPEG-Audio

• Vrlo visoka kvaliteta• Porodica od tri sheme kodiranja i

kompresije, Layer-1, Layer-2 i Layer-3• Kompleksnost algoritma• Hijerarhijska kompatibilnost• Koristi se kombinacija transformacijskog

kodiranja i pod-kanalnog dijeljenja (sub-band division)

Page 6: Kodiranje i kompresija

6Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

MPEG audioMPEG audio

• Spektar se dijeli na 32 kanala

• Primjenjuje se brza Fourierova transformacija

• Psiho-akustički model se primjenjuje da bi se ustanovio nivo šuma

• Tri layera razlikuju se u konačnom koraku, kvantizaciji

Page 7: Kodiranje i kompresija

7Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

MPEG audioMPEG audio

• Bit rateovi od 32 do 448 Kbps

• Uzorkovanje na 32, 44.1 ili 48 kHz

• Dva važna faktora, perceptualna kvaliteta zvuka i performanse kodera

• Lossy kompresija ali može djelovati perceptualno kao lossless!

Page 8: Kodiranje i kompresija

8Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

MPEG audioMPEG audio

• Layer 1 je pojednostavljena verzija MUSICAM-a, jednostavni enkoderi za 192 - 256 Kbps po kanalu

• Layer 2 je istovjetan MUSICAM standardu, 96 do 128 Kbps po kanalu, stereo približno kvaliteta CD-a

• Layer 3 je kombinacija MUSICAM-a i ASPEC-a (kompresijska shema), 64 Kbps po kanalu, vrlo blizu CD kvaliteti

Page 9: Kodiranje i kompresija

9Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

MPEG audioMPEG audio

Demonstracija

Page 10: Kodiranje i kompresija

10Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Kompresija slikeKompresija slike

• Velik broj algoritama, koncentracija na dva “glavna”, JPEG za nepokretne i MPEG-Video za pokretne slike

Page 11: Kodiranje i kompresija

11Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

JPEGJPEG

• Joint Photographic Expert Group

• Standard za crno-bijele slike sa sivim prijelazom ili slike u boji

• Koristi kombinaciju DCT, kvantizaciju, run-length i huffmanovog kodiranja

• Više načina rada, lossless i lossy kompresija

• Dvo-tonske slike i slike sa prijelazom boja

Page 12: Kodiranje i kompresija

12Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Bitonal slikeBitonal slike

• Group 3 facsimile standard

• Prethodni Group 1 i Group 2

• Group 4 standard, bolja kvaliteta ali zahtijeva veći bit stream, 56 ili 64 Kbps

• JBIG - ISO standard sličan JPEG-u, više načina rada

Page 13: Kodiranje i kompresija

13Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

JPEGJPEG

• Želi se pokriti što više kvaliteta slike, na ponašanje kodera moguće je utjecati parametrima

• Sekvencijalno kodiranje, single scan, lossy

• Progresivno kodiranje, višestruki scan, lossy

• Lossless kodiranje

• Hijerarhijsko kodiranje

Page 14: Kodiranje i kompresija

14Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

JPEG, koraciJPEG, koraci

• Priprema blokova podataka

• Korak izvornog kodiranja• diskretna kosinusna transformacija• kvantizacija

• Korak entropijskog kodiranja• Run-length kodiranje• Huffman ili aritmetičko kodiranje

Page 15: Kodiranje i kompresija

15Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

JPEG, koraciJPEG, koraci

Page 16: Kodiranje i kompresija

16Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Priprema blokovaPriprema blokova

• Svaki pixel slike predstavljen je sa komponentama (RGB, YUV ...)

• JPEG radi sa do 255 komponenti (zbog nepoznate veličine slike i sub-samplinga)

• DCT se provodi samo na pojedinim blokovima, svaki se blok tretira pojedinačno.

• Matrice veličine 8 x 8

Page 17: Kodiranje i kompresija

17Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Priprema blokovaPriprema blokova

Page 18: Kodiranje i kompresija

18Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Priprema blokovaPriprema blokova

• Primjer: slika predstavljena sa tri komponente, Y, U, V

• Veličina slike neka je 640 x 480 pixela• Luminance je matrica 640 x 480, boje su

matrice 320 x 240 (4:1:1)• Priprema blokova će predati DCT-u 4800

blokova svjetline i dva puta 1200 blokova boje.• Non-interleaved, left->right, top->bottom

Page 19: Kodiranje i kompresija

19Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Diskretna kosinusna Diskretna kosinusna transformacijatransformacija

• Transformacija svakog bloka

• Svaki blok ima 64 vrijednosti amplitude (ona je funkcija 2 koordinate), a = f(x,y)

• Nakon DCT c = g(Fx, Fy)

Page 20: Kodiranje i kompresija

20Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Diskretna kosinusna Diskretna kosinusna transformacijatransformacija

Page 21: Kodiranje i kompresija

21Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Disktretna kosinusna Disktretna kosinusna transformacijatransformacija

Page 22: Kodiranje i kompresija

22Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Diskretna kosinusna Diskretna kosinusna transformacijatransformacija

• Primjer sa monokromatskom slikom

• 8 x 8 blokovi, signal je gotovo konstantan između pixela

• Nulta frekvencija je visoka, signal se ne mijenja u smjerovima

• Povučemo liniju

• U nekim blokovima visoka promjena

• Takve slike nisu za JPEG

Page 23: Kodiranje i kompresija

23Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

KvantizacijaKvantizacija

• Do sada nije izgubljeno ništa informacije o slici

• Normalizacija svakog koeficijenta DCT dijeljenjem sa nekom vrijednošću

• Kvantizacijska tablica• Ovaj korak je moguće parametrizirati• Kvantizacijska tablica sa jedinicama ne

mijenja vrijednost koeficijenata

Page 24: Kodiranje i kompresija

24Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

KvantizacijaKvantizacija

• Cilj je postići daljnju kompresiju predstavljenjem DCT koeficijenata određenom točnošću

• Tablica predstavlja parametre gubitaka slike

• Povećanje vrijednosti koeficijenata tablice povećava stupanj kompresije

Page 25: Kodiranje i kompresija

25Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

KvantizacijaKvantizacija

Page 26: Kodiranje i kompresija

26Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Run-length kodiranje Run-length kodiranje koeficijenatakoeficijenata

• Nakon kvantizacije samo pojedini koeficijenti su “preživjeli”

• Ne šalju se liniju po liniju, jer run-length kompresira sukcesivne vrijednosti

• Optimalni slijed je cik-cak sekvenca (zig-zag sequence) budući da su veće vrijednosti u gornjem lijevom kutu a manje u donjem desnom

Page 27: Kodiranje i kompresija

27Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Run-length kodiranjeRun-length kodiranje

Page 28: Kodiranje i kompresija

28Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Huffmanovo ili aritmetičko Huffmanovo ili aritmetičko kodiranjekodiranje

• Zadnji korak

• Zahtijeva tablicu kodova.

• Tehnika aritmetičkog kodiranja

Page 29: Kodiranje i kompresija

29Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

JPEGJPEG

• Stupanj kompresije čak do 20:1 ili 25:1

• Koristi psihofizičke karakteristike ljudskog oka

• Nije za namijenu daljnje analize slika

Page 30: Kodiranje i kompresija

30Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

JPEGJPEG

Demonstracija

Page 31: Kodiranje i kompresija

31Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Kompresija pokretnih slikaKompresija pokretnih slika

• Eliminiranje ponavljanih informacija

• Prostorna redundancija, odnosi se na pojedine slike, obično se koristi tehnika JPEG-a

• Vremenska redundancija, odnosi se na redundanciju između frameova, obično se koristi DCPM tehnika

Page 32: Kodiranje i kompresija

32Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Praktični tipovi kompresijaPraktični tipovi kompresija

• Implementacije koje koriste samo prostornu redundanciju, motion JPEGPrednost je da gubitak frame tijekom prijenosa ne utječe na ostatakSmanjeni compression delay (8 - 10 M)

• Implementacije koje koriste i prostorne i vremenske redundancijeViši stupnjevi kompresijePostoji compression delay

Page 33: Kodiranje i kompresija

33Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Kompresija pokretnih slikaKompresija pokretnih slika

• Reference i intracoded frameovi

Page 34: Kodiranje i kompresija

34Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Kompresija pokretnih slikaKompresija pokretnih slika

• Reference frame je frame iz kojega se konstruiraju drugi frameovi

• Intracoded frame je frame koji ne nastaje iz bilo kojeg drugog framea

Page 35: Kodiranje i kompresija

35Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Vektor pokreta i makroblokoviVektor pokreta i makroblokovi

• Neki blok koji je postojao u F1 nalazi se također i u F2.

• U ovom slučaju efikasno je prenijeti samo vektor koji pokazuje prostorni pomak tog bloka

• Takvi blokovi nazivaju se matching blocks• U MPEG-1 16x16 blokovi za svjetlinu i

8x8 za boje (makroblok)

Page 36: Kodiranje i kompresija

36Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Vektor pomaka (motion Vektor pomaka (motion vector)vector)

Page 37: Kodiranje i kompresija

37Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Predicted i bidirectional Predicted i bidirectional frameoviframeovi

• Neka F3 ima makroblok zajednički sa F1. Ako je on konstruiran samo od F1 nazivamo ga predicted frameom (P)

• F2 ima zajedničke makroblokove sa F3 i F1. Da bi konstruilari F2, F1 i F3 moraju biti bufferirani. F2 se naziva bidirectional frameom (B) koji je konstruiran iz dva smjera

Page 38: Kodiranje i kompresija

38Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Predicted i bidirectional Predicted i bidirectional frameoviframeovi

Page 39: Kodiranje i kompresija

39Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Najsličniji makroblokNajsličniji makroblok

• Best matching macroblock algoritmi• Ako nije jednak, računa se aritmetička

razlika između stvarnog i najsličnijeg makrobloka

• Razlika se naziva error term• Pojedini makroblokovi nemaju

zadovoljavajućih i moraju se kodirati u I-frameove

Page 40: Kodiranje i kompresija

40Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Intracoded i predicted Intracoded i predicted frameoviframeovi

Page 41: Kodiranje i kompresija

41Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Intracoded, predicted i Intracoded, predicted i bidirectional frameovibidirectional frameovi

Page 42: Kodiranje i kompresija

42Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Tipične sekvenceTipične sekvence

• IBBBPBBBI

• PAL: IBBPBBPBBI

• NTSC: IBBPBBPBBPBBI

Page 43: Kodiranje i kompresija

43Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Kodiranje I-frameovaKodiranje I-frameova

• Slično lossy kodiranju JPEG-a

• Svjetlina i boje se dijele u blokove 8 x 8

• Svaki blok se transformira DCT

• Provođenje kvantizacije

• Cik-cak run-length kodiranje

• Huffman-like kodiranje

Page 44: Kodiranje i kompresija

44Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Kodiranje I-frameovaKodiranje I-frameova

Page 45: Kodiranje i kompresija

45Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Kodiranje P- i B-frameovaKodiranje P- i B-frameova

• Za svaki makroblok traži se najsličniji u referentnom frameu

• Računa se razlika, kao i motion vector

• Error term koji je matrica se DCT

• Provodi se kvantizacija, cik-cak run-length i Huffmanovo kodiranje

• Kvantizacijska tablica je različita od one kod JPEG-a

• Motion vector se kodira DPCM-om

Page 46: Kodiranje i kompresija

46Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Kodiranje P- i B-frameovaKodiranje P- i B-frameova

Page 47: Kodiranje i kompresija

47Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

Pregled MPEG standardaPregled MPEG standarda

• MPEG-Video

• MPEG-Audio

• MPEG-System - upotreba dva streama, sinkronizacija

• MPEG-conformance testing

• MPEG-software coding

Page 48: Kodiranje i kompresija

48Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

MPEG-1MPEG-1

• Kodiranje pokretnih slika i zvuka do 1.5 Mbps

• Ako audio kanal troši 200-250 Kbps, na sliku ostaje 1.15 ili 1.2 Mbps

• Srednja kvaliteta, 352x240 za NTSC ili 352x288 za PAL

• 4:1:1 odnos (176x120 za boje NTSC ili 176x144 PAL)

Page 49: Kodiranje i kompresija

49Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

MPEG-1MPEG-1

• Frame rateovi 30 NTSC, 25 PAL, isti stream

• Slike veličine do 4095x4095 pixela

Page 50: Kodiranje i kompresija

50Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

MPEG-2MPEG-2

• Generičko kodiranje pokretne slike i zvuka

• Mogućnost više audio signala, stream do 10 Mbps

• Optimalno za veličine 720x480 (svjetlina) i 360x480 boja

• Može radiit u progresivnom ili interlaced scan modu

Page 51: Kodiranje i kompresija

51Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

MPEG-3MPEG-3

• Napušten, namjena za HDTV• MPEG-2 uključuje namjenu HDTV• MPEG-2 predstavlja porodicu kompresijskih

shema koje su međusobno kompatibilne• Shemu razlikuje profil i nivo• Profil specificira korišteni algoritam• Nivo specificira parametre poput

uzorkovanja, veličine frame-a itd.

Page 52: Kodiranje i kompresija

52Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

MPEG-2 nivoiMPEG-2 nivoi

• Niski: CIF, 352x288 uzoraka/frameu, odgovara VCR kvaliteti

• Glavni: 720x480, studijska kvaliteta

• Visoki-1440 nivo: 1440x1152, nazivan “potrošačkim HDTV”

• Visoki: 1920x1080

Page 53: Kodiranje i kompresija

53Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

MPEG-4MPEG-4

• Drastično smanjenje bit ratea uz još uvijek prihvatljivu kvalitetu

• 4.8 do 64 Kbps

• QCIF veličina framea

• Namijenjen za video konferenciranje na vrlo niskim bit rateovima

Page 54: Kodiranje i kompresija

54Pod

atko

vni v

išem

edi

jski

pri

jeno

s i r

aču

naln

e m

reže

K

odira

nje

i ko

mpr

esija

MPEG-VideoMPEG-Video

Demonstracija