Chương 1: Tổng quan về hệ thống nhận dạng Chương này trình bầy một số khái niệm liên quan đến nhận dạng. Các cách để phân loại một hệ thống nhận dạng. Chương 2: Tiền xử lý Trình bày một số thuật toán được sử dụng trong giai đoạn tiền xử lý bao gồm hiệu chỉnh lỗi viết tay, nội suy các điểm đã mất, hiệu chỉnh góc nghiêng và một số vấn đề liên quan khác. Chương 3: Cắt chữ và trích chọn đặc trưng Trình bày một số thuật toán được dùng để cắt chữ off-line bao gồm cắt từ khỏi dòng văn bản, cắt ký tự, cách kết hợp giữa cắt chữ và nhận dạng để tăng độ chính xác.
Chương này cũng trình bày một số cách trích chọn đặc trưng để dùng trong giai đoạn nhận dạng. Chương 4: Một số phương pháp nhận dạng Trình bầy một số phương pháp nhận dạng, cách phương pháp này chủ yếu dựa trên các điểm thu nhận được trong quá trình viết. 9 TIEU LUAN MOI download : skknchat@gmail.com Chương 5: Xây dựng chương trình nhận dạng chữ viết tay tiếng Việt on-line Trình bầy đánh giá về các thuật toán được sử dụng trong chương trình Demo kèm theo một số kết quả cài đặt. 10 TIEU LUAN MOI download : skknchat@gmail.com CHƢƠNG 1.
TỔNG QUAN VỀ HỆ THỐNG NHẬN DẠNG CHỮ VIẾT 1. Giới thiệu Thông thường một hệ thống nhận dạng chữ viết được thực hiện qua các bước sau[11]: Tiền xử lý Phân mảnh Trích chọn đặc trưng Phân loại Gắn nhãn Tìm kiếm Hậu xử lý Ngôn ngữ mô hình Hình 1. Mô hình nhận dạng chữ viết tay trực tuyến Giai đoạn tiền xử lý bao gồm các bước hiệu chỉnh dữ liệu vào, làm trơn, hiệu chỉnh góc nghiêng theo chiều ngang hay chiều thẳng đứng, chuẩn hóa kích thước, trích chọn đặc trưng. Giai đoạn phân mảnh bao gồm các 2 bước, đầu tiên là tách các từ ra khỏi dòng văn bản, sau đó là tách riêng các ký tự ra khỏi từ.
Thứ tự các điểm của ký tự được tách sẽ giữ nguyên giống như viết cả từ. 11 TIEU LUAN MOI download : skknchat@gmail.com Giai đoạn trích chọn đặc trưng sẽ chọn các đặc trưng của ký tự để chuyển sang bước phân loại. Đặc trưng được trích chọn ở bước này có thể gồm nhiều loại phụ thuộc vào thuật toán nhận dạng như điểm trội, mã Free man, hướng di chuyển. Ngôn ngữ mô hình giảm thiểu quá trình tìm kiếm.
Ngôn ngữ mô hình gồm một số loại sau: Mô hình dự đoán: Thường được sử dụng trong nhận dạng âm thanh. Dựa trên bảng thống kê một ký tự thường theo sau một ký tự khác với xác suất bao nhiêu. Mô hình dự đoán chủ yếu được sử dụng kết hợp với phân tích ngữ cảnh và hay được sử dụng trong mô hình Markov ẩn. Mô hình mẫu: Tất cả mẫu về ký tự sẽ được lưu trữ trong cơ sở dữ liệu.
Mỗi một ký tự có nhiều biến thể khác nhau. Kỹ thuật tìm kiếm sẽ tìm kiếm đường dẫn gần nhất trong tất cả các mẫu của mỗi tự. Một số kỹ thuật tìm kiếm thông dụng là lập trình động, tìm kiếm từ trái qua phải hay tìm kiếm tuần tự. Hậu xử lý bao gồm việc kiểm tra lại lần cuối kết quả nhận dạng trước khi hiển thị kết quả lên màn hình.
Lịch sử nhận dạng Cho đến nay, các hệ thống nhận dạng đã được phát triển từ nhiều năm, nhưng đến những thập kỷ gần đây mới phát triển mạnh mẽ. Người ta chia lịch sử phát triển của các hệ thống nhận dạng làm 3 thời kỳ:[12] Thời ký thứ nhất từ năm 1900 – 1980: Đây là thời kỳ sơ khai. Nhận dạng ký tự được bắt đầu từ những năm 1900 khi các nhà khoa học người Nga nghiên cứu phát triển một hệ thống trợ giúp cho người khuyết tật. Hệ thống nhận dạng đầu tiên xuất hiện vào giữa năm 1940 cùng với sự phát triển của máy vi tính.
Trong thời kỳ này, các hệ thống nhận dạng chủ yếu tập trung vào nhận dạng chữ in hoặc một tập nhỏ các ký tự viết tay. Trong thời kỳ này, các hệ thống 12 TIEU LUAN MOI download : skknchat@gmail.com nhận dạng chữ in chủ yếu sử dụng phương pháp đối sánh mẫu, ảnh cần nhận dạng sẽ được đem so sánh với các ảnh trong thư viện ảnh mẫu. Với chữ viết tay, các kỹ thuật xử lý ảnh ở mức thấp được sử dụng để trích chọn các vector đặc trưng sau đó sẽ được phân loại. Các thuật toán nhận dạng chủ yếu tập trung vào các ký tự Latin và số, chỉ có một số ít nghiên cứu tập trung vào nhận dạng các ký tự Japanese, Chinese, Hebrew, Indian, Cyrillic, Greek và các ký tự Arabic.
Các hệ thống nhận dạng thương mại xuất hiện đầu tiên vào những năm 1950 khi các thiết bị điện tử có màn hình cảm ứng thu nhận tọa độ di chuyển của bút cảm ứng xuất hiện. Các thiết bị này đã giúp các nhà nghiên cứu làm việc với các vấn đề liên quan đến chữ viết tay trực tuyến. 1980 –1990 Thời kỳ phát triển: Các nghiên cứu trước năm 1980 gặp nhiều khó khăn do thiếu các thiết bị máy tính có tốc độ cao và các thiết bị thu nhận dữ liệu. Từ năm 1980 trở đi, với sự bùng nổ của công nghệ thông tin, các thiết bị phần cứng có có tốc độ cao đã giúp cài đặt được các thuật toán có độ phức tạp cao từ thời kỳ trước.
Từ năm 1990 đến nay – Thời kỳ tiến bộ. Đây là thời kỳ phát triển mạnh mẽ của lĩnh vực nhận dạng về cả nhận dạng chữ in và nhận dạng chữ viết tay, một phần là do các thiết bị phần cứng phát triển( máy tính có tốc độ cao, các thiết bị thu nhận dữ liệu như máy quét, camara, các thiết bị cảm ứng thu nhận kết quả chính xác hơn), phần còn lại là do có nhiều thuật toán nhận dạng tốt hơn tận dụng được tốt đa các các phương pháp mạng Neural, mô hình Markov ẩn, v. Tổng quan về các thiết bị cầm tay Trong phần này, tôi sẽ đề cập đến các thiết bị hỗ trợ thu nhận chữ viết tay, các đặc trưng cũng như các hệ điều hành thường được dùng trên từng loại thiết bị. Nhận dạng chữ viết tay trực tuyến là việc chuyển tự động các nét bút được viết trên các thiết bị số hóa hoặc PDA thành dạng văn bản.Các bộ cảm ứng của 13 TIEU LUAN MOI download : skknchat@gmail.com các thiết bị này sẽ thu thâp các tọa độ di chuyển của bút viết.
Các tính hiệu thu được sẽ được chuyển thành dạng mã ký tự để có thể xử lý được trong các chương trình xử lý văn bản. Các thành phần của một hệ thống nhận dạng chữ viết tay trực tuyến gồm: Một bút cảm ứng để người viết viết lên màn hình cảm ứng Một màn hình cảm ứng, nơi người viết viết văn bản và hiển thị kết quả. Một ứng dụng dịch cử động của người viết thành các ký tự. Nhận dạng chữ viết tay được sử dụng rộng rãi để thu thập dữ liệu cho các thiết bị PDA vì các thiết bị PDA thường không có bàn phím.
Thiết bị PDA đầu tiên hỗ trợ nhận dạng chữ viết tay là Apple Newton. Tuy nhiên thiết bị này không được thương mại hóa rộng bởi khả năng nhận dạng còn kém. Phiên bản tiếp theo của Apple Newton là Newton OS 2. Trong phiên bản này, độ chính xác đã được cải thiện đáng kể bao gồm cả việc hiệu chỉnh lỗi trong quá trình viết.
Các thiết bị ra đời tiếp theo cố gắng tăng độ chính xác trong quá trình nhận dạng, bao gồm: Go‟ tablet computer được sản xuất bởi NCR, IBM sử dụng hệ điều hành Go‟s Penpoint, IBM‟s Thinkpad tablet computer sử dụng hệ điều hành Penpoint và các hệ thống nhận dạng sau đó như Microsoft Windows for Pen và IBM‟s Pen for OS/2. Tuy nhiên chưa có hệ thống nào được thương mại hóa rộng rãi. Mãi đến khi có sự xuất hiện của máy Palm dựa trên hệ thống nhận dạng Graffiti@, hệ thống nhận dạng này dựa trên việc định nghĩa một tập các nét bút cho từng ký tự. Các hệ thống nhận dạng sau đó có độ chính xác cao được tích hợp vào các hệ điều hành như Microsoft‟s version of windows XP operating system for Tablet PCs hoặc Windows Mobile OS for PDAs.
Thiết bị cầm tay PDA(Personal Digital Assistant) là các thiết bị có kích thước nhỏ, có cấu trúc gần giống như máy tính cá nhân. Các thiết bị PDA cung 14 TIEU LUAN MOI download : skknchat@gmail.com cấp các công cụ để trợ giúp giải quyết công việc cho cá nhân. Thường gồm các công cụ như Lịch làm việc, Sổ địa chỉ, ghi chú v. Dữ liệu chủ yếu của các thiết bị PDA được thu thập bằng cách viết lên màn hình cảm ứng, hệ thống nhận dạng sẽ nhận dạng các nét bút thành đầu vào văn bản.
Ngoài ra một số thiết bị PDA khác còn cho phép kết nối với bàn phím thông qua cổng hồng ngoại. PDAs gồm hai loại chính là Palm OS PDAs và Microsoft Pocket PC. Thiết bị cầm tay Các phiên bản của Palm Pilots thường hỗ trợ màn hình 320 x 320, Pocket PC thường hỗ trợ độ phân giải thấp nhất là 320 x 480, các thiết bị Pocket PC gần đây hỗ trợ độ phân giải 480 x 640. Các thiết bị có độ phân giải cao sẽ giúp người viết ghi được nhiều từ hơn.
Bộ vi xử lý của các thiết bị cầm tay chủ yếu là Intel Xscale, Taxas Instrucments TI Omap, Samsum. Bảng sau đây chỉ ra hệ điều hành của một số loại thiết bị cầm tay thông dụng trên thị trường. 15 TIEU LUAN MOI download : skknchat@gmail.com Tên thiết bị Hệ điều hành Dòng máy iPad của HP Window Mobile Pocket 2003 O2 Xphone SmartPhone Windows 2003 Smartphone Edition Nokia 9500 Symbian OS 7.0S, Series 80 P910i Symbian OS, Series 70 Motorola E680 Linux Handheld 1. Hệ thống nhận dạng ký tự tự động(ACR) Các hệ thống nhận dạng ký tự tự động được phân loại dựa trên hai tiêu chí: Phân loại dựa trên phương pháp thu nhận dữ liệu Phân loại dựa trên kiểu văn bản Dữ liệu được thu thập từ rất nhiều thiết bị thu nhận dữ liệu, thiết bị thu nhận dữ liệu ảnh hưởng nhiều đến việc quyết định thuật toán nhận dạng nào được áp dụng lên hệ thống ACR[12].
Kiểu văn bản củng là nhân tố quan trọng ảnh hưởng đến hệ thống nhận dạng ACR. Có kiểu dữ liệu yêu cầu tiền xử lý rất ít, tuy nhiên có kiểu văn bản yêu cầu phải xử lý nhiều hơn(Tách chữ, v.) trước khi nhận dạng. Chi tiết về kiểu văn bản sẽ được thảo luận ở phần sau.1 Phận loại hệ thống dựa trên thiết bị thu nhận dữ liệu Thiết bị thu nhận dữ liệu cho hệ thống ACR rất đa dạng như máy quét, các thiết bị cầm tay, v.