4. Methoden zur Bildcodierung der JPEG-Standard Das Ziel einer Transformationscodierung ist, die Korrelation zwischen den Pixeln zu reduzieren. Man transformiert und dhat mit den transformierten Entwicklungskoeffizienten (Fourierkoeff.) weitgehend unkorrelierte Verhältnisse. Man eliminiert damit die stoch. Abhängigkeit, so dass die transf. Bilder unkorreliert oder weiß sind (keine Möglichkeit mehr zur Prädiktion). Man unterscheidet zwischen: Einzelbildcodierung: Dekorrelation im Ortsbereich x (still image coding) Bildsequenzcodierung: Dekorrelation im Zeitbereich t (image sequence coding) x x x 2 x 2 x t H. Burkhardt, Institut für Informatik, Universität Freiburg DBV-I
Stochastisches h Modell llfür die Einzelbildcodierung Ein Bild wird unterteilt in Teilbilder z.b. der Größe 8 8. Die Einzelbilder {X ij } j der Größe 8 8 bilden das Ensemble für die stochastische Betrachtung. Also hier z.b. für eine Bildmatrix der Dimension N N=32 32: X X X2 X3 X X X2 X3 X 2 X2 X22 X23 X3 X3 X32 X33 X H. Burkhardt, Institut für Informatik, Universität Freiburg DBV-I 2
Zur Illustration diene das folgende Beispiel Wir nehmen eine 3-Bit-Codierung der Grauwerte an (8 Graustufen). Wir gruppieren zwei benachbarte Pixel der Größe 2 zu Teilbildvektoren: X x x ij i j Falls man das Ensemble von Teilbildvektoren {X ij } im zweidimensionalen Raum aufträgt, erhält man die folgenden 64 Vektoren: y 2 x 2 y Die Vektoren sind jedoch nicht alle gleichwahrscheinlich! Es ist unwahrscheinlich dass x einen hohen Wert hat und x 2 einen niedrigen. Da benachbarte Pixel mit hoher Wahrscheinlichkeit ähnlich große Werte besitzen, gruppieren sich die Vektoren um die. Hauptdiagonale: x x 2! x => Dekorrelation mit KLT!! H. Burkhardt, Institut für Informatik, Universität Freiburg DBV-I 3
Ziele des vollen JPEG-Standards. Einstellbare Qualitäts-/Kompressionswerte (Parameter) 2. Verlustfreie Codierung möglich 3. Hierarchische h Codierung (Verschiedene Auflösungen möglich) H. Burkhardt, Institut für Informatik, Universität Freiburg DBV-I 4
Baseline-Sequential-CODEC (CODEC ist die Zusammenfassung von Coder und Decoder.). Shift der Grauwerte von [,2 p -] zu signed integers [-2 p-,2 p- -] 2. Anwendung der DCT (8 8): => DC-Koeffizient, 63 AC-Koeff. (Separater Entwurf für 8-Bit (Video) und 2-Bit Bilder (Medizin)) i 3. Quantisierer (verlustbehaftet) 4. Separate Codierung für die DC-Komponente, da wertemäßig sehr hoch! Differential encoding (DPCM) wegen hoher Korrelation zu benachbarten Blöcken. 5. Zig-Zag-Sequenz g der AC-Koeffizienten. Verbessert die anschließende Entropie- Kodierung (niederfrequente Anteile sind größer als hochfrequente Anteile), da in der Zig-Zag-Sequenz die Pixel stärker korreliert (benachbart) sind. 6. Entropie-Kodierung (verlustfrei) a) Huffman-Kodierung bei Baseline b) Arithmetische Kodierung (benötigt keine Kodier-Tabellen, adaptiert sich ans Bild) Die Huffman-Tabellen sind vordefiniert, eine für DC und eine für AC. Vor der Huffman-Kodierung wird zuerst eine Lauflängenkodierung (run-lenght- coding) )durchgeführt. h H. Burkhardt, Institut für Informatik, Universität Freiburg DBV-I 5
Der Übergang vom RGB- auf den YUV-Farbraum. R,G,B Farbaum (rot,grün,blau) 2. YU Y,U,V: Aufteilung in Luminanzkanal ly und din 2Chrominanz-Signale U,V Y R G B R R U G B G G T V R G B B R Y Y G U U T B V V 3. C-M-Y-K, eine redundante Farbkodierung wird in der Druckindustrie verwendet (cyan, magenta, gelb, schwarz). Nichtlinearität der menschlichen Wahrnehmung: Das Auge ist wesentlich empfindlicher für die Luminanz (Helligkeit) als für die Chrominanz (Farbe). Deshalb gröbere Quantisierung der Chrominanz als bei der Luminanz und auch geringere örtliche Abtastung: H. Burkhardt, Institut für Informatik, Universität Freiburg DBV-I 6
Qualität und Codierungsaufwand Unkomprimiert: 8 Bit/Farbkanal => 24 Bit/Pixel JPEG-typische Kompression: 8: bis 8:, d.h. 24/8=3 Bit/Pixel bzw. 24/8=,33 Bit/Pixel. Qualität gemessen in Bits/Pixel: Gibt die Gesamtanzahl der Bits an, einschließlich der Chrominanzkomponenten, dividiert durch die Anzahl der samples in der Luminanz-komponente.,25-,5 Bits/colour pixel mäßige bis gute Qualität 5,5-,75 Bits/colour pixel gute bis sehr gute Qualität,75-,5 Bits/colour pixel exzellente Qualität 5-2,5-2, Bits/colour pixel i.a. vom Original nicht unterscheidbar H. Burkhardt, Institut für Informatik, Universität Freiburg DBV-I 7
JPEG encoder Data offset - DCT Zigzag encoder AC variable-length quantization at coding Q VLC Huffman Compressed data Difference encoder DC Q-table 8 68-23 -4-3 68 7 8 8-23-28 7 3-23 -2-23 -2 8 8 4-4 7 2 - -4 8 8 4 4-3 3 --2-28 -3-4 -3 quantizer: integer division by 7 2 6-level gray-scale image (4 Bit) compression ratio: 6x4=64 Bit / 4 Bit =.6 : Huffman table Symbol Code - -2 +2-3 + +7 2 9 7 8 7 8 4 9 8 4 3 7-2 -2-3 2 2 2 - -- 7-3 3 2 3 - - 2 2 - - -2-7 -2-2 -3 2 2 2 - - - 4 Bit Decoded data + offset DCT - Zigzag decoder Difference decoder JPEG decoder Q-table Q - VLC - inverse variable-length quantization decoding H. Burkhardt, Institut für Informatik, Universität Freiburg DBV-I 8
Vordefinierte Standardquantisierungstabellen (Q-Tabellen) für die 64 DCT-Koeffizienten Quv (, ) Quantisierung d. DCT-Koeff. F Q (verlustbehaftet) Fuv (, ) ( u, v),5 Quv (, ) 6 2 4 2 6 4 3 4 8 7 6 9 24 4 26 24 22 22 24 49 35 37 29 4 58 5 6 6 57 5 56 55 64 72 92 78 64 68 87 69 55 56 8 9 8 87 95 98 3 4 3 62 77 3 2 2 2 92 3 99 Luminanz Y (feiner) Inverse Quantisierung Q Q F ( uv, ) F ( uv, ) Quv (, ) 7 8 8 24 2 24 47 26 26 47 99 66 56 66 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 Chrominanz U,V (gröber) H. Burkhardt, Institut für Informatik, Universität Freiburg DBV-I 9
Quantisierungstabellen Die Q-Tabellen werden experimentell ermittelt und im JPEG-Standard zur Verfügung gestellt. Dabei wird ausgenutzt, dass die subjektive menschliche Wahrnehmung unempfindlicher ist gegenüber Quantisierungsrauschen bei höheren Frequenzen => gröbere Quantisierung i von hochfrequenten hf DCT- Koeffizienten. In speziellen Anwendungsfällen wäre auch denkbar, die Quantisierungstabellen zusammen mit dem komprimierten Bild zu übertragen. H. Burkhardt, Institut für Informatik, Universität Freiburg DBV-I
Die Entropie als Informationsmass (Claude Shannon, 948) Gegeben: Auftretenswahrscheinlichkeiten für die zu codierenden statistisch unabhängigen gg q Symbole: p,p 2, p q (SUP). Der Informationsgehalt einer Nachricht wird definiert über die Entropie H q Entropie: H p ld p p ld p i i i i i i Informationsgehalt eines Zeichens multipliziert mit seiner Häufigkeit und summiert über alle Zeichen q Je unwahrscheinlicher eine Nachricht ist, desto höher ist ihr Informationsgehalt und umgekehrt. Die Entropie ist ein Maß für die Unordnung, die Unsicherheit, den Überraschungsanteil der in einer Nachricht steckt. H. Burkhardt, Institut für Informatik, Universität Freiburg DBV-I
Die Entropie als Informationsmass Größte Entropie, falls alle Symbolwerte gleichwahrscheinlich sind. In diesem Fall besteht größtmögliche Unsicherheit über die zu erwartende Nachricht; folglich ist bei deren Eintreffen der Informationsgewinn am größten. Für jede andere Verteilung ist die Entropie kleiner. Die Entropie H liefert eine untere Grenze für die mittlere Codelänge: q i i i L p l H H. Burkhardt, Institut für Informatik, Universität Freiburg DBV-I 2
Gegeben ein Ensemble von Signalen {a i } mit einem Signalalphabet von 8 möglichen Amplituden zwischen und. Alle Symbole haben die gleiche Wahrscheinlichkeit von /8. Wie viel Entscheidungen werden benötigt um die richtige Amplitude zu bestimmen. Der Informationsgehalt ist gegeben durch den Aufwand an binären Entscheidungen zur Bestimmung des richtigen Wertes eines ankommenden Datums. Halbierungsstrategie >, 5 <, 5 8 8 H = H = max åp ld = ld 8 8 3 3 ( ld q) i å = = 8 8 p i= i i= >, 25 <, 25 Mit drei Entscheidungen (Zweige des Baums) ist man bei jedem Blatt des Baums. Balancierter Baum. >,25 <,25 e = p i 7 8 8 8 8 8 8 8 8 a = a = e a = e a = e a = e a = e a = e a = 7 2 2 3 3 4 4 5 5 6 6 7 6,86 5,7 4,57 3 43,43 2,29,4 2 4 8 a a a a a a a a 2 3 4 5 6 7 LMB, Institut für Informatik, Universität Freiburg 3. Januar 2 3
Ein Symbol a 7 habe die Wahrscheinlichkeit 8 /2, alle anderen die gleiche W. von /(27). H å pi 27 i= pi Unbalancierter Baum: Es wird nur eine Entscheidung für das Symbol a 7 = benötigt, welches am häufigsten vorkommt. Für alle anderen Symbole werden 4 und einmal 3 Entscheidungen benötigt. = ld =,5 + 7 ld2 7 =,5( + ld4) = 2,4 bit codiert ld 8 = 3 bit uncodiert Die mittlere Baum- bzw. Entscheidungstiefe und damit auch Codierungslänge g beträgt: <, 9 >, 9 q L p (6 4 3 7 ) 34 i l i 4 2, 428 H 4 i <, 4 >, 4 2 a = 7 7 e < 2,2 > 2,2 <, >, 27 27 27 27 27 27 27 7 6,86 5,7 4,57 3,43 2,29,4, 9, 4 2,2, a a a a a a a a 2 3 4 5 6 7 a = a = e a = 2 e a = 3 e a = 4 e a = 5 e a = 6 e 2 3 4 5 6 e = 7 =,43 LMB, Institut für Informatik, Universität Freiburg 3. Januar 2 4
Ein Symbol a 8 habe die Wahrscheinlichkeit /2, alle 9 anderen die gleiche W. von /28. H = å p ld =,5 + 8 4 =,5 + 2 = 2,5 bit codiert i 6 i= pi Es wird nur eine Entscheidung für das Symbol a 8 benötigt, welches am häufigsten vorkommt. Für alle anderen Symbole werden 4 Entscheidungen benötigt. ld 9 = 3,7 bit uncodiert Die mittlere Baum- bzw. Entscheidungstiefe und damit auch Codierungslänge g beträgt: <, 4, 4 L pi l i 2,5 H 6 <, 9 >, 9 (8 4 8 ) > 2 a = 8 q i <, 2 >, 2 <, >, 28 28 28 28 28 28 28 28 a = a e = 8 =,25 = e a = e a = e a = e a = e a = e a = 7e 7 2 2 3 3 4 4 5 5 6 6 8 7,875 6,75 5,625 4,5 3,375 2 2,25,25, 9, 4, 2, LMB, Institut für Informatik, Universität Freiburg 3. Januar 2 5
Beispiel: SUP mit einemalphabet von q=8 8 Amplituden a i t Es kommt nur eine Amplitude mit der Sicherheit vor: 8 Entropie (SUP): H = H = min å p ld = ld = i i= pi = keine statistische Unsicherheit; minimale Entropie. Es werden Bit zur Codierung benötigt. LMB, Institut für Informatik, Universität Freiburg 3. Januar 2 6
Bi Beispiel: ilsup mit einem Alphabet Alhbtvon q=8 8 Amplituden 8 max å 8 8 i= Entropie (SUP): H = H = ld 8 = 8 3 = 3 (ld q) alle Amplituden des Alphabets der Größe sind gleichwahrscheinlich q Keine statistische Vorhersage möglich und damit auch kein Codierungsgewinn realisierbar! Es werden 3 Bit in einem Blockcode benötigt q H. Burkhardt, Institut für Informatik, Universität Freiburg DBV-I 7
Beispiel: SUP mit einem Alphabet von q=8 Amplituden Auch hier sind alle Amplituden nahezu gleichverteilt: Entropie (SUP): H = H = ldq = 3 Die Datenfolge ist deterministisch. Verwendet man als Modell bandbegrenzte Signale, so ergibt sich eine Entropie von nahezu Null!! max Oder: Wie groß ist die Entropie der Ziffernfolge von = 3,45926535? Antwort: Sie hat die Entropie! Es gibt keine Überraschung. Es gibt einen deterministischen i ti Algorithmus zur Generierung aller Ziffern!! LMB, Institut für Informatik, Universität Freiburg 3. Januar 2 8
Aufteilung einer Nachricht in einen Entropieanteil und eine Redundanz Entropie H Redundanz R Nachricht (uncodierter Blockcode) Die durch die Entropie vorgegebene minimale mittlere Codelänge kann nicht ohne Informationsverlust weiter verkleinert werden. Wenn bei einer entropiecodierten Nachricht Daten verloren gehen, dann bedeutet das zwingend einen Informationsverlust. Fügt man Redundanz einer Nachricht hinzu, so können Übertragungsfehler detektiert und auch korrigiert werden. H. Burkhardt, Institut für Informatik, Universität Freiburg DBV-I 9
In diesem einfachsten SUP-Modell von Shannon werden Verbundwahrscheinlichkeiten nicht berücksichtigt. D.h. die folgenden Texte haben bei dem SUP-Modell den gleichen Informationsgehalt: Landau schonen lcsenan dunoa Claude Shannon (Anagramme) H. Burkhardt, Institut für Informatik, Universität Freiburg DBV-I 2
Deutsche Textnachrichten Uncodiert benötigt man: ld 26=4,7 bit/zeichen Die Entropiecodierung (SUP) benötigt nur: 4,629 bit/zeichen Redundanz:,637 bit/zeichen (3,6%) Die Analyse von Verbundwahrscheinlichkeiten führen zu wesentlich komplexeren Modellen (bedingte Entropie, Verbundentropie) Die Entropie einer natürlichen Sprache läßt sich wesentlich genauer bestimmen, wenn auch die Auftrittswahrscheinlichkeiten von Buchstabenkombinationen (N-Gramme) berücksichtigt werden (Paare: Bigramme, Triple: Trigramme,...). Claude Shannon bestimmte die Entropie der englischen Sprache 95 auf,5 bit je Buchstabe Karl Küpfmüller bestimmte die Entropie der deutschen Sprache 954 auf,5 bit je Buchstabe Damit liegt die Redundanz der deutschen/englischen Sprache bei etwa 3,2 bit je Buchstabe. Anders ausgedrückt: etwa 68% der Zeichen eines deutschen/englischen Textes sind aus der Sicht des Informationshlt der Nachricht ht überflüssig. gehalts LMB, Institut für Informatik, Universität Freiburg 3. Januar 2 2
Die Angaben von Shannon sind jedoch nicht konstruktiv; es handelt sich eigentlich nur um Existenzsätze. Es dauerte teilweise über 3 Jahre, bis konstruktiv optimale Codes für die Quell- und Kanalcodierung gefunden wurden. Der vom Shannon-Fano-Algorithmus erzeugte Codierungs-Baum ist nicht immer optimal.. Huffman-Entropie-Codierung. David A. Huffman hat 952 einen Algorithmus veröffentlicht, der beweisbar immer einen optimalen Baum für die gegebenen Symbolwahrscheinlichkeiten liefert. 2. BCH und Reed-Solomon-Codes mit Fehlererkennung und Fehlerkorrektur (96). Große Bedeutung heute für CDs, DVDs, Festplatten, Satellitenbildcodierung. 3. Arithmetische Entropie-Codierung (Rissanen, IBM, 98) H. Burkhardt, Institut für Informatik, Universität Freiburg DBV-I 22
Huffman-Codierung Symbol Auftritts-W. p i s 4,4 s,2 s 2, s 3, s 4 7,7 s 5,5 s 6 4,4 s 7,4,2,8,22,38,6,8, Fasse in jeder Stufe die zwei kleinsten Wahrscheinlichkeiten zusammen und führe zur Unterscheidung eine Bitstelle ein H. Burkhardt, Institut für Informatik, Universität Freiburg DBV-I 23
Decodierungsbaum s s s 2 s 3 s 4 s 5 s 6 s 7 Der Huffman-Code minimiert die mittlere Codelänge: L m pl, 4, 23,3,4, 74, 54, 45, 45 2,58 i i Die Entropie beträgt: i lg p 2,5 H p L i Ein Blockcode für 8 Zeichen hätte zum Vergleich eine Codelänge von 3. Diese 3Bit würden üd auch hbenötigt, t wenn alle Symbole gleichwahrscheinlich h h i li hwären. m H. Burkhardt, Institut für Informatik, Universität Freiburg DBV-I 25
VCDEMO TU-Delft Original JPEG 2 Bit/pixel MSE: 9, JPEG,5 Bit/pixel MSE: 5,8 H. Burkhardt, Institut für Informatik, Universität Freiburg DBV-I 26
Original JPEG,7 Bit/pixel MSE: 48,3 JPEG,5 Bit/pixel MSE: 74 H. Burkhardt, Institut für Informatik, Universität Freiburg DBV-I 27
Original JPEG,4 Bit/pixel MSE: JPEG,3 Bit/pixel MSE: 5 H. Burkhardt, Institut für Informatik, Universität Freiburg DBV-I 28
Original JPEG,2 Bit/pixel MSE: 32 JPEG, Bit/pixel MSE: 496 H. Burkhardt, Institut für Informatik, Universität Freiburg DBV-I 29
Vergleich mit JPEG2 Original JPEG,5 Bit/pixel MSE: 74 JPEG2,5 Bit/pixel MSE: 37,4 H. Burkhardt, Institut für Informatik, Universität Freiburg DBV-I 3
Original JPEG,3 Bit/pixel MSE: 5 JPEG2,3 Bit/pixel MSE: 73 H. Burkhardt, Institut für Informatik, Universität Freiburg DBV-I 3
Semantische Codierung: Ein Auto vor einem Baum auf einer grünen Wiese (, kb). Welchen Gewinn erwarten wir durch die semantische Codierung? Göß Größe des Originals: Mio Pixel Damit ist bis auf einige Details fast alles über den Informationsgehalt des Bildes ausgesagt (verlustbehaftete Codierung) LMB, Institut für Informatik, Universität Freiburg 3. Januar 2 32
Beispiel Baum mit Mio Pixel Vergleich aller drei Codierungsarten:. Entropie (SUP) 2. JPEG 3. Semantische Codierung LMB, Institut für Informatik, Universität Freiburg 3. Januar 2 33
Original Entropie (SUP) JPEG kb 48 kb 24 kb Se- mantik kb Einsparung: 52% 97,6% 99,9% LMB, Institut für Informatik, Universität Freiburg 3. Januar 2 34
Pieter Brueghel: "Die holländischen Sprichwörter", 559 Mio Pixel LMB, Institut für Informatik, Universität Freiburg 3. Januar 2 35
Original Entropie (SUP) JPEG SEM kb 962 kb 25 kb kb Einsparung: 3,8% 75 % 99% Pieter Brueghel: "Die holländischen Sprichwörter", 559 LMB, Institut für Informatik, Universität Freiburg 3. Januar 2 36
2 Baum Faktor 8 6 4 2 Original Entropie JPEG Semantik 2 42 2 8 6 4 2 Brueghel Faktor Original Entropie JPEG Semantik 4,4 39 3,9 LMB, Institut für Informatik, Universität Freiburg 3. Januar 2 37
Siemens Video & Image Coding Standards Series of Still Images M-JPEG2 JPEG JPEG2 Still Images Content Description Flexible Still Images MPEG-7 ISO/IEC MPEG- MPEG-2 MPEG-4 V V2 MPEG-4 V3 MPEG-4 V4 V5 Video CD Digital it TV Generic Multimedia Applications MPEG-2 E-Trade of AV Content t H.26 DBV-I V2 Videoconferencin g over ISDN H.263 V H.263 V2 H.263 Videotelephony, Low Bitrate Communication V3 H. Burkhardt, Institut für Informatik, Universität Freiburg H.26L Video Communication 38 ITU-T 996 2 998 22 Networks and Multimedia Siemens AG/ Dr. Hundt CT IC 2