Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 22 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
22
Dung lượng
3,36 MB
Nội dung
Arithmetic Coding HOÀNG VĂN HÙNG - 18520794 NGUYỄN ANH KHOA - 18520922 NGUYỄN HUỲNH NHI - 18521204 Tổng quan Arithmetic Arithmetic coding (AC) là thuật toán nén dữ liệu dựa lý thuyết thông tin Nó cho phép chúng ta lưu trữ thông tin với số lượng bits tối thiểu Claude Shannon chỉ rằng không thể nào lưu trữ thông tin với số bits nhỏ entropy của thông tin này AC cho phép chúng ta tiến tới gần giới hạn entropy này với khoảng cách bits 2 Cải thiện so với Huffman Arithmetic coding vượt trội hầu hết khía cạnh so với phương pháp Huffman Hiệu suất AC tối ưu mà khơng cần phải chặn liệu đầu vào Nó khuyến khích tách biệt rõ ràng mơ hình đại diện cho liệu mã hóa thơng tin liên quan đến mơ hình Nó đáp ứng mơ hình thích nghi dễ dàng hiệu tính toán 3 Mục tiêu Mục tiêu phương pháp tìm khoảng thể chuỗi ký tự có độ dài cố định, cần chọn khoảng số thập phân thích hợp, coi mã biểu diễn cho chuỗi ký tự Q trình mã hóa khởi tạo với khoảng ban đầu [0, 1) Arithmetic Coding thường có tỷ lệ nén tốt phương pháp Huffman, tạo mã hiệu biểu diễn cho chuỗi ký tự thay mã riêng biệt cho ký tự 4 Chi tiết thuật toán mã hoá và ví dụ Đầu vào trình giải mã chuỗi kí tự, đầu phân số thập phân Bài toán : Nén chuỗi “BACA” với xác suất xuất PA = 0.5, PB = 0.25 PC = 0.25 BACA ??? Bước : 1.0 C 0.75 B 0.5 A Bước : D = 0.75 – 0.5 = 0.25 Range(Kí tự) = Giá trị đáy 1.0 Giá trị đáy + D x (P(Kí tự)) 0.75 C C 0.75 B 0.6875 B 0.5 A 0.625 A 0.5 Bước : D = 0.625 – 0.5 = 0.125 Range(Kí tự) = Giá trị đáy 1.0 Giá trị đáy + D x (P(Kí tự)) 0.625 0.75 C C C 0.75 B B B 0.5 A 0.59375 0.6875 0.5625 0.625 A 0.5 A 0.5 Bước : 1.0 C 0.75 B B 0.5 0.5 0.609375 0.5625 0.625 A 0.6171875 0.59375 0.6875 B A C C C B 0.625 0.625 0.75 A 0.5 A 0.59375 Bước : Dựa theo số lượng số liệu khoảng cuối để chuyển thành dạng mã hoá 1.0 C 0.75 B B 0.5 0.5 0.609375 0.5625 0.625 A 0.6171875 0.59375 0.6875 B A C C C B 0.625 0.625 0.75 A 0.5 A 0.59375 10 Kết quả BACA 11 Chi tiết thuật toán giải mã và ví dụ Đầu vào q trình giải mã số thập phân xác suất ký tự đầu vào, đầu chuỗi kí tự Bài tốn : Giải nén mã tín hiệu 0.609375 với PA = 0.5, PB = 0.25 PC = 0.25 0.609375 ??? 12 Bước : Chia khoảng [0,1) thành khoảng phụ với xác suất xuất kí tự đầu vào Xét tín hiệu 0.609375 thuộc khoảng B 1.0 C 0.75 B 0.5 A 13 Bước : Xét tín hiệu 0.609375 thuộc khoảng A 1.0 0.75 D(B) = 0.75 – 0.5 = 0.25 C C 0.75 B 0.6875 Khoảng “A” = 0.5 -> 0.5 + 0.25*0.5 = 0.5 -> 0.625 0.625 Khoảng “B” = 0.625 -> 0.625 + 0.25*0.25 = 0.625 -> 0.6875 B 0.5 A A Khoảng “C” = 0.6875 -> 0.6875 + 0.25*0.25 = 0.6875 -> 0.75 0.5 14 Bước : Xét tín hiệu 0.609375 thuộc khoảng C 1.0 0.625 0.75 C C C 0.75 B B B 0.5 A 0.59375 0.6875 0.5625 0.625 A 0.5 A 0.5 15 Bước : Xét tín hiệu 0.609375 thuộc khoảng A 1.0 C 0.75 B B 0.5 0.5 0.609375 0.5625 0.625 A 0.6171875 0.59375 0.6875 B A C C C B 0.625 0.625 0.75 A 0.5 A 0.59375 16 Chi tiết thuật toán giải mã và ví dụ 0.609375 BACA 17 Sớ liệu so sánh 18 Số liệu so sánh 19 Ưu, nhược điểm + Ưu điểm: - Là giải thuật nén không mát - Thường có hệ số nén tốt so với giải thuật nén entropy khác + Nhược điểm: - Cài đặt phức tạp giải thuật entropy khác - Dễ bị lỗi trình giải mã tín hiệu mã hóa truyền vào bị sai lệch - Tồn nhiều sáng chế arithmetic coding nên việc sử dụng thuật tốn bị tính phí quyền 20 Tài liệu tham khảo Nén liệu sử dụng phương pháp mã hóa số học – Hà Diệu Thúy – Đại học Thái Nguyên – Trường đại học CNTT & Truyền thông - 2013 Arithmetic Coding- A Reliable Implementation - Lakshmi Sasilal - Dr V K Govindan - International Journal of Computer Applications - Volume 73– No.7, July 2013 21 Thank you ... q trình giải mã tín hiệu mã hóa truyền vào bị sai lệch - Tồn nhiều sáng chế arithmetic coding nên việc sử dụng thuật toán bị tính phí quyền 20 Tài liệu tham khảo Nén liệu sử dụng phương pháp... pháp tìm khoảng thể chuỗi ký tự có độ dài cố định, cần chọn khoảng số thập phân thích hợp, coi mã biểu diễn cho chuỗi ký tự Q trình mã hóa khởi tạo với khoảng ban đầu [0, 1) Arithmetic Coding. .. Ưu, nhược điểm + Ưu điểm: - Là giải thuật nén khơng mát - Thường có hệ số nén tốt so với giải thuật nén entropy khác + Nhược điểm: - Cài đặt phức tạp giải thuật entropy khác - Dễ bị lỗi q trình