MỞ ĐẦU. GIỚI THIỆU VỀ CHỮ VIẾT VÀ NHẬN DẠNG CHỮ VIẾT. Trình bày về lịch sử của nhận dạng chữ viết tay. Giới thiệu các hƣớng tiếp cận trong việc nhận dạng chữ viết tay.
Nhận dạng chữ in. Nhận dạng chữ viết tay. Nhị phân hóa ảnh. Chuẩn hóa kích thƣớc ảnh.
Làm trơn biên chữ. Làm đầy chữ. Làm mảnh chữ. Điều chỉnh độ nghiêng của văn bản.
Khối tách chữ. Tách chữ theo chiều nằm ngang và thẳng đứng. Tách chữ dùng lƣợc đồ sáng. Trích chọn đặc trƣng.
Biến đổi toàn cục và khai triển chuỗi. Đặc trƣng thống kê. Đặc trƣng hình học và hình thái. 14 Số hóa bởi Trung tâm Học liệu http://www.
Huấn luyện và nhận dạng. Một số thuật toán phân lớp nhận dạng chữ viết tay. Các mô hình nhận dạng chữ viết tay. Đánh giá, so sánh các phƣơng pháp nhận dạng chữ.
MÔ HÌNH SVM VÀ ỨNG DỤNG TRONG NHẬN DẠNG CHỮ. Giới thiệu chung. Lý thuyết chiều VC (Vapnik Chervonenkis dimension). Hàm phân lớp.
Siêu phẳng phân cách. SVM với dữ liệu không nhiễu. SVM với dữ liệu có nhiễu. Phân lớp dữ liệu tuyến tính và không tuyến tính.
Sự cần thiết của SVM nhận dạng chữ viết tay hạn chế. Phân lớp dữ liệu. Bài toán cho mô hình SVM. Xây dựng mô hình học cho SVM.
Trích chọn đặc trƣng. Lựa chọn thuật toán huấn luyện phân lớp. Thuật toán nhận dạng chữ viết tay rời rạc. Áp dụng SVM vào nhận dạng chữ Việt viết tay rời rạc.
49 Số hóa bởi Trung tâm Học liệu http://www. Phân nhóm sơ bộ. Trích chọn đặc trƣng. Xây dựng các máy phân lớp SVM.
55 Chƣơng 3 – CHƢƠNG TRÌNH THỬ NGHIỆM. Giới thiệu về hệ nhận dạng dùng LIBSVM. Các chức năng chính của hệ nhận dạng. Sử dụng libsvm-3.
Kết quả chạy thử nghiệm trên tập dữ liệu libsvm. Kết quả thực nghiệm đƣợc tiến hành trên tập dữ liệu mnist. Kết quả thực nghiệm đƣợc tiến hành trên tập dữ liệu usps. Chƣơng trình nhận dạng.
Chức năng chƣơng trình. 64 - Tiền xử lý (Convert Color Image to Black & white): Chuyển đổi ảnh từ ảnh màu sang ảnh nhị phân và chuẩn hóa kích thƣớc ảnh với kích cỡ 16x16. Chức năng Tiền xử lý:. Chức năng trích chọn đặc trƣng.
66 KẾT LUẬN VÀ ĐỀ NGHỊ. 68 TÀI LIỆU THAM KHẢO. 69 Số hóa bởi Trung tâm Học liệu http://www.vn/ 5 Chƣơng 1. GIỚI THIỆU VỀ CHỮ VIẾT VÀ NHẬN DẠNG CHỮ VIẾT 1.
Trình bày về lịch sử của nhận dạng chữ viết tay Ngày nay khoa học công nghệ phát triển mạnh cũng không ngoài mục đích khác là để đáp ứng nhu cầu ngày càng cao của con ngƣời. Mỗi quốc gia đều phải có ít nhất một ngôn ngữ, chữ viết để giao tiếp, từ năm 1922 khái niệm nhận dạng chữ đã đƣợc hình thành cho đến năm 1950, khi máy tính lần đầu tiên đƣợc giới thiệu tính năng mới về nhập và lƣu trữ dữ liệu hai chiều bằng cây bút viết trên một tấm bảng cảm ứng [4]. Công nghệ mới này cho phép các nhà nghiên cứu làm việc trên các bài toán nhận dạng chữ viết tay online. Mô hình nhận dạng chữ viết đƣợc đề xuất từ năm 1951 do phát minh của M.Sheppard đƣợc gọi là GISMO, một robot đọc-viết.
Năm 1954, máy nhận dạng chữ đầu tiên đã đƣợc phát triển bởi J.Rainbow dùng để đọc chữ in hoa nhƣng rất chậm. Năm 1967, Công ty IBM đã thƣơng mại hóa hệ thống nhận dạng chữ. Từ năm 1980-1990, với sự phát triển của các thiết bị phần cứng máy tính và các thiết bị thu nhận dữ liệu, các phƣơng pháp luận nhận dạng đƣợc phát triển trong giai đoạn trƣớc đã có đƣợc môi trƣờng lý tƣởng để triển khai các ứng dụng nhận dạng chữ. Các hƣớng tiếp cận theo cấu trúc và đối sánh đƣợc áp dụng trong nhiều hệ thống nhận dạng chữ.
Từ 1990 đến nay, các kỹ thuật nhận dạng kết hợp với các phƣơng pháp luận trong lĩnh vực học máy (Machine Learning) đƣợc áp dụng rất hiệu quả, một số công cụ học máy hiệu quả nhƣ mạng Nơ ron, mô hình Markov ẩn và SVM (Support Vector Machines)… 1. Giới thiệu các hƣớng tiếp cận trong việc nhận dạng chữ viết tay 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à chất lƣợng nhập thông tin vào máy tính trực tiếp từ các nguồn tài liệu. Vấn đề này đã đƣợc giải quyết gần nhƣ trọn vẹn (sản phẩm FineReader 9.0 của hãng ABBYY có thể nhận dạng chữ in theo 192 ngôn ngữ khác nhau, phần mềm nhận dạng chữ Việt in VnDOCR 4.0 của Viện Công Nghệ Thông tin Hà Nội có thể nhận dạng đƣợc các tài liệu chứa hình ảnh, bảng và văn bản với độ chính xác trên 98%).
Số hóa bởi Trung tâm Học liệu http://www. 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ý các chứng từ, hóa đơn, phiếu ghi, văn bản viết tay,… Nhận dạng chữ viết tay đƣợc tách ra hai hƣớng phát triển: nhận dạng chữ viết tay trực tuyến (online) và chữ viết tay ngoại tuyến (offline). Trong đó nhận dạng chữ viết tay trực tuyến là khi viết lên màn hình thì máy tính sẽ chuyển những hình ảnh viết tay thành dạng text. Khác với chữ offline, chữ online có thêm thông tin về thứ tự các điểm, các nét đƣợc viết.
Hiện nay việc nhận dạng chữ viết tay tiếng Anh online hầu nhƣ đã giải quyết xong và đã đƣợc tích hợp vào máy tính cầm tay thậm chí là máy để bàn và điện thoại di động. Nhƣng đối với tiếng Việt thì chƣa có một phần mềm nào tƣơng tự. Còn trong nhận dạng chữ viết tay offline chúng ta nghiên cứu về nhận dạng chữ viết tay tự nhiên và nhận dạng chữ viết tay hạn chế. Nhận dạng chữ viết tay tự nhiên là dùng để xử lý các văn bản viết tay thông thƣờng, công việc này cực kỳ khó khăn nếu không nói là không thể.
Nhận dạng chữ viết tay hạn chế là dạng các form điều tra xã hội, có các thông tin về chữ số, tên ngƣời, địa chỉ, điện thoại,… Những ngƣời đƣợc điều tra sẽ điền các thông tin bằng chữ viết tay vào form. Để nhập thông tin hàng trăm nghìn các phiếu điều tra vào máy tính sẽ mất rất nhiều thời gian khi làm thủ công bằng tay. Nếu ta dùng một chƣơng trình để nhận dạng các chữ viết tay trên các phiếu điều tra đó thì công việc sẽ đơn giản hơn. Các chữ trong phiếu điều tra thƣờng là các chữ viết tay hạn chế: viết rõ ràng, rời nhau, hoặc không dính liền nhau nhiều, thậm chí là viết hoa.
Hiện nay, phần mềm MarkRead cũng đã có tích hợp đặc trƣng nhận dạng chữ viết tay hạn chế, nhƣng kết quả mới chỉ dừng lại ở phòng thí nghiệm. Nhận dạng chữ viết tay vẫn còn là vấn đề thách thức lớn đối với các nhà nghiên cứu. Bài toán này chƣa thể giải quyết trọn vẹn đƣợc vì nó hoàn toàn phụ thuộc vào ngƣời viết và sự biến đổi quá đa dạng trong cách viết và trạng thái sức khỏe, tinh thần của từng ngƣời viết. Việc xây dựng hệ thống có thể đƣợc mô tả trực quan bằng sơ đồ hình 1.
Trong hệ thống này phần chúng ta cần tập trung quan tâm nhất là phần hệ huấn luyện và nhận dạng. Chúng ta sẽ sử dụng mô hình SVM trong việc huấn luyện và nhận dạng đó. Số hóa bởi Trung tâm Học liệu http://www.vn/ 7 Ảnh văn bản Tiền xử lý Tách chữ Trích chọn đặc trƣng quét vào Văn bản đƣợc Huấn luyện và Hậu xử lý nhận dạng nhận dạng Hình 1. Các giai đoạn trong quá trình xử lý và nhận dạng ảnh Vì vậy muốn xây dựng đƣợc hệ thống có khả thi thì chúng ta cần phải tìm hiểu về SVM nói chung và ứng dụng của SVM nói riêng trong việc nhận dạng chữ viết.
Tiền xử lý Giai đoạn này góp phần làm tăng độ chính xác phân lớp của hệ thống nhận dạng, tuy nhiên nó cũng làm cho tốc độ nhận dạng của hệ thống chậm lại. Vì vậy, tùy thuộc vào chất lƣợng ảnh quét vào của từng văn bản cụ thể để chọn một hoặc một vài chức năng trong khối này. Nếu cần ƣu tiên tốc độ xử lý và chất lƣợng của máy quét tốt thì có thể bỏ qua giai đoạn này. Khối tiền xử lý bao gồm một số chức năng: Nhị phân hóa ảnh, lọc nhiễu, chuẩn hóa kích thƣớc ảnh, làm trơn biên chữ, làm đầy chữ, làm mảnh chữ và xoay văn bản.
Nhị phân hóa ảnh Nhị phân hóa ảnh là một kỹ thuật chuyển ảnh đa cấp xám sang ảnh nhị phân. Trong bất kỳ bài toán phân tích hoặc nâng cao chất lƣợng ảnh nào, nó cũng cần thiết để xác định các đối tƣợng quan trọng. Nhị phân hóa ảnh phân chia ảnh thành 2 phần: phần nền và phần chữ. Hầu hết các phƣơng pháp nhị phân hóa ảnh hiện nay đều lựa chọn một ngƣỡng thích hợp theo cƣờng độ sáng của ảnh và sau đó chuyển tất cả các giá trị độ sáng lớn hơn ngƣỡng đó thành một giá trị độ sáng (“trắng”) và tất cả các giá trị bé hơn ngƣỡng thành một giá trị độ sáng khác (“đen”).
Số hóa bởi Trung tâm Học liệu http://www. Nhị phân hóa ảnh 1. Lọc nhiễu Nhiễu là một tập các điểm sáng thừa trên ảnh. Khử nhiễu là một vấn đề thƣờng gặp trong nhận dạng, nhiễu có nhiều loại (nhiễu đốm, nhiễu vệt, nhiễu đứt nét,.
Nhiễu đốm và nhiễu vệt. Để khử các nhiễu đốm (các nhiễu với kích thƣớc nhỏ), có thể sử dụng các phƣơng pháp lọc (lọc trung bình, lọc trung vị,. Tuy nhiên, với các nhiễu vệt (hoặc các nhiễu có kích thƣớc lớn) thì các phƣơng pháp lọc tỏ ra kém hiệu quả, trong trƣờng hợp này sử dụng phƣơng pháp khử các vùng liên thông nhỏ tỏ ra có hiệu quả hơn. Chuẩn hóa kích thƣớc ảnh Hình 1.
Chuẩn hóa kích thước ảnh các ký tự “A” và “P”. Việc chuẩn hóa kích thƣớc ảnh dựa trên việc xác định trọng tâm ảnh, sau đó xác định khoảng cách lớn nhất từ tâm ảnh đến các cạnh trên, dƣới, trái, phải của hình chữ Số hóa bởi Trung tâm Học liệu http://www.vn/ 9 nhật bao quanh ảnh. Thông qua khoảng cách lớn nhất đó, có thể xác định đƣợc một tỷ lệ co, giãn của ảnh gốc so với kích thƣớc đã xác định, từ đó hiệu chỉnh kích thƣớc ảnh theo tỷ lệ co, giãn này. Nhƣ vậy, thuật toán chuẩn hóa kích thƣớc ảnh luôn luôn đảm bảo đƣợc tính cân bằng khi co giãn ảnh, ảnh sẽ không bị biến dạng hoặc bị lệch.