Universität zu Köln. Historisch-Kulturwissenschaftliche InformationsverarbeitungJan G. Wieners // jan.wieners@uni-koeln.de...
Grillen & Co. am Aachener Weiher: Fr., 31.05.2013, ~16:00 Uhr http://www.hki.uni-koeln.de/aktuelles/chillen-und-grillen
Grundbegriffe: Farbmischung: Additiv, Subtraktiv Raster- vs. Vektorgrafik Pixel Auflösung FarbtiefeKompressionsverfah...
http://www.graffitiresearchlab.de
http://www.graffitiresearchlab.de
Faktoren der Farbentstehung
Additive FarbmischungMischung (Addition) von Licht  Beispiel Taschenlampe: Leuchten mehrereTaschenlampen auf dieselbe Ste...
Subtraktive FarbmischungZ.B.: Mischung von Farbpigmenten  Malen mit Deckfarbkasten
Farbmodelle
RGB: Wenn jede der drei Primärfarben miteiner Auflösung von 256 Werten dargestelltwerden kann, dann erhalten wir 256³ = 16...
Grafiktypen: Raster- vs. VektorgrafikRaster- vs. Vektorgrafik
Grafiktypen: Raster- vs. VektorgrafikRaster- vs. Vektorgrafik
Grafiktypen: Raster- vs. VektorgrafikRaster- vs. VektorgrafikQuantisierung:8 Bit RGBrgb(120, 70, 63)
Auflösung1936 Pixel2592 PixelGesamtzahl der Bildpunkte eines Bildes, z.B. 2592px * 1936px = ~ 5 Mio. Pixel
http://www.clker.com/clipart-cartoon-squirrel.html
Kompression
Die Auflösung bestimmt die Anzahl der Pixel ineinem Bild, die Quantisierung (Farbtiefe) bestimmtden Speicherplatzbedarf pr...
 RLE – Run Length Encoding (Lauflängenkodierung) Wörterbuchbasierte Kompressionsmethoden Lempel-Ziv-Welch (LZW) Statis...
Lauflängenkodierung
Neulich beim Obsthändler…„Ich hätte gerne◦ Eine Kiwi◦ Eine Birne◦ Eine Birne◦ Eine Birne◦ Einen Apfel◦ Einen Apfel◦ Einen ...
Neulich beim Obsthändler…„Ich hätte gerne◦ Eine Kiwi◦ Drei Birnen◦ Fünf Äpfel◦ Zwei Pampelmusen◦ Eine Zitrone◦ Zwei Limett...
Neulich beim Obsthändler…„Ich hätte gerne◦ Eine Kiwi◦ Drei Birnen◦ Fünf Äpfel◦ Zwei Pampelmusen◦ Eine Zitrone◦ Zwei Limett...
rot := rgb(255, 0, 0)grün := rgb(0, 255, 0)blau := rgb(0, 0, 255)
rot, rot, grün, grün, grün, grün, grün, rot, rotrot, grün, rot, rot, rot, rot, rot, grün, rot,rot, grün, rot, rot, rot, ro...
Komprimiert mit RLE:(2 rot) (5 grün) (2 rot)(1 rot) (1 grün) (5 rot) (1 grün) (1 rot)(1 rot) (1 grün) (5 rot) (1 grün) (1 ...
RLE - Lauflängenkodierung Verlustfrei nutzt lange Folgen sich wiederholender Zeichenoder Zeichenketten („Läufe“ / „runs“...
WörterbuchbasierteVerfahren
 1978 von A. Lempel und J. Ziventwickelt, 1984 von T. A. Welchverfeinert Verlustfrei Versucht, den zu komprimierendenZe...
Unterschiedliche Algorithmen: LZSS (Lempel-Ziv-Storer-Szymanski (gzip, ZIPund andere)) LZW (Lempel-Ziv-Welch) LZC (Lemp...
 Der Kodierer beginnt mit der Initialisierung des Wörterbuchesdurch z.B. alle Symbole des Alphabets. Bei herkömmlichen 8 ...
 Der Dekodierer beginnt mit der Initialisierung desWörterbuches durch z.B. alle Symbole des Alphabets. Anschließend lies...
LZW – Ein Beispielvgl. http://projects.hudecof.net/diplomovka/online/ucebnica/applets/AppletLZW.html
LZW - Decodierung
StatistischeKompressionsverfahren
 1952 von David A. Huffman (1925-1999) vorgestellt Verlustfrei Kompression über Binärbaum Huffman-Algorithmus verfolgt...
Ein Binärbaum ist definiert als ein Baum, dessenKnoten über maximal zwei Kindknoten verfügendürfen:Erinnerung: Binärbäume
rot, rot, grün, grün, grün, grün, grün, rot, rotrot, grün, rot, rot, rot, rot, rot, grün, rot,rot, grün, rot, rot, rot, ro...
rgrrrrrgrrrrbrbrrrrrrrrrrrr
http://www.iti.fh-flensburg.de/lang/algorithmen/code/huffman/huffman.htm
Codegenerierung nach folgender Logik:• Start beim Wurzelknoten• An jedem Knoten (einschl. Wurzelkn.):• Links abbiegen: 0 n...
Noch ein Beispiel
e := ?m := ?l := ?a := ?
Komprimieren Sie die Zeichenkette„bananarama“ (ohne Anführungszeichen) unterVerwendung des Huffman-Algorithmus.Übung
/
Aufgabe 1Nennen und erläutern Sie jeweils ein additives und ein subtraktives Farbmodell.Aufgabe 2Erläutern Sie das Prinzip...
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression
Nächste SlideShare
Wird geladen in …5
×

SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression

615 Aufrufe

Veröffentlicht am

0 Kommentare
0 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Keine Downloads
Aufrufe
Aufrufe insgesamt
615
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
266
Aktionen
Geteilt
0
Downloads
1
Kommentare
0
Gefällt mir
0
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

SoSe 2013 | Basisinformationstechnologie II - 04_Algorithmen der Bildverarbeitung: Kompression

  1. 1. Universität zu Köln. Historisch-Kulturwissenschaftliche InformationsverarbeitungJan G. Wieners // jan.wieners@uni-koeln.deBasisinformationstechnologie ISommersemester 201308. Mai 2013 – Algorithmen der Bildverarbeitung I: Kompression
  2. 2. Grillen & Co. am Aachener Weiher: Fr., 31.05.2013, ~16:00 Uhr http://www.hki.uni-koeln.de/aktuelles/chillen-und-grillen
  3. 3. Grundbegriffe: Farbmischung: Additiv, Subtraktiv Raster- vs. Vektorgrafik Pixel Auflösung FarbtiefeKompressionsverfahren Nicht verlustbehaftet Run Length Encoding (RLE) Wörterbuch-Algorithmen, z.B. Lempel-Ziv-Welsh (LZW) VerlustbehaftetThemenüberblick
  4. 4. http://www.graffitiresearchlab.de
  5. 5. http://www.graffitiresearchlab.de
  6. 6. Faktoren der Farbentstehung
  7. 7. Additive FarbmischungMischung (Addition) von Licht  Beispiel Taschenlampe: Leuchten mehrereTaschenlampen auf dieselbe Stelle, wird jene Stelle heller beleuchtet, alswürde sie nur von einer Taschenlampe angestrahlt.Werden rote und grüne Filter vor die Taschenlampe gesetzt, addiert sich dasLicht.
  8. 8. Subtraktive FarbmischungZ.B.: Mischung von Farbpigmenten  Malen mit Deckfarbkasten
  9. 9. Farbmodelle
  10. 10. RGB: Wenn jede der drei Primärfarben miteiner Auflösung von 256 Werten dargestelltwerden kann, dann erhalten wir 256³ = 16,7Mio. verschiedene Farbtöne.HSV:Farbwinkel, Sättigung, Hellwertbzw. absoluteHelligkeit(B), BrightnessFarbmodelleL*a*b*: Menschl.Wahrnehmung
  11. 11. Grafiktypen: Raster- vs. VektorgrafikRaster- vs. Vektorgrafik
  12. 12. Grafiktypen: Raster- vs. VektorgrafikRaster- vs. Vektorgrafik
  13. 13. Grafiktypen: Raster- vs. VektorgrafikRaster- vs. VektorgrafikQuantisierung:8 Bit RGBrgb(120, 70, 63)
  14. 14. Auflösung1936 Pixel2592 PixelGesamtzahl der Bildpunkte eines Bildes, z.B. 2592px * 1936px = ~ 5 Mio. Pixel
  15. 15. http://www.clker.com/clipart-cartoon-squirrel.html
  16. 16. Kompression
  17. 17. Die Auflösung bestimmt die Anzahl der Pixel ineinem Bild, die Quantisierung (Farbtiefe) bestimmtden Speicherplatzbedarf pro Pixel.Beispiele: In einem RGB-Bild mit 24 Bit Farbtiefe (8 Bit proFarbkanal) braucht man für ein Bild mit den Maßen1024x768 (786.432 Pixel) also 18.874.368 Bit, d.h. 2.25Mbyte. Für ein Graustufenbild mit den gleichen Abmessungenbenötigt man „nur“ 0.75 MByte, da nur ein Farbkanal mit8 Bit (statt 3 Kanälen: RGB!) gespeichert werden muss.Rastergrafiken und ihr Speicherplatzbedarf
  18. 18.  RLE – Run Length Encoding (Lauflängenkodierung) Wörterbuchbasierte Kompressionsmethoden Lempel-Ziv-Welch (LZW) Statistische Kompressionsmethoden Huffman-AlgorithmusAnsätze zur Datenkompression
  19. 19. Lauflängenkodierung
  20. 20. Neulich beim Obsthändler…„Ich hätte gerne◦ Eine Kiwi◦ Eine Birne◦ Eine Birne◦ Eine Birne◦ Einen Apfel◦ Einen Apfel◦ Einen Apfel◦ Einen Apfel◦ Einen Apfel◦ Eine Pampelmuse◦ Eine Pampelmuse◦ Eine Zitrone◦ Eine Limette◦ Eine Limette“
  21. 21. Neulich beim Obsthändler…„Ich hätte gerne◦ Eine Kiwi◦ Drei Birnen◦ Fünf Äpfel◦ Zwei Pampelmusen◦ Eine Zitrone◦ Zwei Limetten“
  22. 22. Neulich beim Obsthändler…„Ich hätte gerne◦ Eine Kiwi◦ Drei Birnen◦ Fünf Äpfel◦ Zwei Pampelmusen◦ Eine Zitrone◦ Zwei Limetten“ Lauflängencodierung / Run-Length-Encoding (RLE): (1 Kiwi) (3 Birnen) (5 Äpfel) (2 Pampelmusen)(1 Zitrone) (2 Limetten)
  23. 23. rot := rgb(255, 0, 0)grün := rgb(0, 255, 0)blau := rgb(0, 0, 255)
  24. 24. rot, rot, grün, grün, grün, grün, grün, rot, rotrot, grün, rot, rot, rot, rot, rot, grün, rot,rot, grün, rot, rot, rot, rot, rot, grün, rot,rot, rot, rot, blau, rot, blau, rot, rot, rot,rot, rot, rot, rot, rot, rot, rot, rot[…]
  25. 25. Komprimiert mit RLE:(2 rot) (5 grün) (2 rot)(1 rot) (1 grün) (5 rot) (1 grün) (1 rot)(1 rot) (1 grün) (5 rot) (1 grün) (1 rot)(3 rot) (1 blau) (1 rot) (1 blau) (3 rot)(9 rot)[…]
  26. 26. RLE - Lauflängenkodierung Verlustfrei nutzt lange Folgen sich wiederholender Zeichenoder Zeichenketten („Läufe“ / „runs“) aus: AAAA BBB CCCC D EEEEE  4A 3B 4C 1D 5E 1m 1i 2s 1i 2s 1i 2p 1i  ? Funktioniert also am besten bei homogenenEingabedatenLauflängenkodierung: RLE
  27. 27. WörterbuchbasierteVerfahren
  28. 28.  1978 von A. Lempel und J. Ziventwickelt, 1984 von T. A. Welchverfeinert Verlustfrei Versucht, den zu komprimierendenZeichenstrom in Teilstrings zuzerlegen und diese in einemWörterbuch zu speichernLZW (Lempel-Ziv-Welch)Zeichenkette:„Hello World Hello“Tabelle:0: „Hello“1: „World“Codefolge: 0 1 0
  29. 29. Unterschiedliche Algorithmen: LZSS (Lempel-Ziv-Storer-Szymanski (gzip, ZIPund andere)) LZW (Lempel-Ziv-Welch) LZC (Lempel-Ziv Compress) LZMW (Unix Compress, GIF) Vgl.: http://www-ti.informatik.uni-tuebingen.de/~reinhard/datkom/LZW_Applet.html Patente auf LZW (1980er+), darum GIFproblematischLZW (Lempel-Ziv-Welch)
  30. 30.  Der Kodierer beginnt mit der Initialisierung des Wörterbuchesdurch z.B. alle Symbole des Alphabets. Bei herkömmlichen 8 Bitpro Zeichen ist das Wörterbuch z.B. zunächst 256 (28) Einträgelang. Anschließend liest der Kodierer den Zeichenstrom der zukomprimierenden Datei Zeichen für Zeichen ein und akkumuliertdie eingelesenen Zeichen im String I. Der so entstandene String I wird im Wörterbuch gesucht. Dasnächste (erste) eingelesene Zeichen x wird im Wörterbuchgefunden. Solange I im Wörterbuch gefunden wird, wird das nächsteZeichen eingelesen und an den String angehängt. I = Ix Wird der String Ix im Wörterbuch nicht gefunden, gibt der Kodierer den Zeiger von I auf das Wörterbuch aus, schreibt den String Ix an die nächste freie Stelle im Wörterbuch und initialisiert den String I auf das zuletzt eingelesene Zeichen x.LZW – Kodierer
  31. 31.  Der Dekodierer beginnt mit der Initialisierung desWörterbuches durch z.B. alle Symbole des Alphabets. Anschließend liest der Dekodierer den Zeichenstromder zu dekomprimierenden Datei Zeichen für Zeichenein. Die Zeichen sind die Wörterbuch-Zeiger. Die eingelesenen Zeiger werden benutzt, um aus demWörterbuch die unkomprimierten Zeichen bzw. Stringsauszulesen. Der Dekodierer bildet gleichzeitig das Wörterbuch inderselben Weise wie der Kodierer. Man bezeichnetKodierer und Dekodierer als synchronisiert.LZW - Dekodierer
  32. 32. LZW – Ein Beispielvgl. http://projects.hudecof.net/diplomovka/online/ucebnica/applets/AppletLZW.html
  33. 33. LZW - Decodierung
  34. 34. StatistischeKompressionsverfahren
  35. 35.  1952 von David A. Huffman (1925-1999) vorgestellt Verlustfrei Kompression über Binärbaum Huffman-Algorithmus verfolgt das Ziel, wenigerhäufigen Symbolen längere Codewörter zuzuweisenHuffman KodierungNachruf: http://www1.ucsc.edu/currents/99-00/10-11/huffman.html
  36. 36. Ein Binärbaum ist definiert als ein Baum, dessenKnoten über maximal zwei Kindknoten verfügendürfen:Erinnerung: Binärbäume
  37. 37. rot, rot, grün, grün, grün, grün, grün, rot, rotrot, grün, rot, rot, rot, rot, rot, grün, rot,rot, grün, rot, rot, rot, rot, rot, grün, rot,rot, rot, rot, blau, rot, blau, rot, rot, rot,rot, rot, rot, rot, rot, rot, rot, rot,rot, rot, rot, rot, rot, rot, rot, rotrot, blau, rot, rot, rot, rot, rot, blau, rot,rot, rot, blau, rot, rot, rot, blau, rot, rotrot, rot, rot, blau, blau, blau, rot, rot, rot|vrrgggggrrrgrrrrrgrrgrrrrrgrrrrbrbrrrrrrrrrrrrrrrrrrrrrrbrrrrrbrrrbrrrbrrrrrbbbrrr
  38. 38. rgrrrrrgrrrrbrbrrrrrrrrrrrr
  39. 39. http://www.iti.fh-flensburg.de/lang/algorithmen/code/huffman/huffman.htm
  40. 40. Codegenerierung nach folgender Logik:• Start beim Wurzelknoten• An jedem Knoten (einschl. Wurzelkn.):• Links abbiegen: 0 notieren• Rechts abbiegen: 1 notieren• Beispiel „g“: Vom Wurzelknoten ausrechten Kindknoten besucht (1 notiert);anschließend linken Kindknoten besucht(0 notiert)  g := 10
  41. 41. Noch ein Beispiel
  42. 42. e := ?m := ?l := ?a := ?
  43. 43. Komprimieren Sie die Zeichenkette„bananarama“ (ohne Anführungszeichen) unterVerwendung des Huffman-Algorithmus.Übung
  44. 44. /
  45. 45. Aufgabe 1Nennen und erläutern Sie jeweils ein additives und ein subtraktives Farbmodell.Aufgabe 2Erläutern Sie das Prinzip der RLE-Kompression und komprimieren Sie dieZeichenkette1100000011110011110000000011unter Verwendung der Lauflängenkodierung. Treffen Sie eine Aussage über dieEffektivität der Kompression.Aufgabe 3Stellen Sie die einzelnen Arbeitsschritte der Huffman Codierung (Bestimmung derSymbolhäufigkeit, etc.) vor und komprimieren Sie die folgende Zeichenkette unterVerwendung der Huffman-Codierung:„im potsdamer boxclub boxt der potsdamer postbusboss.“(ohne Anführungszeichen, Leer- und Sonderzeichen nicht vergessen!)Geben Sie bei Ihrere Lösung der Hausaufgabe auch die Codierung derEingabezeichenkette an.Um den Arbeitsaufwand zu reduzieren, können Sie gerne eine Fotographie / Scanihrer Lösung senden.Hausaufgaben

×