600 likes | 696 Views
Grafikkomprimierung. Andreas Pretzsch. Inhalt. Allgemein. Algorithmen. Grafikformate. Wozu?. Reduzierung der Datenmengen für Netzwerke (z.B. Internet) Archivierung Begrenzter Speicherplatz. Algorithmen. Kompression. verlustfreie. verlustbehaftet. RLE. DCT. LZW. Fraktale. Huffman.
E N D
Grafikkomprimierung Andreas Pretzsch
Inhalt Allgemein Algorithmen Grafikformate
Wozu? • Reduzierung der Datenmengen für • Netzwerke (z.B. Internet) • Archivierung • Begrenzter Speicherplatz
Algorithmen Kompression verlustfreie verlustbehaftet RLE DCT LZW Fraktale Huffman Wavelet CCITT
verlustfreie Kompression • „Bijektive Abblidung“ • Bildinformation wichtig z.B. Sternenkarte • Details wichtig • „Qualität vor Geschwindigkeit“
verlustbehaftete Kompression • „Surjektive Abbildung“ • Motiv wichtig z.B. Landschaft • Details unwichtig • „Geschwindigkeit vor Qualität“
RLERun Length Encoding • einfach und schnell • verlustfrei • gut geignet für S/W-Bilder • Lauflängenkodierung Beispiel: aaaaaaaaaaaaaaa -> 15a 15 byte -> 2 byte
RLERun Length Encoding Beispiel: 12 KB 2 KB
LZW • 1977 von Lempel und Ziv entwickelt • 1984 modifiziert von Welch Beispiel: „ the „ = 32,116,104,101,32 =: 256 5 byte -> 1 byte
LZW • geeignet für jede Art von Daten • symetrische Kompression • erstellt Datenlexikon • zur verbesserung Differenzberechnung (=differencing)
LZW • verwendet von: z.B. TIFF, GIF, PostScript • Algorithmus patentiert von Firma Unisys • Beispiel • http://www.cs.sfu.ca/CourseCentral/365/li/squeeze/LZW.html
Huffman Encoding • 1952 von Huffman entwickelt • stochastische Auswertung des Codes • Beispiel • http://www.cs.sfu.ca/CourseCentral/365/li/squeeze/Huffman.html
1 0 0 1 1 1 0 0 „Huffman-Baum“ Beispiel: 15 7 6 6 5 A B C D E AAAAA CCC AAAAA BBBBB EEEE AAAAA BBCCC DD DDDDE
1 0 0 1 1 1 0 0 „Huffman-Baum“ Beispiel: 15 7 6 6 5 A B C D E 0000010110110100000100100100100100111111111111...
CCITT Encoding • CCITT : International Telegraph and Telephone Consultative Committee • Speziel für 1-Bit-Daten entwickelt • für Fax und Modem
CCITT Encoding • Drei verschiedene Algorithmen Group 3 1-dimensional (G31D) Group 3 2-dimensional (G32D) Group 4 2-dimensional (G42D)
Group 3 1-dimensional (G31D) 1. Anwendung RLE 2. Entnimmt Kodes festen Wertetabellen • basiert auf statischtische Erhebungen • basiert auf Huffman Kompressionsschema • Zeilenbreite muß bekannt sein
Group 3 2-dimensional (G32D) • Erkennt unterschiede von eine Zeile zur nächsten • K-Faktor verhindert Fehler 2 k 4
Group 4 2-dimensional (G42D) • enthält keine korrekturmechanismen • hauptsächlich für Festplatten und Datennetzwerke gedacht • benötigt mehr Rechenkapazität
DCTDiskrete Cosinus Transformation • Verwandt mit Fourier-Transformation • Ansatzpunkt menschliche Wahrnehmung • hoher Rechenaufwand
verlustbehaftet! verlustfrei JPEG-Algorithmus • 1. Änderung des Farbmodells RGB-->YUV • 2. Unterabtastung (optional) • 3. Blockbildung 8x8 • 4. Diskrete Cosinus-Transformation • 5. Quantisierung • 6. Zick-Zack-Scanning • 7. Run-Level-Codierung (RLC*) • 8. Variable Längencodierung (VLC) (Huffman)
JPEG-Algorithmus • Beispiel 1 • http://www.cs.sfu.ca/CC/365/li/interactive-jpeg/Ijpeg.html • Beispiel 2 • http://www.fh-jena.de/contrib/fb/et/personal/ansorg/dct/dct/applet.html
Fraktale Kompression • Fraktale = sich wiederholende Muster • 1970 erstmals von Mandelbrot benutzt • Bild durch iterierte Funktion beschreiben • “Selbstähnlichkeiten”
Fraktale Kompression • extrem rechenintensiv • assymetrische Kompression • 1988 von Barnsley erstmals vorgestellt • inzwischen stark verbessert
Fraktale Kompression • nicht verlustfrei • entfernt Bildinformationen unabhängig von unsere Wahrnehmung • geignet für Landschaften, Gesichter etc. • viele Patente
Wavelet • 1930 mathematische Grundlagen entwickelt • basiert auf Wavelet-Transformation • verschieden Funktion (nicht wie DCT) • “Hoch- und Tiefpassfilter” • nur in JPEG2000 verwendet
Grafikformate • .tif Internet Druckvorstufe Sonstige Hersteller • .jpg • .pix • .rtf • .bmp • .eps • .jp2 • .wmf • .fpx • .sun • .gif • .png • .lwf • .pcx
TIFFTagged Immage File Format • Windows: • .tif • Kompression: • ohne, • RLE, • LZW, • CCITT • Group 3 und 4, • JPEG
TIFFTagged Immage File Format • Hersteller: • Adobe System Inc. • Entwickelt in Absprache mit: • Microsoft • ver. Scanner und Druckerhersteller
TIFFTagged Immage File Format • Für den Austausch über Plattformgrenzen hinaus geeignet • 1986 erste Spezifikation • universel einsetzbar
EPSEncapsulated PostScript • Windows: • .eps • Kompression: • ohne • JPEG • Hersteller: • Adobe System Inc.
EPSEncapsulated PostScript • Seitenbeschreibungssprache • Einbettung von Pixelgrafiken
JPEGJoint Photographic Experts Group • Windows: • .jpg • Kompression: • DCT (JPEG) • (ohne) • Hersteller: • JPEG • ISO
JPEGJoint Photographic Experts Group • Ende der 80’ Jahre entwickelt • Einsatzgebiete: • Kompression über einen Faktor einstellbar • einfach in Hard- und Software integrierbar • für Halbtonbilder • standard für Datenkompression • “kein Dateiformat”
JPEGJoint Photographic Experts Group • hohe kompressionsraten • Bildverluste • bis 1:4 keine • ab 1:10 wahrnehmbar • 1:25 viele Artefakte • nicht geeignet für Bilder mit • großen einheitlichen Farbflächen • harten Kanten
JPEGJoint Photographic Experts Group JPEG, verlustfrei komprimiert:123 K JPEG, Qual.faktor 10 %:7,4 K
JPEG2000 • Windows: • .jp2 • Kompression: • Wavelet • Hersteller: • JPEG • ISO
JPEG2000 • 1997 erste Entwürfe • 2000 Spezifikation an ISO übergeben • Ziele • höhere Kompressionraten als JPEG • auch verlustfreie Methode möglich • S/W Bilder
JPEG2000 • möglich: • “Interlaced” • ROI = Region of Interest • Kopierschutz per digitalem Wasserzeichen • nicht möglich: • Transparenz • Animationen
GIFGraphics Interchange Format • Windows: • .gif • Hersteller: • Compuserve • Kompression: • LZW
GIFGraphics Interchange Format • 1987 von CompuServe veröffentlicht • GIF87a • 1989 erweitert • GIF89a • 1994 Lizensschwierigkeiten
GIFGraphics Interchange Format • Ungeignet für: • Farbverläufe • Halbtonbilder • geignet für: • wenig Farben • z.B. Logos • harte Kanten • z.B. Zeichnung
GIFGraphics Interchange Format • Farbpalette bis 8 Bit • unterstützt websichere Farben • Dithering • Mischung mehrere Punkte zu anderen Farben • Transparence • Alpha-Kanal wählbar • Interlaced • Schrittweises Aufbauen des Bildes
PNGPortable Network Graphics • Windows: • .png • Hersteller: • Thomas Boutell, Tom Lane u.a. • Massachusetts Institute of Technologiy (MIT) • Kompression: • LZ77 Variante
PNGPortable Network Graphics • 1996 dem W3C-Konsortium vorgelegt • Entwickelt aufgrund unklarer Linzenssituation beim GIF • Ziele: • Soll gleiche Möglichkeiten wie GIF bieten • keine Lizenseinschränkungen • einfache implementierung • auf verschidenen Plattformen einsetzbar
PNGPortable Network Graphics • möglich: • 16 Bit-Farbtiefe • Interlacing • Transparenz • verlustfreie Kompression • nicht möglich • Animationen
PNGPortable Network Graphics • verwendet modifizierte LZW-Variante • keine Tabellen • Filtereinsatz zu verbesserung wählbar • None • Sub • Up • Average • Peath