Nén văn bản tiếng việt theo huffman ( Luận văn thạc sĩ)

81 175 0
Nén văn bản tiếng việt theo huffman ( Luận văn thạc sĩ)

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Nén văn bản tiếng việt theo huffman ( Luận văn thạc sĩ)Nén văn bản tiếng việt theo huffman ( Luận văn thạc sĩ)Nén văn bản tiếng việt theo huffman ( Luận văn thạc sĩ)Nén văn bản tiếng việt theo huffman ( Luận văn thạc sĩ)Nén văn bản tiếng việt theo huffman ( Luận văn thạc sĩ)Nén văn bản tiếng việt theo huffman ( Luận văn thạc sĩ)

i ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CNTT & TRUYỀN THÔNG PHẠM THU HƯỜNG NÉN VĂN BẢN TIẾNG VIỆT THEO HUFFMAN LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH Thái Nguyên - 2013 ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC CNTT & TRUYỀN THÔNG PHẠM THU HƯỜNG NÉN VĂN BẢN TIẾNG VIỆT THEO HUFFMAN Chuyên ngành: Khoa học máy tính Mã số: 60 48 01 LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH Người hướng dẫn khoa học: PGS.TS Nguyễn Hữu Điển Thái Nguyên - 2013 ii LỜI CẢM ƠN Để đạt kết ngày hôm l cố gắng, nỗ lực lớn thân, giúp đỡ nhiệt tình q thầy cơ, bạn bè để tơi hồn thành luận văn Tôi xin trân trọng cảm ơn: - PGS.TS Nguyễn Hữu Điển – Giám đốc Trung tâm tính tốn hiệu cao Trường Đại học khoa học tự nhiên Hà Nội - Các thầy cô hội đồng phản biện Cuối xin chân thành cảm ơn thầy, cô, bạn động viên giúp đỡ thời gian làm luận văn Xin trân trọng cám ơn quý thầy cô, bạn! iii DANH MỤC CÁC HÌNH Hình Quy trình nén liệu Hình Xây dựng nhị phân từ bảng mã khơng dạng tiền tố Hình Sắp xếp danh sách ký tự 20 Hình Xây dựng Huffman 22 Hình Cây Huffman điền đầy đủ thành phần 22 Hình Một trường hợp xây dựng khác 23 Hình Lưu đồ giả i mã 24 Hình Ý tưởng xây dựng theo phương pháp Shannon – Fano 26 Hình Xây dựng theo phương pháo Shannon-Fano 27 Hinh 10 Mã hóa phương pháp Huffman động 31 Hình 11 Giải mã phương pháp Huffman động 33 Hình 12 Quá trình thực nén LZ 43 Hình 13 Sơ đồ nén LZ 78 47 Hình 14 Sơ đồ giải nén LZ78 48 Hình 15 Sơ đồ nén LZW 51 Hình 16 Sơ đồ giải nén LZW 54 Hình 17 Phương pháp MTF ( tốt ) 57 Hình 18 Phương pháp MTF ( xấu) 57 Hình 19 Phương pháp BW tìm chuỗi sau mã hóa 59 Hình 20 Hai cách tìm chuỗi gốc 60 Hình 21 Giao diện chương trình 62 iv MỤC LỤC LỜI CẢM ƠN iii DANH MỤC CÁC HÌNH iv MỞ ĐẦU 1 Đặt vấn đề Đối tượng phạm vi nghiên cứu .1 2.1 Đối tượng .1 2.2 Phạm vi Hướng nghiên cứu đề tài Phương pháp nghiên cứu Ý nghĩa khoa học luận văn CHƯƠNG 1: TỔNG QUAN VỀ CÔNG NGHỆ NÉN DỮ LIỆU 1.1 Sơ lược nén liệu .3 1.1.1 Khái niệm nén liệu 1.1.2 Những vấn đề phải giải nén liệu 1.1.3 Phân loại chương trình nén 1.1.4 Đánh giá chất lượng chương trình nén 1.2 Mã nén liệu 1.2.1 Định nghĩa mã hoá 1.2.2 Các khái niệm ký tự mã hóa 1.2.3 Mã tổng mã phân tách .13 1.2.4 Định lý mã nén .18 CHƯƠNG MỘT SỐ MÃ NÉNBẢN 21 2.1 Mã hóa Huffman (Huffman coding) 21 2.1.1 Phương pháp mã hóa 21 2.1.2 Thuật toán tạo mã Huffman 21 2.1.3 Giải mã thuật toán Huffman : .25 2.2 Mã hóa Huffman động ( Adaptive Huffman coding ) 31 2.2.1 Phương pháp mã hóa: 31 2.2.2 Thuật toán nén .31 2.2.3 Thuật toán giải nén .33 2.3 Thuật toán xử lý lặp lại xâu (RLE) 36 v 2.3.1 Phương pháp: 36 2.3.2 Thuật toán tạo mã 36 2.3.3 Quá trình giải mã 36 2.4 Mã hóa kiểu từ điển (Dictionary -based compression) .39 2.4.1 Nguyên lý LZ 39 2.4.2.Từ điển 40 2.4.3 Quá trình thực nén mã LZ 41 2.4.4 Các thuật toán nén LZ 42 2.5 Một số phương pháp biến đổi (transform) 54 2.5.1 Phương pháp đẩy phía trước (Move to front): 54 2.5.2 Phương pháp Burrows – Wheeler (BW): 56 CHƯƠNG XÂY DỰNG CHƯƠNG TRÌNH NÉN TIẾNG VIỆT SỬ DỤNG PHƯƠNG PHÁP MÃ HÓA HUFFMAN 59 3.1 Bộ gõ Tiếng việt .59 3.2 Quy ước biểu diễn ký tự tiếng Việt 59 3.3 Chuẩn dấu Tiếng việt 60 3.3.1 Unicode 60 3.3.2 TCVN3 60 3.3.3 VNI 60 3.4 Phương pháp mã hóa Huffman 60 3.5 Giới thiệu chương trình 61 3.5.1 Hướng dẫn sử dụng .62 3.5.2 Kết kiểm thử chương trình 64 KẾT LUẬN 65 TÀI LIỆU THAM KHẢO 66 PHỤ LỤC 67 vi MỞ ĐẦU Đặt vấn đề Một chức máy tính xử lý liệu lưu trữ Bên cạnh việc xử lý nhanh, người ta quan tâm đến việc lưu trữ nhiều liệu lại tiết kiệm vùng nhớ giảm chi phí lưu trữ Về mặt lý thuyết thiết bị lưu trữ khơng có giới hạn ngày nhu cầu xử lý nhiều tập tin, nhiều loại liệu tệp mà kích thước tệp trở nên lớn Những vấn đề nảy sinh khái niệm nén liệu, nén liệu q trình làm giảm lượng thơng tin “dư thừa” liệu gốc, lượng thông tin thu sau nén thường nhỏ liệu gốc nhiều Nén liệu giải pháp hợp lý nhằm mục đích giảm chi phí cho người sử dụng Như biết tiếng Việt ngôn thuộc hệ thống chữ Latin sử dụng nhiều dấu kèm với nguyên âm Với bảng m ã ASCII bit sử dụng phổ biến máy tính, mã hóa 256 ký tự Để đưa tiếng Việt vào máy tính, phần mềm tiếng Việt sử dụng hai phương pháp mã hóa : mã dựng sẵn mã tổ hợp để xây dựng trang mã ký tự tiếng Việt Bảng mã phổ biến thường sử dụng bảng mã Unicode để thể tiếng Việt Nhưng bảng mã Unicode yêu cầu 16 bit để thể ký tự điều dẫn đến lãng phí dư thừa liệu Vì vậy, “ Nén văn tiếng Việt theo Huffman ” em chọn làm luận văn tốt nghiệp Đối tượng phạm vi nghiên cứu 2.1 Đối tượng − Các phần mềm nén liệu; − Các thuật toán nén liệu; − Các phương pháp mã hóa tiếng Việt; − Hệ thống phần mềm nén liệu từ ứng dụng vào để nén liệu cho tiếng Việt 2.2 Phạm vi − Các khái niệm ký tự mã hóa, thuật tốn nén văn Kiến trúc, chức n ãng thành phần nén liệu cụ thể cho toán nén văn Tiếng việt sử dụng phương pháp mã hóa Huffman − Các chức nãng quy trình thực thi tốn nén liệu; − Hệ thống chương trình cho tốn nén liệu; Vì thời gian có hạn, khuôn khổ luận văn tốt nghiệp cao học, việc giải toán nén liệu giới hạn vài thuật toán nén cổ điển Hướng nghiên cứu đề tài − Tìm hiểu tổng quan nén liệu nghiên cứu thu ật tốn nén cụ thể − Tìm hiểu tốn nén liệu, tiến hành phân tích; − Thu thập số liệu có liên quan; − Phân tích, đánh giá thông qua số liệu thu thập được; − Cài đặt thực nghiệm Phương pháp nghiên cứu − Nghiên cứu tài liệu viết tổng quan; − Phương pháp khảo sát thực tế; − Phương pháp phân tích đánh giá thuật tốn; − Nghiên cứu triển khai thu ật toán thử nghiệm hệ thống Ý nghĩa khoa học luận vănBản thân hiểu sâu áp dụng thuật toán nén liệu vào thực tế; − Triển khai số thuật toán nén liệu qua ứng dụng phương pháp mã hóa Huffman vào tiếng Việt; − Xây dựng chương trình nén liệu dành cho tiếng Việt máy tính CHƯƠNG 1: TỔNG QUAN VỀ CÔNG NGHỆ NÉN DỮ LIỆU 1.1 Sơ lược nén liệu 1.1.1 Khái niệm nén liệu Nén trình giảm lượng không gian cần thiết để biểu diễn lượng thơng tin cho trước Người ta gọi nén biến đổi luồng ký hiệu thành luồng từ mã Quá trình nén sau: Văn Mơ hình Mã hố Bản mã Hình Quy trình nén liệu Trong đó: - Văn văn ban đầu cần nén - Mơ hình tập hợp chữ quy tắc sử dụng để xử lý chữ vào đưa từ mã Một mơ hình xác định xác xác suất xuất chữ mã tạo từ mã dựa xác suất - Mã hố q trình thay chữ văn ban đầu từ mã tương ứng để đưa mã xác Như vậy, q trình nén diễn sau: q trình mơ hình vào văn cần nén tạo từ mã Sau đó, từ từ mã vừa tạo văn ban đầu trình nén đưa mã Mã hố mơ hình hai giai đoạn hồn tồn khác giai đoạn mơ hình có nhiều cách để xử lý chữ văn mà sử dụng phương pháp xây dựng mã từ mã Nếu mã có kích thước nhỏ văn phương pháp nén có hiệu Ví dụ : Chúng ta sử dụng phương pháp mã Huffman cho hai mơ hình khác nhau: - Mơ hình 1: dựa xác suất độc lập chữ xuất văn - Mơ hình 2: cần tính xác suất phụ thuộc dựa chữ nhận lúc văn Do mơ hình khác nên sử dụng mã Huffman để đưa từ mã hiệu nén chún g khác Tuy nhiên, quen dùng từ mã hoá q trình nén văn giai đoạn trình nén Người ta thường mã hố thơng qua từ mã bảng chữ Có thể có nhiều thuật toán nén liệu khác Mỗi thuật toán có kiểu liệu định số modem có đặc điểm nén thích ứng có nghĩa chúng có khả chọn thuật tốn nén thích hợp phụ thuộc vào kiểu liệu cần nén Trong số cách mã cách mã ngắn nói nén tốt (so với cách mã khác) 1.1.2 Những vấn đề phải giải nén liệu Mục tiêu nén liệu đưa thuật toán để giảm thiểu l ãng phí từ phần giống biểu diễn liệu Thơng th ường chương trình né n cần quan tâm đến khả n ãng cẳt triết nhiều hay dung lư ợng liệu sau nén, điều phụ thuộc vào thuật toán, điều kiện đầu vào liệu Nh liệu đầu vào khác đòi hỏi thuật tốn khác để nhận diện nhậy chỗ tiêu sài lãng phí nhớ Cần nhận ... “ Nén văn tiếng Việt theo Huffman ” em chọn làm luận văn tốt nghiệp Đối tượng phạm vi nghiên cứu 2.1 Đối tượng − Các phần mềm nén liệu; − Các thuật toán nén liệu; − Các phương pháp mã hóa tiếng. .. TRƯỜNG ĐẠI HỌC CNTT & TRUYỀN THÔNG PHẠM THU HƯỜNG NÉN VĂN BẢN TIẾNG VIỆT THEO HUFFMAN Chuyên ngành: Khoa học máy tính Mã số: 60 48 01 LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH Người hướng dẫn khoa học:... – Wheeler (BW): 56 CHƯƠNG XÂY DỰNG CHƯƠNG TRÌNH NÉN TIẾNG VIỆT SỬ DỤNG PHƯƠNG PHÁP MÃ HÓA HUFFMAN 59 3.1 Bộ gõ Tiếng việt .59 3.2 Quy ước biểu diễn ký tự tiếng Việt

Ngày đăng: 19/05/2018, 14:22

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan