90 likes | 293 Views
Lempel Ziv Walsh Kompression. .bmp. .gif. .tiff. .png. Codetabelle 01:A 02:B 03:C 04:D 05: 06: 07: 08: 09:. Codetabelle initialisieren Präfix = ““. Lese nächstes Zeichen A. Ende. = A. Muster = Präfix + A. Beispiel: A B C A B C A B C A B C D. Muster in Codetabelle ?. Präfix = Muster.
E N D
Lempel Ziv WalshKompression .bmp .gif .tiff .png
Codetabelle 01:A02:B03:C04:D05:06:07:08:09: Codetabelle initialisierenPräfix = ““ Lese nächstes Zeichen A Ende =A Muster = Präfix + A Beispiel:ABCABCABCABCD Muster inCodetabelle ? Präfix = Muster ja Präfix: nein A Muster in Codetabelle eintragen Muster: LZW-Code von Präfix ausgeben Präfix = A Output: LZW-Code von Präfix ausgeben
Codetabelle 01:A02:B03:C04:D05:06:07:08:09: Codetabelle initialisierenPräfix = ““ Lese nächstes Zeichen A Ende AB =AB Muster = Präfix + A Beispiel:ABCABCABCABCD Muster inCodetabelle ? Präfix = Muster ja Präfix: nein B A Muster in Codetabelle eintragen Muster: LZW-Code von Präfix ausgeben =B Präfix = A Output: 01 LZW-Code von Präfix ausgeben
Codetabelle 01:A02:B03:C04:D05:AB06:07:08:09: Codetabelle initialisierenPräfix = ““ Lese nächstes Zeichen A Ende =BC Muster = Präfix + A BC Beispiel:ABCABCABCABCD Muster inCodetabelle ? Präfix = Muster ja Präfix: nein C B Muster in Codetabelle eintragen Muster: LZW-Code von Präfix ausgeben =C Präfix = A Output:01 02 LZW-Code von Präfix ausgeben
Codetabelle 01:A02:B03:C04:D05:AB06:BC07:08:09: Codetabelle initialisierenPräfix = ““ Lese nächstes Zeichen A Ende =CA Muster = Präfix + A Beispiel:ABCABCABCABCD CA Muster inCodetabelle ? Präfix = Muster ja Präfix: nein A C Muster in Codetabelle eintragen Muster: LZW-Code von Präfix ausgeben =A Präfix = A Output:01 02 03 LZW-Code von Präfix ausgeben
Codetabelle 01:A02:B03:C04:D05:AB06:BC07:08:09: Codetabelle initialisierenPräfix = ““ Lese nächstes Zeichen A Ende =AB Muster = Präfix + A Beispiel:ABCABCABCABCD CA Muster inCodetabelle ? Präfix = Muster ja Präfix: nein AB C Muster in Codetabelle eintragen Muster: LZW-Code von Präfix ausgeben Präfix = A Output:01 02 03 LZW-Code von Präfix ausgeben
Codetabelle 01:A02:B03:C04:D05:AB06:BC07:08:09: Codetabelle initialisierenPräfix = ““ Lese nächstes Zeichen A Ende =CA Muster = Präfix + A Beispiel:ABCABCABCABCD CA Muster inCodetabelle ? Präfix = Muster ja Präfix: nein A C Muster in Codetabelle eintragen Muster: LZW-Code von Präfix ausgeben =A Präfix = A Output:01 02 03 LZW-Code von Präfix ausgeben
LZW-Komprimierung Präfixtabelle begrenzen 4096Präfixtabelle kann beibekannter Codierungsstrategierekonstruiert werden ABCABCABCABCD Muster: Aktion Ausgabe Erkannte Präfixe hat Codeneu AB=04neu BC=5neu CA=6hat Codeneu ABC=7hat Codeneu CAB=8hat Codeneu BCA=9hat Codehat Codeneu 0101 0201 02 0301 02 0301 02 03 0401 02 03 0401 02 03 04 0601 02 03 04 0601 02 03 04 06 0501 02 03 04 06 0501 02 03 04 06 0501 02 03 04 06 05 07 04 A B C DA B C D ABA B C D AB BCA B C D AB BC CAA B C D AB BC CAA B C D AB BC CA ABCA B C D AB BC CA ABCA B C D AB BC CA ABC CABA B C D AB BC CA ABC CABA B C D AB BC CA ABC CAB BCAA B C D AB BC CA ABC CAB BCAA B C D AB BC CA ABC CAB BCAA B C D AB BC CA ABC CAB BCA AABBCCAABABCCACABBCBCAABABCABCD