Wie bei zahlreichen Computeranwendungen ist auch bei der Übertragung von Videosequenzen der Speicherplatzbedarf sowie die zur Übertragung benötigte Bandbreite ein sehr wichtiger Faktor. Ein weitverbreiteter Standard, der heutzutage in zahlreichen Bereichen von Realtime und Nonrealtime Anwedungen verwendet wird, ist der MPEG Standard. Die Abkürzung MPEG steht für "Moving Picture Experts Group", welches die Bezeichnung des für die Entwicklung verantwortlichen Komitees ist. Dieser Standard findet heute Anwendung bei DVD's, beim digitalen Fernsehen DVB-T/C/S und bei zahlreichen Internetvideos.
In diesem Laborprojekt analysieren wir anhand des Prinzips der MPEG Videokodierung das allgemeine Konzept der DPCM (differential pulse code modulation). Nach einer theoretischen Betrachtung werden wir anschliessend beispielhaft einen Codec in Matlab implementieren, in dem die Prinzipien der Bewegungsprädiktion und DPCM angewendet und verdeutlicht werden. Weiterhin werden wir Faktoren in der Prädiktion verändern, um später eine Aussage über die Relevanz dieser zu machen zu können.
Inhaltsverzeichnis
Abbildungsverzeichnis
1 Einleitung
1.1 Motivation
1.2 Aufgabenstellung
1.3 Vorbetraehtnng
2 Theoretischer Hintergrund
2.1 DPCM
2.2 Funktionsweise von MPEG - Video
2.2.1 Interframekodiernng
2.2.2 Intraframekodiernng
2.3 Bewegnngssehatznng
2.3.1 Vergleiehskr iter ion
2.4 Sneh verfahren
2.4.1 Full Search
2.4.2 Three Step Search
2.4.3 Two Dimensional Logarithmie Seareh
2.4.4 Binary search
2.4.5 Spiral Search
3 Durchfiihrung und Evaluierung
3.1 Eneoder nnd Deeoder
3.2 PSXR nnd Dateigrofsenvergleieh
3.3 Vergleieh versehiedener Fehlerfnnktionen
3.4 Variation der Bloekgrofse
3.5 Full Search vs. Three Step Seareh
A Quellcodes
B Frames mit Bewegungsvektoren
Literatur
Abbildungsverzeichnis
1 Beispiel von zwei aufeinanderfolgenden Bildern
2 Aufbau des MPEG Kodierers
3 Kodierung dor P-Frames
4 Kodierung der B-Frames
5 Bloekmatehing Prinzip zur Bewegungsehatzung
6 Three Step Search Verfahren
7 2D Logarithmie Search Verfahren
8 Binary Seareh Verfahren
9 Spiral Seareh Verfahren
10 Visualisierung der Eneodierung
11 Visualisierung der Deeodierung
12 PSXR: Fehlerfunktionen im Vergleieh
13 PSXR: Fehlerfunktionen im Vergleieh
14 PSXR: Fehlerfunktionen im Vergleieh
15 Bereehnungs-dauer fiir versehiedene Bloekgrofien
16 Dateigrofie: Versehiedene Bloekgrofien im Vergleieh
17 PSXR: Versehiedene Bloekgrofien im Vergleieh
18 Fullseareh
19 Frau vs, Boxhandsehuh
20 Frames Boxhandsehuh vor dem Aufsehlag
21 Frames Boxhandsehuh naeh dem Aufsehlag
1 Einleitung
1.1 Motivation
Wie bei zahlreiehen Computoranwondungon ist aueh bei dor Ubortragung von Video- sequenzen dor Spoiohorplatzbodarf sowio die zur Ubortragung benotigte Bandbroito ein sehr wiohtigor Faktor. Ein woitvorbroitotor Standard, dor heutzutage in zahlreiehen Be- reiehen von Realtime und Xonrealtime Anwedungen verwendet wird, ist dor MPEG Standard, Die Abkiirzung MPEG steht fiir "Moving Picture Experts Group", welches die Bezeiehnung des fiir die Entwieklung verantwortliehen Komitees ist, Dieser Standard findet heute Anwendung bei DVD’s, beim digitalen Fernsehen DVB-t/e/s und bei zahlreiehen Internetvideos,
1.2 Aufgabenstellung
Im aktuellen Laborversueh analysieren wir anhand des Prinzips dor MPEG Videoko- dierung das allgemeine Konzept dor DPCM (differential pulse code modulation), Xaeh einer theoretisehen Betraehtung warden wir ansehliefsend beispielhaft einen Codec in Matlab(r) implementieren, in dem die Prinzipien dor Bewegungspradiktion und DPCM angewendet und verdeutlieht warden, Weiterhin warden wir Faktoren in dor Pradiktion verandern, um spater cine Aussage iiber die Relevanz dieser zu maehen zu konnen.
1.3 Vorbetrachtung
Die Evaluation erfolgt, wie oben besehrieben, dureh Implementierung versehiedener Al- gorithmen in Matlab(r), Allerdings liegt hierbei dor Fokus auf dor prinzipiellen Vorge- hensweise und nieht auf dor Gesehwindigkeit des Verfahrens,
Da es mehrere Parallelen zwisehen diesem und dem vorherigen Laborversueh gibt, warden wir an einigen Stellen auf cine ausfiihrliehe Erlauterung verziehten und statt dessen auf Teile des vorherigen Laborprotokolls verweisen,
Weiterhin warden wir im Rahman des Labors nur die Videokodierung untersuehen. Da sieh die Bewegungspradiktion sehr gut anhand Graustufenvideos analysieren lasst warden wir auf die Audio- und Farbverarbeitung nieht waiter eingehen.
2 Theoretischer Hintergrund
2.1 DPCM
Die einfaehste Form einer DPCM ist die sehliehte Kodierung der Differenz zweier zeitdieh aufeinanderfolgender Werte. Ein einfaehes Beispiel sahe wie folgt aus:
Die folgenden Werte sollen iibertragen werden: 50, 53, 58, 52, 48, 45, 47,
Als PCM wiirden sie unverandert iibertragen: 50, 53, 58, 52, 48, 45, 47,
Als DPCM wiirden nur die Differenzen der aufeineanderfolgenden Werte iibertragen: 50, 3, 5, 6, 4, 3, 2.
Wie man im obigen Beispiel erkennen kann ergeben sieh als Differenzen kleinere Werte im Vergleieh zu einer PCM Ubertragung, Dadnreh wird die Verwendnng geringerer Speieherwortbreiten ermoglieht und damit ein Speieherplatzgewinn erzielt,
Diese Art der Kodierung lohnt sieh allerdings nur dann, wenn die aufeinanderfolgenden Werte korreliert sind und die Pradiktionswerte den eehten Werten ahneln, was einen gut an das Problem angepafsten Pradiktor voraussetzt.
Im obigen Beispiel wurden die Werte dementspreehend gewahlt, Wenn aber kein Zu- sammenhang zwisehen aufeinanderfolgenden Werten besteht, bekommt man dureh die DPCM keinen oder einen sehr geringen Gewinn, Im Worst Case ist die DPCM - Ubertragung sogar grofser als die reine PCM,
Bei naherer Betraehtung einer Videosequenz kann man haufig feststellen, dass sieh nur kleine Teile des Bildes verandern, Zwei aufeinanderfolgende Bilder sind also stark mit- einander korreliert; die Differenz ist sehr viel kleiner als das gesamte Bild,
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 1: Beispiel von zwei aufeinanderfolgenden Bildern,
Ein Beispiel ist der Abbildung 1 gezeigt: Die Person im Vordergrund bleibt die ganze Sequenz iiber an etwa derselben St el le. aueh der Hintergrund verandert sieh kaum. Die einzige Bewegung wird durch den Boxhandsehuh ausgefiihrt, es handelt sieh dabei um cine Translation, Um nun den neuen Frame darzustellen, konnte man die Differenz zwi- sehen dem ersten und dem aktuellen Frame bilden und iibertragen bzw. abgespeiehern.
2.2 Funktionsweise von MPEG - Video
Bei MPEG-Video handelt es sieh um eine hybride Videokodierung, die sieh in zwei ver- sehiedene Bereiehe einteilen lasst (siehe Abbildung 2): Die raumliehe Kodierung (Intra- framekodierung), die der beim JPEG verwendeten sehr ahnelt und die zeitliehe Kodierung (Interframekodierung) welehe die Korrelation zweier aufeinanderfolgenden Frames ausnutzt.
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 2: Aufbau des MPEG Kodierers
Xeben den hier besehriebenen und untersuehten Methoden zur Datenreduktion sollen noeh folgende kurz erwahnt werden:
- Video Interlacing: Das Videobild wird in Halbbilder (Zeilen mit gerader und un- gerader Anzahl) unterteilt, Diese werden abweehselnd dargestellt, durch die Trag- heit des Auges entsteht das Gesamtbild des Videos, Die Einspaarung betragt hier 50 %. Der Modus, der Vollbilder iibertragt, wird Progressive Video genannt,
- Reduzierung der Chrominanzinformation: Da das mensehliehe Auge Hellig- keitsuntersehiede besser als Farbuntersehiede wahrnehmen kann, wird die Auflo- sung der Farbinformation reduziert (oft halbiert).
Die Interframekodierung ist auf dem Pradiktionsprinzip bzw. Bewegungssehatzungsprin- zip basiert. Da diese Pradiktion selbstverstandlieh Abweiehungen mit dem eehten Bild mit sieh bringt, wird noeh die Differenz zwisehen pradizierten und eigentliehen Frame gebildet und iibertragen bzw. abgespeiehert (eigentliehe DPCM).
Es gibt zwei Arten von Interframekodierung:
- Die Predicted Frames (P-Frame), Sie konnen vorangegange I-Frames (siehe folgender Absehnitt) und andere P-Frames zur Bewegungssehatzung nutzen und konnen zudem als Referenz fiir eine weitere Bewegungsvorhersage genutzt werden (Abbildung 3). Es findet allerdings eine reine Vorwartsbewegungssehatzung statt. Ein Bild wird dureh Bewegungsvektoren und Differenzbilder reprasentiert, Da hier sowohl raumliehe, wie zeitliehe redundante Informationen beriieksiehtigt werden, bieten P-Frames eine hohere Kompressionsrate als I-Frames. Es kann aber passie- ren, dais Artefakte, die dureh eine falsehe Bewegungssehatzung entstanden sind, weiter vererbt werden.
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 3: Kodierung der P-Frames
- Die Bidirectional-Frames (B-Frame), Sie werden aus vergangenen und folgen- den I- und P-Frames gebildet (Abbildung 4). Jeder Block in einem B-Frames kann vorwarts, riiekwarts und bidirektional gesehatzt werden. Diese Art der Frameko- dierung bietet die hoehste Kompressionsrate, erfordert aber einen hohen Reehen- aufwand.
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 4: Kodierung der B-Frames
Die Gruppierung der versehiedenen Frames heilst Group of Pictures GOP und ist Beispielsweise in dieser Art verteilt: IBBBPBBBI. Eine GOP endet mit dem suk- zessiven I-Frame, Wir untersuehen in diesem Protokoll aussehliefslieh die Bildung der P- Frames.
Die raumliehe Kodierung kommt bei den I - Frames und den Differenzbildern zum Tra- gen. Diese Art der Kodierung war Thema unseres vorhergehenden Laborversuehs und wurde dort ausgiebig untersueht |5|. Aus diesem Grand werden wir an dieser Stelle nur noeh einmal die grundlegenden Verarbeitungssehritte wiedergegeben.
- Farbraumumreehnung von RGB naeh YCbCr
- Unterabtastung der tiefpassgefilterten Farbdifferenzsignale
- Diskrete Kosinustransformation
- Quantisierung der Transformationskoefiizienten
- ZiekZaek Umsortierung
- Differential PCM
- Lauflangen-Kodierung
- Entropie-Kodierung
Der interessierte Leser findet weiterfiihrende Informationen dazu z.B. in |6|.
2.3 Bewegungsschatzung
Im Rahmen dieses Laborversuchs beschranken wir uns auf das Blockmatching - Verfah- ren, dessen Grundprinzip in einem Vergleich zweier aufeinanderfolgenden Frames liegt. Dieser Vergleich erfolgt je nach angewendeter Methode blockweise (z.B. Three Step Search) oder pixelweise (z.B. Fullsearch).
2.3.1 Vergleichskriterien
Als Vergleichskriterium wird der Luminanzwert des Blocks / Pixels herangezogen und damit die Verschiebung der Position des einzelnen Blocks im Vergleich zum vorhergehen- den Frame geschatzt (siehe Bild 5). Es konnen nur lineare Bewegungen erkannt werden. Das hier beschriebene Verfahren versagt also bei Transformationen wie Rotationen, Ska- lierungen, Helligkeitsanderung, Storungen usw.
Suchbereich
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 5: Blockmatching Prinzip zur Bewegungschatzung
Fur den Vergleich wird ein Anlichkeitskriterium benotigt. Dafiir stehen verschiedene Moglichkeiten zur Auswahl: Diese sind
- die Summe der absoluten Differenzen SAD (1),
- die mittlere absolute Differenz MAD (2),
- die Summe der quadratischen Differenzen SSD (3),
- die Summe der mittlere quadratische Fehler MSE (4),
- die Kreuzkorrelation und die Kreuzkovarianz.
Alio diese Kritorion warden dazu verwendet, das globale Minimum und damit die gerings- te Abweieliung zwisehen zwei Bloeken aufeinander folgenden Frames zu linden, Dabei wird womoglieh aber aueh ein lokales anstatt dem globalen Minimum gefunden. Da der Full Search Algorhitmus das gesamte Frame absueht besteht hier diese Gefahr nieht, jedoeh ist dies sehr reehenaufwendig.
, wobei die Variable B die BlockgroEe darstellt, die Grofie xt den aktuellen Block aus dem aktuellen Frame und xt-1 den Block aus dem Suchbereich des vorherigen Frames reprasentiert,
Xun bleibt die Frage naeh dem Ablauf des Suchsverfahrens. Verschiedene Verfahren wurden entwickelt, die sich in Aufwand und Effizienz unterscheiden. Die boston und die weitverbreitenden sind diejenigen, die einen Kompromifs zwisehen diesem beiden Krite- rien finden.
Zwei dieser Verfahren haben wir zur Versuehsdurehfuhrung implementiert und vergli- ehen, wir werden hier aber noeh weitere erlautern.
2.4 Suchverfahren
2.4.1 Full Search
In diesem Verfaheren wird cin pixelweiser Vergleich des aktucllcn und des folgcndcn Frames durchgcfiihrt. Die Suehe naeh der geringsten Abweiehung lauft hierbei iiber das gesamte Frame, weshalb mit Sieherheit das globale Minimum gefunden wird, Diese Sueh- methode erzielt die besten Ergebnisse (siehe 3,5) und ist aueh sehr einfaeh zu implemen- tieren, dafiir aber sehr reehenaufwendig.
2.4.2 Three Step Search
Der Ablauf dieses von Koga et al entwickelten Suchverfahrens ist in Abbildung 6 darge- stellt:
Der erste Schritt besteht aus einem Vergleich des zu bestimmenden Blocks in noun Pha- sen, Dabei wird der aktuelle Block um die BloekgroSe (moist 16 * 16 Pixel) in jede Kombination aus negativer und positiver horizontaler und vertikaler Richtung verseho- ben, Der neunte Vergleich erfolgt mit der selben Stelle, an der or aueh borher war, also ohne Versehiebung, Zu jedem dieser noun Vergleiehe wird ein Wert der Abweiehung er- mittelt (siehe 2,3,1), Am Ende des ersten Schrittes wird die Versehiebung bestimmt, die zur geringsten Abweiehung fiihrte, Diese Versehiebung dient als Ausgangspunkt fiir den zweiten Schritt, Schritt zwei entspricht dem ersten, wobei dieser nun den Ausgangspunkt aus Schritt eins fiir die Suehe benutzt und die Versehiebungsweite halbiert wird, nun also einer halben BloekgroSe entspricht, Dasselbe gilt fiir Schritt drei, wobei wieder der in Schritt zwei ermittelte Ausgangspunkt gewahlt und die Schrittweite noehmals halbiert wird, Mit diesem Verfahren ist es also moglieh Verschiebungen bis auf cine viertels BloekgroSe genau zu bestimmen, wobei die maximale auffindbare Versehiebung 1,75 * der Kantenlange eines Blocks entspricht, Der Xachteil soleher Verfahren ist, dass die Suehe in ein lokales Minimum laufen kann und dadureh ein "fehlerhafter"Bewegungsvektor gefunden wird, Vorteilhaft dagegen ist die fiir diese Suehe aufzuwendende geringe Re- ehenzeit, Leichte Abanderungen dieses Algorhitmus fiihrten zum Four Step Search odor zum Xew Three Step Seaeh, bei dem der initiale Ausgangspunkt der Suehe giinstiger gewahlt wird.
2.4.3 Two Dimensional Logarithmic Search
Dieses Verfahren wurde von Jan und Jan entwiekelt. Die Funktionsweise der logarithmi- sehen Suehe verlauft so, dass zuerst cine Startschrittweite definiert wird, Dann warden die horizontalen und vertikalen Bloeke im Abstand der Startschrittweite vergliehen, Beim
Block mit der geringsten Abweichung beginnt die naehste Suehe, solange bis die Abwei- ehung zwisehen den verglichenen Bloeken minimal wird. Xun wird die Suchschrittweite verringert und es erfolgt cine weitere Suche naeh dem besehriebenen Schema, 1st die Suchschrittweite gleich 1, so warden alle acht umliegende Punkte um den aktuellen Re- ferenzsuchpunkt verglichen. Der Punkt mit der geringsten Abweichung ist der Endpunkt des Bewegungsvektors. Siehe Abbildung 7
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 7: 2D Logarithmic Search Verfahren
Die Suehe des Bewegungsvektors crfolgt hierbei in zwei Schrittcn. Zucrst wird der Sueh- bereieh in noun Regionen eingeteilt. Danaeh wird der Referenzbloek mit den reprasen- tativen Bloeken der neun Regionen mittels eines Ahnlichkeitskriteriums vergliehen, z.B. SAD. In der Region, in der die geringste SAD gefunden wnrde, folgt im zweiten Schritt eine Vollsnehe, (siehe Abbildung 8)
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 8: Binary Search Verfahren
2.4.5 Spiral Search
Die Spiralsuche wnrde von Zahariadis und Kalivas im Jahr 1995 entwiekelt, sie kombi- niert die Prinzipien von Three Step Search und Binary Search. Der Suehalgorithmus geht vom Mittelpunkt des Suehbereiehes aus und lauft diesen spiralformig ab, wie es in der Abbildung 9 zu sehen ist. Mit jeder Umkreisung des Ausgangspunktes wird der Radius um den Abstand von einem Pixel erweitert, Im schlechtesten Fall ist diese Spiralsuche ebenfalls eine klassisehe Vollsuehe,
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 9: Spiral Search Verfahren
3 Durchfiihrung und Evaluierung
In dor Versuehsdurehfuhrung haben wir oinon einfaehen Algorithmus basiorond auf dem Three Step Search Verfahren implementiert, der sieh an der in MPEG verwendeten Be- wegungssehatzung orientiert. Ansehliefsend haben wir die Effizienz bzw, den Aufwand und die PSXR analysiert. Weiterhin wurde die Auswirkung der Variation der Bloekgrofse betraehtet, Zuletzt wurde noeh ein Vergleieh zwisehen MJPEG (motion JPEG: Sequenz als JPEG Bilder) und MPEG (zur Dekodierung benotigten Daten: Fehlerbilder und Be- wegungsvektoren) durehgefiihrt, Fiir diesen Zweek wurde der Algorithmus von Anfang an modular und flexibel aufge- baut, um versehiedene Parameter sehnell und ohne grofseren Aufwand modifizieren zu konnen, Der Fokus unserer Untersuehungen lag, wie sehon erwahnt, auf dem Verstandnis und der Xaehbildung der Bewegungspradiktion von MPEG Video, Keine weitere Beaehtung haben wir dem Audioteil von MPEG sowie der Chrominanzinformation des Videos ge- sehenkt.
3.1 Encoder und Decoder
Wahrend der Bereehnung der Bewegungsverktoren und Differenzbilder wird vom Endeo- der zur sofortigen Kontrolle der Ergebnisse der vorhergehende Frame, der folgende Frame, das Differenzbild und das pradizierte Bild angezeigt (Abbildung 10), Somit bekommt der Betraehter einen sofortigen subjektiven Eindruek der Qualitat der Ergebnisse,
Current Frame Next Frame
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 10: Visualisierung der Eneodierung
Ebenso stollt aueh dor Decoder die berechneten Ergebnisse sofort dar (Bild 11),
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 11: Visualisierung der Decodierung
3.2 PSNR und Dateigroftenvergleich
Das primare Ziel beim Enkodieren eines Videostreams ist selbstverstandlieh die Reduzie- rung der Datenrate bzw, der Speiehergrofie, Ein Grofsenvergleieh zwisehen den einzelnen Frames abgespeiehert als JPEG (sogenanntes Motion JPEG) und den Differenzbildern sowie den Bewegungsvektoren 13 stellt deutlieh den Gewinn des MPEG Prinzips her- aus.
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 12: PSXR: Fehlerfunktionen im Vergleieh
Einem Gowinn an dor oinon Seite stohon wio so oft Abstriehe an einer anderen Stollo entgegen, hier in Form von Bild- bzw, Videobildqualitat,
Dies wird dnreh die Abbildung 13 verdeutlieht: Mit jedem weiteren Frame, welches aus Bewegungsbvektoren und Differenzbild zusammengesetzt wird, akkummulieren sieh die Fehler, Dadureh sinkt der PSXR deutlich ab; noeh sehr viel deutlicher ist der subjektive Verfall der Bildqualitat,
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 13: PSXR: Fehlerfunktionen im Vergleieh
Hier findet man gleiehzeitig die die Erklarung dafiir, dass naeh einer bestimmten Anzahl von pradizierten Frames ein komplettes, das sogennante I - Frame iibertragen werden muss, Wiirde man dies nieht maehen, so wiirden sieh die Fehler immer weiter fortpflanzen und sieh die Bildqualitat dramatiseh von Frame zu Frame versehleehtern! (zu erkennen in 11)
Genauso sind I-Frames bei Szenenweehseln unverziehtbar, da die Korrelation zwisehen dem letzten und dem folgenden Bild, dem der neuen Szene, gegen Xull geht, Aus diesem Grunde sind in modernen Videoeneodern sogennante automatisehe Szenendetektoren implementiert.
3.3 Vergleich verschiedener Fehlerfunktionen
Um den am boston passenden Block aus dom zuriickliegenden Frame zur Pradiktion des naehsten zu bestimmen wird bei dor Suehe ein Vorgleiohskriterium benotigt, In diesem Vorsuoh haben wir die vorhin vorgestellten vier versohiedenen Fehlerfunktionen imple- mentiert und diese ansehliefsend miteinander vergliohen: Summe dor absoluten Differen- zen (SAD |1|), Summe dor mittleren Difforenzen (MAD |2|), Mean Square Error Function (MSE |4|) und Summe dor quadratisohen Difforenzen (SSD |3|),
Die von uns im Experiment festgestellten Untersohiede zwi- sehen den versohiedenen Fehlerfunktionen fallen minimal aus, wie man in Abbildung 14 erkennen kann. Die maximale Differenz liegt unter einem dB, Wahrend bei den ersten Frames MSE und SSD noeh sohleohtere Ergebnisse geben gibt os ab Framenummer 8 einen Weehsel: MSE und SSD liegen nun liber SAD und MAD.
Abbildung in dieser Leseprobe nicht enthalten
3.4 Variation der Blockgrofte
Im MPEG Standard hauhg verwendet ist die Bloekgrofse von 16 * 16 Pixeln, In unserem Versuch wollten wir die Auswir- kungen feststellen, die dureh die Variation dieses Parameters entstehen, Dazu wichen wir ab vom Standard und verwendeten Blockgrolsen von 4 * 4, 8 * 8 und den bekannten 16 * 16 Pixeln.
Die erste sehr auffallige Feststellung war der Untersehied in der zur Bereehnung not- wendigen Zeit: Diese erhohte sieh, wie in Abbildung 15 zu erkennen ist exponentiell mit Halbierung der Bloekgrofse.
Dies ist relativ einsichtig, da bei einer Blockgrolse von 4*4 Pixeln sechszehn mal ofter eine Vergleichsberechnung durchgefiihrt werden muss verglichen zur 16 * 16 Pixel Bloekgrofse,
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 16: Dateigrofse: Versehiedene Bloekgrofsen im Vergleieh
Aueh die Grofse der zu iibermittelnden Bewegungsvektoren steigt bei Halbierung der Bloekgrofse um das Vierfaehe, Dieser Effekt wird wiederum dadureh kompensiert, dass geringere Fehler bei der Pradiktion entstehen und somit die Grofse der Differenzbilder sinkt(siehe Abbildung 16),
Der eindeutige Vorteil bei Veringerung der Abmessung eines Bloekes ist der Gewinn an Bildqualitat (siehe Abbildung 17).
Es muss abhangig von den Anforderungen entsehieden werden, ob man die geringe Zu- nahme an Bildqualitat mit der stark erhohten Verarbeitungsdauer bezahlen moehte oder
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 17: PSXR: Verschiedene Bloekgrofsen im Vergleieh
nicht. Denkanstofie zur Bestimmung der Prioritaten konnten z.B, die begrenzte Energie- versorgung eines Mobilgerates odor z.B, die Latenz bei einer Videokonferenz sein.
3.5 Full Search vs. Three Step Search
Zum Vergleieh zwisehen einer zeitlieh effizienten zu einer (fast) optimalen Pradiktion haben wir aneh den Full Search Algorhitmns implementiert, der pixelweise das gesamte Bild naeh der geringsten Abweiehnng zum Vergleiehsbloek dnrehsneht bzw. das absolute Fehlerminimum im Bild hndet.
Obwohl wir die Anflosnng des Ansgangsmaterial nahezn halbierten dauerte die Bereeh- nung eines Frames mehrere Stnnden (im Gegensatz zu wenigen Sekunden beim Three Step Seareh Blockmatching). Im Gegenzug ist die Pradiktion dafiir recht gut und die Information des Fehlerbildes entsprechend gering (Abblidunghgdullsearch).
original Frame predicted Frame
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 18: Fullseareh
A Quellcodes
Listing 1: MPEG Encoder Algorithmic
Abbildung in dieser Leseprobe nicht enthalten
Listing 2: MPEG Decoder Algorithmus
Abbildung in dieser Leseprobe nicht enthalten
Listing 3: Mean Square Error Algorithmic
Abbildung in dieser Leseprobe nicht enthalten
Listing 5: Algorithmus Summe dor quadratisehen Differenzen
Abbildung in dieser Leseprobe nicht enthalten
Listing 6: Frameborder Algorithmus
Abbildung in dieser Leseprobe nicht enthalten
Listing 7: Frameerop Algorithmus
Abbildung in dieser Leseprobe nicht enthalten
Listing 8: Beredinung und Darstollung von PSXR und Dateigrofsenvergleich
Abbildung in dieser Leseprobe nicht enthalten
B Frames mit Bewegungsvektoren
Im Folgenden haben wir Frames eines ausgewahlten Videos mit den entspreehenden Bewegungsvektoren dargestellt. Man kann hier sehr gut beobaehten, wie die Bewegungsvektoren des vorhergehenden Frames im folgenden Frame in eine Versehiebung umgesetzt werden (siehe Abbildung 19).
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 19: Frau vs, Boxhandsehuh
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 20: Frames Boxhandsehuh vor dem Aufsehlag
Abbildung in dieser Leseprobe nicht enthalten
Abbildung 21: Frames Boxhandsehuh naeh dem Aufsehlag
Literatur
|1| Prof, P, Xoll, Nachrichten-UbeHragung I, 1997
|2| Prof, P, Xoll, Signale und Systeme, 1997
|3| GXU, ArUkel DCT / JPEG, 1997
|4| OHM, JEXS-RAIXER: Digitale Bildeodierung, Springer, 1995
|5| S, Kaeem, J,Schmid: Labor Multimedia Signalverarbeitung, 2008
|6| WALLACE, G.K.: The JPEG Still Picture Compression Standard, Communications of the ACM, 1991
- Citar trabajo
- Skander Kacem (Autor), Josua Schmid (Autor), 2008, MPEG-Videokodierung. Theoretischer Hintergrund. Durchführung und Evaluierung, Múnich, GRIN Verlag, https://www.grin.com/document/229969
-
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X. -
¡Carge sus propios textos! Gane dinero y un iPhone X.