Bài giảng Cấu trúc dữ liệu và giải thuật: Các thuật toán nén dữ liệu
Số trang: 78
Loại file: pdf
Dung lượng: 565.30 KB
Lượt xem: 13
Lượt tải: 0
Xem trước 8 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Bài giảng Cấu trúc dữ liệu và giải thuật: Các thuật toán nén dữ liệu có nội dung trình bày về các thuật ngữ thường dùng như data compression, lossless compression, lossy compression, encoding, decoding; giải thuật nén RLE, giải thuật nén Huffman,... Mời các bạn cùng tham khảo chi tiết nội dung bài giảng!
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: Các thuật toán nén dữ liệu Cấu trúc dữ liệu & Giải thuật (Data Structures and Algorithms) Các thuật toán nén dữ liệu(Data Compression Algorithms) Data Compression Giới thiệu Giải thuật nén RLE Giải thuật nén Huffman09/2013 Data Structures & Algorithms - Data Compression - Nguyen Tri Tuan, DH KHTN Tp.HCM 2 Giới thiệu Các thuật ngữ thường dùng: Data Compression Lossless Compression Lossy Compression Encoding Decoding Run / Run Length RLE, Huffman, LZW09/2013 Data Structures & Algorithms - Data Compression - Nguyen Tri Tuan, DH KHTN Tp.HCM 3 Giới thiệu (tt) Mục đích của nén dữ liệu: Giảm kích thước dữ liệu: Khi lưu trữ Khi truyền dữ liệu Tăng tính bảo mật09/2013 Data Structures & Algorithms - Data Compression - Nguyen Tri Tuan, DH KHTN Tp.HCM 4 Giới thiệu (tt) Có 2 hình thức nén: Nén bảo toàn thông tin (Lossless Compression): Không mất mát thông tin nguyên thuỷ Hiệu suất nén không cao: 10% - 60% Các giải thuật tiêu biểu: RLE, Arithmetic, Huffman, LZ77, LZ78,… Nén không bảo toàn thông tin (Lossy Compression): Thông tin nguyên thủy bị mất mát Hiệu suất nén cao 40% - 90% Các giải thuật tiêu biểu: JPEG, MP3, MP4,…09/2013 Data Structures & Algorithms - Data Compression - Nguyen Tri Tuan, DH KHTN Tp.HCM 5 Giới thiệu (tt) Hiệu suất nén (%): Tỉ lệ % kích thước dữ liệu giảm được sau khi áp dụng thuật toán nén D (%) = (N – M)/N*100 D: Hiệu suất nén N: kích thước data trước khi nén M: kích thước data sau khi nén Hiệu suất nén tùy thuộc Phương pháp nén Đặc trưng của dữ liệu09/2013 Data Structures & Algorithms - Data Compression - Nguyen Tri Tuan, DH KHTN Tp.HCM 6 Giới thiệu (tt) Nén tập tin: Dùng khi cần Backup, Restore,… dữ liệu Dùng các thuật toán nén bảo toàn thông tin Không quan tâm đến định dạng (format) của tập tin Các phần mềm: PKzip, WinZip, WinRar,…09/2013 Data Structures & Algorithms - Data Compression - Nguyen Tri Tuan, DH KHTN Tp.HCM 7 Data Compression Giới thiệu Giải thuật nén RLE Giải thuật nén Huffman09/2013 Data Structures & Algorithms - Data Compression - Nguyen Tri Tuan, DH KHTN Tp.HCM 8 Giải thuật nén RLE RLE = Run Length Encoding: mã hoá theo độ dài lặp lại của dữ liệu Ý tưởng Dạng 1: RLE với file *.PCX Dạng 2: RLE với file *.BMP Nhận xét09/2013 Data Structures & Algorithms - Data Compression - Nguyen Tri Tuan, DH KHTN Tp.HCM 9 Giải thuật nén RLE (tt) Tư tưởng: Hình thức biểu diễn thông tin dư thừa đơn giản: “đường chạy” (run) – là dãy các ký tự lặp lại liên tiếp “đường chạy” được biểu diễn ngắn gọn: Khi độ dài đường chạy lớn Tiết kiệm đáng kể Ví dụ: Data = AAAABBBBBBBBCCCCCCCCCCDEE (# 25 bytes) Datanén = 4A8B10C1D2E (# 10 bytes)09/2013 Data Structures & Algorithms - Data Compression - Nguyen Tri Tuan, DH KHTN Tp.HCM 10 Giải thuật nén RLE (tt) Tư tưởng: (tt) Khi vận dụng thực tế, cần có biện pháp xử lý để tránh trường hợp “phản tác dụng” đối với các “run đặc biệt – 1 ký tự” X (# 1 bytes) 1X (# 2 bytes)09/2013 Data Structures & Algorithms - Data Compression - Nguyen Tri Tuan, DH KHTN Tp.HCM 11 Giải thuật nén RLE (tt) Dạng 1: RLE với file *.PCX 1 1 0 0 1 1 0 1 0 1 0 0 0 0 0 1 Hai bit n = 6 bit thaáp d = byte döõ cao baät cho bieát soá lieäu keá tieáp “11” laàn laëp… ñöôïc laëp Trường hợp “run bình thường”: AAAAAAAAAAAAA 13 A (biểu diễn 2 bytes) 0xCD 0x4109/2013 Data Structures & Algorithms - Data Compression - Nguyen Tri Tuan, DH KHTN Tp.HCM 12 Giải thuật nén RLE (tt) RLE trong cấu trúc file *.PCX (tt) ...
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: Các thuật toán nén dữ liệu Cấu trúc dữ liệu & Giải thuật (Data Structures and Algorithms) Các thuật toán nén dữ liệu(Data Compression Algorithms) Data Compression Giới thiệu Giải thuật nén RLE Giải thuật nén Huffman09/2013 Data Structures & Algorithms - Data Compression - Nguyen Tri Tuan, DH KHTN Tp.HCM 2 Giới thiệu Các thuật ngữ thường dùng: Data Compression Lossless Compression Lossy Compression Encoding Decoding Run / Run Length RLE, Huffman, LZW09/2013 Data Structures & Algorithms - Data Compression - Nguyen Tri Tuan, DH KHTN Tp.HCM 3 Giới thiệu (tt) Mục đích của nén dữ liệu: Giảm kích thước dữ liệu: Khi lưu trữ Khi truyền dữ liệu Tăng tính bảo mật09/2013 Data Structures & Algorithms - Data Compression - Nguyen Tri Tuan, DH KHTN Tp.HCM 4 Giới thiệu (tt) Có 2 hình thức nén: Nén bảo toàn thông tin (Lossless Compression): Không mất mát thông tin nguyên thuỷ Hiệu suất nén không cao: 10% - 60% Các giải thuật tiêu biểu: RLE, Arithmetic, Huffman, LZ77, LZ78,… Nén không bảo toàn thông tin (Lossy Compression): Thông tin nguyên thủy bị mất mát Hiệu suất nén cao 40% - 90% Các giải thuật tiêu biểu: JPEG, MP3, MP4,…09/2013 Data Structures & Algorithms - Data Compression - Nguyen Tri Tuan, DH KHTN Tp.HCM 5 Giới thiệu (tt) Hiệu suất nén (%): Tỉ lệ % kích thước dữ liệu giảm được sau khi áp dụng thuật toán nén D (%) = (N – M)/N*100 D: Hiệu suất nén N: kích thước data trước khi nén M: kích thước data sau khi nén Hiệu suất nén tùy thuộc Phương pháp nén Đặc trưng của dữ liệu09/2013 Data Structures & Algorithms - Data Compression - Nguyen Tri Tuan, DH KHTN Tp.HCM 6 Giới thiệu (tt) Nén tập tin: Dùng khi cần Backup, Restore,… dữ liệu Dùng các thuật toán nén bảo toàn thông tin Không quan tâm đến định dạng (format) của tập tin Các phần mềm: PKzip, WinZip, WinRar,…09/2013 Data Structures & Algorithms - Data Compression - Nguyen Tri Tuan, DH KHTN Tp.HCM 7 Data Compression Giới thiệu Giải thuật nén RLE Giải thuật nén Huffman09/2013 Data Structures & Algorithms - Data Compression - Nguyen Tri Tuan, DH KHTN Tp.HCM 8 Giải thuật nén RLE RLE = Run Length Encoding: mã hoá theo độ dài lặp lại của dữ liệu Ý tưởng Dạng 1: RLE với file *.PCX Dạng 2: RLE với file *.BMP Nhận xét09/2013 Data Structures & Algorithms - Data Compression - Nguyen Tri Tuan, DH KHTN Tp.HCM 9 Giải thuật nén RLE (tt) Tư tưởng: Hình thức biểu diễn thông tin dư thừa đơn giản: “đường chạy” (run) – là dãy các ký tự lặp lại liên tiếp “đường chạy” được biểu diễn ngắn gọn: Khi độ dài đường chạy lớn Tiết kiệm đáng kể Ví dụ: Data = AAAABBBBBBBBCCCCCCCCCCDEE (# 25 bytes) Datanén = 4A8B10C1D2E (# 10 bytes)09/2013 Data Structures & Algorithms - Data Compression - Nguyen Tri Tuan, DH KHTN Tp.HCM 10 Giải thuật nén RLE (tt) Tư tưởng: (tt) Khi vận dụng thực tế, cần có biện pháp xử lý để tránh trường hợp “phản tác dụng” đối với các “run đặc biệt – 1 ký tự” X (# 1 bytes) 1X (# 2 bytes)09/2013 Data Structures & Algorithms - Data Compression - Nguyen Tri Tuan, DH KHTN Tp.HCM 11 Giải thuật nén RLE (tt) Dạng 1: RLE với file *.PCX 1 1 0 0 1 1 0 1 0 1 0 0 0 0 0 1 Hai bit n = 6 bit thaáp d = byte döõ cao baät cho bieát soá lieäu keá tieáp “11” laàn laëp… ñöôïc laëp Trường hợp “run bình thường”: AAAAAAAAAAAAA 13 A (biểu diễn 2 bytes) 0xCD 0x4109/2013 Data Structures & Algorithms - Data Compression - Nguyen Tri Tuan, DH KHTN Tp.HCM 12 Giải thuật nén RLE (tt) RLE trong cấu trúc file *.PCX (tt) ...
Tìm kiếm theo từ khóa liên quan:
Bài giảng Cấu trúc dữ liệu và giải thuật Cấu trúc dữ liệu và giải thuật Thuật toán nén dữ liệu Giải thuật nén RLE Giải thuật nén Huffman Nén bảo toàn thông tinGợ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 307 0 0 -
Giáo trình cấu trúc dữ liệu và giải thuât part 2
16 trang 160 0 0 -
3 trang 159 3 0
-
Giáo trình Cấu trúc dữ liệu và giải thuật: Phần 2 - Trần Hạnh Nhi
123 trang 156 0 0 -
Giải thuật và cấu trúc dữ liệu
305 trang 149 0 0 -
10 trang 138 0 0
-
57 trang 124 1 0
-
Bài giảng Cấu trúc dữ liệu và giải thuật - Chương 4: Một số giải thuật sắp xếp và tìm kiếm
29 trang 115 0 0 -
Giáo trình Cấu trúc dữ liệu và giải thuật: Phần 1 - Trần Hạnh Nhi
98 trang 115 0 0 -
Một ứng dụng của sự phân tích ma trận trong thuật toán nén dữ liệu
7 trang 78 0 0