Bildverarbeitung Herbstsemester 2012 Bildspeicherung 1 Inhalt • • • • • • Bildformate in der Übersicht Codierung im Überblick Huffman-Codierung Datenreduktion im Überblick Unterabtastung Skalare Quantisierung FHNW bverI HS 2012 - Prof. Dr. C. Stamm 2 Lernziele • Die wichtigsten Bildformate sind Ihnen geläufig. • Sie kennen die wichtigsten Verfahren der Bildkompression und können zwischen verlustbehafteter und verlustloser Kompression unterscheiden. • Ihnen ist bewusst, dass für natürliche Bilder andere Verfahren gewählt werden sollen als für künstlich generierte. • Sie wissen, wo es zu Informationsverlust kommen kann. • Sie kennen die Messgrössen, nach denen komprimierte Bilder bewertet werden. FHNW bverI HS 2012 - Prof. Dr. C. Stamm 3 Bildformate • ohne Kompression – PNM: Portable Bitmap/Grayscale/Color Format – RAS: Sun Raster Format – BMP: Windows Bitmap • mit verlustloser Kompression – GIF: Graphics Interchange Format – PNG: Portable Network Graphics – TIFF: Tagged Image File Format • nur mit verlustbehafteter Kompression – JFIF: JPEG File Interchange Format – EXIF: Exchangeable Image File Format (Variante von JFIF) • mit verlustloser/verlustbehafteter Kompression – JPEG-2000 – PGF: Progressive Graphics File FHNW bverI HS 2012 - Prof. Dr. C. Stamm 4 PGM-Beispiel FHNW bverI HS 2012 - Prof. Dr. C. Stamm 5 TIFF-Struktur FHNW bverI HS 2012 - Prof. Dr. C. Stamm 6 JPEG-Prozesskette FHNW bverI HS 2012 - Prof. Dr. C. Stamm 7 Bildformat-Header • übliche Header-Informationen – – – – Signatur Bildgrösse Bildtyp bzw. Anzahl Bits pro Pixel (Farbtabelle) • Metadaten – Auflösung, Kompressionsstufe, Farbmanagement, … – Kameradaten: Blende, Belichtungszeit usw. – Geo-Koordinaten FHNW bverI HS 2012 - Prof. Dr. C. Stamm 8 Bildkompression • Ziel – Ein Bild auf dem Speichermedium so zu verdichten, dass es möglichst wenig Speicher benötigt, unter der Nebenbedingung, dass die Bildqualität möglichst gut ist. • Kompressionsrate r memorig memcomp • Arten – verlustlos (lossless) • die Bildqualität ist gleich gut wie diejenige vom Original • bei natürlichen Bildern ist eine Kompressionsrate von durchschnittlich 2.5 zu erwarten – verlustbehaftet (lossy) • die Bildqualität ist geringer • bei natürlichen Bildern sind Kompressionsraten von 10 und mehr zu erwarten FHNW bverI HS 2012 - Prof. Dr. C. Stamm 9 Kompressionstechniken • verlustlos (Codierung) – Entropiecodierung (Huffman, arithmetisch usw.) – Präcodierung (RLE, LZ usw.) • verlustbehaftet (Datenreduktion) – Farbreduktion (skalare Quantisierung / Vektorquantisierung) – Transformation (Fourier / Wavelet) und Quantisierung der Koeffizienten FHNW bverI HS 2012 - Prof. Dr. C. Stamm 10 Codierung Codierung Entropiecodierung Präcodierung Speicheraufwand annähern an die Signalentropie Htot Reduktion der Intersymbolredundanz Codewort-basiert Arithmetisch Substitution von einzelnen Symbolen durch Bitfolgen Algorithmen: Shannon-Fano, Huffman, Colomb-Rice, usw. Substitution von Symbolfolgen durch einen Bitstrom FHNW bverI HS 2012 - Prof. Dr. C. Stamm 11 Definitionen • Symbol – Element eines beliebigen Alphabets – z.B. der Buchstabe x des deutschen Alphabets • Codierungsredundanz Rcod = S – H – – – – NA: Anzahl Symbole im Signal NB: gesamte Datenmenge des Signals in Bit S = NB/NA: mittlere Anzahl Bits pro Symbol H: Entropie (mittlerer Symbolinformationsgehalt) • Intersymbolredundanz – Entropie geht von unabhängigen Symbolen aus – in der Praxis sind Symbole aber oft abhängig – leistungsfähige Kompressionsalgorithmen nutzen diese Abhängigkeit (die Intersymbolredundanz) aus FHNW bverI HS 2012 - Prof. Dr. C. Stamm 12 Informationsgehalt • Entropie (C. E. Shannon, 1948) – Entropie: Mass für die Unordnung – mittlerer Symbolinformationsgehalt einer Folge von statistisch unabhängigen Symbolen mit gegebenen SymbolWahrscheinlichkeiten pi bei K verschiedenen Symbolen – technisches Mass ohne Aussagen zum Sinngehalt – Einheit: bit/Symbol (bit = basic indissoluble information unit, kleinste denkbare Informationseinheit) • Totaler Informationsgehalt Htot K H pi ld ( pi ) i 1 K p i 1 i 1 pi ld ( pi ) 0 für pi 0 H tot n H – einer Folge von n Symbolen – ohne Beachtung der Intersymbolredundanz FHNW bverI HS 2012 - Prof. Dr. C. Stamm 13 Entropie K=2 Entropie Entropie H2(p, 1-p) 0.7 1 0.9 0.6 0.8 0.5 0.7 0.6 0.4 0.5 0.3 0.4 0.3 0.2 0.2 0.1 0 h( p) H ( p) H (1 p) 0.1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 f ( p) p ld ( p) FHNW bverI HS 2012 - Prof. Dr. C. Stamm 14 Entropiecodierung • Motivation – Kompression von Daten unter Ausnützung der statistischen Verteilung von Symbolen, aber ohne Ausnutzung der Intersymbolredundanz • Ziele – Zuordnung von Codewörtern (Bitfolgen) zu Symbolen – mittlere Bitrate (Bit/Symbol) soll minimiert und der Entropie H angenähert werden – jedem Symbol nur so viele Bits zuordnen, wie es aufgrund des Informationsgehalts des Symbols erforderlich ist • Beispiele – Morse-Code – Huffman-Code – Arithmetische Codierung FHNW bverI HS 2012 - Prof. Dr. C. Stamm 15 Codierungstheorie Shannon • mittlere Codelänge einer Symbolfolge – Alphabet { s1 s2 .. sK } – mit pi = Auftretenswahrscheinlichkeit des Symbols si ci code( si ) li ci [Bit] K l pi li [Bit/Symbol] i 1 • Existenz einer fast optimalen Codierung H l H 1 FHNW bverI HS 2012 - Prof. Dr. C. Stamm 16 Beispiel: Codierungstheorie i 1 2 3 4 si a b c d pi 0.4 0.2 0.1 0.3 ci 00 01 10 11 li 2 2 2 2 Codebaum Entropie H 0.4 ld (0.4) 0.2 ld (0.2) 0.1 ld (0.1) 0.3 ld (0.3) 1.846 bit/Symbol l 0.4 2 0.2 2 0.1 2 0.3 2 1 2 2 Bit/Symbol H 1.846 l 2 H 1 2.846 FHNW bverI HS 2012 - Prof. Dr. C. Stamm 17 Huffman-Code • Binärer Code ohne das Problem des Morse-Codes – Präfixcode: kein Codewort ist Präfix eines andern Codewortes • Erfinder – David Huffman, 1952 • Konstruktion eines Huffman-Codes 1. Betrachte alle Symbole als Blätter eines Codebaums und trage ihre Wahrscheinlichkeiten ein. 2. Fasse die beiden geringsten Wahrscheinlichkeiten zu einem Knoten zusammen und weise ihre Summe dem Knoten zu. 3. Beschrifte die neuen Äste mit 0 und 1. 4. Fahre bei Schritt 2 fort, so lange die Wurzel mit Wahrscheinlichkeit p = 1 noch nicht erreicht worden ist. FHNW bverI HS 2012 - Prof. Dr. C. Stamm 18 Beispiel: Huffman-Code FHNW bverI HS 2012 - Prof. Dr. C. Stamm 19 Datenreduktion Datenreduktion Unterabtastung Verringerung der zeitlichen bzw. örtlichen Auflösung Quantisierung Verringerung der Auflösung der Signalwerte skalare Quantisierung Vektorquantisierung Abbilden von ähnlichen Werten auf einen gemeinsamen repräsentativen Wert Abbilden von ähnlichen Vektoren auf einen gemeinsamen repräsentativen Vektor FHNW bverI HS 2012 - Prof. Dr. C. Stamm 20 Unterabtastung • Englischer Fachbegriff: sub-sampling oder downsampling • Unterabtastung: nur jeder M-te Signalwert wird übernommen – Ausgangssignal x[n] – y[m] = x[m·M] – Information der dazwischen liegenden Werte geht verloren FHNW bverI HS 2012 - Prof. Dr. C. Stamm 21 Auswirkungen der Unterabtastung • Veränderung der Abtastrate beeinflusst das Frequenzspektrum des Signals – Amplitudenspektrum vor Unterabtastung: |X(j)| – Amplitudenspektrum nach Unterabtastung: |Y(j)| • Dezimation: Kombination von Antialiasing und Unterabtastung M=3 FHNW bverI HS 2012 - Prof. Dr. C. Stamm 22 Quantisierung: einfaches Beispiel • Beispiel – Gegeben sei ein Farbbild mit einer Farbtiefe von 24 Bit pro Pixel (true color) – Gesucht: eine möglichst gute Bild-Reproduktion, aber mit nur 256 verschiedenen Farben FHNW bverI HS 2012 - Prof. Dr. C. Stamm 23