Bài giảng Cấu trúc dữ liệu và giải thuật - Chương 4: Nén dữ liệu
Thông tin tài liệu:
Nội dung trích xuất từ tài liệu:
Bài giảng Cấu trúc dữ liệu và giải thuật - Chương 4: Nén dữ liệuGiảng viên:Văn Chí Nam – Nguyễn Thị Hồng Nhung – Đặng Nguyễn Đức Tiến2 Giới thiệu Một số khái niệm Giải thuật nén Huffman tĩnh Cấu trúc dữ liệu và giải thuật - HCMUS 20123 Thuật ngữ: Data compression Encoding Decoding Lossless data compression Lossy data compression … Cấu trúc dữ liệu và giải thuật - HCMUS 20124 Nén dữ liệu Nhu cầu xuất hiện ngay sau khi hệ thống máy tính đầu tiên ra đời. Hiện nay, phục vụ cho các dạng dữ liệu đa phương tiện Tăng tính bảo mật. Ứng dụng: Lưu trữ Truyền dữ liệu Cấu trúc dữ liệu và giải thuật - HCMUS 20125 Nguyên tắc: Encode và decode sử dụng cùng một scheme. encode decode Cấu trúc dữ liệu và giải thuật - HCMUS 20126 Tỷ lệ nén (Data compression ratio) Tỷlệ giữa kích thước của dữ liệu nguyên thủy và của dữ liệu sau khi áp dụng thuật toán nén. Gọi: N là kích thước của dữ liệu nguyên thủy, N1 là kích thước của dữ liệu sau khi nén. Tỷ lệ nén R: N R N1 Ví dụ: Dữ liệu ban đầu 8KB, nén còn 2 KB. Tỷ lệ nén: 4-1 Cấu trúc dữ liệu và giải thuật - HCMUS 20127 Tỷ lệ nén (Data compression ratio) Về khả năng tiết kiệm không gian: Tỷ lệ của việc giảm kích thước dữ liệu sau khi áp dụng thuật toán nén. Gọi: N là kích thước của dữ liệu nguyên thủy, N1 là kích thước của dữ liệu sau khi nén. Tỷ lệ nén R: N1 R 1 N Ví dụ: Dữ liệu ban đầu 8KB, nén còn 2 KB. Tỷ lệ nén: 75% Cấu trúc dữ liệu và giải thuật - HCMUS 20128 Nén dữ liệu không mất mát (Lossless data compression) Cho phép dữ liệu nén được phục hồi nguyên vẹn như dữ liệu nguyên thủy (lúc chưa được nén). Ví dụ: Run-length encoding LZW … Ứng dụng: Ảnh PCX, GIF, PNG,.. Tập tin *. ZIP Ứng dụng gzip (Unix) Cấu trúc dữ liệu và giải thuật - HCMUS 20129 Nén dữ liệu có mất mát (Lossy data compression) Dữ liệu nén được phục hồi không giống hoàn toàn với dữ liệu nguyên thủy; gần đủ giống để có thể sử dụng được. Ứng dụng: Dùng để nén dữ liệu đa phương tiện (hình ảnh, âm thanh, video): Ảnh: JPEG, DjVu; Âm thanh: AAC, MP2, MP3; Video: MPEG-2, MPEG-4 Cấu trúc dữ liệu và giải thuật - HCMUS 201210 Cấu trúc dữ liệu và giải thuật - HCMUS 201211 Mong muốn: Một giải thuật nén bảo toàn thông tin; Không phụ thuộc vào tính chất của dữ liệu; Ứng dụng rộng rãi trên bất kỳ dữ liệu nào, với hiệu suất tốt. Cấu trúc dữ liệu và giải thuật - HCMUS 201212 Tư tưởng chính: Phương pháp cũ: dùng 1 dãy cố định để biểu diễn 1 byte dữ liệu. David Huffman (1952): tìm ra phương pháp xác định mã tối ưu trên dữ liệu tĩnh : Sử dụng vài bit để biểu diễn 1 ký tự (gọi là “mã bit” – bit code) Độ dài “mã bit” cho các ký tự không giống nhau: Ký tự xuất hiện nhiều lần: biểu diễn bằng mã ngắn; Ký tự xuất hiện ít : biểu diễn bằng mã dài => Mã hóa bằng mã có độ dài thay đổi (Variable Length Encoding) Cấu trúc dữ liệu và giải thuật - HCMUS 201213 Giả sử có dữ liệu sau đây: ADDAABBCCBAAABBCCCBBBCDAADDEEAA Ký tự Tần số xuất hiện A 10 B 8 C 6 D 5 E 2 Biểu diễn 3 bit/ký tự cần: (10 + 8 + 6 + 5 + 2) * 3 = 93 bit Cấu trúc dữ liệu và giải thuật - HCMUS 201214 Dữ liệu: ADDAABBCCBAAABBCCCBBBCDAADDEEAA Biểu diễn bằng chiều dài thay đổi: Ký tự Tần số Mã A 10 11 ...
Tìm kiếm theo từ khóa liên quan:
Cấu trúc dữ liệu Bài toán giải thuật Thuật ngữ nén dữ liệu Khái niệm nén dữ liệu Thuật toán nén Tạo cây Huffman Phát sinh mã bitGợi ý tài liệu liên quan:
-
Đề cương chi tiết học phần Cấu trúc dữ liệu và giải thuật (Data structures and algorithms)
10 trang 318 0 0 -
Giải thuật và cấu trúc dữ liệu
305 trang 163 0 0 -
Bài giảng Phân tích thiết kế phần mềm: Chương 1 - Trường ĐH Ngoại ngữ - Tin học TP.HCM
64 trang 150 0 0 -
Tập bài giảng Thực hành kỹ thuật lập trình
303 trang 143 0 0 -
Giáo trình Cấu trúc dữ liệu và thuật toán (Tái bản): Phần 1
152 trang 139 0 0 -
Tài liệu tham khảo: Cấu trúc dữ liệu và giải thuật
229 trang 124 0 0 -
Lập trình C - Cấu trúc dữ Liệu
307 trang 74 0 0 -
Ứng dụng và cài đặt cấu trúc dữ liệu bằng C: Phần 1
338 trang 73 0 0 -
49 trang 72 0 0
-
54 trang 70 0 0
-
Bài giảng Cơ sở dữ liệu: Chương 3 - ThS. Hoàng Mạnh Hà
67 trang 70 0 0 -
Bài giảng Cấu trúc dữ liệu và giải thuật: Phần 1 - ThS. Hoàng Thế Phương
128 trang 67 0 0 -
Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 2 - Ngô Công Thắng
8 trang 66 0 0 -
Giáo trình Cấu trúc dữ liệu và giải thuật: Phần 2 - Lê Văn Vinh
67 trang 57 1 0 -
Giáo trình CẤU TRÚC DỮ LIỆU VÀ GIẢI THUẬT - Chương 1
5 trang 51 0 0 -
Phân tích và thiết kế giải thuật: Các kỹ thuật thiết kế giải thuật - Chương 5
0 trang 51 0 0 -
Bài giảng Cấu trúc dữ liệu và giải thuật: Chương 5 - ThS. Trịnh Quốc Sơn (ĐH Công nghệ Thông tin)
20 trang 50 0 0 -
Cấu trúc dữ liệu và Ngôn ngữ lập trình C
261 trang 45 0 0 -
Đề kiểm tra giữa học kì 1, môn : Cấu trúc dữ liệu và giải thuật
3 trang 42 1 0 -
Phân tích cấu trúc dữ liệu: Phần 1
142 trang 35 0 0