1 / 53

JPEG Seminar: Kompressionsalgorithmen

JPEG Seminar: Kompressionsalgorithmen. Ruslan Ragimov. Theoretical Computer Science Prof. Peter Rossmanith Betreuer: Alexander Langer Felix Reidl 4.07.2012. Übersicht. Einführung Bilddarstellung, R-G-B und Y-U-V Farbräume. Einführung Bilddarstellung, R-G-B und Y-U-V Farbräume.

fadhila
Download Presentation

JPEG Seminar: Kompressionsalgorithmen

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. JPEGSeminar: Kompressionsalgorithmen Ruslan Ragimov Theoretical Computer Science Prof. Peter Rossmanith Betreuer: Alexander Langer Felix Reidl 4.07.2012

  2. Übersicht • Einführung • Bilddarstellung, R-G-B und Y-U-V Farbräume • Einführung • Bilddarstellung, R-G-B und Y-U-V Farbräume • Komprimierungsstrategie JPEG • Überblick • Komprimierungsstufen im Detail • Vor-/Nachteile von JPEG • Zusammenfassung • Vergleich mit anderen Verfahren Folie: Ruslan Ragimov

  3. Einführung. Bilddarstellung : eine Matrix von Pixeln Digitalbild – Bildgröße (Auflösung: dpi - dotsper inch) Pixel – kleinstes Bildelement mit einem Farbton 1 Bit: s/w 8 Bits: Graustufen 24 Bits: Farbbild (8 R, 8 G, 8 B) 400 x 400 ≈ 19,5 kB 400 x 400 ≈ 156,25 kB 400 x 400 ≈ 468,75 kB Folie: Ruslan Ragimov

  4. Einführung. R-G-B Farbraum Rot – Grün – Blau: additiver Farbraum • Sukzessives Hinzufügen einer Farbe hat einen anderen Farbeindruck • Durch Mischen von R-G-B bekommt man jeden Farbton Folie: Ruslan Ragimov

  5. Einführung. Bildkompression Bildkompression lossless lossy • Bestimmen • und • Zusammenfassen • von Redundanzen: • Run-Lenght Encoding • Lempel-Ziv-Welch • Huffman-Coding Welche Informationen können weggelassen werden??? Folie: Ruslan Ragimov

  6. Einführung. Y-U-V Farbraum Menschliches Auge: • Höhere Empfindlichkeit zur Helligkeit als zur Farbe • Problem bei R-G-B: • Helligkeitsinformation ist in jeder Komponente gespeichert • Umwandlung in Y-U-V: • – Helligkeit, – Rot-Grün Balance, – Gelb-Blau Balance Folie: Ruslan Ragimov

  7. Einführung. Lossy Kompressionsmöglichkeit 24 Bits Originalbild: 8 Bits 8 Bits 8 Bits R-G-B: 8 Bits 4 Bits 4 Bits Y-U-V: Quelle: Wikipedia Folie: Ruslan Ragimov

  8. Übersicht • Einführung • Bilddarstellung, R-G-B und Y-U-V Farbräume • Komprimierungsstrategie JPEG • Überblick • Komprimierungsstufen in Details • Vor-/Nachteile von JPEG • Zusammenfassung • Vergleich mit anderen Verfahren Folie: Ruslan Ragimov

  9. JPEG. Überblick: Geschichte Joint PhotographicExpertsGroup: • Gegründet im Juni 1987 von CCITT und ISO • Erster Entwurf in 1991 Hauptziele: • Hohe Kompressionsrate und Qualität • Benutzung von mehreren Parameter • Gutes Resultat beim jeglichen durchgehenden Ton • Anspruchsvoller aber nicht zu komplexer Algorithmus Folie: Ruslan Ragimov

  10. JPEG. Überblick: Strategien Kompressionsstrategien: • Sequenziell: • Jede Farbkomponente • von links nach rechts • von oben nach unten • Progressiv: • Mehrfache Blöcke (Scans) • von grober zu detaillierter Darstellung Baseline • Hierarchisch: • Mehrfache Auflösungen • Verlustfrei (Lossless) Folie: Ruslan Ragimov

  11. JPEG. Überblick: Stufen Modus: Baseline Lossless (De-) Kompressionsstufen: Bildvorbereitung Normales Bild DCT Dekomprimierung Komprimierung Quantisierung Kodierung Komprimiertes Bild Headerbeschreibung Folie: Ruslan Ragimov

  12. JPEG. Stufe I: Bildvorbereitung Bildvorbereitung: 1. Transformation von RGB zur YUV • Nicht für die monochromen Bilder • 2. Downsampling • Auflösung von Farbkomponenten verkleinern • Nicht für die monochromen Bilder • Nur für hierarchische Strategie • 3. Aufteilung in 8x8 Blöcke • Pixel von jeder Komponente in 8x8 Blöcke teilen Folie: Ruslan Ragimov

  13. JPEG. Stufe I: Bildvorbereitung Aufteilung in 8x8 Blöcke • Bei unvollständigen Blöcken werden die letzten Pixeln wiederholt Folie: Ruslan Ragimov

  14. JPEG. Überblick: Stufen Modus: Baseline Lossless (De-) Kompressionsstufen: Bildvorbereitung Normales Bild DCT Dekomprimierung Komprimierung Quantisierung Kodierung Komprimiertes Bild Headerbeschreibung Folie: Ruslan Ragimov

  15. JPEG. Stufe II: DCT • (Forward / Inverse) DiscreteCosine Transformation • Transformiert Daten von Blöcken in eine mathematische Domäne, die besser für die Kompression geeignet ist. FDCT: IDCT: wobei Folie: Ruslan Ragimov

  16. JPEG. Stufe II: DCT DCT (1x8 Block) Beispiel: FEIN GROB FDCT IDCT FDCT IDCT Folie: Ruslan Ragimov

  17. JPEG. Stufe II: DCT DCT (1x8 Block) Beispiel: FEIN GROB FDCT IDCT IDCT Abweichung von Originaldaten: Folie: Ruslan Ragimov

  18. JPEG. Stufe II: DCT DCT (1x8 Block) Beispiel: FEIN GROB FDCT IDCT IDCT Abweichung von Originaldaten: Folie: Ruslan Ragimov

  19. JPEG. Stufe II: DCT DCT (1x8 Block) Beispiel: FEIN GROB FDCT IDCT IDCT Abweichung von Originaldaten: Folie: Ruslan Ragimov

  20. JPEG. Stufe II: DCT DCT (1x8 Block) Beispiel: FEIN GROB FDCT IDCT IDCT Abweichung von Originaldaten: Folie: Ruslan Ragimov

  21. JPEG. Stufe II: DCT DCT (1x8 Block) Beispiel: FEIN GROB FDCT IDCT IDCT Abweichung von Originaldaten: Folie: Ruslan Ragimov

  22. JPEG. Stufe II: DCT DCT (1x8 Block) Beispiel: FEIN GROB FDCT IDCT IDCT Abweichung von Originaldaten: Folie: Ruslan Ragimov

  23. JPEG. Stufe II: DCT DCT (1x8 Block) Beispiel: FEIN GROB FDCT IDCT IDCT Abweichung von Originaldaten: Folie: Ruslan Ragimov

  24. JPEG. Stufe II: DCT FDCT: mit Wichtige Informationen (z.B.: mittlerer Farbton) Detaillierte Informationen (z.B.: scharfe Kanten) FDCT • DC (directcurrent) Koeffizient: • AC (alternaitingcurrent) Koeffizient: • Je größer und , desto mehr detaillierte Informationen trägt Folie: Ruslan Ragimov

  25. JPEG. Stufe II: DCT 64 Basisbilder von DCT Frequenz niedrig hoch niedrig hoch . . . + 8x8 Originalblock Folie: Ruslan Ragimov

  26. JPEG. Stufe II: DCT DCT (8x8 Block) Beispiel: FDCT IDCT Folie: Ruslan Ragimov

  27. JPEG. Stufe II: DCT DCT (8x8 Block) Beispiel: |Differenz| Folie: Ruslan Ragimov

  28. JPEG. Stufe II: DCT • Nachteile von DCT: • Blöcke werden unabhängig voneinander transformiert • Bei hoher Kompressionsrate(Quantisierung) können diese erkannt werden 163,2 KB 28,3 KB Folie: Ruslan Ragimov

  29. JPEG. Stufe II: DCT • Nachteile von DCT: • DCT eignet sich schlecht für nicht-durchgehende Töne. • Keine gute Komprimierung möglich FDCT IDCT Folie: Ruslan Ragimov

  30. JPEG. Überblick: Stufen Modus: Baseline Lossless (De-) Kompressionsstufen: Bildvorbereitung Normales Bild DCT Dekomprimierung Komprimierung Quantisierung Kodierung Komprimiertes Bild Headerbeschreibung Folie: Ruslan Ragimov

  31. JPEG. Stufe III: Quantisierung Quantisierung: Jeder - Wert aus der resultierenden FDCT Tabelle wird durch den entsprechenden - Wert einer Quantisierungstabelle geteilt und zur geraden Zahl gerundet. Quantisierungstabellen (in JPEG Software): • 1 Tabelle für Helligkeit (Y) + 1 Tabelle für Farbkomponenten (U, V) • Eine einfache Tabelle, die durch von dem Nutzer eingegebenen Parameter über berechnet wird Folie: Ruslan Ragimov

  32. JPEG. Stufe III: Quantisierung Quantisierungstabellen (erste Variante): für -Komponente: für -Komponente: Folie: Ruslan Ragimov

  33. JPEG. Stufe III: Quantisierung Quantisierungstabellen (zweite Variante): Folie: Ruslan Ragimov

  34. JPEG. Stufe III: Quantisierung DCT (8x8 Block) Beispiel: FDCT für -Komponente: Folie: Ruslan Ragimov

  35. JPEG. Überblick: Stufen Modus: Baseline Lossless (De-) Kompressionsstufen: Bildvorbereitung Normales Bild DCT Dekomprimierung Komprimierung Quantisierung Kodierung Komprimiertes Bild Headerbeschreibung Folie: Ruslan Ragimov

  36. JPEG. Stufe IV: Encoding • Im Normalfall: • DC Werte stellen den mittleren Farbton eines 8x8 Blocks dar • und unterscheiden sich deshalb nur gering voneinander • AC Werte eines Blocks bestehen aus mehreren Nullen • zwischen denen andere Zahlen vorkommen können • Ansatz: • Kodiere die DC und AC Werte getrennt voneinander • DC mit Huffman • AC mit Kombination von RLE und entweder Huffman • oder ArithmeticCoding Folie: Ruslan Ragimov

  37. JPEG. Stufe IV: Encoding • Kodierung von DC Werte: • Kodiere den ersten DC Wert und die Differenzen • zu den Nächsten 1120 AC AC 1114 AC 1119 AC 1118 AC AC AC AC AC AC AC AC AC AC AC AC AC AC AC AC AC AC AC AC 1118 -4 5 1 Folie: Ruslan Ragimov

  38. JPEG. Stufe IV: Encoding Konvertierungstabelle für DC Werte: )|(1118) )|(3) )|(5) 10001011110 11 Folie: Ruslan Ragimov

  39. JPEG. Stufe IV: Encoding • AC Kodierung: • Ordne die AC Werte zig-zag nacheinander FDCT + Quant. -13;22;7;2;5;1;1;-6;4;-2;8;-5;1;1;0;0;1;-1;2;-1;0;-2;2;-1;-1;0…0 Folie: Ruslan Ragimov

  40. JPEG. Stufe IV: Encoding • AC Kodierung: • Ordne die AC Werte zig-zag nacheinander () • Suche Zahl • Merke die Anzahl von vor aufeinander • folgenden Nullen () • Finde Zeile() und Index () von in der Konvertierungstabelle für DC Werte () • Suche in der Konvertierungstabelle für AC Werte nach Kodierung in der Zeile und Spalte () • Schreibe als Kodierung für die Zahl und davor kommenden Nullen () -13;22;7;2;5;1;1;-6;4;-2;8;-5;1;1;0;0;1;-1;2;-1;0;-2;2;-1;-1;0…0 Folie: Ruslan Ragimov

  41. JPEG. Stufe IV: Encoding AC Kodierung: -13;22;7;2;5;1;1;-6;4;-2;8;-5;1;1;0;0;1;-1;2;-1;0;-2;2;-1;-1;0…0 10110010 1101010110 100111 0110 100101 001 001 1001 100100 011 10111000 10010 001 001 111001 , 11100 Folie: Ruslan Ragimov

  42. JPEG. Stufe IV: Encoding AC Kodierung: -13;22;7;2;5;1;1;-6;4;-2;8;-5;1;1;0;0;1;-1;2;-1;0;-2;2;-1;-1;0…0 10110010 1101010110 100111 0110 100101 001 001 1001 100100 011 10111000 10010 001 001 111001 000 0110 000 1101101 1, 11011 Folie: Ruslan Ragimov

  43. JPEG. Stufe IV: Encoding AC Kodierung: -13;22;7;2;5;1;1;-6;4;-2;8;-5;1;1;0;0;1;-1;2;-1;0;-2;2;-1;-1;0…0 10110010 1101010110 100111 0110 100101 001 001 1001 100100 011 10111000 10010 001 001 111001 000 0110 000 1101101 0110 000 000 1010 Folie: Ruslan Ragimov

  44. JPEG. Stufe IV: Encoding AC Kodierung: + DC Wert 59 -13;22;7;2;5;1;1;-6;4;-2;8;-5;1;1;0;0;1;-1;2;-1;0;-2;2;-1;-1;0…0 10110010 1101010110 100111 0110 100101 001 001 1001 100100 011 10111000 10010 001 001 111001 000 0110 000 1101101 0110 000 000 1010 1111110111011 10110010 1101010110 100111 0110 100101 001 001 1001 100100 011 10111000 10010 001 001 111001 000 0110 000 1101101 0110 000 000 1010 • 122 Bits für ein 64 Pixel-Block • Für 8 Bits pro Komponente im Originalbild, wäre die Kompressionsrate ungefähr: Folie: Ruslan Ragimov

  45. JPEG. Überblick: Stufen Modus: Baseline Lossless (De-) Kompressionsstufen: Bildvorbereitung Normales Bild DCT Dekomprimierung Prediction Komprimierung Quantisierung Kodierung Komprimiertes Bild Headerbeschreibung Folie: Ruslan Ragimov

  46. JPEG. Lossless-Modus: Prediction • Lossless Ansatz: • Statt DCT und Quantisierung wende Prediction an • Prediction: • Suche den besten Predictor für den Wert • Kodiere mit Huffman den Tupel: (Predictor, Differenz) Zu speichern: (4,0) Folie: Ruslan Ragimov

  47. JPEG. Überblick: Stufen Modus: Baseline Lossless (De-) Kompressionsstufen: Bildvorbereitung Normales Bild DCT Prediction Komprimierung Quantisierung Kodierung Komprimiertes Bild Headerbeschreibung Folie: Ruslan Ragimov

  48. JPEG. Vor-/Nachteile Vorteile: • weit verbreitet • hohe Kompressionsrate (insbesondere für Fotos) Nachteile: • Qualitätsverlust (auch beim jeden Speichern) • schlecht für harte Farbübergänge • Transparenz und Animation nicht unterstützt Folie: Ruslan Ragimov

  49. JPEG. Ausblick Lossless JPEG Moduswurde nicht erfolgreich • Entwicklung eines geeigneten Kompressionsverfahrens JPEG-LS JPEG ist nicht perfekt: • Entwicklung neues Standards JPEG 2000: • Bildergröße bis zu Pixel (im Vergleich zu ) • Dekodierung beim Zoomen von einzelnen Bereichen • Fehlerkorrektur • … Folie: Ruslan Ragimov

  50. Übersicht • Einführung • Bilddarstellung, R-G-B und Y-U-V Farbräume • Komprimierungsstrategie JPEG • Überblick • Komprimierungsstufen in Details • Vor-/Nachteile von JPEG • Zusammenfassung • Vergleich mit anderen Verfahren Folie: Ruslan Ragimov

More Related