Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 14 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
14
Dung lượng
118,25 KB
Nội dung
Giải Thuật N Bộ LZW : Cấu t liệu Giả g vi : L Vă Vinh Nội dung ÝàTưở g Thuật to (Encoding) Thuật to giải (Decoding) Biế thi độ ộ g ã(Variable-Width codes) V dụ Ứ g dụ g .Ýàtưở g Thuật to LZW đượ ph t t iể theo gu lý tạo dã ã: -Mã từ đế 255 i u tả dã ký tự thay cho ký tự 8-bit tươ g ứ g -Mã từ 256 đế 4095 đượ tạo từ điể cho t ườ g hợp lặp huỗi liệu -Mỗi ướ , te hập v o đượ tập hợp lại th h huỗi cho đế ký tự tạo th h huỗi hưa tồ từ điể ,v ã ới cho huỗi đượ tạo đượ th v o từ điể ,v ã ấ đượ uất file output N • Thuật to Co p essio ãh a: Khởi tạo từ điể hứa tất ã huỗi ký tự T huỗi W d i hất từ điể đối hiếu với liệu hập hiệ Xuất vị t từ điể cho W file output v aW khỏi liệu hập Th W v ký tự liệu hập v o từ điể Đế ướ Giảià • Đọ gi t ị từ liệu hập ã h a v uất huỗi tươ g ứ g từ từ điể đượ khởi tạo • Tại g thời điể thu đượ gi t ị từ liệu hập,th v o từ điể h huỗi huỗi uất.V ký tự đầu ti huỗi hậ đượ ã h a ký tự • Sau đ t h giải lý gi t ị hập tiếp theo, u t h lặp cho đế liệu hập kh g ,tại thời điể gi t ị hập uối g đượ ã h a kh g ất kỳ gi t ị o th v o từ điể .Biế àthi độ ộ g (Variable-width codes) • L khoả g ộ g dã bit hứa ã đượ ã h a v g hớ t h • T h ã tă g độ ộ g từ p l p+1 huỗi w+s kh g tồ từ điể (v vậ ã phải đượ th v o) hư g gi t ị thể th ả g lại l 2^p V àdụ • Chuỗi sau đượ ãh a: TOBEORNOTTOBEORTOBEORNOT# Symbol Binary Decimal Symbol Binary Decimal Symbol Binary Decimal # 00000 L 01100 12 W 10111 23 A 00001 M 01101 13 X 11000 24 B 00010 N 01110 14 Y 11001 25 C 00011 O 01111 15 Z 11010 26 D 00100 P 10000 16 E 00101 Q 10001 17 F 00110 R 10010 18 G 00111 S 10011 19 H 01000 I 01001 T 10100 20 J 01010 10 U 10101 21 K 01011 11 V 10110 22 Current Sequence Next Char Output Extended Dictionary Null T T Comment 20:10100 27:TO O B 15:01111 28:OB B E 2:00010 29:BE E O 5:00101 30:EO O R 15:01111 31:OR R N 18:10010 32:RN N O 14:001110 33:NO O T 15:001111 34:OT T T 20:010100 35:TT TO B 27:011011 36:TOB BE O 29:011101 37:BEO OR T 31:011111 38:ORT TOB E 36:100100 39:TOBE EO R 30:011110 40:EOR RN O 32:100000 41:RNO OT # 34:100010 #stop 0:000000 Stop code Tă g l 6bits • Dung lượ g hưa ã h a: – 25 ký tự * 5bits/ký tự = 125 bits Mã h a: – (6 ã * 5bits/ ã) + (11 ã * 6bits/ ã) = 96 bits Vậ sử dụ g LZW tiết kiệ 29 bits t tổ g số 125 its,giả 22% Intput Output Sequence Từ Điển đầy đủ Bộ dự trữ 20:10100 T 27:T? 15:01111 O 27:TO 28:O 2:00010 B 28:OB 29:B? 5:00101 E 29:BE 30:E? 15:01111 O 30:EO 31:O? 18:10010 R 31:OR 32:R? 14:001110 N 32:RN 33:N? 15:001111 O 33:NO 34:O? 20:010100 T 34:OT 35:T? 27:011011 TO 35:TT 36:TO? 29:011101 BE 36:TOB 37:BE? 31:011111 OR 37:BEO 38:OR? 36:100100 TOB 38:ORT 39:TOB? 30:011110 EO 39:TOBE 40:EO? 32:100000 RN 40:EOR 41:RN? 34:100010 OT 41:RNO 42:OT? 0:000000 # comments .Ứ gàdụ g • N LZW t th h phươ g thứ liệu phổ iế t t h.Một file text English thể đượ th g qua LZW gi ẵdu gl g g ã LZW đượ sử dụ g phầ ề ã guồ ỡ, t th h phầ kh g thể thiếu HDH UNIX CIRCA 1986 • LZW t phổ iế đượ sữ dụ g l phẩ file GIF ă N ũ g thể đượ sử dụ g TIFF v PDF file B i Tập • Hã ã h a huỗi sau cho file output(t giấ ) v t h xem đượ bao hi u % dung lượ g gố : • T“YUYIRO“UYIT“ONNTTEO# T i liệu Tham Khảo • Algorithm from WIKIPEDIA • Code C from stackoverflow The end ... 15:01111 O 27 :TO 28 :O 2: 00010 B 28 :OB 29 :B? 5:00101 E 29 :BE 30:E? 15:01111 O 30:EO 31:O? 18:10010 R 31:OR 32: R? 14:001110 N 32: RN 33:N? 15:001111 O 33:NO 34:O? 20 :010100 T 34:OT 35:T? 27 :011011... tự = 125 bits Mã h a: – (6 ã * 5bits/ ã) + (11 ã * 6bits/ ã) = 96 bits Vậ sử dụ g LZW tiết kiệ 29 bits t tổ g số 125 its,giả 22 % Intput Output Sequence Từ Điển đầy đủ Bộ dự trữ 20 :10100 T 27 :T?... T Comment 20 :10100 27 :TO O B 15:01111 28 :OB B E 2: 00010 29 :BE E O 5:00101 30:EO O R 15:01111 31:OR R N 18:10010 32: RN N O 14:001110 33:NO O T 15:001111 34:OT T T 20 :010100 35:TT TO B 27 :011011