Tìm hiểu mạng Neural Hamming và ứng dụng trong bài toán nhận dạng chữ cái tiếng việt

74 718 1
Tìm hiểu mạng Neural Hamming và ứng dụng trong bài toán nhận dạng chữ cái tiếng việt

Đ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

Số hóa bởi trung tâm học liệu http://www.lrc.tnu.edu.vn/ ĐẠI HỌC THÁI NGUYÊN TÌM HIỂU MẠNG NEURAL HAMMING VÀ ỨNG DỤNG TRONG BÀI TOÁN NHẬN DẠNG CÁC CHỮ CÁI TIẾNG VIỆT Thái Nguyên – 2013 Số hóa bởi trung tâm học liệu http://www.lrc.tnu.edu.vn/ ĐẠI HỌC THÁI NGUYÊN TÌM HIỂU MẠNG NEURAL HAMMING VÀ ỨNG DỤNG TRONG BÀI TOÁN NHẬN DẠNG CÁC CHỮ CÁI TIẾNG VIỆT 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: TS. Lê Quang Minh Thái Nguyên – 2013 Số hóa bởi trung tâm học liệu http://www.lrc.tnu.edu.vn/ LỜI CẢM ƠN Để hoàn thành bản luận văn này, bên cạnh sự nỗ lực cố gắng của bản thân còn có sự hƣớng dẫn nhiệt tình của quý Thầy Cô, cũng nhƣ sự động viên ủng hộ của gia đình và bạn bè trong suốt thời gian học tập nghiên cứu và thực hiện luận văn thạc sĩ. Xin chân thành bày tỏ lòng biết ơn đến Thầy giáo TS. Lê Quang Minh, ngƣời đã hết lòng giúp đỡ và tạo mọi điều kiện tốt nhất cho tôi hoàn thành luận văn này. Xin gửi lời tri ân nhất của tôi đối với những điều mà Thầy đã dành cho tôi. Xin chân thành bày tỏ lòng biết ơn đến toàn thể quý Thầy Cô trong trƣờng Đại học Công nghệ Thông tin & Truyền thông cũng nhƣ quý Thầy Cô đã tận tình truyền đạt những kiến thức quý báu và tạo mọi điều kiện thuận lợi cho tôi trong suốt quá trình học tập, nghiên cứu và cho đến khi thực hiện luận văn. Xin chân thành bày tỏ lòng biết ơn đến gia đình, những ngƣời đã không ngừng động viên, hỗ trợ và tạo mọi điều kiện tốt nhất cho tôi trong suốt thời gian học tập và thực hiện luận văn. Cuối cùng, tôi xin chân thành bày tỏ lòng biết ơn đến các anh chị và các bạn bè đồng nghiệp đã hỗ trợ cho tôi trong suốt quá trình học tập, nghiên cứu và thực hiện luận văn một cách hoàn chỉnh. Thái Nguyên, tháng 11 năm 2013 Học viên thực hiện Phùng Văn Kiệm Số hóa bởi trung tâm học liệu http://www.lrc.tnu.edu.vn/ MỤC LỤC LỜI CẢM ƠN 3 MỤC LỤC 4 DANH MỤC CÁC TỪ VIẾT TẮT 7 DANH MỤC HÌNH VẼ 8 MỞ ĐẦU 1 CHƢƠNG I: TỔNG QUAN VỀ HIỆN TRẠNG CÁC BÀI TOÁN NHẬN DẠNG VÀ THIẾT LẬP BÀI TOÁN NGHIÊN CỨU 3 1.1 Tổng quan về bài toán nhận dạng 3 1.2. Cụ thể về bài toán nhận dạng chữ cái Tiếng Việt 4 1.3. Thiết lập bài toán 4 1.3.1. Ảnh đầu và 5 1.3.2. Tiền sử lý 5 1.3.2.1. Nhị phân hóa ảnh 5 1.3.2.2. Lọc nhiễu 6 1.3.2.3. Chuẩn hóa kích thƣớc ảnh 7 1.3.2.4. Làm trơn biên chữ 7 1.3.2.5. Làm đầy chữ 8 1.3.2.6. Làm mảnh chữ 8 1.3.2.7. Điều chỉnh độ nghiêng của văn bản 8 1.3.3. Quá trình biến đổi ảnh 9 1.3.3.1. Biến đổi Fourier 9 1.3.3.2. Biến đổi Wavelet 9 1.3.3.3. Phƣơng pháp mô men 9 1.3.3.4. Khai triển Karhunent-Loeve 9 1.3.4. Nhận dạng 10 1.3.4.1. Đối sánh mẫu 10 Số hóa bởi trung tâm học liệu http://www.lrc.tnu.edu.vn/ 1.3.4.2. Phƣơng pháp tiếp cận cấu trúc 11 1.3.4.3. Mô hình Markov ẩn (HMM - Hidden Markov Model) 13 1.3.4.4. Máy véc tơ tựa (SVM) 13 1.3.4.5. Mạng nơ ron 14 1.3.5. Kết quả 15 1.4. Kết luận 15 CHƢƠNG II: TÌM HIỂU MẠNG NEURAL VÀ MẠNG HAMMING 16 2.1. Mạng Neural 16 2.1.1. Khái niệm mạng Neural 16 2.1.2. Lịch sử phát triển mạng Neural 16 2.1.3 Đặc trƣng của mạng neural 18 2.1.3.1 Tính phi tuyến 18 2.1.3.2 Tính chất tƣơng ƣớng đầu vào đầu ra 19 2.1.3.3 Tính chất thích nghi 19 2.1.3.4 Tính chất đƣa ra lời giải có bằng chứng 19 2.1.3.5 Tính chất chấp nhận sai xót 20 2.1.3.6 Khả năng cài đặt VLSI(Very-large-scale-intergrated) 20 2.1.3.7 Tính chất đồng dạng trong phân tích và thiết kế 20 2.1.4 Phân loại mạng neural nhân tạo 21 2.1.4.1 Phân loại theo kiểu liên kết neural 21 2.1.4.2 Một số loại mạng neural 21 2.1.5 Xây dựng mạng neural 23 2.1.6 Huấn luyện mạng neural 25 2.1.6.1 Phƣơng pháp học 25 2.1.6.2 Thuật toán học 26 2.1.7 Ứng dụng của mạng neural 31 2.2 Mạng Hamming 32 Số hóa bởi trung tâm học liệu http://www.lrc.tnu.edu.vn/ 2.2.1 Kiến trúc mạng Hamming 32 2.2.2 Thuật toán học điển hình của mạng Neural 34 2.3 Kết luận 40 CHƢƠNG III: ỨNG DỤNG MẠNG HAMMING TRONG BÀI TOÁN NHẬN DẠNG CÁC CHỮ CÁI TIẾNG VIỆT 41 3.1. Đặc thù và khó khăn của bài toán nhận dạng chữ cái Tiếng Việt 41 3.2 Thuật toán chung của chƣơng trình 43 3.3 Cấu trúc mạng Neural Hamming của chƣơng trình nhận dạng các chữ cái Tiếng Việt 44 3.4. Xây dựng chƣơng trình nhận dạng chữ cái Tiếng Việt 46 3.4.1 Công cụ và ngôn ngữ lập trình 46 3.4.2 Xây dựng chƣơng trình 46 3.4.2.1 Xây dựng mô hình mạng Neural Hamming và các tín hiệu đầu vào 46 3.4.2.2 Định vị và thu gọn kích cỡ ảnh 48 3.4.2.3 Xây dựng thuật toán 49 3.4.2.4 Nhận dạng 50 3.4.2.5 Giao diện chƣơng trình 54 3.5 Thử nghiệm chƣơng trình 54 3.6 Nhận xét chung quá trình thử nghiệm nhận dạng chữ cái Tiếng Việt và kết luận chƣơng 3 60 KẾT LUẬN 62 TÀI LIỆU THAM KHẢO 63 Số hóa bởi trung tâm học liệu http://www.lrc.tnu.edu.vn/ DANH MỤC CÁC TỪ VIẾT TẮT Từ Ý nghĩa RBF Radial Basic Function HMM Hidden Markov Model SVM Support Vector Machines USPS United States Postal Service MNIST Bộ mẫu chữ số viết tay NIST-Viện Công nghệ và Tiêu chuẩn Quốc gia Hoa Kỳ (National Insitute of Standard and Technology of the United States) SV Support Vector SOM Self Origanizing Map ANN Artificial Neural Network VLSI Very-large-scale-intergrated MLP Multi Layer Perceptron LMS Least Means Square Số hóa bởi trung tâm học liệu http://www.lrc.tnu.edu.vn/ DANH MỤC BẢNG, HÌNH VẼ Bảng 3.1: Kết quả nhận dạng các chữ cái Tiếng Việt Font Times New Roman 57 Bảng 3.2: Kết quả nhận dạng các chữ cái Tiếng Việt Font Arial 59 Hình 1.1. Sơ đồ hệ thống nhận dạng 5 Hình 1.2. Nhị phân hóa ảnh 6 Hình 1.3. Nhiễu đốm và nhiễu vệt 6 Hình 1.4.Chuẩn hóa kích thƣớc ảnh các ký tự “A” và “P” 7 Hình 1.5.(a) Ảnh gốc, (b) Ảnh sau khi đƣợc làm trơn biên 7 Hình 1.6. Làm mảnh chữ 8 Hình 1.7. Hiệu chỉnh độ nghiêng của văn bản 8 Hình 2.1: Mạng tiến với một mức neural 21 Hình 2.2: Mạng tiến kết nối đầy đủ với một mức ẩn và một mức đầu ra 22 Hình 2.3: Mạng hồi quy không có neural ẩn và không có vòng lặp tự phản hồi 23 Hình 2.4: Mạng hồi quy có các neural ẩn 23 Hình 2.5: Sơ đồ đồ thị có hƣớng đơn giản 24 Hình 2.6 Cấu trúc mạng hamming 32 Hình 2.7 Sơ đồ khối thuật toán lan truyền ngƣợc 39 Hình 3.1 Phân tích chữ cái cỡ 30x20 thành các điểm ảnh 41 Hình 3.2 Phân tích chữ cái cỡ 60x30 thành các điểm ảnh 42 Hình 3.3 Sơ đồ thuật toán chung của chƣơng trình 43 Hình 3.4 Lƣu đồ quá trình xử lý ảnh 44 Hình 3.5 Cấu trúc mạng Neural 45 Hình 3.6. Hàm truyền của Neural lớp 1 45 Hình 3.7 Quá trình xử lý ảnh trong thuật toán 47 Hình 3.8. Định vị trí các biên của ảnh 48 Hình 3.9. Hàm truyền của Neural lớp thứ 2 49 Hình 3.10 Sơ đồ hàm đầu ra 51 Số hóa bởi trung tâm học liệu http://www.lrc.tnu.edu.vn/ Hình 3.11 Giao diện của chƣơng trình 54 Hình 3.12 Kết quả nhận dạng chữ Â với kích thƣớc là 80x50 và độ nhiễu 25% 55 Hình 3.13 Kết quả nhận dạng chữ Â với kích thƣớc là 80x50 pixel và độ nhiễu là 35% 55 Hình 3.14 Kết quả nhận dạng chữ Â với kích thƣớc là 60x30 pixel và độ nhiễu là 25% 56 Hình 3.15 Kết quả nhận dạng chữ Â font Arial với kích thƣớc 60x30 pixel với độ nhiễu 25% 56 Hình 3.16 Bảng kết quả trọng số đầu ra ảnh không tính nhiễu 57 Hình 3.17 Bảng kết quả trọng số đầu ra ảnh có tính nhiễu 57 Hình 3.18 So sánh giữa ảnh đầu vào và ảnh mẫu 60 Số hóa bởi trung tâm học liệu http://www.lrc.tnu.edu.vn/ 1 MỞ ĐẦU Từ lâu các nhà khoa học đã nhận thấy những ƣu điểm của bộ óc con ngƣời và tìm cách bắt chƣớc để thực hiện trên những máy tính, tạo cho nó có khả năng học tập, nhận dạng và phân loại. Vì vậy các nhà khoa học đã nghiên cứu và sáng tạo ra mạng Neural nhân tạo. Nó thực sự đƣợc chú ý và nhanh chóng trở thành một hƣớng nghiên cứu đầy triển vọng đặc biệt là lĩnh vực nhận dạng. Và bài toán nhận dạng ký tự là một bài toán con trong lớp các bài toán nhận dạng, xử lý ảnh. Hiện nay trên thế giới, các sản phẩm nhận dạng ký tự đã đƣợc triển khai tƣơng đối rộng rãi. Tuy nhiên đây là các sản phẩm nhận dạng ký tự tiếng Anh, do đó đối với nhận dạng ký tự tiếng Việt thì chỉ có ngƣời Việt Nam mới có thể phát triển đƣợc. Ở nƣớc ta trong một vài năm gần đây cũng đã có một số sản phẩm nhận dạng tiếng việt đƣợc triển khai trên thị trƣờng. Nhƣng các sản phẩm này đƣợc bán trên thị trƣờng dƣới dạng đóng kín nên việc để phát triển thành phần mềm tự động cập nhật ảnh là điều không thể. Vì vậy nên tôi đã chọn đề tài: “Tìm hiểu mạng Neural Hamming và ứng dụng trong bài toán nhận dạng các chữ cái Tiếng Việt”. Hệ thống chữ cái Tiếng Việt là đƣợc xây dựng dựa trên chữ cái Latinh có thêm chữ ghép và dấu phụ. Do đó việc nhận dạng sẽ gặp khó khăn hơn so với chữ cái Latinh thông thƣờng và cần phải có thuật toán xử lý đem lại độ chính xác cao. Trong khuôn khổ, thời lƣợng của luận văn, tôi đƣa ra một chƣơng trình mô phỏng mạng Neural nhận dạng 29 chữ cái Tiếng Việt từ A đến Y và 10 chữ số từ 0 đến 9. [...]... xếp và chia thành 3 chƣơng chính: Chƣơng 1: Tổng quan về hiện trạng các bài toán nhận dạng và thiết lập bài toán nghiên cứu Chƣơng 2: Tìm hiểu về mạng Neural và khoảng cách Hamming Chƣơng 3: Ứng dụng mạng neural Hamming trong bài toán nhận dạng các chữ cái Tiếng Việt Số hóa bởi trung tâm học liệu http://www.lrc.tnu.edu.vn/ 3 CHƢƠNG I TỔNG QUAN VỀ HIỆN TRẠNG CÁC BÀI TOÁN NHẬN DẠNG VÀ THIẾT LẬP BÀI TOÁN... biệt trong cách viết tuỳ thuộc vào từng ngữ cảnh, kiểu viết của một ngƣời cũng có thể thay đổi theo thời gian hoặc theo thói quen Điều này gây ra nhiều trở ngại trong việc nhận dạng cũng nhƣ lựa chọn mô hình nhận dạng 1.3 Thiết lập bài toán Đề tài mà tôi thực hiện là: Ứng dụng mạng Neural Hamming trong bài toán nhận dạng các chữ cái Tiếng Việt , công việc chính là “Xây dựng chƣơng trình nhận dạng. .. các chữ cái Tiếng Việt ý tƣởng bài toán nhƣ sau: Số hóa bởi trung tâm học liệu http://www.lrc.tnu.edu.vn/ 5  Phân tích ảnh cho ký tự: Chia ảnh và tách ký tự theo từng vùng giới hạn;  Chuyển đổi kí tự sang ma trận điểm ảnh;  Chuyển thành ma trận tuyến tính và đƣa vào mạng neural;  Đƣa vào mạng neural tính giá trị đầu ra Các bƣớc giải quyết bài toán sử dụng mạng neural Hamming nhận dạng chữ cái Tiếng. .. quyết bài toán nhận dạng chữ với những ƣu điểm đơn giản về thuật toán nhƣng rất hiệu qủa, cùng với những thành công trong các ứng dụng thực tiễn Tôi chọn phƣơng pháp nhận dạng chữ sử dụng mạng nơ ron nhân tạo làm định hƣớng tập trung nghiên cứu của luận án Số hóa bởi trung tâm học liệu http://www.lrc.tnu.edu.vn/ 16 CHƢƠNG II TÌM HIỂU MẠNG NEURAL VÀ MẠNG HAMMING 2.1 Mạng Neural 2.1.1 Khái niệm mạng Neural. .. ảnh vào Bƣớc quan trọng cuối cùng đó là nhận dạng và cho ra kết quả 1.4 Kết luận Nội dung của chƣơng 1 là trình bày về các bài toán nhận dạng nói chung và nhận dạng chữ nói riêng trên thế giới cũng nhƣ ở Việt Nam: Những ứng dụng đã đƣợc áp dụng trong thực tế; một số kết quả đƣợc coi là thành công nhất Và thiết lập đƣợc nội dung của bài toán đƣợc xây dựng trong luận văn Từ những thiết lập bài toán. .. về bài toán nhận dạng Nhận dạng chữ là một lĩnh vực đã đƣợc quan tâm nghiên cứu và ứng dụng từ nhiều năm nay theo hai hƣớng chính: 1) Nhận dạng chữ in: phục vụ cho công việc tự động hóa đọc tài liệu, tăng tốc độ và hiệu quả nhập thông tin vào máy tính trực tiếp từ các nguồn tài liệu 2) Nhận dạng chữ viết tay: với những mức độ ràng buộc khác nhau về cách viết ,kiểu chữ phục vụ cho các ứng dụng đọc và. .. xử lý chứng từ, hóa đơn, phiếu ghi, bản thảo viết tay Nhận dạng chữ viết tay được tách thành hai hướng phát triển: nhận dạng chữ viết tay trực tuyến (on-line) và nhận dạng chữ viết tay ngoại tuyến (off-line) Đến thời điểm này, bài toán nhận dạng chữ in đã đƣợc giải quyết gần nhƣ trọn vẹn (sản phẩm FineReader 11 của hãng ABBYY có thể nhận dạng chữ in theo 20 ngôn ngữ khác nhau trong đó có cả Việt Nam,... đa dạng trong cách viết và trạng thái tinh thần của từng ngƣời viết Đặc biệt đối với việc nghiên cứu nhận dạng chữ viết tay tiếng Việt lại càng gặp nhiều khó khăn hơn do bộ ký tự tiếng Việt có thêm phần dấu, rất dễ nhầm lẫn với các nhiễu Số hóa bởi trung tâm học liệu http://www.lrc.tnu.edu.vn/ 4 1.2 Cụ thể về bài toán nhận dạng chữ cái Tiếng Việt Hiện nay cũng có rất nhiều bài báo đề cập đến bài toán. .. quyết những vấn đề khó khăn của bài toán một cách triệt để Một số hệ nhận nhận dạng văn bản đã và đang đƣợc áp dụng rất nhiều vào ứng dụng nhƣ FineReader của hãng AABBYY, OmmiPage của hãng Scansoft đƣợc dùng để nhận dạng các văn bản tiếng Anh,… VNDOCR của Viện công nghệ thông tin cho các văn bản tiếng Việt Nhìn chung, các sản phẩm phần mềm nhận dạng văn bản Tiếng Việt chữ in của nƣớc ta đã thu đƣợc... phải sử dụng các thuật toán có khối lƣợng tính toán rất lớn nên việc sử dựng các đặc trƣng Karhunent-Loeve trong các bài toán nhận dạng chữ không đƣợc phổ biến rộng rãi Tuy nhiên, để tăng tốc độ tính toán cho các máy phân lớp, các đặc trƣng này trở nên thiết thực hơn cho các hệ nhận dạng chữ trong những năm gần đây 1.3.4 Nhận dạng Có nhiều phƣơng pháp nhận dạng mẫu khác nhau đƣợc áp dụng rộng rãi trong . các bài toán nhận dạng và thiết lập bài toán nghiên cứu Chƣơng 2: Tìm hiểu về mạng Neural và khoảng cách Hamming Chƣơng 3: Ứng dụng mạng neural Hamming trong bài toán nhận dạng các chữ cái Tiếng. tài: Tìm hiểu mạng Neural Hamming và ứng dụng trong bài toán nhận dạng các chữ cái Tiếng Việt . Hệ thống chữ cái Tiếng Việt là đƣợc xây dựng dựa trên chữ cái Latinh có thêm chữ ghép và dấu. 40 CHƢƠNG III: ỨNG DỤNG MẠNG HAMMING TRONG BÀI TOÁN NHẬN DẠNG CÁC CHỮ CÁI TIẾNG VIỆT 41 3.1. Đặc thù và khó khăn của bài toán nhận dạng chữ cái Tiếng Việt 41 3.2 Thuật toán chung của chƣơng

Ngày đăng: 18/11/2014, 22:40

Từ khóa liên quan

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

Tài liệu liên quan