De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

ELIS – Multimedia Lab Multimedia academiejaar 2006–2007 Practicum 2: Videocodering 26 februari 2007 Sarah De Bruyne Multimedia Lab vakgroep Elektronica.

Verwante presentaties


Presentatie over: "ELIS – Multimedia Lab Multimedia academiejaar 2006–2007 Practicum 2: Videocodering 26 februari 2007 Sarah De Bruyne Multimedia Lab vakgroep Elektronica."— Transcript van de presentatie:

1 ELIS – Multimedia Lab Multimedia academiejaar 2006–2007 Practicum 2: Videocodering 26 februari 2007 Sarah De Bruyne Multimedia Lab vakgroep Elektronica en Informatiesystemen faculteit Ingenieurswetenschappen Universiteit Gent

2 2/30 ELIS – Multimedia Lab Multimedia – practicum 2: videocodering Sarah De Bruyne Gent, België – 26 februari 2007 Overzicht Praktische gegevens - afspraken Inleiding practicum 2: videocodering –coderen van stilstaande beelden –compressieschema’s voor bewegende beelden Opgave practicum 2

3 3/30 ELIS – Multimedia Lab Multimedia – practicum 2: videocodering Sarah De Bruyne Gent, België – 26 februari 2007 Praktische gegevens - afspraken Vragen en opmerkingen –Sarah De Bruyne –sarah.debruyne@ugent.besarah.debruyne@ugent.be onderwerp beginnen met [MM]! groepsnummer vermelden! Evaluatie –elke oefening wordt bekeken per groep –oplossingen dienen beschikbaar te zijn op de daartoe vooropgestelde plaats tegen een vooraf opgelegde datum Website: –http://berio.elis.ugent.be/MM/

4 4/30 ELIS – Multimedia Lab Multimedia – practicum 2: videocodering Sarah De Bruyne Gent, België – 26 februari 2007 Practicum 1 Oplossingen uploaden naar persoonlijke map –videokwaliteit-directory Respecteer de deadline: donderdag 1 maart 2007 (14u)

5 ELIS – Multimedia Lab Inleiding practicum 2: Videocodering

6 6/30 ELIS – Multimedia Lab Multimedia – practicum 2: videocodering Sarah De Bruyne Gent, België – 26 februari 2007 Principes van videocodering Doel: –videobeelden voorstellen met minder bits dan de originele beelden –gebruikmakend van de eigenschappen van videobeelden –door het uitbuiten van redundantie spatiaal  per beeld temporeel  over meerdere beelden spectraal  eigenschappen Human Visual System (HVS)

7 7/30 ELIS – Multimedia Lab Multimedia – practicum 2: videocodering Sarah De Bruyne Gent, België – 26 februari 2007 Kleurenruimte Beeld opgebouwd uit pixels –een pixel bestaat uit een aantal waarden  intensiteit en kleur –het aantal waarden en hun bereik hangt af van de gekozen kleurenruimte bekende kleurenruimtes: RGB, CMYK, LAB, YUV, … –onderbemonstering voor YUV

8 8/30 ELIS – Multimedia Lab Multimedia – practicum 2: videocodering Sarah De Bruyne Gent, België – 26 februari 2007 Compressie van stilstaande beelden Functionele blokken –transformatie  spatiale en spectrale redundantie lokaliseren –quantisatie  precisie van coëfficiënten verminderen –scanning  omzetten van 2-dimensionale naar 1-dimensionale voorstelling –entropiecodering  statistische compressie Entropiedecoder Gedecodeerd beeld Origineel beeld Inverse Transformatie Quantisatie Inverse Quantisatie EntropiecoderScanning Inverse Scanning Opslag / Transmissie

9 9/30 ELIS – Multimedia Lab Multimedia – practicum 2: videocodering Sarah De Bruyne Gent, België – 26 februari 2007 Onderverdeling van een beeld Elk beeld wordt onderverdeeld in slices Elke slice is opgebouwd uit macroblokken Elk macroblok bestaat uit –één matrix van 16x16 luminantiesamples –twee matrices met chrominantiesamples

10 10/30 ELIS – Multimedia Lab Multimedia – practicum 2: videocodering Sarah De Bruyne Gent, België – 26 februari 2007 Transformatie (1) Differential Pulse Code Modulation (DPCM) –niet elke pixel afzonderlijk coderen, maar deze voorspellen aan de hand van naburige pixels –door de spatiale correlatie zal deze voorspellingsfout klein zijn

11 11/30 ELIS – Multimedia Lab Multimedia – practicum 2: videocodering Sarah De Bruyne Gent, België – 26 februari 2007 Transformatie (2) Discrete Cosinus Transformatie (DCT) –beeld is lineaire combinatie van DCT-basisfuncties –DCT: bepalen van coëfficiënten ( X ij ) –doel: lokaliseren van spectrale en spatiale redundantie –transformatie aan de hand van twee matrixvermenigvuldigingen X 11 +X 12 +X 13 +X 14 +... + X 21 +X 22 +X 23 +X 24 +... + X 31 +X 32 +X 33 +X 34 +... + X 41 +X 42 +X 43 +X 44 +... + … =

12 12/30 ELIS – Multimedia Lab Multimedia – practicum 2: videocodering Sarah De Bruyne Gent, België – 26 februari 2007 Transformatie (3) stijgende verticale frequentie stijgende horizontale frequentie DCT-coëfficiënten (in absolute waarde) Discrete Cosinus Transformatie (DCT) –na DCT beeld is ontbonden in een klein aantal coëfficiënten die visueel belangrijk zijn grote meerderheid stelt minder belangrijke informatie voor Coëfficiënt in linkerbovenhoek: AC- coëfficiënt Andere coëfficiënten: DC- coëfficiënten zorgt niet voor compressie!

13 13/30 ELIS – Multimedia Lab Multimedia – practicum 2: videocodering Sarah De Bruyne Gent, België – 26 februari 2007 origineel gequantiseerd(>>2) gedequantiseerd(<<2) Quantisatie (1) Doel –visueel minder belangrijke coëfficiënten verwijderen en/of nauwkeurigheid verminderen (voorstellen met minder bits) –de gequantiseerde coëfficiënten kunnen met minder bits gecodeerd worden door hun lagere entropie –na inverse quansatie bekomt men niet langer de originele DCT- waarden  dit proces is verlieshebbend 126-4943-199-106 -6519-14320 125-1213-149-100 -13130-36311 53-123-5-77-4 -691-32-50 4-2-4 7202 -211-6-21 31-1110-42-210 -164-300000 31 3 2-20 -33001000 10 0 1 2000 0 10 1000 0000 000 124-4440-168-840 -6416-1200000 124-1212-128-80 -1212004000 40-120-4 4 8000 0 40 4000 0000 000

14 14/30 ELIS – Multimedia Lab Multimedia – practicum 2: videocodering Sarah De Bruyne Gent, België – 26 februari 2007 Quantisatie (2) Standaard quantisatie: –grote stapgrootte  ruwe schatting van originele waarden  lagere kwaliteit  lagere bitsnelheid Voorbeeld vorige slide: –Nadeel: alle waarden behorend tot eenzelfde interval worden afgebeeld op de laagste waarde. [4,8[  na quantisatie = 1  na inverse quantisatie = 4 gevolg: grote gemiddelde quantisatiefout

15 15/30 ELIS – Multimedia Lab Multimedia – practicum 2: videocodering Sarah De Bruyne Gent, België – 26 februari 2007 Quantisatie (3) Een betere oplossing is om de waarden af te beelden op de gemiddelde waarde van het interval. –[2,6[ wordt nu afgebeeld op 4 (met Qstep = 4) –gemiddelde quantisatiefout is kleiner Verdere uitbreidingen : –plaatsafhankelijke quantisatiestap rekeninghoudend met de belangrijkheid van de coëfficiënten –verwijderen van minder belangrijke coëfficiënten

16 16/30 ELIS – Multimedia Lab Multimedia – practicum 2: videocodering Sarah De Bruyne Gent, België – 26 februari 2007 Invloed verwijderen DCT coëfficiënten DC DC + 9 ACs DC + 3 ACs Alles

17 17/30 ELIS – Multimedia Lab Multimedia – practicum 2: videocodering Sarah De Bruyne Gent, België – 26 februari 2007 Invloed herschalen DCT coëfficiënten Qstep = 1 Qstep = 28 Qstep = 50 Qstep = 40 gecodeerd met H.264/AVC

18 18/30 ELIS – Multimedia Lab Multimedia – practicum 2: videocodering Sarah De Bruyne Gent, België – 26 februari 2007 Scanning 2-dimensionale  1-dimensionale voorstelling Keuze van scanningsmethode wordt bepaald door de eigenschappen van de transformatie –bij DCT  zigzag scan meest significante coëfficiënten bevinden zich in de linkerbovenhoek …

19 19/30 ELIS – Multimedia Lab Multimedia – practicum 2: videocodering Sarah De Bruyne Gent, België – 26 februari 2007 Entropiecodering Doel –frequent voorkomende symbolen  korte codewoorden –weinig voorkomende symbolen  langere codewoorden Gequantiseerd macroblok bestaat uit klein aantal significante coëfficiënten –veel nulcoëfficiënten –kan efficiënt gecodeerd worden m.b.v. statistische methoden

20 20/30 ELIS – Multimedia Lab Multimedia – practicum 2: videocodering Sarah De Bruyne Gent, België – 26 februari 2007 Compressie van bewegende beelden Blokschema Referentie- beeld(en) Origineel beeld Bewegings- schatting beeldencoder + - beelddecoder Voorspelling Bewegingsgecompenseerde voorspelling Gecodeerd beeld Bewegingsvectoren

21 21/30 ELIS – Multimedia Lab Multimedia – practicum 2: videocodering Sarah De Bruyne Gent, België – 26 februari 2007 Bewegingsestimatie - Bewegingscompensatie Uitbuiten van temporele redundantie –voorspellen van het huidige beeld aan de hand van reeds gecodeerde beelden –referentiebeelden zijn beelden die gebruikt worden bij voorspellingen

22 22/30 ELIS – Multimedia Lab Multimedia – practicum 2: videocodering Sarah De Bruyne Gent, België – 26 februari 2007 + - = Predictie aan de hand van voorgaand beeld Eenvoudigste manier: –kopie van voorgaand beeld als voorspelling van huidig beeld huidig beeldreferentiebeeld residubeeld hogere waarden hoofdzakelijk te wijten aan beweging betere compressie door bewegingsestimatie

23 23/30 ELIS – Multimedia Lab Multimedia – practicum 2: videocodering Sarah De Bruyne Gent, België – 26 februari 2007 Bewegingsestimatie - Bewegingscompensatie Bewegingsestimatie en –compensatie –veranderingen in een frame door beweging van objecten bewegingsvector: de beweging van huidig frame t.o.v. referentie –zoek de beste voorspelling in het referentiebeeld residue: het verschil tussen het huidige beeld en de voorspelling codeer de bewegingsvector en het residu

24 24/30 ELIS – Multimedia Lab Multimedia – practicum 2: videocodering Sarah De Bruyne Gent, België – 26 februari 2007 Bewegingsestimatie - Bewegingscompensatie Bewegingsestimatie wordt meestal uitgevoerd op blokken van 16x16, 8x8, 4x4, … afhankelijk van de gebruikte standaard Voor elk blok wordt de beste bewegingsvector gezocht huidig beeldreferentiebeeld bewegingsestimatie

25 25/30 ELIS – Multimedia Lab Multimedia – practicum 2: videocodering Sarah De Bruyne Gent, België – 26 februari 2007 Zoeken van de beste bewegingsvector –het huidige blok vergelijken met blokken gelegen in het bijhorende zoekvenster in het referentiebeeld –het optimale blok is hetgene waarbij de energie van het verschil tussen het huidige blok en het voorspelde blok minimaal is Bewegingsestimatie - Bewegingscompensatie

26 26/30 ELIS – Multimedia Lab Multimedia – practicum 2: videocodering Sarah De Bruyne Gent, België – 26 februari 2007 Bewegingsestimatie - Bewegingscompensatie Door bewegingsestimatie en –compensatie is het mogelijk een betere voorspelling te maken van het huidige beeld residubeeld na bewegingscompensatie residubeeld zonder bewegingscompensatie

27 27/30 ELIS – Multimedia Lab Multimedia – practicum 2: videocodering Sarah De Bruyne Gent, België – 26 februari 2007 Overzicht van de principes van videocodering Referentie- beeld(en) Origineel beeld Bewegings- schatting beeldencoder + - beelddecoder Voorspelling Bewegingsgecompenseerde voorspelling Gecodeerd beeld Bewegingsvectoren Stap 3: Transformatie Quantisatie Scanning Entropiecodering Stap 1: Bewegings- estimatie Stap 2: Bewegings- compensatie Beeld moet opnieuw gedecodeerd worden zodat encoder en decoder dezelfde referentiebeelden gebruiken

28 28/30 ELIS – Multimedia Lab Multimedia – practicum 2: videocodering Sarah De Bruyne Gent, België – 26 februari 2007 Opgave practicum 2 Implementeren van een eenvoudige video-encoder Raamwerk voorzien waarin een aantal onderdelen ontbreken –transformatie DCT op blokken van 8x8 pixels –quantisatie –bewegingsestimatie en –compensatie op blokgroottes van 16x16 gebruikmakend van een zoekvenster berekenen van energie door enkel rekening te houden met luminantiecoëfficiënten

29 29/30 ELIS – Multimedia Lab Multimedia – practicum 2: videocodering Sarah De Bruyne Gent, België – 26 februari 2007 Opgave practicum 2 Raamwerk in C++ –enkel ondersteuning voor Windows XP –config.h parameters DO_MC, DO_DCT en DO_QT geven aan of deze stappen al dan niet in het encodeer- en decodeerproces moeten uitgevoerd worden –binnen elke codeerstap wordt op macroblokniveau gewerkt de coëfficiënten die gebruikt worden als input kunnen teruggevonden worden in mb  luma, mb  cr en mb  cb aangezien de input van het ene blok de output is van het vorige moeten de verkregen waarden ook in deze structuren worden bewaard

30 30/30 ELIS – Multimedia Lab Multimedia – practicum 2: videocodering Sarah De Bruyne Gent, België – 26 februari 2007 Opgave practicum 2 Testen van resultaten –gebruikmakend van de parameters DO_MC, DO_DCT en DO_QT –door het verkregen gecomprimeerd bestand te decoderen en af te spelen in een YUV-speler kan gekeken worden of de algoritmen correct zijn –het oproepen van inverse methoden is mogelijk


Download ppt "ELIS – Multimedia Lab Multimedia academiejaar 2006–2007 Practicum 2: Videocodering 26 februari 2007 Sarah De Bruyne Multimedia Lab vakgroep Elektronica."

Verwante presentaties


Ads door Google