De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

Beeldverwerking Prof. dr. ir. W. Philips Didactisch materiaal bij de cursus Academiejaar 2010-2011

Verwante presentaties


Presentatie over: "Beeldverwerking Prof. dr. ir. W. Philips Didactisch materiaal bij de cursus Academiejaar 2010-2011"— Transcript van de presentatie:

1 Beeldverwerking Prof. dr. ir. W. Philips Didactisch materiaal bij de cursus Academiejaar 2010-2011 philips@telin.UGent.be http://telin.UGent.be/~philips/beeldv/ Tel: 09/264.33.85 Fax: 09/264.42.95

2 © W. Philips, Universiteit Gent, 1999-2011versie: 8/12/2010 11d. 2 Copyright notice This powerpoint presentation was developed as an educational aid to the renewed course “Image processing” (Beeldverwerking), taught at the University of Gent, Belgium as of 1998. This presentation may be used, modified and copied free of charge for non-commercial purposes by individuals and non-for-profit organisations and distributed free of charge by individuals and non-for-profit organisations to individuals and non-for-profit organisations, either in electronic form on a physical storage medium such as a CD-rom, provided that the following conditions are observed: 1.If you use this presentation as a whole or in part either in original or modified form, you should include the copyright notice “© W. Philips, Universiteit Gent, 1998- 2002” in a font size of at least 10 point on each slide; 2.You should include this slide (with the copyright conditions) once in each document (by which is meant either a computer file or a reproduction derived from such a file); 3. If you modify the presentation, you should clearly state so in the presentation; 4.You may not charge a fee for presenting or distributing the presentation, except to cover your costs pertaining to distribution. In other words, you or your organisation should not intend to make or make a profit from the activity for which you use or distribute the presentation; 5. You may not distribute the presentations electronically through a network (e.g., an HTTP or FTP server) without express permission by the author. In case the presentation is modified these requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the presentation, and can be reasonably considered independent and separate works in themselves, then these requirements do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the presentation, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. In particular note that condition 4 also applies to the modified work (i.e., you may not charge for it). “Using and distributing the presentation” means using it for any purpose, including but not limited to viewing it, presenting it to an audience in a lecture, distributing it to students or employees for self-teaching purposes,... Use, modification, copying and distribution for commercial purposes or by commercial organisations is not covered by this licence and is not permitted without the author’s consent. A fee may be charged for such use. Disclaimer: Note that no warrantee is offered, neither for the correctness of the contents of this presentation, nor to the safety of its use. Electronic documents such as this one are inherently unsafe because they may become infected by macro viruses. The programs used to view and modify this software are also inherently unsafe and may contain bugs that might corrupt the data or the operating system on your computer. If you use this presentation, I would appreciate being notified of this by email. I would also like to be informed of any errors or omissions that you discover. Finally, if you have developed similar presentations I would be grateful if you allow me to use these in my course lectures. Prof. dr. ir. W. PhilipsE-mail: philips@telin.UGent.be Department of Telecommunications and Information ProcessingFax: 32-9-264.42.95 University of GentTel: 32-9-264.33.85 St.-Pietersnieuwstraat 41, B9000 Gent, Belgium

3 Videocompressietechnieken Zelfstudie

4 © W. Philips, Universiteit Gent, 1999-2011versie: 8/12/2010 11d. 4 Eenheden voor bitdebiet kbps (Mbit/s)=kilobit per second =1 000 bit /s Mbps (Mbit/s)=megabit per second =1 000 000 bit /s MBps (Mbyte/s)=megabyte per second = 8 Mbps GBps (Gbyte/s)=gigabyte per second = 1 000 MBps Kibit/s=kibibit per second = 2 10 bit/s Mibit/s=mebibit per second = 2 20 bit/s Gibit/s=gibibit per second = 2 30 bit/s MiBs (MiByte/s)=mebibyte per second = 8 Mibit/s GiBs (GiByte/s)=gibibyte per second = 1024 MiBps

5 © W. Philips, Universiteit Gent, 1999-2011versie: 8/12/2010 11d. 5 Formaten voor digitale video CCIR601 625/50 PAL/SECAM (voor TV-studio’s) YUV (YCrCb) formaat: Y: 576 lijnen, interlaced, 720 pixels/lijn, 1Byte/pixel U en V: 576 lijnen, interlaced, 360 pixels/lijn, 1Byte/pixel 50 fields/s (25 frames/s)  bitrate: 165 Mbit/s = 20 MiB/s = 70 GiB/uur CIF (common Intermediate Format) YUV (YCrCb) formaat: Y: 288 lijnen, progressief, 360 pixels/lijn, 1Byte/pixel U en V: 288 lijnen, progressief, 180 pixels/lijn, 1Byte/pixel 25 fields/s (25 frames/s)  bitrate: 41 Mbit/s = 4.9 MiB/s = 17 GiB/uur Opmerking: ongecomprimeerde video wordt slechts in niche-toepassingen gebruikt

6 © W. Philips, Universiteit Gent, 1999-2011versie: 8/12/2010 11d. 6 Compressietandaarden voor digitale video… MPEG-1 (CIF-formaat op cdrom of harde schijf): 1.5 Mbit/s, lage kwaliteit MPEG-2 (TV-uitzendingen en HDTV): 2-20 Mbit/s, hoge kwaliteit H.261 (videoconferencing, ISDN): 284 kbs (of ander veelvoud van 64kbs) H.263: incrementele verbetering van H.261, MPEG-I en MPEG-II H.264: MPEG-II + allerlei gesofisticeerde features  betere kwaliteit bij hoge compressie en meer flexibiliteit (cfr. schaalbaarheid bij JPEG 2000) MPEG-4: uitbreiding van MPEG-I en MPEG-II met nieuwe features behandelt veel meer dan de eigenlijke compressie: VRML-support voor 3D rendering, distributie over TCP-IP, bestandsformaten… deel 2: “basis” videocodec gebaseerd op MPEG-II en H.263 + waveletcodec voor stilstaande beelden (b.v. statische achtergrond bij videocompressie) deel 10: geavanceerde videocodec (AVC: advanced video codec)= H.264

7 © W. Philips, Universiteit Gent, 1999-2011versie: 8/12/2010 11d. 7 …Compressietandaarden voor digitale video “Proprietary” formaten: INTEL: DVI (Digital Video Interactive) en Indeo Apple: QuickTime Kodak: Photo CD Philips: CD-I (Compact Disc Interactive) …

8 © W. Philips, Universiteit Gent, 1999-2011versie: 8/12/2010 11d. 8 MPEG: Video Encoding Pre- processing Frame Memory Input DCT Quantizer (Q) Variable Length Encoder Buffer Output + - Predictive frame Frame Memory + IDCT Q-1 x Motion vectors Motion Estimation Motion Compensation Regulator

9 © W. Philips, Universiteit Gent, 1999-2011versie: 8/12/2010 11d. 9 MPEG MPEG=Motion Pictures Experts Group Temporele predictie en interpolatie van huidig frame exact dezelfde voorspelling nodig in coder en decoder  coder moet alle frames ook decoderen huidig beeld wordt eerst voorspeld op basis van één (P: prediction) of twee (B: bi-directional) vroeger gecodeerde beelden de temporele predictie en interpolatie maakt gebruik van bewegingsestimatie en -compensatie DCT-blokcodering van de predictiefout (cfr. het JPEG-schema) entropiecodering van DCT-coëfficiënten en bewegingsvectoren Opmerkingen de DCT-codering wordt toegepast op blokken van 8x8 pixels (cfr. JPEG) de bewegingscompensatie maakt daarentegen gebruik van blokken van 16x16 pixels (=4 blokken van 8x8)

10 © W. Philips, Universiteit Gent, 1999-2011versie: 8/12/2010 11d. 10 Bewegingscompensatie Voorwaartse bewegingscompensatie: beeld wordt verdeeld in 16x16 blokken, macroblokken genaamd het meest gelijkend blok uit een vorig beeld wordt gebruikt als voorspelling de voorspellingsfout en de bewegingsvectoren worden gecodeerd ipv. het blok zelf “huidig” beeld beeld uit verleden Displaced frame difference = predictiefout Opmerkingen de bewegingsvectoren kunnen met pixel- of subpixel nauwkeurigheid worden berekend bij subpixel nauwkeurigheid of bij geïnterlinieerde beelden moeten blokken worden geïnterpoleerd om ze te kunnen vergelijken

11 © W. Philips, Universiteit Gent, 1999-2011versie: 8/12/2010 11d. 11 Bi-directionele bewegingscompensatie Probleem: de-occlusie: wanneer nieuwe objecten voor het eerst verschijnen werd voorwaartse compensatie heel slecht Oplossing: achterwaartse bewegings- compensatie = compensatie op basis van een toekomstig beeld Bi-directionele bewegingscompensatie: voorspel blok op basis van een gewogen gemiddelde van het best passend blok uit een vorig beeld en het best passend blok uit een toekomstig beeld bij de-occlusie: gewicht  0 voor blok uit vorig beeld bij occlusie: gewicht  0 voor blok uit toekomstig beeld in andere gevallen: betere voorspelling door beide beelden te gebruiken

12 © W. Philips, Universiteit Gent, 1999-2011versie: 8/12/2010 11d. 12 Bewegingsschatting in MPEG Criterium voor bepaling bewegingsvector: de optimale bewegingsvector mimimaliseert de “mean absolute difference” (MAD) Praktische methode: probeer beperkt aantal mogelijke ( v x, v y ) uit in een bepaalde volgorde stop als mad( v x, v y ) voldoende laag wordt De rekentijd hang af van de toegelaten bewegingsvectoren de zoekstrategie het stopcriterium Voorbeeld: “centered spiral search” vertrekt van het idee dat de beweging meestal klein is  onderzoekt kleine ( v x, v y ) eerst onderzoekt enkel ( v x, v y ) met |v x |<n met |v y |<n stopt eventueel vroeger als lage mad wordt gevonden

13 © W. Philips, Universiteit Gent, 1999-2011versie: 8/12/2010 11d. 13 Logaritmic search Opmerkingen De MPEG-standaarden definiëren niet hoe bewegingsvectoren moeten worden gezocht, noch de gewichtsfactoren voor bi-directionele compensatie Dit geldt ook voor de andere codeerparameters: kwantisatietabellen, Huffmancodeboeken… Enkel het formaat van de data wordt vastgelegd  competitie mogelijk tussen verschillende coders op basis van rekentijd, kwaliteit, latency … Probeer eerst een beperkt aantal vectoren op een grof rooster Verfijn de beste vector door een beperkt aantal kleinere correcties te onderzoeken Herhaal tot de gewenste resolutie (b.v. pixel of ¼ pixel nauwkeurigheid) wordt gehaald Suboptimaal (optimum kan gemist worden) maar veel sneller

14 © W. Philips, Universiteit Gent, 1999-2011versie: 8/12/2010 11d. 14 I-frames, P-frames en B-frames Niet alle beelden worden op de zelfde manier voorspeld Er zijn drie soorten frames: I-frames: gecodeerd als beeld  kunnen op zichzelf gedecodeerd worden zonder informatie uit het verleden geen bewegingsvectoren P-frames voorspelling: bewegingscompensatie op laatst ontvangen I of P-frame bewegingsvectoren+predictiefout B-frames voorspelling: gewogen gemiddelde van –bewegingscompensatie op laatst ontvangen I of P-frame –en achterwaartse bewegingscompensatie op eerstvolgend I of P- frame  kunnen slechts met een zekere vertraging gedecodeerd worden

15 © W. Philips, Universiteit Gent, 1999-2011versie: 8/12/2010 11d. 15 Datastroom in MPEG… I1I2 Beelden in volgorde waarin ze getoond worden op het scherm I1P1B1B2P2B3B4I2B5B6P3B7B8 Beelden in volgorde waarin ze gecodeerd/decodeerd worden P1P2P3 B2 B1 B4 B3 B6 B5 B8 B7 Basiseenheid: Group of Pictures (GOP) een GOP is één I-frame + alle frames tot net voor het volgende I-frame typische lengte: 12 à 15 frames (instelbaar en dynamisch aanpasbaar) 1 GOP

16 © W. Philips, Universiteit Gent, 1999-2011versie: 8/12/2010 11d. 16 …Datastroom in MPEG De keuze van de lengte en samenstelling GOP beïnvloedt de “latency”: vertraging tussen coderen van een frame en tonen ervan; b.v. 2 frames in voorbeeld op vorige slide, bovenop de transmissietijd  belangrijk in interactieve toepassingen het geheugen nodig in de decoder: b.v. 3 frame-buffers in voorbeeld de rekentijd: bi-directionele bewegingscompensatie vereist veel meer rekentijd in de decoder en een beetje extra rekentijd in de coder de navigeerbaarheid: snel vooruitspoelen op digitale videorecorder om rekentijd te beperken: enkel I-frames decoderen  beperkingen op doorspoelsnelheid: b.v. enkel 9x, 18x, … in voorbeeld de editeerbaarheid: wegknippen (“cut”) zonder hercoderen dit kan enkel op de positie van de I-frames hercoderen is nadelig voor de kwaliteit en vertraagt het editeren Eenvoudige (goedkope) decoders hoeven niet alle data te decoderen b.v. enkel I-frames decoderen op trage hardware of I-frames en P-frames op iets snellere hardware

17 © W. Philips, Universiteit Gent, 1999-2011versie: 8/12/2010 11d. 17 Kleurcodering in MPEG… Zelfs in progressieve (niet-geïnterlinieerde) video worden de twee chroma- componten U en V dikwijls onderbemonsterd Veel gebruikt formaat (o.a. in basis MPEG-2): 4:2:0 twee 8x8 chrominantieblokken per vier 8x8 luminantieblokken dus in totaal half zoveel chrominantiedata als luminantiedata betekenis van de notatie: in de praktijk wordt per beeldlijn wordt maar één chrominantie- component bemonsterd: U in de even lijnen en V in de oneven lijnen 4:2:0  per beeldlijn worden voor elke 4 luminantiemonsters, 2 chrominantiemonsters genomen van de ene soort (b.v. U) en 0 van de andere (b.v. V) Formaat voor hoge kwaliteit (digitale studioapparatuur): 4:2:2 vier 8x8 chrominantieblokken per vier 8x8 luminantieblokken dus in totaal evenveel chrominantiedata als luminantiedata 4:2:2  per beeldlijn worden per 4 luminantiemonsters 2 chrominantie- monsters genomen van elke soort

18 © W. Philips, Universiteit Gent, 1999-2011versie: 8/12/2010 11d. 18 …Kleurcodering in MPEG 4:2:0 Bemonsteringsposities in deluminantie- en chrominantiebeelden, bij progressieve (niet-geïnterlinieerde) video 4:2:2

19 MPEG-4

20 © W. Philips, Universiteit Gent, 1999-2011versie: 8/12/2010 11d. 20 Video Object Planes in MPEG-4 MPEG-4 is een multimediaformaat expliciete voorziening van computer graphics, tekst, … beeld bestaat uit verschillende al dan niet doorschijnende lagen boven elkaar: video object plane (VOP): een laag met daarin één video-object met een willekeurige vorm Codering van de vorm van een VOP binair beeld: 1=pixel is aanwezig in de VOP; 0=pixel is afwezig of grijswaardenbeeld (alfa-laag): 255=pixel aanwezig en ondoorschijnend; 128=pixel aanwezig en 50% transparant, … Codering van de beelddata in een VOP macroblokken die volledig binnen de VOP liggen: zoals bij MPEG-2 blokken die maar gedeeltelijk gevuld worden door het video-object: met de “Shape-Adaptive DCT” Opmerking: indien de VOP rechthoekig is wordt geen vorminformatie gecodeerd

21 © W. Philips, Universiteit Gent, 1999-2011versie: 8/12/2010 11d. 21 Voorbeeld: macroblok rooster Standaard macroblokken (MBs) worden gecodeerd met de DCT; de andere blokken met de SADCT (Shape-Adaptive DCT)

22 © W. Philips, Universiteit Gent, 1999-2011versie: 8/12/2010 11d. 22 Vormcodering: voorbeeld Het binair beeld dat de vorm van de VOP beschijft wordt gecodeerd met een contextgevoelige aritmetische coder Toepassing: videoconferencing 1 VOP voor de statische achtergrond: stilstaand beeld of videostroom met lage bandbreedte 1 VOP voor de voorgrond: videostroom met hoge kwaliteit

23 © W. Philips, Universiteit Gent, 1999-2011versie: 8/12/2010 11d. 23 Niet-overlappende VOPs Voordeel: minimale bitstroom als positie en vorm van het voorgrondobject niet verandert in geval van de-occlusie moeten bijkomende achtergrondblokken worden verstuurd

24 © W. Philips, Universiteit Gent, 1999-2011versie: 8/12/2010 11d. 24 Overlappende VOPs Voordeel: één keer een statisch achtergrondbeeld doorsturen vereist minder bits dan achtergrond bijwerken telkens de-occlusie optreedt


Download ppt "Beeldverwerking Prof. dr. ir. W. Philips Didactisch materiaal bij de cursus Academiejaar 2010-2011"

Verwante presentaties


Ads door Google