SlideShare ist ein Scribd-Unternehmen logo
Basisinformationstechnologie II – Sommersemester 2016 – 30. Mai 2016
Dr. Jan G. Wieners
Algorithmen der Bildverarbeitung
Grundlagen und Kompressionsverfahren
Grundbegriffe:
 Farbmischung: Additiv, Subtraktiv
 Raster- vs. Vektorgrafik
 Pixel
 Auflösung
 Farbtiefe
Kompressionsverfahren
 Nicht verlustbehaftet
 Run Length Encoding (RLE)
 Wörterbuch-Algorithmen, z.B. Lempel-Ziv-Welsh (LZW)
 Verlustbehaftet
Themenüberblick
Aufgabe 1
Nennen und erläutern Sie jeweils ein additives und ein subtraktives Farbmodell.
Aufgabe 2
Erläutern Sie das Prinzip der RLE-Kompression und komprimieren Sie die Zeichenkette
1100000011110011110000000011
unter Verwendung der Lauflängenkodierung. Treffen Sie eine Aussage über die Effektivität
der Kompression.
Aufgabe 3
Stellen Sie die einzelnen Arbeitsschritte der Huffman Codierung (Bestimmung der
Symbolhäufigkeit, etc.) vor und komprimieren Sie die folgende Zeichenkette unter
Verwendung 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 der Eingabezeichenkette
an. Um den Arbeitsaufwand zu reduzieren, können Sie gerne eine Fotographie / einen
Scan ihrer Lösung senden.
Sitzungsaufgaben
http://www.graffitiresearchlab.de
http://www.graffitiresearchlab.de
Faktoren der Farbentstehung
Additive Farbmischung
Mischung (Addition) von Licht  Beispiel Taschenlampe: Leuchten mehrere
Taschenlampen auf dieselbe Stelle, wird jene Stelle heller beleuchtet, als
würde sie nur von einer Taschenlampe angestrahlt.
Werden rote und grüne Filter vor die Taschenlampe gesetzt, addiert sich das
Licht.
Subtraktive Farbmischung
Z.B.: Mischung von Farbpigmenten  Malen mit Deckfarbkasten
RGB: Wenn jede der drei Primärfarben mit
einer Auflösung von 256 Werten dargestellt
werden kann, dann erhalten wir 256³ = 16,7
Mio. verschiedene Farbtöne.
HSV:
Farbwinkel,
Sättigung,
Hellwert bzw.
absolute
Helligkeit (B),
Brightness
L*a*b*: Menschl.
Wahrnehmung
Grafiktypen: Raster- vs. VektorgrafikRaster- vs. Vektorgrafik
Grafiktypen: Raster- vs. VektorgrafikRaster- vs. Vektorgrafik
Grafiktypen: Raster- vs. VektorgrafikRaster- vs. Vektorgrafik
Quantisierung:
8 Bit RGB
rgb(120, 70, 63)
http://www.clker.com/clipart-cartoon-squirrel.html
Auflösung
1936 Pixel
2592 Pixel
Gesamtzahl der Bildpunkte eines Bildes, z.B. 2592px * 1936px = ~ 5 Mio. Pixel
Kompression
 RLE – Run Length Encoding (Lauflängenkodierung)
 Wörterbuchbasierte Kompressionsmethoden
 Lempel-Ziv-Welch (LZW)
 Statistische Kompressionsmethoden
 Huffman-Algorithmus
Ansätze zur Datenkompression
Lauflängenkodierung
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“
Neulich beim Obsthändler…
„Ich hätte gerne
◦ Eine Kiwi
◦ Drei Birnen
◦ Fünf Äpfel
◦ Zwei Pampelmusen
◦ Eine Zitrone
◦ Zwei Limetten“
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)
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, rot
rot, 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
[…]
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)
[…]
RLE - Lauflängenkodierung
 Verlustfrei
 nutzt lange Folgen sich wiederholender Zeichen oder
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 homogenen
Eingabedaten
Lauflängenkodierung: RLE
Wörterbuchbasierte Verfahren
 1978 von A. Lempel und J. Ziv
entwickelt, 1984 von T. A. Welch
verfeinert
 Verlustfrei
 Versucht, den zu komprimierenden
Zeichenstrom in Teilstrings zu zerlegen
und diese in einem Wörterbuch zu
speichern
LZW (Lempel-Ziv-Welch)
Zeichenkette:
„Hello World Hello“
Tabelle:
0: „Hello“
1: „World“
Codefolge: 0 1 0
Unterschiedliche Algorithmen:
 LZSS (Lempel-Ziv-Storer-Szymanski (gzip, ZIP und
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 GIF problematisch
LZW (Lempel-Ziv-Welch)
LZW – Ein Beispiel
vgl. http://projects.hudecof.net/diplomovka/online/ucebnica/applets/AppletLZW.html
LZW - Decodierung
Statistische Kompressionsverfahren
 1952 von David A. Huffman (1925-1999) vorgestellt
 Verlustfrei
 Kompression über Binärbaum
 Huffman-Algorithmus verfolgt das Ziel, weniger häufigen
Symbolen längere Codewörter zuzuweisen
Huffman Kodierung
Nachruf: http://www1.ucsc.edu/currents/99-00/10-11/huffman.html
Ein Binärbaum ist definiert als ein Baum, dessen Knoten
über maximal zwei Kindknoten verfügen dürfen:
Erinnerung: Binärbäume
rot, rot, grün, grün, grün, grün, grün, rot, rot
rot, 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, rot
rot, blau, rot, rot, rot, rot, rot, blau, rot,
rot, rot, blau, rot, rot, rot, blau, rot, rot
rot, rot, rot, blau, blau, blau, rot, rot, rot
|
v
rrgggggrrrgrrrrrgrrgrrrrrgrrrrbrbrrrrrrrrrrrrrrrrrrrrrrbr
rrrrbrrrbrrrbrrrrrbbbrrr
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 notieren
• Rechts abbiegen: 1 notieren
• Beispiel „g“: Vom Wurzelknoten aus
rechten Kindknoten besucht (1 notiert);
anschließend linken Kindknoten besucht
(0 notiert)  g := 10
Noch ein Beispiel
e := ?
m := ?
l := ?
a := ?
Komprimieren Sie die Zeichenkette
„bananarama“ (ohne Anführungszeichen) unter
Verwendung des Huffman-Algorithmus.
Übung
/
 https://commons.wikimedia.org/wiki/File:Universitat_
zu_Koln_Hauptgebaude_ost.jpg
 http://causeitsallaboutthepayno.tumblr.com/post/131
746453874/im-currently-listening-to-adeles-new
 www.giphy.com
Bildnachweise

Weitere ähnliche Inhalte

Andere mochten auch

Memo atlas VPM 2014
Memo atlas VPM 2014Memo atlas VPM 2014
Memo atlas VPM 2014
Atlas VPM
 
10.5. le evolución de la política exterior de españa durante el s. xviii
10.5.  le evolución de la política exterior de españa durante el s. xviii10.5.  le evolución de la política exterior de españa durante el s. xviii
10.5. le evolución de la política exterior de españa durante el s. xviii
jesus ortiz
 
Tema 3. la revolución industrial. los inicios
Tema 3.  la revolución industrial. los iniciosTema 3.  la revolución industrial. los inicios
Tema 3. la revolución industrial. los inicios
jesus ortiz
 
PR sieht’s manchmal anders Ausbildungsmarketing durch die PR-Brille betrachtet
PR sieht’s manchmal anders Ausbildungsmarketing durch die PR-Brille betrachtetPR sieht’s manchmal anders Ausbildungsmarketing durch die PR-Brille betrachtet
PR sieht’s manchmal anders Ausbildungsmarketing durch die PR-Brille betrachtet
U-Form:e Testsysteme
 
Social Business Studie @ Social Executive's Lounge 2014 by coUNDco
Social Business Studie @ Social Executive's Lounge 2014 by coUNDco Social Business Studie @ Social Executive's Lounge 2014 by coUNDco
Social Business Studie @ Social Executive's Lounge 2014 by coUNDco
Florian Wieser
 
Tema 3. los grupos sociales
Tema 3.  los grupos socialesTema 3.  los grupos sociales
Tema 3. los grupos sociales
jesus ortiz
 
Grupo3 trabajo colaborativo1_2
Grupo3 trabajo colaborativo1_2Grupo3 trabajo colaborativo1_2
Grupo3 trabajo colaborativo1_2
Xavier Diaz
 
netzwerk junge ohren
netzwerk junge ohrennetzwerk junge ohren
netzwerk junge ohren
BKJeV
 
Präsentation der akü novelle gpa-djp 2012
Präsentation der akü novelle   gpa-djp 2012Präsentation der akü novelle   gpa-djp 2012
Präsentation der akü novelle gpa-djp 2012Werner Drizhal
 

Andere mochten auch (11)

Memo atlas VPM 2014
Memo atlas VPM 2014Memo atlas VPM 2014
Memo atlas VPM 2014
 
PresentacióN Oid Mortales
PresentacióN Oid MortalesPresentacióN Oid Mortales
PresentacióN Oid Mortales
 
10.5. le evolución de la política exterior de españa durante el s. xviii
10.5.  le evolución de la política exterior de españa durante el s. xviii10.5.  le evolución de la política exterior de españa durante el s. xviii
10.5. le evolución de la política exterior de españa durante el s. xviii
 
Tema 3. la revolución industrial. los inicios
Tema 3.  la revolución industrial. los iniciosTema 3.  la revolución industrial. los inicios
Tema 3. la revolución industrial. los inicios
 
PR sieht’s manchmal anders Ausbildungsmarketing durch die PR-Brille betrachtet
PR sieht’s manchmal anders Ausbildungsmarketing durch die PR-Brille betrachtetPR sieht’s manchmal anders Ausbildungsmarketing durch die PR-Brille betrachtet
PR sieht’s manchmal anders Ausbildungsmarketing durch die PR-Brille betrachtet
 
Social Business Studie @ Social Executive's Lounge 2014 by coUNDco
Social Business Studie @ Social Executive's Lounge 2014 by coUNDco Social Business Studie @ Social Executive's Lounge 2014 by coUNDco
Social Business Studie @ Social Executive's Lounge 2014 by coUNDco
 
Tema 3. los grupos sociales
Tema 3.  los grupos socialesTema 3.  los grupos sociales
Tema 3. los grupos sociales
 
Grupo3 trabajo colaborativo1_2
Grupo3 trabajo colaborativo1_2Grupo3 trabajo colaborativo1_2
Grupo3 trabajo colaborativo1_2
 
netzwerk junge ohren
netzwerk junge ohrennetzwerk junge ohren
netzwerk junge ohren
 
Ep basic 2012
Ep basic 2012Ep basic 2012
Ep basic 2012
 
Präsentation der akü novelle gpa-djp 2012
Präsentation der akü novelle   gpa-djp 2012Präsentation der akü novelle   gpa-djp 2012
Präsentation der akü novelle gpa-djp 2012
 

Mehr von Institute for Digital Humanities, University of Cologne

Künstliche Intelligenz und visuelle Erzählungen: Comicanalyse | 17.04.2019 | ...
Künstliche Intelligenz und visuelle Erzählungen: Comicanalyse | 17.04.2019 | ...Künstliche Intelligenz und visuelle Erzählungen: Comicanalyse | 17.04.2019 | ...
Künstliche Intelligenz und visuelle Erzählungen: Comicanalyse | 17.04.2019 | ...
Institute for Digital Humanities, University of Cologne
 
Augmented City –Street Art, Embodiment, Cultural Heritage & AR | 03.04.2019 |...
Augmented City –Street Art, Embodiment, Cultural Heritage & AR | 03.04.2019 |...Augmented City –Street Art, Embodiment, Cultural Heritage & AR | 03.04.2019 |...
Augmented City –Street Art, Embodiment, Cultural Heritage & AR | 03.04.2019 |...
Institute for Digital Humanities, University of Cologne
 
Künstliche Intelligenz und visuelle Erzählungen: Comicanalyse | 03.04.2019 | ...
Künstliche Intelligenz und visuelle Erzählungen: Comicanalyse | 03.04.2019 | ...Künstliche Intelligenz und visuelle Erzählungen: Comicanalyse | 03.04.2019 | ...
Künstliche Intelligenz und visuelle Erzählungen: Comicanalyse | 03.04.2019 | ...
Institute for Digital Humanities, University of Cologne
 
Transformation mittelhochdeutscher Erfahrungswelten – vom Text zum Computerga...
Transformation mittelhochdeutscher Erfahrungswelten – vom Text zum Computerga...Transformation mittelhochdeutscher Erfahrungswelten – vom Text zum Computerga...
Transformation mittelhochdeutscher Erfahrungswelten – vom Text zum Computerga...
Institute for Digital Humanities, University of Cologne
 
Transformation mittelhochdeutscher Erfahrungswelten – vom Text zum Computerga...
Transformation mittelhochdeutscher Erfahrungswelten – vom Text zum Computerga...Transformation mittelhochdeutscher Erfahrungswelten – vom Text zum Computerga...
Transformation mittelhochdeutscher Erfahrungswelten – vom Text zum Computerga...
Institute for Digital Humanities, University of Cologne
 
Bit sosem 2016-wieners-sitzung-13_ki-in-games
Bit sosem 2016-wieners-sitzung-13_ki-in-gamesBit sosem 2016-wieners-sitzung-13_ki-in-games
Bit sosem 2016-wieners-sitzung-13_ki-in-games
Institute for Digital Humanities, University of Cologne
 
Bit sosem 2016-wieners-sitzung-12_bild-iv-computer-vision
Bit sosem 2016-wieners-sitzung-12_bild-iv-computer-visionBit sosem 2016-wieners-sitzung-12_bild-iv-computer-vision
Bit sosem 2016-wieners-sitzung-12_bild-iv-computer-vision
Institute for Digital Humanities, University of Cologne
 
Bit sosem 2016-wieners-sitzung-11_bild-iii-filter
Bit sosem 2016-wieners-sitzung-11_bild-iii-filterBit sosem 2016-wieners-sitzung-11_bild-iii-filter
Bit sosem 2016-wieners-sitzung-11_bild-iii-filter
Institute for Digital Humanities, University of Cologne
 
Bit sosem 2016-wieners-sitzung-10_bild-ii-punktoperationen
Bit sosem 2016-wieners-sitzung-10_bild-ii-punktoperationenBit sosem 2016-wieners-sitzung-10_bild-ii-punktoperationen
Bit sosem 2016-wieners-sitzung-10_bild-ii-punktoperationen
Institute for Digital Humanities, University of Cologne
 
Bit sosem 2016-wieners-sitzung-08_semantic-web
Bit sosem 2016-wieners-sitzung-08_semantic-webBit sosem 2016-wieners-sitzung-08_semantic-web
Bit sosem 2016-wieners-sitzung-08_semantic-web
Institute for Digital Humanities, University of Cologne
 
Bit sosem 2016-wieners-sitzung-07_rechnerkommunikation-ii
Bit sosem 2016-wieners-sitzung-07_rechnerkommunikation-iiBit sosem 2016-wieners-sitzung-07_rechnerkommunikation-ii
Bit sosem 2016-wieners-sitzung-07_rechnerkommunikation-ii
Institute for Digital Humanities, University of Cologne
 
Bit sosem 2016-wieners-sitzung-06_rechnerkommunikation
Bit sosem 2016-wieners-sitzung-06_rechnerkommunikationBit sosem 2016-wieners-sitzung-06_rechnerkommunikation
Bit sosem 2016-wieners-sitzung-06_rechnerkommunikation
Institute for Digital Humanities, University of Cologne
 
Bit sosem 2016-wieners-sitzung-05_zellulaere-automaten-conway
Bit sosem 2016-wieners-sitzung-05_zellulaere-automaten-conwayBit sosem 2016-wieners-sitzung-05_zellulaere-automaten-conway
Bit sosem 2016-wieners-sitzung-05_zellulaere-automaten-conway
Institute for Digital Humanities, University of Cologne
 
Bit sosem 2016-wieners-sitzung-04_theoretische-informatik
Bit sosem 2016-wieners-sitzung-04_theoretische-informatikBit sosem 2016-wieners-sitzung-04_theoretische-informatik
Bit sosem 2016-wieners-sitzung-04_theoretische-informatik
Institute for Digital Humanities, University of Cologne
 
Bit sosem 2016-wieners-sitzung-03_algorithmen
Bit sosem 2016-wieners-sitzung-03_algorithmenBit sosem 2016-wieners-sitzung-03_algorithmen
Bit sosem 2016-wieners-sitzung-03_algorithmen
Institute for Digital Humanities, University of Cologne
 
Bit sosem 2016-wieners-sitzung-02_datenstrukturen
Bit sosem 2016-wieners-sitzung-02_datenstrukturenBit sosem 2016-wieners-sitzung-02_datenstrukturen
Bit sosem 2016-wieners-sitzung-02_datenstrukturen
Institute for Digital Humanities, University of Cologne
 
Bit sosem 2016-wieners-sitzung-01_auffrischung
Bit sosem 2016-wieners-sitzung-01_auffrischungBit sosem 2016-wieners-sitzung-01_auffrischung
Bit sosem 2016-wieners-sitzung-01_auffrischung
Institute for Digital Humanities, University of Cologne
 
Bit sosem 2016-wieners-sitzung-00_themenueberblick
Bit sosem 2016-wieners-sitzung-00_themenueberblickBit sosem 2016-wieners-sitzung-00_themenueberblick
Bit sosem 2016-wieners-sitzung-00_themenueberblick
Institute for Digital Humanities, University of Cologne
 
Bit wisem 2015-wieners-sitzung-13_Zusammenfassung II
Bit wisem 2015-wieners-sitzung-13_Zusammenfassung IIBit wisem 2015-wieners-sitzung-13_Zusammenfassung II
Bit wisem 2015-wieners-sitzung-13_Zusammenfassung II
Institute for Digital Humanities, University of Cologne
 
Bit wisem 2015-wieners-sitzung-12_Zusammenfassung I
Bit wisem 2015-wieners-sitzung-12_Zusammenfassung IBit wisem 2015-wieners-sitzung-12_Zusammenfassung I
Bit wisem 2015-wieners-sitzung-12_Zusammenfassung I
Institute for Digital Humanities, University of Cologne
 

Mehr von Institute for Digital Humanities, University of Cologne (20)

Künstliche Intelligenz und visuelle Erzählungen: Comicanalyse | 17.04.2019 | ...
Künstliche Intelligenz und visuelle Erzählungen: Comicanalyse | 17.04.2019 | ...Künstliche Intelligenz und visuelle Erzählungen: Comicanalyse | 17.04.2019 | ...
Künstliche Intelligenz und visuelle Erzählungen: Comicanalyse | 17.04.2019 | ...
 
Augmented City –Street Art, Embodiment, Cultural Heritage & AR | 03.04.2019 |...
Augmented City –Street Art, Embodiment, Cultural Heritage & AR | 03.04.2019 |...Augmented City –Street Art, Embodiment, Cultural Heritage & AR | 03.04.2019 |...
Augmented City –Street Art, Embodiment, Cultural Heritage & AR | 03.04.2019 |...
 
Künstliche Intelligenz und visuelle Erzählungen: Comicanalyse | 03.04.2019 | ...
Künstliche Intelligenz und visuelle Erzählungen: Comicanalyse | 03.04.2019 | ...Künstliche Intelligenz und visuelle Erzählungen: Comicanalyse | 03.04.2019 | ...
Künstliche Intelligenz und visuelle Erzählungen: Comicanalyse | 03.04.2019 | ...
 
Transformation mittelhochdeutscher Erfahrungswelten – vom Text zum Computerga...
Transformation mittelhochdeutscher Erfahrungswelten – vom Text zum Computerga...Transformation mittelhochdeutscher Erfahrungswelten – vom Text zum Computerga...
Transformation mittelhochdeutscher Erfahrungswelten – vom Text zum Computerga...
 
Transformation mittelhochdeutscher Erfahrungswelten – vom Text zum Computerga...
Transformation mittelhochdeutscher Erfahrungswelten – vom Text zum Computerga...Transformation mittelhochdeutscher Erfahrungswelten – vom Text zum Computerga...
Transformation mittelhochdeutscher Erfahrungswelten – vom Text zum Computerga...
 
Bit sosem 2016-wieners-sitzung-13_ki-in-games
Bit sosem 2016-wieners-sitzung-13_ki-in-gamesBit sosem 2016-wieners-sitzung-13_ki-in-games
Bit sosem 2016-wieners-sitzung-13_ki-in-games
 
Bit sosem 2016-wieners-sitzung-12_bild-iv-computer-vision
Bit sosem 2016-wieners-sitzung-12_bild-iv-computer-visionBit sosem 2016-wieners-sitzung-12_bild-iv-computer-vision
Bit sosem 2016-wieners-sitzung-12_bild-iv-computer-vision
 
Bit sosem 2016-wieners-sitzung-11_bild-iii-filter
Bit sosem 2016-wieners-sitzung-11_bild-iii-filterBit sosem 2016-wieners-sitzung-11_bild-iii-filter
Bit sosem 2016-wieners-sitzung-11_bild-iii-filter
 
Bit sosem 2016-wieners-sitzung-10_bild-ii-punktoperationen
Bit sosem 2016-wieners-sitzung-10_bild-ii-punktoperationenBit sosem 2016-wieners-sitzung-10_bild-ii-punktoperationen
Bit sosem 2016-wieners-sitzung-10_bild-ii-punktoperationen
 
Bit sosem 2016-wieners-sitzung-08_semantic-web
Bit sosem 2016-wieners-sitzung-08_semantic-webBit sosem 2016-wieners-sitzung-08_semantic-web
Bit sosem 2016-wieners-sitzung-08_semantic-web
 
Bit sosem 2016-wieners-sitzung-07_rechnerkommunikation-ii
Bit sosem 2016-wieners-sitzung-07_rechnerkommunikation-iiBit sosem 2016-wieners-sitzung-07_rechnerkommunikation-ii
Bit sosem 2016-wieners-sitzung-07_rechnerkommunikation-ii
 
Bit sosem 2016-wieners-sitzung-06_rechnerkommunikation
Bit sosem 2016-wieners-sitzung-06_rechnerkommunikationBit sosem 2016-wieners-sitzung-06_rechnerkommunikation
Bit sosem 2016-wieners-sitzung-06_rechnerkommunikation
 
Bit sosem 2016-wieners-sitzung-05_zellulaere-automaten-conway
Bit sosem 2016-wieners-sitzung-05_zellulaere-automaten-conwayBit sosem 2016-wieners-sitzung-05_zellulaere-automaten-conway
Bit sosem 2016-wieners-sitzung-05_zellulaere-automaten-conway
 
Bit sosem 2016-wieners-sitzung-04_theoretische-informatik
Bit sosem 2016-wieners-sitzung-04_theoretische-informatikBit sosem 2016-wieners-sitzung-04_theoretische-informatik
Bit sosem 2016-wieners-sitzung-04_theoretische-informatik
 
Bit sosem 2016-wieners-sitzung-03_algorithmen
Bit sosem 2016-wieners-sitzung-03_algorithmenBit sosem 2016-wieners-sitzung-03_algorithmen
Bit sosem 2016-wieners-sitzung-03_algorithmen
 
Bit sosem 2016-wieners-sitzung-02_datenstrukturen
Bit sosem 2016-wieners-sitzung-02_datenstrukturenBit sosem 2016-wieners-sitzung-02_datenstrukturen
Bit sosem 2016-wieners-sitzung-02_datenstrukturen
 
Bit sosem 2016-wieners-sitzung-01_auffrischung
Bit sosem 2016-wieners-sitzung-01_auffrischungBit sosem 2016-wieners-sitzung-01_auffrischung
Bit sosem 2016-wieners-sitzung-01_auffrischung
 
Bit sosem 2016-wieners-sitzung-00_themenueberblick
Bit sosem 2016-wieners-sitzung-00_themenueberblickBit sosem 2016-wieners-sitzung-00_themenueberblick
Bit sosem 2016-wieners-sitzung-00_themenueberblick
 
Bit wisem 2015-wieners-sitzung-13_Zusammenfassung II
Bit wisem 2015-wieners-sitzung-13_Zusammenfassung IIBit wisem 2015-wieners-sitzung-13_Zusammenfassung II
Bit wisem 2015-wieners-sitzung-13_Zusammenfassung II
 
Bit wisem 2015-wieners-sitzung-12_Zusammenfassung I
Bit wisem 2015-wieners-sitzung-12_Zusammenfassung IBit wisem 2015-wieners-sitzung-12_Zusammenfassung I
Bit wisem 2015-wieners-sitzung-12_Zusammenfassung I
 

Bit sosem 2016-wieners-sitzung-09_bild-i-kompression

  • 1. Basisinformationstechnologie II – Sommersemester 2016 – 30. Mai 2016 Dr. Jan G. Wieners Algorithmen der Bildverarbeitung Grundlagen und Kompressionsverfahren
  • 2. Grundbegriffe:  Farbmischung: Additiv, Subtraktiv  Raster- vs. Vektorgrafik  Pixel  Auflösung  Farbtiefe Kompressionsverfahren  Nicht verlustbehaftet  Run Length Encoding (RLE)  Wörterbuch-Algorithmen, z.B. Lempel-Ziv-Welsh (LZW)  Verlustbehaftet Themenüberblick
  • 3. Aufgabe 1 Nennen und erläutern Sie jeweils ein additives und ein subtraktives Farbmodell. Aufgabe 2 Erläutern Sie das Prinzip der RLE-Kompression und komprimieren Sie die Zeichenkette 1100000011110011110000000011 unter Verwendung der Lauflängenkodierung. Treffen Sie eine Aussage über die Effektivität der Kompression. Aufgabe 3 Stellen Sie die einzelnen Arbeitsschritte der Huffman Codierung (Bestimmung der Symbolhäufigkeit, etc.) vor und komprimieren Sie die folgende Zeichenkette unter Verwendung 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 der Eingabezeichenkette an. Um den Arbeitsaufwand zu reduzieren, können Sie gerne eine Fotographie / einen Scan ihrer Lösung senden. Sitzungsaufgaben
  • 7. Additive Farbmischung Mischung (Addition) von Licht  Beispiel Taschenlampe: Leuchten mehrere Taschenlampen auf dieselbe Stelle, wird jene Stelle heller beleuchtet, als würde sie nur von einer Taschenlampe angestrahlt. Werden rote und grüne Filter vor die Taschenlampe gesetzt, addiert sich das Licht.
  • 8.
  • 9. Subtraktive Farbmischung Z.B.: Mischung von Farbpigmenten  Malen mit Deckfarbkasten
  • 10.
  • 11. RGB: Wenn jede der drei Primärfarben mit einer Auflösung von 256 Werten dargestellt werden kann, dann erhalten wir 256³ = 16,7 Mio. verschiedene Farbtöne. HSV: Farbwinkel, Sättigung, Hellwert bzw. absolute Helligkeit (B), Brightness L*a*b*: Menschl. Wahrnehmung
  • 12. Grafiktypen: Raster- vs. VektorgrafikRaster- vs. Vektorgrafik
  • 13. Grafiktypen: Raster- vs. VektorgrafikRaster- vs. Vektorgrafik
  • 14. Grafiktypen: Raster- vs. VektorgrafikRaster- vs. Vektorgrafik Quantisierung: 8 Bit RGB rgb(120, 70, 63)
  • 16. Auflösung 1936 Pixel 2592 Pixel Gesamtzahl der Bildpunkte eines Bildes, z.B. 2592px * 1936px = ~ 5 Mio. Pixel
  • 18.
  • 19.
  • 20.  RLE – Run Length Encoding (Lauflängenkodierung)  Wörterbuchbasierte Kompressionsmethoden  Lempel-Ziv-Welch (LZW)  Statistische Kompressionsmethoden  Huffman-Algorithmus Ansätze zur Datenkompression
  • 22. 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“
  • 23. Neulich beim Obsthändler… „Ich hätte gerne ◦ Eine Kiwi ◦ Drei Birnen ◦ Fünf Äpfel ◦ Zwei Pampelmusen ◦ Eine Zitrone ◦ Zwei Limetten“
  • 24. 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)
  • 25. rot := rgb(255, 0, 0) grün := rgb(0, 255, 0) blau := rgb(0, 0, 255)
  • 26. rot, rot, grün, grün, grün, grün, grün, rot, rot rot, 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 […]
  • 27. 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) […]
  • 28. RLE - Lauflängenkodierung  Verlustfrei  nutzt lange Folgen sich wiederholender Zeichen oder 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 homogenen Eingabedaten Lauflängenkodierung: RLE
  • 30.  1978 von A. Lempel und J. Ziv entwickelt, 1984 von T. A. Welch verfeinert  Verlustfrei  Versucht, den zu komprimierenden Zeichenstrom in Teilstrings zu zerlegen und diese in einem Wörterbuch zu speichern LZW (Lempel-Ziv-Welch) Zeichenkette: „Hello World Hello“ Tabelle: 0: „Hello“ 1: „World“ Codefolge: 0 1 0
  • 31. Unterschiedliche Algorithmen:  LZSS (Lempel-Ziv-Storer-Szymanski (gzip, ZIP und 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 GIF problematisch LZW (Lempel-Ziv-Welch)
  • 32. LZW – Ein Beispiel vgl. http://projects.hudecof.net/diplomovka/online/ucebnica/applets/AppletLZW.html
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 55.  1952 von David A. Huffman (1925-1999) vorgestellt  Verlustfrei  Kompression über Binärbaum  Huffman-Algorithmus verfolgt das Ziel, weniger häufigen Symbolen längere Codewörter zuzuweisen Huffman Kodierung Nachruf: http://www1.ucsc.edu/currents/99-00/10-11/huffman.html
  • 56. Ein Binärbaum ist definiert als ein Baum, dessen Knoten über maximal zwei Kindknoten verfügen dürfen: Erinnerung: Binärbäume
  • 57. rot, rot, grün, grün, grün, grün, grün, rot, rot rot, 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, rot rot, blau, rot, rot, rot, rot, rot, blau, rot, rot, rot, blau, rot, rot, rot, blau, rot, rot rot, rot, rot, blau, blau, blau, rot, rot, rot | v rrgggggrrrgrrrrrgrrgrrrrrgrrrrbrbrrrrrrrrrrrrrrrrrrrrrrbr rrrrbrrrbrrrbrrrrrbbbrrr
  • 60.
  • 61.
  • 62.
  • 63. Codegenerierung nach folgender Logik: • Start beim Wurzelknoten • An jedem Knoten (einschl. Wurzelkn.): • Links abbiegen: 0 notieren • Rechts abbiegen: 1 notieren • Beispiel „g“: Vom Wurzelknoten aus rechten Kindknoten besucht (1 notiert); anschließend linken Kindknoten besucht (0 notiert)  g := 10
  • 65.
  • 66.
  • 67.
  • 68.
  • 69.
  • 70.
  • 71.
  • 72.
  • 73.
  • 74.
  • 75.
  • 76. e := ? m := ? l := ? a := ?
  • 77.
  • 78. Komprimieren Sie die Zeichenkette „bananarama“ (ohne Anführungszeichen) unter Verwendung des Huffman-Algorithmus. Übung
  • 79.
  • 80.
  • 81.
  • 82.
  • 83.
  • 84. /

Hinweis der Redaktion

  1. Additive Farbmischung Werden von einem Farbreiz alle Rezeptoren gleich stark angeregt, dann interpretieren wir dies als Farbton Weiß. Werden die Zapfentypen unterschiedlich stark angeregt, dann entstehen Sekundärfarben. Beispiel Taschenlampe: Leuchten mehrere Taschenlampen auf dieselbe Stelle, wird jene Stelle heller beleuchtet, als würde sie nur von einer Taschenlampe angestrahlt. Werden rote und grüne Filter vor die Taschenlampe gesetzt, addiert sich das Licht. Beispiele: Monitor / Fernseher
  2. Subtraktive Farbmischung Beim Zusammentreffen mit Materie werden Lichtwellen teilweise absorbiert und erreichen somit den Beobachter nicht. Die Absorption ist in der Regel nicht für jede Wellenlänge gleich groß. Ein Objekt wirkt weiß, wenn es fast kein Licht absorbiert und schwarz, wenn es das einfallende Licht fast vollständig absorbiert. Beim Farbdruck werden verschiedene Farbpigmente übereinander gelegt; die oben liegenden Farben wirken als Filter für die darunter liegenden. Beispiel: Malen mit Deckfarbkasten
  3. Die Auflösung bestimmt die Anzahl der Pixel in einem Bild, die Quantisierung (Farbtiefe) bestimmt den Speicherplatzbedarf pro Pixel. Beispiele: In einem RGB-Bild mit 24 Bit Farbtiefe (8 Bit pro Farbkanal) braucht man für ein Bild mit den Maßen 1024x768 (786.432 Pixel) also 18.874.368 Bit, d.h. 2.25 Mbyte. Für ein Graustufenbild mit den gleichen Abmessungen benötigt man „nur“ 0.75 MByte, da nur ein Farbkanal mit 8 Bit (statt 3 Kanälen: RGB) gespeichert werden muss.