Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Huffman Entropie-Codierung Codierung mit variabler Länge

Ähnliche Präsentationen


Präsentation zum Thema: "Huffman Entropie-Codierung Codierung mit variabler Länge"—  Präsentation transkript:

1 Huffman Entropie-Codierung Codierung mit variabler Länge
Statistisches Verfahren: Prinzip: Häufig vorkommende Zeichen durch kurze Bitfolgen darstellen

2 Präfix-Codes Telefon-Nummern und Vorwahlen sind Präfix-Codes
0261 Koblenz/Rhein Es gibt keine Vorwahlen , , 02612,.. Große Orte haben kurze Vorwahlen, kleine längere 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 Koblenz/Rhein

3 Präfix-Codes Telefon-Nummern und Vorwahlen sind Präfix-Codes
110 Notruf Es gibt keine Rufnummern 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 Fano-Bedingung: Wenn kein Codewort Präfix eines anderen Codewortes ist,dann ist jede codierte Zeichenfolge decodierbar. Polizei

4 Binäre Präfixcodes Zeichenfolge 1 abacabaca besteht aus 1 1 1 5 a 1
1 abacabaca Codes 1 besteht aus 1 1 1 1 5 a 1 2 b 00 2 c 01 00 01 00 01 Konkatenation der Kantenmarkierungen von der Wurzel bis in die Blätter liefert Präfixcodes ! Oder so ... Codierung für abacabaca Ist das die kürzeste Präfixfolge ?

5 Huffman-Algorithmus Input: Zeichenfolge aus einem Alphabet
Output: Binärer Baum, Knotenmarkierung=Häufigkeiten, Kantenmarkierungen 0,1 Start: Zähle die Häufigkeit jedes Zeichens im Text, erzeuge für jedes Zeichen einen Knoten markiert mit der Häufigkeit Wiederhole, bis es keinen Knoten gibt, zu dem keine Kante führt: Wähle 2 Knoten, zu denen keine Kante hinführt, mit kleinster Häufigkeit. Erzeuge neuen Knoten mit der Summe der Häufigkeiten der gewählten Knoten. Ziehe zwei Kanten von dem neuen Knoten zu den gewählten. Markiere die zwei von einem Knoten ausgehenden Kanten unterschiedlich mit 0 und 1.

6 Huffman-Code „Meerrettich“
1 1 1 1 2 2 3 M i c h r t e 1. Zeichen nach Häufigkeit aufsteigend sortieren Knoten mit der Summe der Häufigkeiten markieren 2 2 4 2. Knoten mit geringster Häufigkeit erhalten gemeinsame Wurzel 7 4 11

7 Huffman-Code „Meerrettich“
1 1 1 1 2 2 3 M i c h r t e 1 1 1 2 2 4 1 1 7 4 Kanten markieren 1 11

8 Huffman-Code „Meerrettich“
1 1 1 1 2 2 3 M i c h r t e e 00 1 1 1 t 2 2 4 r 1 1 7 h 4 c 1 i 11 M

9 Huffman-Code „Meerrettich“
1 1 1 1 2 2 3 M i c h r t e e 00 1 1 1 t 010 2 2 4 r 011 1 1 7 h 100 4 c 101 1 i 110 11 M 111

10 Meerrettich

11 Vorlesung „Medientechnik WS 1999/2000“
Dr. Manfred Jackel Studiengang Computervisualistik Institut für Informatik Universität Koblenz-Landau Rheinau Koblenz © Manfred Jackel WWW: mtech.uni-koblenz.de Literatur zu diesem Kapitel: Sedgewick: Algorithmen Hyperlinks zu diesem Kapitel Grafik-Quellen


Herunterladen ppt "Huffman Entropie-Codierung Codierung mit variabler Länge"

Ähnliche Präsentationen


Google-Anzeigen