CÁC PHƯƠNG PHÁP TRÍCH CHỌN ĐẶC TRƯNG CHỮ VIẾT TAY

Một phần của tài liệu LUẬN VĂN:MẠNG NEURAL RBF VÀ ỨNG DỤNG NHẬN DẠNG CHỮ VIẾT TAY pdf (Trang 32 - 36)

2.4 Kết quả thực nghiệm

2.1 NHẬN DẠNG MẪU

Nhận dạng chữ viết tay là một lĩnh vực con của nhận dạng dạng mẫu, do vậy trước khi đi sâu vào trình bày chi tiết bài toán nhận dạng chữ viết tay, tôi xin trình bày sơ lược về lĩnh vực nhận dạng mẫu và bài toán nhận dạng mẫu.

2.1.1 Nhận dạng mẫu

2.1.1.1 Mẫu là gì ?

Mẫu(pattern) có thể phân thành 2 loại : mẫu trừu tượng và mẫu cụ thể. Các ý tưởng, lập luận và khái niệm... là những ví dụ về mẫu trừu tượng, nhận dạng các mẫu như vậy thuộc về lĩnh vực nhận dạng khái niệm. Các mẫu cụ thể bao gồm các đối tượng có tính không gian, thời gian và hình ảnh... Các đối tượng vật lý, chữ ký, chữ viết, ký hiệu, ảnh, đoạn sóng âm thanh, điện não đồ hoặc điện tâm đồ, hàm số... là những ví dụ về mẫu cụ thể.

2.1.1.2 Nhận dạng mẫu là gì ?

Không có một định nghĩa thống nhất cho nhận dạng mẫu (Pattern recognition) nhưng điều này không gây tranh cãi gì trong giới nghiên cứu. Sau đây là một số định nghĩa theo ngữ cảnh nghiên cứu :

- Duda Et Al: Nhận dạng mẫu là việc quy những đối tượng vật lí hay sự kiện vào một loại (nhóm) nào đó đã xác định từ trước.

- Jürgen Schürmann: Nhận dạng mẫu là việc gán nhãn w cho một quan sát x.

- Selim Aksoy: Nhận dạng mẫu là việc nghiên cứu cách làm cho một máy có thể thực hiện:

+ Quan sát môi trường

+ Học cách phân biệt được các mẫu cần quan tâm

+ Đưa ra các quyết định đúng đắn về loại (nhóm) của các mẫu

2.1.1.3 Lịch sử của lĩnh vực nhận dạng mẫu

Nhận dạng mẫu đã có lịch sử khá lâu đời, trong thập kỷ 60 của thế kỷ 20 hầu hết vấn đề nhận dạng mẫu dừng lại ở việc nghiên cứu lí thuyết thống kê. Về sau với sự phát triển mạnh mẽ của máy tính thì phần thực nghiệm cũng trở nên đơn giản hơn. Khi mà xã hội chúng ta đang phát triển từ thời kỳ công nghiệp sang hậu công nghiệp, đối với vấn đề tự động hóa thì việc thông tin được nhận và xử lý một cách tự động là rất cần thiết. Khuynh hướng này làm cho vấn đề nhận dạng mẫu trở nên rất quan trọng trong ứng dụng kỹ thuật và trong nghiên cứu ngày nay. Nhận dạng mẫu tích hợp hầu hết vào các hệ thống máy móc thông minh, có khả năng tự đưa ra quyết định để giải quyết vấn đề.

2.1.1.4 Ứng dụng của nhận dạng mẫu

Nhận dạng mẫu có rất nhiều ứng dụng trong đời sống cũng như trong khoa học kỹ thuật :

-Trong nông nghiệp : Nhận dạng mẫu được sử dụng để phân tích mùa màng, dự báo các đại dịch như châu chấu, sâu bệnh, cúm gia cầm, cúm lợn... Ngoài ra nhận dạng mẫu cũng còn được dùng để phân loại đất từ các ảnh được chụp từ vệ tinh.

-Khám phá tri thức trên Web : Ngày nay việc bùng nổ lượng thông tin khổng lồ trên Internet làm cho việc tìm kiếm và lọc thông tin trên mạng là hết sức quan trọng. Nhận dạng mẫu được nhúng vào các máy tìm kiếm để trả lại kết quả tìm kiếm thông minh và chính xác. Ngoài ra nó cũng được trong các hệ thống lọc thư rác, nhận dạng tự động các trang web đen.

-Trong lĩnh vực y học : Phân tích và biểu diễn gene, phân loại sinh học dựa trên thông tin di truyền.

2.1.1.5 Các bài toán nhận dạng mẫu

Trên thực tế thường gặp các bài toán nhận dạng mẫu sau :

-Phân lớp (classify) : Dựa trên một tập con đã biết nhãn, đưa ra một cách phân các đối tượng thuộc tập nền thành các lớp.

-Phân cụm (cluster) : Chia tập đối tượng thành nhóm sao cho các đối tượng trong mỗi nhóm tương đối giống nhau còn các đối tượng khác nhóm thì khác nhau.

-Phân tích hồi quy (regression) hay nhận dạng hàm : Xác định một biến (hàm) qua tập các biến khác.

-Nhận thực (Identify) : Xác định đối tượng trong tập đã cho có là đối tượng đang quan tâm hay không. Chẳng hạn như nhận thực vân tay, nhận thực mặt người...

-Mô tả : Mô tả các đối tượng dưới hình thức dễ phân tích. Ví dụ đối tượng. mô tả điện tâm đồ dưới dạng biểu đồ đặc trưng hoặc xâu mã.

2.1.1.6 Các bước xử lý trong hệ thống nhận dạng mẫu

Mặc dù có rất nhiều loại bài toán nhận dạng mẫu, tuy nhiên để giải quyết một bài toán thì một hệ thống nhận dạng mẫu phải thực hiện qua các bước cơ bản dưới đây :

Hình 14: Các bước xử lý trong hệ thống nhận dạng mẫu (adsbygoogle = window.adsbygoogle || []).push({});

1)Thu nhận tín hiệu

Nếu là hệ nhận dạng đối tượng vật lý, ở đầu vào của hệ thống thường là một loại thiết bị chuyển đổi như máy ghi hình hay ghi âm… Thiết bị này thu nhận tín hiệu về đối tượng để nhận dạng. Các tín hiệu này thông thường sẽ được số hóa, sau đó sẽ được tiến hành tiền xử lý như: lọc nhiễu, tách ngưỡng…

2) Phân đoạn (segmentation)

Phân đoạn là một trong những bài toán rất khó trong nhận dạng mẫu. Chẳng hạn, trong bài toán nhận dạng văn bản in ra dữ liệu text thì giai đoạn phân đoạn chính là

Đầu vào

Thu tín hiệu, tiền xử lý

Phân đoạn Trích chọn đặc trưng

Nhận dạng Hậu xử lý

việc xác định đâu là vùng dữ liệu text để nhận dạng, tiếp đó ta phải tách được những vùng có thể là một từ, rồi lại tách tiếp ra từng ký tự... Như vậy có thể nói việc phân đoạn trong bài toán nhận dạng mẫu là quá trình xác định được đâu là vùng dữ liệu cần quan tâm.

3) Trích chọn đặc trưng

Ranh giới khái niệm giữa việc trích chọn đặc trưng và phân lớp ở mức độ nào đó có phần không rõ ràng: một bộ trích chọn đặc trưng lý tưởng phải làm cho công việc còn lại của bộ phân lớp trở nên dễ dàng Mục tiêu chung của bộ trích chọn đặc trưng là dựa trên tín hiệu thu được mô tả các đối tượng bằng các giá trị của chúng mà chúng có giá trị gần xấp xỉ nhau đối với các đối tượng thuộc cùng loại và khác xa nhau nếu khác loại. Hơn nữa để tiện xử lý thì càng ít đặc trưng càng tốt. Điều này dẫn đến việc phải tìm ra các đặc trưng khác nhau và chúng không phụ thuộc hoàn cảnh ta thu tín hiệu về đối tượng. Đầu ra của công đoạn này được gọi là vector đặc trưng của đối tượng, thông thường đây là một vector số thực.

4) Nhận dạng

Nhiệm vụ của thành phần này trong hệ thống là sử dụng các vector đặc trưng được cung cấp từ bước trước (trích chọn đặc trưng) để gắn các đối tượng vào các lớp hoặc phân tích hồi quy hay mô tả đối tượng. Các kỹ thuật thường được sử dụng cho công đoạn nhận dạng đó là: thuật toán k-láng giềng gấn nhất, mạng neural, máy vector hỗ trợ SVM... Nói chung, ở bước này gần như đã có công thức xử lý cố định thường không bị phụ thuộc vào bài nhận dạng mẫu cụ thể nào.

5) Hậu xử lý

Một bộ nhận dạng hiếm khi chỉ để dùng đơn lẻ. Thay vào đó nó thường dùng để đưa ra thao tác tương ứng, mỗi thao tác mất một chi phí tương ứng. Hậu xử lý sẽ dùng đầu ra của bộ phân lớp để quyết định thao tác tương ứng. Theo quan niệm, cách đơn giản nhất để đánh giá hoạt động của một bộ nhận dạng là xem tỷ lệ nhận dạng sai với các mẫu mới. Do đó chúng ta cần phải nhận dạng với tỷ lệ lỗi thấp nhất. Tuy nhiên chúng ta cần các thao tác tương ứng phải làm cho tổng chi phí là thấp nhất. Có thể phải kết hợp các tri thức đã biết về chi phí, và nó sẽ có ảnh hưởng đến việc ra các quyết định hành động. Chúng ta cũng cần ước lượng trước chi phí để xem có thỏa mãn hay không.

2.2 BÀI TOÁN NHẬN DẠNG CHỮ VIẾT TAY

2.2.1 Tình hình chung về nhận dạng chữ viết tay

Bài toán nhận dạng chữ viết tay được ứng dụng rất nhiều trong thực thế : được tích hợp vào hệ thống nhận dạng form tự động, tích hợp trong các máy PDA có màn hình cảm ứng, nhận dạng chữ ký... Do có nhiều ứng dụng quan trọng như vậy nên từ lâu bài toán nhận dạng chữ viết tay đã thu hút rất nhiều người nghiên cứu, tìm cách giải quyết. Ngày nay bài toán nhận dạng chữ viết tay đã được giải quyết gần như trọn vẹn trên thế giới cũng như ở Việt Nam. Hệ nhận dạng sử dụng mạng Neural nhân chập giới thiệu ở [8] đã đạt độ chính xác đến 99.60% (trên bộ dữ liệu MNIST). Đây là độ chính xác gần như tuyệt đối và nhanh chóng được áp dụng vào rất nhiều ứng dụng. Các sản phẩm ứng dụng khác có ý nghĩa thực tế lớn có thể kể đến như sản phẩm FineReader của hãng AABYY có thể nhận dạng 20 thứ tiếng khác nhau, sản phẩm OmniPage của hãng ScanSoft nhận dạng chữ in tiếng Anh,…. và ở Việt Nam, chúng ta có sản phẩm VNDOCR của Viện Công nghệ thông tin nhận dạng chữ in tiếng Việt với độ chính xác tới 99%.

2.2.2 Giới thiệu bài toán nhận dạng chữ viết tay

Nhận dạng chữ viết tay được thực hiện qua hai hình thức đó là nhận dạng online và nhận dạng offline. Nhận dạng online có nghĩa là máy tính sẽ nhận dạng các chữ được viết lên màn hình ngay khi nó được viết. Đối với những hệ nhận dạng này, máy tính sẽ lưu lại các thông tin về nét chữ như thứ tự nét viết, hướng và tốc độ của nét viết trong khi nó đang được viết. Còn nhận dạng offline tức là việc nhận dạng được thực hiện sau khi chữ đã được viết hay in lên giấy rồi, lúc đó thông tin đầu vào là hình ảnh văn bản hoặc ký tự cần nhận dạng.

Trong khuôn khổ nội dung khóa luận này tôi chỉ xét hình thức nhận dạng offline cho từng ký tự một.

2.2.3 Hướng giải quyết cho bài toán nhận dạng ký tự viết tay

Như đã nói ở trên bài toán nhận dạng chữ viết tay thuộc lớp bài toán nhận dạng mẫu, như vậy để giải quyết bài toán nhận dạng chữ viết tay thì phải tuân theo các bước của bài toán nhận dạng mẫu đã nêu ở phần 2.1.1.6. Tuy nhiên do ở đây ta chỉ xét việc nhận

dạng từng ký tự viết tay một nên bước tiền xử lý và bước phân đoạn xem như không cần thiết. Có thể khái quát quá trình nhận dạng chữ viết tay thông qua hình vẽ dưới đây :

Hình 15 : Các bước giải quyết bài toán nhận dạng chữ viết tay

Đầu vào là bức ảnh của một ký tự cần nhận dạng, sau khi qua bộ trích chọn đặc trưng chữ viết tay ta thu được vector đặc trưng của ký tự đó, vector đặc trưng được chuyển đến bộ nhận dạng để thực hiện lượng giá và đưa ra kết quả nhận dạng. Trong bài toán nhận dạng chữ viết tay có rất nhiều phương pháp trích chọn đặc trưng chữ viết, dưới đây tôi sẽ trình bày chi tiết 3 phương pháp trích chọn đặc trưng chữ viết đó là : phương pháp sử dụng bộ phân tích thành phần chính, phương pháp sử dụng momen Legendre, phương pháp sử dụng mạng Neural nhân chập. Trong bài toán nhận dạng chữ viết tay bộ nhận dạng thường sử dụng các công cụ sau : phương pháp k-láng giềng gần nhất, mạng Neural truyền thẳng MLP, máy vector hỗ trợ SVM, mạng Neural RBF... Trong khuôn khổ của khóa luận này tôi chỉ xét bộ nhận dạng là mạng Neural RBF.

2.3 CÁC PHƯƠNG PHÁP TRÍCH CHỌN ĐẶC TRƯNG CHỮ VIẾT TAY

Trích chọn đặc trưng đóng vai trò hết sức quan trọng để giải quyết bài toán nhận dạng chữ viết tay. Thực chất quá trình trích chọn đặc trưng của chữ viết tay tức là ta đi tìm các đại lượng để biểu diễn cho các ký tự viết tay, mà các đại lượng này ít bị thay đổi khi ký tự có sự biến đổi về hình dạng. Một phương pháp trích đặc trưng chữ viết tốt cho ra được các đặc trưng ít bị biến đổi khi ký tự bị biến dạng nhiều. Dưới đây xin dưới thiệu 3 phương pháp trích chọn đặc trưng hay được sử dụng cho bài toán nhận dạng chữ viết tay đó là :

Một phần của tài liệu LUẬN VĂN:MẠNG NEURAL RBF VÀ ỨNG DỤNG NHẬN DẠNG CHỮ VIẾT TAY pdf (Trang 32 - 36)