Kompressionsverfahren Quelle: Steinmetz, Ralf: Multimedia-Technologie: Einführung und Grundlagen, Springer, Verlag
Adaptive Huffman - Kodierung Nach 17 Zeichen: A(1),B(2),C(2),D(2),E(10) Kodierung A: 000 0 1 0 1 0 1 0 1
Adaptive Huffman - Kodierung Nach 2 weiteren A: A(3),B(2),C(2),D(2),E(10) Kodierung A: 011 0 1 0 1 0 1 0 1
Adaptive Huffman - Kodierung Nach zwei weiteren A: A(5),B(2),C(2),D(2),E(10) Kodierung A:10 0 1 0 1
k Arithmetische Kodierung 0,7 0,5 0,1
Kompressionsverfahren Quelle: Steinmetz, Ralf: Multimedia-Technologie: Einführung und Grundlagen, Springer, Verlag
Verlustbehaftete Kompressionsalgorithmen Wo treten Verluste auf? Warum kann man sie in Kauf nehmen? Welche Nebeneffekte entstehen? Welche Vorteile bringen Transformationen? Was sind unsymmetrische Algorithmen?
DPCM Differential Pulse Code Modulation Prädiktionskodierung Hohe Kompressionsraten bei optimaler Berücksichtigung der Quelleneigenschaften Speziell für Klasse von Informationen (Audio, Video, Bild)
DPCM Quelleneigenschaft: geringe Differenzen zwischen Nachbarn Prediction (Vorhersage) Annahme: nächstes Feld gleich Differenzbildung, Übertragung der Differenz 195 204 Diff 9: statt 8 Bit nur 4 Bit
DPCM Beispiel
Kompressionsverfahren Quelle: Steinmetz, Ralf: Multimedia-Technologie: Einführung und Grundlagen, Springer, Verlag
FFT <> DCT streichen streichen Quelle: Ze-Nian Li : Script Multimedia Systems, Simon Fraser University, Canada
JPEG: Senkrechte Linie
JPEG: Waagerechte Linie
JPEG: Ecke
Kompressionsverfahren Quelle: Steinmetz, Ralf: Multimedia-Technologie: Einführung und Grundlagen, Springer, Verlag
JPEG Farbraum Konvertierung RGB => Y Cb Cr DCT (Discrete Cosine Transformation) Quantisierung Zick-zack Scan DPCM für DC Komponente, RLE für AC Komponenten Entropy Kodierung
Transformation RGB => YCbCr Y = 0.299R + 0.587G + 0.114B U = (B Y) Cb = (B - Y) / 1.772 + 0.5 V = (R Y) Cr = (R - Y) / 1.402 + 0.5 YUV used in PAL ( depends on implementation) CbCr used in JPEG and MPEG
Digitalisierung Y U V Quelle: Ze-Nian Li : Script Multimedia Systems, Simon Fraser University, Canada
DCT Diskrete Cosinustransformation DC Wert 0,0 AC Werte Zeilen 0-7 Spalten 0-7 Quelle: Ze-Nian Li : Script Multimedia Systems, Simon Fraser University, Canada
DCT Quelle: Ze-Nian Li : Script Multimedia Systems, Simon Fraser University, Canada
DCT Factorized Discrete Cosine Transform (DCT): Inverse Discrete Cosine Transform (IDCT): source: Ze-Nian Li : Script Multimedia Systems, Simon Fraser University, Canada
Diskrete Cosinus Transformation (DCT) Basisfunktionen für jeden 8x8 Block Durchschnittswert (DC) 1/2 vertikale Cosinusperiode 7/2 vertikale Cosinusperioden 1/2 horizontale Cosinusperiode source: Ze-Nian Li : Script Multimedia Systems, Simon Fraser University, Canada
Vorteil der Transformation DCT (Discrete Cosine Transformation) 8x8 Matrix enthält nach DCT sortierte Werte: tiefe Frequenzen links oben hohe rechts unten Frequenz = senkrechte/ waagerechte Linien Quantisierung im Frequenzbereich möglich
JPEG: Senkrechte Linie Quelle: http://www.spemaus.de/ studium/visjpeg/
JPEG: Waagerechte Linie Quelle: http://www.spemaus.de/ studium/visjpeg/
JPEG: Ecke Quelle: http://www.spemaus.de/ studium/visjpeg/
DCT Faktorisierung wagerecht und senkrecht separat berechnen Detailinformationen links unten Division der Werte => Informationsverlust Quantisierung
Quantisierung Division der Werte durch Konstante durch Quantisierungsmatrix Quantisierung bestimmt die Qualität und den Grad der Komprimierung Hauptverlustquelle
Quantization Luminanz Quantisierungstabelle q(u, v) Chrominanz Quantisierungstabelle q(u, v) -------------------------------------- ---------------------------------- 16 11 10 16 24 40 51 61 17 18 24 47 99 99 99 99 12 12 14 19 26 58 60 55 18 21 26 66 99 99 99 99 14 13 16 24 40 57 69 56 24 26 56 99 99 99 99 99 14 17 22 29 51 87 80 62 47 66 99 99 99 99 99 99 18 22 37 56 68 109 103 77 99 99 99 99 99 99 99 99 24 35 55 64 81 104 113 92 99 99 99 99 99 99 99 99 49 64 78 87 103 121 120 101 99 99 99 99 99 99 99 99 72 92 95 98 112 100 103 99 99 99 99 99 99 99 99 99 ---------------------------------------- ----------------------------------- Skalierbar für unterschiedliche Qualitätsstufen und Kompressionsraten source: Ze-Nian Li : Script Multimedia Systems, Simon Fraser University, Canada
Erzeugen eines Vektors Zick Zack Scan Wichtigste Elemente zuerst im Vektor Quelle: Ze-Nian Li : Script Multimedia Systems, Simon Fraser University, Canada
DCPM und RLC DPCM für DC - Komponenten RLC für AC - Komponenten Danach Huffman Kodierung des Ergebnisvektors
Übersicht JPEG Quelle: Ze-Nian Li : Script Multimedia Systems, Simon Fraser University, Canada
Dateiformat JPEG Quelle: Ze-Nian Li : Script Multimedia Systems, Simon Fraser University, Canada
JPEG Varianten Sequential Mode bisher behandelter Modus Lossless Mode verlustfrei mit Differenzkodierung Progressive Mode von grob nach fein (DC+10AC ) Hierarchical Mode Mehrfach Kodierung und Dekodierung mit unterschiedlichen Bildgrößen
Video compression algorithm Pre knowledge (digital video, JPEG) Properties Frame sequence encoding Video cut
Formats / number of Pixel
Digital Video HDTV PAL 720p 1080i Vertical resolution Horizontal resolution 576 lines 720 lines 1080 lines 720 lines 1280 lines 1920 lines Pixel (max.) 414.720 921.600 2.073.600 frames interlaced progressive interlaced format 4:3 (1,33:1) 16:9 (1,78:1) 16:9 (1,78:1)
MPEG H.261 as Standard for p*64kbit/s (p=1... 30) Sub sampling 4:1:1 (Y Cb Cr) CIF Common Intermediate Format (352 x 288 pixel) QCIF (176 x 144 pixel) 30fps Macro blocks 4Y (8*8) + 1Cb(8*8) + 1Cr(8*8) Picture => Group of Macro blocks (12 GOBs = CIF) Macro blocks => Blocks => Pixel => YCC
MPEG 1 MPEG: Motion Picture Expert Group Audio/Video with 1.5 Mbit/s (~ Data rate Audio-CD) Based on H.261 and JPEG
MPEG: Frame-Types MPEG I-Frames: Intra-coded-frames, JPEG P-Frames: Predictive coded frames, Difference frame + motion vector Reference to previous I or P- Frame B-Frames: Bi-directional predictive coded frames Reference to previous and next frame Interpolation D-Frame: DC-coefficients for search (>>, <<)
MPEG Decoding: 1. I - Frame 2. P- Frame 3. B- Frame. => other Framesequence in file.. Sequence of frames: I B B P B B P B B I B B P B Sequence in file: I P B B...
Bewegungsvorhersage (1) 16x16 oder 8x8 Macroblöcke Auffinden der Macroblöcke im Vorgängerbild -> Übertragung des Bewegungsvektors Abschließende Entropiecodierung der Bewegungsvektoren
Motion prediction (2) Block mit bester Übereinstimmung Bewegungsvektor Macroblock des Nachfolgbildes Suchbereich
Motion prediction Encoder Video In - DCT + Q Prädiktionsfehler- Signal Decoder ME Motion Estimation compare actual picture IDCT + Video Out IDCT with reproduced previous MCP picture (Reference) + MCP Differential picture ME Bewegungsvektoren Motion vector MCP Motion Compensated Prediction
Prinzip der Bewegungserkennung Encoder Decoder Video In - DCT + Q Prädiktionsfehler- Signal IDCT + Video Out IDCT MCP + MCP Bewegungsvektoren ME DCT + Q Ddiskrete Cosinus Transformation mit Quantisierung IDCT Inverse DCT MCT MCP Bewegungskompensierte Prädiktion ( ) ME Bewegungsschätzung ( Motion Estimation )
MPEG Schnitt (I-Frame) Original übernehmen... Framefolge: I B B P B B P B B I B B P B neu: I B B P B B P...
MPEG Schnitt (P - Frame) Algorithmus: Neuberechnung: P => I Rest = Original... Framefolge alt: Neu: P B B P B B I B B P B I B B P B B I B B P
MPEG Schnitt (B - Frame) Algorithmus: Neuberechnung: B => I P => I Rest übernehmen... Framefolge alt: B B P B B I B B P B neu: I I I I I I B B P B...
Technique of DivX;-) Video compression algorithm based on MPEG 1 and 2 Hybrid encoding lossy reduction of irrelevant parts lossless reduction of Redundancies Improved Motion prediction as in MPEG 1and 2
Video compressions Data rate resolution Bit rate year in MBit/s const/var MPEG 1 1,4 ( bis 4 ) MPEG 2 2 15 ( typ. 5 ) 352x288 (CIF) 720 x 576 Variabel constant 1992 Variabel 1994 MPEG 4 0,08-4 720x576 Variabel DivX;-) 0.2-6 640x358 Variabel Variabel 1998 Variabel 1999