kompressionsverfahren - startseite tu ilmenau · yuv used in pal ... encoder decoder video in...

Post on 13-May-2018

219 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

© H.-D. Wuttke 2012

Kompressionsverfahren

Quelle: Steinmetz, Ralf: Multimedia-Technologie: Einführung und Grundlagen, Springer, Verlag

© H.-D. Wuttke 2012

Adaptive Huffman - Kodierung

Nach 17 Zeichen: A(1),B(2),C(2),D(2),E(10) Kodierung A: 000

0

0

1

00

1

1 1

© H.-D. Wuttke 2012

Adaptive Huffman - Kodierung

Nach 2 weiteren A: A(3),B(2),C(2),D(2),E(10) Kodierung A: 011

0

0

1

00

1

1 1

© H.-D. Wuttke 2012

Adaptive Huffman - Kodierung

Nach zwei weiteren A: A(5),B(2),C(2),D(2),E(10) Kodierung A:10

0

0

1

1

© H.-D. Wuttke 2012

Arithmetische Kodierung

0,1

0,5

0,7

k

© H.-D. Wuttke 2012

Kompressionsverfahren

Quelle: Steinmetz, Ralf: Multimedia-Technologie: Einführung und Grundlagen, Springer, Verlag

© H.-D. Wuttke 2012

Verlustbehaftete Kompressionsalgorithmen

• Wo treten Verluste auf?

• Warum kann man sie in Kauf nehmen?

• Welche Nebeneffekte entstehen?

• Welche Vorteile bringen Transformationen?

• Was sind unsymmetrische Algorithmen?

© H.-D. Wuttke 2012

DPCM

• Differential Pulse Code Modulation

• Prädiktionskodierung

• Hohe Kompressionsraten bei optimaler Berücksichtigung der Quelleneigenschaften

• Speziell für Klasse von Informationen (Audio, Video, Bild)

© H.-D. Wuttke 2012

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

© H.-D. Wuttke 2012

DPCM

• Beispiel

© H.-D. Wuttke 2012

Kompressionsverfahren

Quelle: Steinmetz, Ralf: Multimedia-Technologie: Einführung und Grundlagen, Springer, Verlag

© H.-D. Wuttke 2012

FFT <> DCT

streichen streichen

Quelle: Ze-Nian Li : Script Multimedia Systems, Simon Fraser University, Canada

© H.-D. Wuttke 2012

JPEG: Senkrechte Linie

© H.-D. Wuttke 2012

JPEG: Waagerechte Linie

© H.-D. Wuttke 2012

JPEG: Ecke

© H.-D. Wuttke 2012

Kompressionsverfahren

Quelle: Steinmetz, Ralf: Multimedia-Technologie: Einführung und Grundlagen, Springer, Verlag

© H.-D. Wuttke 2012

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

© H.-D. Wuttke 2012

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

© H.-D. Wuttke 2012

Digitalisierung

Y

U V

Quelle: Ze-Nian Li : Script Multimedia Systems, Simon Fraser University, Canada

© H.-D. Wuttke 2012

Diskrete Cosinustransformation

DCT

DC Wert 0,0

AC Werte

Zeilen 0-7

Spalten 0-7

Quelle: Ze-Nian Li : Script Multimedia Systems, Simon Fraser University, Canada

© H.-D. Wuttke 2012

DCT

Quelle: Ze-Nian Li : Script Multimedia Systems, Simon Fraser University, Canada

© H.-D. Wuttke 2012

DCT

Factorized Discrete Cosine Transform (DCT):

Inverse Discrete Cosine Transform (IDCT):

source: Ze-Nian Li : Script Multimedia Systems, Simon Fraser University, Canada

© H.-D. Wuttke 2012

Diskrete Cosinus Transformation (DCT)

Basisfunktionen für jeden 8x8 Block

Durch-schnitts-

wert (DC)

1/2 vertikale Cosinusperiode

7/2 vertikale Cosinusperioden

1/2 horizontale Cosinusperiode

source: Ze-Nian Li : Script Multimedia Systems, Simon Fraser University, Canada

© H.-D. Wuttke 2012

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

© H.-D. Wuttke 2012

JPEG: Senkrechte Linie

Quelle: http://www.spemaus.de/studium/visjpeg/

© H.-D. Wuttke 2012

JPEG: Waagerechte Linie

Quelle: http://www.spemaus.de/studium/visjpeg/

© H.-D. Wuttke 2012

JPEG: Ecke

Quelle: http://www.spemaus.de/studium/visjpeg/

© H.-D. Wuttke 2012

DCT

Faktorisierung wagerecht und senkrecht separat berechnen

Detailinformationen links unten

Division der Werte => Informationsverlust

Quantisierung

© H.-D. Wuttke 2012

Quantisierung

Division der Werte durch Konstante durch Quantisierungsmatrix

Quantisierung bestimmt die Qualität und den Grad der Komprimierung

Hauptverlustquelle

© H.-D. Wuttke 2012

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 9912 12 14 19 26 58 60 55 18 21 26 66 99 99 99 9914 13 16 24 40 57 69 56 24 26 56 99 99 99 99 9914 17 22 29 51 87 80 62 47 66 99 99 99 99 99 9918 22 37 56 68 109 103 77 99 99 99 99 99 99 99 9924 35 55 64 81 104 113 92 99 99 99 99 99 99 99 9949 64 78 87 103 121 120 101 99 99 99 99 99 99 99 9972 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

© H.-D. Wuttke 2012

Zick Zack Scan

Erzeugen eines Vektors

Wichtigste Elemente zuerst im Vektor

Quelle: Ze-Nian Li : Script Multimedia Systems, Simon Fraser University, Canada

© H.-D. Wuttke 2012

DCPM und RLC

DPCM für DC - Komponenten

RLCfür AC - Komponenten

Danach Huffman Kodierung des Ergebnisvektors

© H.-D. Wuttke 2012

Übersicht JPEG

Quelle: Ze-Nian Li : Script Multimedia Systems, Simon Fraser University, Canada

© H.-D. Wuttke 2012

Dateiformat JPEG

Quelle: Ze-Nian Li : Script Multimedia Systems, Simon Fraser University, Canada

© H.-D. Wuttke 2012

JPEG Varianten

Sequential Mode bisher behandelter Modus

Lossless Mode verlustfrei mit Differenzkodierung

Progressive Modevon grob nach fein (DC+10AC…)

Hierarchical ModeMehrfach Kodierung und Dekodierung mit unterschiedlichen Bildgrößen

© H.-D. Wuttke 2012

Video compression algorithm

Pre knowledge (digital video, JPEG)

Properties

Frame sequence encoding

Video cut

© H.-D. Wuttke 2012

Formats / number of Pixel

© H.-D. Wuttke 2012

Digital Video HDTV

PAL 720p 1080i

Vertical resolution

576 lines 720 lines 1080 lines

Horizontal resolution

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)

© H.-D. Wuttke 2012

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) 30fpsMacro blocks 4Y (8*8) + 1Cb(8*8) + 1Cr(8*8)Picture => Group of Macro blocks (12 GOBs = CIF)Macro blocks => Blocks => Pixel => YCC

© H.-D. Wuttke 2012

MPEG 1

MPEG: Motion Picture Expert Group

Audio/Video with 1.5 Mbit/s (~ Data rate Audio-CD)Based on H.261 and JPEG

© H.-D. Wuttke 2012

MPEG

MPEG: Frame-Types

I-Frames: Intra-coded-frames, JPEGP-Frames: Predictive coded frames,

Difference frame + motion vectorReference to previous I or P- Frame

B-Frames: Bi-directional predictive coded framesReference to previous and next frameInterpolation

D-Frame: DC-coefficients for search (>>, <<)

© H.-D. Wuttke 2012

MPEG

Decoding:1. I - Frame2. P- Frame3. B- Frame

=> other Frame-sequence 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 ...

.

.

.

© H.-D. Wuttke 2012

Bewegungsvorhersage (1)

16x16 oder 8x8 Macroblöcke

Auffinden der Macroblöcke im Vorgängerbild -> Übertragung des Bewegungsvektors

Abschließende Entropiecodierung der Bewegungsvektoren

© H.-D. Wuttke 2012

Motion prediction (2)

Suchbereich

Bewegungsvektor

Macroblock desNachfolgbildes

Block mit besterÜbereinstimmung

© H.-D. Wuttke 2012

DCT + Q

IDCT

MCP

ME

IDCT

MCP

-

+

+

Encoder Decoder

Video In

Bewegungsvektoren

Video OutPrädiktionsfehler-

Signal

Motion prediction

MCP Motion Compensated Prediction

ME Motion Estimationcompare actual picture

with reproduced previous picture (Reference)

Differential picture

Motion vector

© H.-D. Wuttke 2012

DCT + Q

IDCT

MCP

ME

IDCT

MCP

-

+

+

Encoder Decoder

Video In

Bewegungsvektoren

Video OutPrädiktionsfehler-

Signal

DCT + Q Ddiskrete Cosinus Transformation mit QuantisierungIDCT Inverse DCTMCT Bewegungskompensierte Prädiktion ( )ME Bewegungsschätzung ( Motion Estimation )

Prinzip der Bewegungserkennung

MCP

© H.-D. Wuttke 2012

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 ...

.

.

.

© H.-D. Wuttke 2012

MPEG Schnitt (P - Frame)

Algorithmus:Neuberechnung:P => I

Rest = Original

Framefolge alt: P B B P B B I B B P B…Neu: I B B P B B I B B P

.

.

.

© H.-D. Wuttke 2012

MPEG Schnitt (B - Frame)

Algorithmus:Neuberechnung:B => IP => IRest übernehmen

Framefolge alt: B B P B B I B B P B…neu: I I I I I I B B P B ...

.

.

.

© H.-D. Wuttke 2012

Technique of DivX;-)

Video compression algorithm based on MPEG 1 and 2

Hybrid encodinglossy reduction of irrelevant partslossless reduction of Redundancies

Improved Motion prediction as in MPEG 1and 2

© H.-D. Wuttke 2012

Video compressions

Data ratein MBit/s

resolution Bit rateconst/var

year

MPEG 1 1,4 ( bis 4 )

352x288(CIF)

constant 1992

MPEG 2 2 – 15( typ. 5 )

720 x 576Variabel

Variabel 1994

MPEG 4 0,08 - 4 720x576 Variabel

Variabel 1998

DivX;-) 0.2 - 6 640x358Variabel

Variabel 1999

top related