Einleitung JPEG

Werbung
JPEG
Ingo Kregel
Gliederung
1.
2.
3.
4.
5.
JPEG
2
Einleitung und Überblick
Visuelle Wahrnehmung und Farbräume
Angewandte Komprimierungsverfahren
Die JPEG-Modi
Ausblick
Einleitung
JPEG: Joint Photographic Experts Group
Zusammenschluss von Gruppen der
ISO – International Organization for Standardization
ITU-T – International Telegraph and Telephone Consultative
Committee
Erstes Ziel: Kompressionsverfahren für ISDN-Kanäle
JPEG
3
Einleitung
Ausschreibung eines Wettbewerbs
Anforderungen:
Parametrisierbarkeit der Qualität
Unterstützung verschiedenster Farbräume, Bildgrößen und Inhalte
Annehmbare Komplexität in Bezug auf Implementierung und
Ausführung
Sequenzielle, progressive, verlustlose und hierarchische Modi
Gewinner der Ausschreibung:
Die Diskrete Kosinustransformation (DCT)
JPEG
4
Einleitung
1992: Veröffentlichung des JPEG-Standards
“Information technology – Digital compression and coding of
continuous-tone still images: Requirements and guidelines”
ISO/IEC 10918-1
CCITT (ITU-T) Recommendation T.81
Heute:
Verbreitetstes Grafikformatik der Welt
Verwendung im prof. Layoutbereich, Speicherung medizinischer
Daten, digitaler Videotechnik (MPEG), WWW…
JPEG
5
Ordnungsrahmen
JPEG
6
Ordnungsrahmen
JPEG
7
Gliederung
1.
2.
3.
4.
5.
JPEG
8
Einleitung und Überblick
Visuelle Wahrnehmung und Farbräume
Komprimierungsverfahren
Die JPEG-Modi
Fazit & Ausblick
Visuelle Wahrnehmung des Menschen
Bildkompression auch im menschlichen Gehirn
Bsp.: Verhältnis von Rezeptoren zu Nervenfasern im Auge 80:1
Optische Täuschungen:
Illusion über Farben, geometrische Formen, Bewegungen…
Ruhende Bilder erhalten höhere Auflösung als bewegte
Helligkeitsunterschiede werden stärker wahrgenommen
als Farbunterschiede
Forschungsfeld der Wahrnehmungspsychologie,
Psychophysik
JPEG
9
Ordnungsrahmen
JPEG
10
RGB
Rot, Grün, Blau
Entspricht der Technik in Farbmonitoren
8 Bit: 0-255
Hexadezimal: 00-ff
JPEG
11
YCbCr
Ursprung: Umstieg von S/W auf Farbfernsehen
JPEG
12
YCbCr
Y
Cb
Cr
JPEG
13
+
Tiefpassfilterung
„Chroma Subsampling“
Unterabtastung der Chrominanzen
Ausnutzung der visuellen Wahrnehmung des Menschen
Datenreduktion:
4:4:4
4:2:2
4:2:0
JPEG
14
24 Bit
16 Bit
12 Bit
volle Informationsdichte
Halbierung der Chrominanzen (horizontal)
Horizontale und Vertikale Halbierung der Chrom.
Gliederung
1.
2.
3.
4.
5.
JPEG
15
Einleitung und Überblick
Visuelle Wahrnehmung und Farbräume
Angewandte Komprimierungsverfahren
Die JPEG-Modi
Fazit und Ausblick
Gliederung – Kapitel 3
1.
2.
3.
4.
5.
Die Diskrete Kosinus-Transformation (DCT)
Quantisierung
Prädiktion
Lauflängenkodierung (RLC)
Entropiekodierung
Huffman-Kodierung
Arithmetische Kodierung
JPEG
16
Diskrete Kosinus-Transformation
1972 Ahmed, Natarajan und Rao
Weiterentwicklung der Fourier-Transformation
Aufgrund ihrer guten Kompressionseigenschaften in
meisten verlustbehafteten Verfahren zur Bild- und
Videokompression eingesetzt
Vorbereitung: Aufteilen der Grafik in 8x8-Blöcke
Farbige Grafiken entsprechen mehrstufiger
Verarbeitung von Graustufenbildern
JPEG
17
Diskrete Kosinus-Transformation
Berechnungsvorschriften:
7 7
2 x  1 u
2 y  1 v 


1
FDCT : F (u, v)  C  u  C  v   f  x, y   cos
 cos

4
16
16
 x 0 y 0

IDCT :
2 x  1 u
2 y  1 v 


1 7 7
f  x, y    C  u  C  v  F (u, v)  cos
 cos

4  u 0 v 0
16
16



C u  , C v  

JPEG
18
1
für u , v  0
F (u , v ) :
DCT  Koeffizienten (8 x8)
u : Spalten
v : Zeilen
sonst
f (u , v ) :
Matrix vor FDCT bzw. nach IDCT
x : Spalten
y : Zeilen
2
1
Diskrete Kosinus-Transformation
Vollständiges Beispiel:
JPEG
19
Diskrete Kosinus-Transformation
Ausschnitt 1: Koeffizient bei (0; 0)
7 7
 2 x  1 u  cos  2 y  1 v 
1
FDCT : F (u, v)  C  u  C  v   f  x, y   cos

4
16
16
x

0
y

0



1 1 1  7 7
F (u, v)  

  f  x, y   cos  0   cos  0 
4 2 2  x 0 y 0


1  7 7
F (u, v)    f  x, y 
8  x 0 y 0



C u  , C v  

JPEG
20
1
für u , v  0
F (u , v ) :
DCT  Koeffizienten (8 x8)
u : Spalten
v : Zeilen
sonst
f (u , v ) :
Matrix vor FDCT bzw. nach IDCT
x : Spalten
y : Zeilen
2
1
Diskrete Kosinus-Transformation
Ausschnitt 2: Koeffizient bei (1; 1)
7 7
 2 x  1 u  cos  2 y  1 v 
1
FDCT : F (u, v)  C  u  C  v   f  x, y   cos

4
16
16
 x 0 y 0

 7 7
 2 x  11   cos  2 y  11  
1
F (u, v)  11  f  x, y   cos

4
16
16
x

0
y

0


1  7 7
 2 x  
F (u, v)    f  x, y   cos 
4  x 0 y 0
 16


C u  , C v  

JPEG
21
1



für u , v  0
F (u , v ) :
DCT  Koeffizienten (8 x8)
u : Spalten
v : Zeilen
sonst
f (u , v ) :
Matrix vor FDCT bzw. nach IDCT
x : Spalten
y : Zeilen
2
1

 2 y  

cos



 16
+
Diskrete Kosinus-Transformation
Vollständiges Beispiel:
JPEG
22
Quantisierung
Division der Bildwerte durch Quantisierungsmatrix
Aufstellen solcher Matrizen nach Versuchsreihen
Quantisierungswerte unterschiedlich optimal, je nach
Anwendungsgebiet und Grafikeigenschaften
Genutzte Q-Matrix wird in JPEG-Datei mit gespeichert
JPEG
23
Quantisierung
Komprimierung:
 F  x, y  
FQ  x, y   round 
 Q  x, y  


Rekonstruktion:
FR  x, y   FQ  x, y   Q  x, y 
Quantisierung ist die Hauptursache für
Qualitätsverluste der DCT-basierten Verfahren
JPEG
24
Quantisierung
Zusammenhang:
JPEG
25
Quantisierung
Vergleich von Original- und rekonstruierten Werten:
JPEG
26
Prädiktion
Unterschiedliche Behandlung der Komponenten jedes
8x8-Blocks
DC – Direct Current
AC – Alternating Current
JPEG
27
Prädiktion
DC: Speicherung Mittelwerts des gesamten 8x8-Blocks
Ableitung dieses Koeffizienten aus dem Vorgängerblock
Speicherung der Differenz, statt absoluten Werts
JPEG
28
Lauflängenkodierung
Effektiv für Symbolfolgen mit häufigen Wiederholungen
Ziel: Ersetzen von Wiederholungen durch Tokens
Ein Token besteht aus 3 Elementen:
ESC
r
s
Escape-Zeichen
Lauflänge
Zu ersetzendes Symbol
Effizient daher erst ab Folge von 4 Symbolen
JPEG
29
Lauflängenkodierung
Beispiel:
Symbolfolge: 15400000013
Ersetzen der Nullen durch ein Token
Escape-Zeichen hier: $
Länge: 6
Ersetztes Symbol: 0
Token: 154$6013
JPEG
30
Lauflängenkodierung
Anwendung in JPEG:
Überführen der DCT-Matrix in eine eindimensionale
Symbolfolge durch Zickzack-Abtastung
JPEG
31
Lauflängenkodierung
Günstige Eigenschaften quantisierter Matrizen:
JPEG
32
Entropiekodierung
Entropie (Informationstheorie):
„Mittlere Informationsdichte“
Entropiekodierung ist verlustfrei!
Optimierung des Speicherplatzes einer gegebenen
Symbolfolge
Reduktion der zu speichernden Symbole ist Aufgabe
vorhergehender Komprimierungsmethoden
JPEG
33
Gliederung
1.
2.
3.
4.
Einleitung und Überblick
Visuelle Wahrnehmung und Farbräume
Komprimierungsverfahren
Die JPEG-Modi
Sequenziell vs. Progressiv
Hierarchisch
Baseline-Kodierung und Erweiterungen
Verlustfreie Kompression
Rekonstruktion
5. Fazit & Ausblick
JPEG
34
Sequenzielle Verarbeitung
Nur ein Durchlauf
Jeder 8x8-Block nacheinander
Es wird nur exakt der Speicher benötigt, den das Bild
auch einnimmt
Simple Vorgehensweise  Schlanke Implementierung
und geringe Ausführungszeit
JPEG
35
Progressive Verarbeitung
Unter Umständen sind andere Eigenschaften von
größerem Vorteil
Übertragung der Information in mehreren Schritten
Erster Durchlauf: sehr grobe Auflösung
Verfeinerung des Ergebnisses bei weiteren Durchläufen
durch zusätzliche Koeffizienten
JPEG
36
Progressive Verarbeitung
2 Unterarten der progressiven Kodierung:
Spektrale Selektion: Tieffrequente Koeffizienten werden vor
höherfrequenten Koeffizienten übertragen
Schrittweise Verfeinerung: Senden der oberen Bits, bevor die
niedrigeren Bits das Bild vervollständigen
Vorteile dieser Verarbeitungsweise:
Bei geringer Bandbreite für den Empfang
Vorschaumöglichkeit  Betrachter kann das Laden abbrechen
Geringere Auflösung kann ggf. genügen
JPEG
37
Hierarchische Verarbeitung
Sonderform des progressiven Verfahrens
Aufbau der Grafik in mehreren Ebenen
Erste Ebene erzeugt mehrfach unterabgetastetes,
unscharfes Bild
Aufwärtstasten auf weitere Ebenen  Hochrechnen auf
größere Auflösung
Werte der Hochrechnung dienen als Prognosewerte
nach dem Prädiktionsverfahren
Verfahren bei niedrigen Bitraten gut geeignet,
Mehraufwand bei höheren Bitraten bis zu 33%
JPEG
38
Hierarchische Verarbeitung
Schema:
JPEG
39
Baseline-Standard & Erweiterungen
Baseline-Standard: Mindestbedingungen
Diskrete Kosinustransformation, ausschließlich sequenziell
8 Bit pro Bildpunkt
Nur Huffman-Kodierung nutzbar
Maximal 2 Tabellen für Kodierung der AC- und DC-Koeffizienten
Erweiterter Standard:
Progressive und sequenzielle Speicherung möglich
Auch 12 Bit
Entscheidung zwischen Arithmetischer Kodierung und Huffman
Maximal 4 Tabellen für Kodierung der AC- und DC-Koeffizienten
JPEG
40
Verlustfreie Kompression
Unterschiede:
Wahl der Bildauflösung von 2-16 Bit
Verzicht auf DCT und Quantisierung
Ausschließliche Nutzung der Prädiktion
JPEG
41
Verlustfreie Kompression
JPEG
42
Verlustfreie Kompression
Nicht Schwerpunkt der Entwicklungsarbeit
Durchschnittlich komplexe farbige Grafiken:
50% Kompression
1994 JPEG-LS-Standard: Speziell verlustfreie Kodierung
Bessere Ergebnisse als integrierte Modi in JPEG oder
JPEG2000
JPEG
43
Rekonstruktion
JPEG
44
Gliederung
1.
2.
3.
4.
5.
JPEG
45
Einleitung und Überblick
Visuelle Wahrnehmung und Farbräume
Angewandte Komprimierungsverfahren
Die JPEG-Modi
Ausblick
Ausblick: JPEG2000
2000: ISO 15444, Nachfolger des JPEG-Standards
Waveletbasierte Transformation
Flexibler Zugriff: Änderungen ohne Rekompression
Entnahme von Ausschnitten oder geringerer Auflösung
aus einer Datei möglich
Verbreitung bisher aufgrund der Zufriedenheit mit JPEG
gering
JPEG-LS-Standard oder PNG-Format für bestimmte
Grafiken effizienter
JPEG
46
Herunterladen