MỤC LỤC: Chương 1: Cơ sở lý thuyết 6 1.1 Tổng quan về hệ thống nhận dạng 6 1.1.1 Đối tượng nhận dạng 6 1.1.2 Mô hình hóa bài toán nhận dạng 7 1.1.3 Các vấn đề cơ bản của hệ thống nhận dạng 8 1.1.3.1 Mô hình hóa đối tượng thu nhận (trích chọn đặc trưng) 8 1.1.3.2 Mô hình tham số 9 1.1.3.3 Mô hình cấu trúc 9 1.1.3.4 Quá trình học 9 1.1.3.5 Quá trình ra quyết định (hàm quyết định) 11 1.1.4 Sơ đồ tổng quan của hệ thống nhận dạng. 11 1.2 Bài toán nhận dạng ký tự 12 1.2.1 Mở đầu 12 1.2.2 Sơ đồ tổng quát của một hệ nhận dạng chữ viết 14 1.2.2.1 Giai đoạn xử lý sơ bộ 14 1.2.2.2 Giai đoạn tách chữ 15 1.2.3 Nhận dạng bằng phương pháp đối sánh mẫu 16 1.2.3.1 Phương pháp dùng dãy điểm đặc trưng 16 1.2.3.2 Phương pháp lưới 17 1.2.3.3 Phương pháp cung 17 1.2.3.4 Phương pháp chia miền và đo mật độ 18 1.2.4 Nhận dạng bằng phương pháp phân tích cấu trúc 18 1.2.4.1 Phương pháp phân tích đường đơn 18 1.2.4.2 Phương pháp phân tích hình học 19 1.2.4.3 Phương pháp phân tích đường biên 20 1.2.4.4 Phương pháp sử dụng hình chiếu 20 1.3 Một số thuật toán nhận dạng mờ 22 1.3.1 Các thuật toán phân hoạch 24 1.3.1.1 Thuật toán cMeans rõ (Hard cMeans hay HCM) 24 1.3.1.2 Thuật toán cMeans mờ (Fuzzy cMeans hay FCM). 27 1.3.2 Thuật toán nhận dạng chữ số hai mức xám 29 1.3.2.1 Phương pháp so sánh vector mờ. 30 1.3.2.2 Phương pháp đối sánh hai tập mờ 31 1.3.3 Thuật toán nhận dạng chữ số đa mức xám. 33 1.3.3.1 Phương pháp dùng ma trận nhân 36 1.3.3.2 Phương pháp dùng ma trận mặt nạ. 42 Chương 2: Xây dựng ứng dụng 44 2.1 Không gian biểu diễn đối tượng 44 2.2 Qúa trình học 44 2.3 Qúa trình nhận dạng và ra quyết định 47
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN
Sinh viên 1 Nguyễn Quang Hưng
2 Nguyễn Hoàng Long
Trang 2LỜI CẢM ƠN
Đề tài “Nghiên cứu nhận dạng chữ số viết tay sử dụng logic mờ” với sự tìm
hiểu và quá trình thực hiện của các thành viên trong nhóm, cùng với sự chỉ bảo vàhướng dẫn của của thầy giáo Dù trong quá trình thực hiện đề tài còn nhiều khó khăn
do mới tiếp cận với thực tiễn và thời gian cho phép nhưng chúng em đã nỗ lực cố gắng,cùng nhau trao đổi, thảo luận, tìm tòi kỹ lưỡng những vấn đề khía cạnh khó và đã hoànthành tốt đề tài được giao
Qua đây chúng em xin chân thành cám ơn cô Nguyễn Lan Anh đã tận tình chỉbảo, hướng dẫn thực hiện đề tài, đồng thời đưa ra những lời khuyên và những kinhnghiệm quý báu để chúng em có thể hoàn thành thật tốt đề tài này Kết thúc đề tài,nhóm chúng em rất mong nhận được những ý kiến đóng góp từ phía thầy cô và các bạn
để có thể hoàn thiện hơn đề tài được giao
Nhóm sinh viên
Nguyễn Quang Hưng
Trang 3MỤC LỤC:
Chương 1: Cơ sở lý thuyết
6
1.1 Tổng quan về hệ thống nhận dạng 6
1.1.1 Đối tượng nhận dạng 6
1.1.2 Mô hình hóa bài toán nhận dạng 7
1.1.3 Các vấn đề cơ bản của hệ thống nhận dạng 8
1.1.3.1 Mô hình hóa đối tượng thu nhận (trích chọn đặc trưng) 8
1.1.3.2 Mô hình tham số 9
1.1.3.3 Mô hình cấu trúc 9
1.1.3.4 Quá trình học 9
1.1.3.5 Quá trình ra quyết định (hàm quyết định) 11
1.1.4 Sơ đồ tổng quan của hệ thống nhận dạng 11
1.2 Bài toán nhận dạng ký tự 12
1.2.1 Mở đầu 12
1.2.2 Sơ đồ tổng quát của một hệ nhận dạng chữ viết 14
1.2.2.1 Giai đoạn xử lý sơ bộ 14
1.2.2.2 Giai đoạn tách chữ 15
1.2.3 Nhận dạng bằng phương pháp đối sánh mẫu 16
1.2.3.1 Phương pháp dùng dãy điểm đặc trưng 16
1.2.3.2 Phương pháp lưới 17
1.2.3.3 Phương pháp cung 17
1.2.3.4 Phương pháp chia miền và đo mật độ 18
1.2.4 Nhận dạng bằng phương pháp phân tích cấu trúc 18
1.2.4.1 Phương pháp phân tích đường đơn 18
1.2.4.2 Phương pháp phân tích hình học 19
1.2.4.3 Phương pháp phân tích đường biên 20
1.2.4.4 Phương pháp sử dụng hình chiếu 20
1.3 Một số thuật toán nhận dạng mờ 22
1.3.1 Các thuật toán phân hoạch 24
1.3.1.1 Thuật toán c-Means rõ (Hard c-Means hay HCM) 24
Trang 41.3.1.2 Thuật toán c-Means mờ (Fuzzy c-Means hay FCM) 27
1.3.2 Thuật toán nhận dạng chữ số hai mức xám 29
1.3.2.1 Phương pháp so sánh vector mờ 30
1.3.2.2 Phương pháp đối sánh hai tập mờ 31
1.3.3 Thuật toán nhận dạng chữ số đa mức xám 33
1.3.3.1 Phương pháp dùng ma trận nhân 36
1.3.3.2 Phương pháp dùng ma trận mặt nạ 42
Chương 2: Xây dựng ứng dụng 44 2.1 Không gian biểu diễn đối tượng 44
2.2 Qúa trình học 44
2.3 Qúa trình nhận dạng và ra quyết định 47
Trang 5LỜI NÓI ĐẦU
Nhận dạng ký tự là kỹ thuật được sử dụng để chuyển đổiảnh văn bản sang dạng văn bản có thể chỉnh sửa trong máytính Nó được ứng dụng trong công tác quét và lưu trữ các tàiliệu cũ, đẩy nhanh việc nhập dữ liệu vào máy với ít lỗi hơn
Việc nhận dạng chữ in bằng tay, chữ thảo bằng tay, vàthậm chí những phiên bản đánh máy được in ra của vài chữ(đặc biệt là những chữ có số chữ cái lớn), vẫn còn là một đề tàicủa các nghiên cứu
thành công lớn về mặt thương mại trong những năm gần đây
hãng Apple Newton đi tiên phong trong công nghệ này Nhữnggiải thuật sử dụng trong những thiết bị này sử dụng những ưuđiểm rằng thứ tự, tốc độ, và hướng của những đoạn dòng đơn
lẻ đã được biết trước Tương tự, người dùng có thể được yêucầu sử dụng chỉ một vài loại kiểu chữ nhất định Nhữngphương pháp này không thể dùng được trong phần mềm scantài liệu giấy, do đó sự nhận dạng chính xác văn bản in bằngtay vẫn là một vấn đề lớn đang được bỏ ngỏ Với mức chínhxác từ 80% đến 90%, những ký tự in bằng tay sạch sẽ có thểđược nhận ra, nhưng độ chính xác đó vẫn tạo ra hàng tá lỗimỗi trang, khiến cho công nghệ đó chỉ hiệu quả trong vàitrường hợp nào đó Sự đa dạng của OCR hiện nay được biếtđến trong công nghiệp là ICR, (Intelligent CharacterRecognition - Nhận dạng Ký tự Thông minh)
Nhận dạng chữ viết tay là một lĩnh vực nghiên cứu sôinổi, với tỷ lệ nhận dạng thậm chí còn thấp hơn cả văn bản inbằng tay Tỷ lệ nhận dạng cao hơn của những bản viết taychung chung hầu như là không thể nếu không sử dụng thôngtin về ngữ pháp và văn cảnh Ví dụ như, nhận dạng cả một chữ
từ một cuốn từ điển thì dễ hơn là việc cố gắng lấy ra những ký
tự rời rạc từ đoạn đó Đọc dòng Tổng cộng của một
Trang 6tờ séc (luôn luôn được viết bằng số) là một ví dụ trong đó sửdụng những từ điển nhỏ hơn có thể tăng tỷ lệ nhận dạng rấtnhiều Kiến thức về ngữ pháp của một ngôn ngữ được scancũng có thể giúp xác định một từ có thể là động từ hay danh
từ, ví dụ như vậy, sẽ cho phép độ chính xác cao hơn Hìnhdạng của chữ viết tay bản thân nó đã không chứa đủ thông tin
về để nhận dạng chính xác (hơn 98%) tất cả những đoạn chữviết tay
Trang 7Mức cảm nhận: ở đây là sự cảm nhận được sự tồn tại
các đối tượng quan sát hay đối tượng mà hệ thống cần nhậndạng Mức này cũng đưa ra quá trình thu nhận số liệu qua các
bộ cảm biến trong hệ thống nhận dạng Ví dụ trong hệ thốngnhận dạng xử lý ảnh, đối tượng là các file ảnh lưu trữ dướidạng số và được thu nhận đầu vào qua scanner hoặc các fileảnh
Mức nhận thức: ở đây biểu diễn quá trình học, mô hình
hoá đối tượng để tiến tới hình thành sự phân lớp(classification)
Mức nhận biết: từ đối tượng quan sát được có thể trả lời
nhận biết đối tượng là gì? thuộc vào lớp nào trong các lớp đãbiết Đây chính là quá trình ra quyết định
1.1.1 Đối tượng nhận dạng
Đối tượng nhận dạng (pattern object) được coi như là mộtthực thể vật lý tồn tại mà con người có thể cảm nhận đượcbằng sự miêu tả hoặc đo lường Ví dụ như hình ảnh, âm
Trang 8thanh được cảm nhận bằng mắt và tai, và nó có thể thu nhậnqua các bộ cảm biến như máy quay phim, máy ảnh số Có hailoại đối tượng chính:
tượng mà đặc tính của nó được đo lường và biểudiễn bởi các con số
tượng mà đặc tính của nó được biểu diễn bởi cácdạng miêu tả hay đặc trưng bởi các ký hiệu
Trong các đối tượng nghiên cứu, tìm ra được tập hợp cácđối tượng có cùng chung một hoặc nhiều đặc trưng (thuộctính) thì tập hợp đối tượng đó gọi là một lớp đối tượng (class)
Quá trình bao gồm việc xác định các lớp của đối tượngsao cho có thể phân biệt được các lớp với nhau là quá trìnhhình thành sự phân lớp, nhờ quá trình này hệ thống sau khitiếp nhận một đối tượng ở đầu vào sẽ nhận biết được và trả lờiđối tượng đó thuộc lớp nào (đây là quá trình ra quyết định) Sựphân lớp là một quá trình cơ bản của nhận dạng
Quá trình xuất phát từ sự biểu diễn, quan sát đối tượngtrong quá trình cảm nhận để có thể tìm ra những đặc tính đặctrưng cho đối tượng vật lý được gọi là quá trình trích chọn đặctrưng hay còn gọi là khâu mô hình hóa đối tượng Quá trìnhtrích chọn đặc trưng này rất khác nhau tùy thuộc vào đốitượng cần nhận dạng
Trong bài toán nhận dạng chúng ta quan tâm đến:
miêu tả đối tượng sau quá trình cảm nhận
trưng sau quá trình trích chọn đặc trưng
tượng hoặc tên các lớp đối tượng cho phép nhậnbiết đối tượng quan sát thuộc về lớp nào
1.1.2 Mô hình hóa bài toán nhận dạng
Trang 9Gọi X là đối tượng nhận dạng: X=(x1, x2, , xn), các xi R
Như vậy đối với hệ thống nhận dạng, các đối tượng nhậndạng X đã biết qua quan sát, đo lường, cảm nhận còn khônggian diễn dịch và quy luật có thể được biết trước trong cơ
sở tri thức (ví dụ trong nhận dạng chữ viết), hoặc có thể lànhững điều chưa biết Bài toán ở đây chính là xây dựng một hệthống tự cấu trúc, đòi hỏi một quá trình học từ các đối tượngquan sát thu nhận được (xác định không gian ) đến việc tìmquy luật (ra quyết định)
1.1.3 Các vấn đề cơ bản của hệ thống nhận dạng
Quá trình nhận dạng bao gồm ba giai đoạn chính:
dạng) và suy diễn quá trình học
Khi mô hình biểu diễn đối tượng đã được xác định, quátrình nhận dạng chuyển sang giai đoạn học Học là giai đoạnrất quan trọng, thao tác học nhằm cải thiện, điều chỉnh việcphân hoạch tập đối tượng thành các lớp
Việc nhận dạng chính là tìm ra quy luật và các thuật toán
để có thể gán đối tượng nhận dạng vào một lớp hay nói mộtcách khác là gán cho đối tượng một tên Khi số lớp và các quyluật đã biết trước, ta gọi đó là học có mẫu và ngược lại gọi làhọc không có mẫu hay là tự học
Trang 101.1.3.1 Mô hình hóa đối tượng thu nhận (trích chọn đặc trưng)
R
= {XX} là không gian quan sát thu nhận
= {XY} là không gian đặc tính.} là không gian đặc tính
Quá trình mô hình hóa đối tượng hay trích chọn đặc trưng
là quá trình tìm ánh xạ : {XX} sao cho các đối tượng Y} là không gian đặc tính.được biểu diễn bởi các đặc trưng cơ bản Các đặc trưng cơ bảncủa một đối tượng phải đạt được các chỉ tiêu sau:
đối tượng
Giải quyết một quá trình nhận dạng có liên quan mậtthiết đến kiểu mô hình hóa mà ta sử dụng để đặc tả đối tượng.Trong nhận dạng người ta phân chia làm hai họ lớn:
1.1.3.2 Mô hình tham số
Ta sử dụng một vector để đặc tả đối tượng Một phân tửcủa vector mô tả một đặc trưng của đối tượng Giả sử đối
không gian vector n chiều
Trong các đặc trưng hình học, người ta hay sử dụng chutuyến, đường bao, diện tích Trong bài toán nhận dạng chữ cáctham số là các dấu hiệu: số điểm chạc ba, chạc tư, số điểmchu trình, số điểm ngoặt, số điểm kết thúc Ví dụ như chữ A có
2 điểm chạc ba, 3 điểm kết thúc
1.1.3.3 Mô hình cấu trúc
Cách tiếp cận của mô hình này dựa vào việc tìm kiếmtrong ngôn ngữ tự nhiên Để mô tả đối tượng, người ta dùng
Trang 11một số dạng nguyên thủy như đoạn thẳng, cung v.v Mộthình chữ nhật được định nghĩa gồm 04 đoạn thẳng vuông gócvới nhau từng đôi một Trong mô hình này người ta sử dụng
thuyết ngôn ngữ hình thức Người ta cũng sử dụng một bộ ký
các luật sản xuất dựa vào mối quan hệ giữa các dạng nguyênthủy và ngữ cảnh Trong cách tiếp cận này, người ta chấpnhận một tiên đề cho rằng: cấu trúc một dạng là kết quả củaviệc áp dụng luật sản xuất theo nguyên tắc xác định bắt đầu
từ một dạng nào đó gọi là dạng bắt đầu Một cách hình thức,
ta có thể coi mô hình này tương đương với một văn phạm G =(Vt, Vn, P, S) với:
Học có mẫu (supervised learning): là quá trình học đượcbắt đầu bởi các mẫu đã tồn tại sự phân lớp đối với một số đốitượng mẫu, hoặc đã biết đặc trưng của các lớp đối tượng Ví
dụ bài toán nhận dạng chữ viết, ta đã biết trước tập quy luật
và tập tên của các đối tượng nhận dạng (có các lớp chữ số Ađến Z, 0, 9 ) Học có mẫu nhằm định nghĩa được các lớptrong trường hợp tổng quát không gian đối tượng hay nói cáchkhác xác định được phương trình biên giới giữa các lớp để saocho có thể nhận biết được một đối tượng thuộc về lớp nào
Trong trường hợp này ta đã biết T = {XXj, k} với j =
với mọi i
Trang 12Sự phân lớp đối tượng qua đường biên giới
Vấn đề là ở chỗ thiết kế một hệ thống để có thể so sánhđối tượng cần nhận dạng với các mẫu chuẩn và quyết địnhgán cho chúng vào một lớp Việc đối sánh nhờ vào các thủ tục
ra quyết định dựa trên một công cụ gọi là hàm phân lớp hayhàm ra quyết định
Học không có mẫu (Unsupervised learning): quá trình họcđược bắt đầu khi sự phân lớp chưa hình thành và không cómẫu Quá trình học nhằm tiến hành nhóm dần dần trên cơ sởcác đối tượng đã quan sát có độ tương tự gần nhau để hìnhthành sự phân lớp (clustering class)
Có nhiều phương pháp áp dụng trong trường hợp họckhông mẫu như phương pháp thuật toán hội tụ, đạt được sựphân lớp
Trang 131.1.3.5 Quá trình ra quyết định (hàm quyết định)
Quá trình ra quyết định (decision) là tìm ra một luật trên
cơ sở đã biết sự phân lớp các đối tượng cũng như đặc trưngcủa các lớp để quyết định một đối tượng quan sát (đối tượngthu nhận) ở đầu vào sẽ thuộc một lớp nào đó hoặc đồng nhấtvới một phần tử mẫu nào đó
Các hàm ra quyết định thường được xây dựng dựa trênkhái niệm khoảng cách hay dựa vào xác suất có điều kiện Lẽ
tự nhiên, khoảng cách là một công cụ rất tốt để xác định xemcác đối tượng có "gần nhau hay không" Nếu khoảng cách nhỏhơn một ngưỡng nào đó ta coi hai đối tượng so sánh là giốngnhau và gộp chúng vào một lớp Ngược lại, nếu khoảng cáchlớn hơn ngưỡng, có nghĩa là chúng khác nhau và ta tách thànhhai lớp
Trong một số trường hợp, người ta dựa vào xác suất cóđiều kiện để phân lớp cho đối tượng Lý thuyết xác suất cóđiều kiện đã được Bayesian nghiên cứu và chúng ta có thể ápdụng lý thuyết này để phân biệt đối tượng
Ci
công thức Bayer về xác suất có điều kiện áp dụng trong điều
phương pháp nhận dạng khác nhau, hàm phân biệt trên sẽ cótác dụng khác nhau
1.1.4 Sơ đồ tổng quan của hệ thống nhận dạng.
Trang 14Qua khảo sát ở phần trên chúng ta có thể biểu diễn sơ đồtổng quan của hệ thống nhận dạng như hình sau:
Sơ đồ tổng quan của hệ thống nhận dạng.
Để đánh giá chất lượng nhận dạng, ta sử dụng chỉ sốnhận dạng được đo bằng tỷ số giữa đối số đối tượng nhậndạng đúng và tổng số các đối tượng quan sát thu nhận Các hệthống nhận dạng có 90% là những hệ thống đạt yêu cầu
về chất lượng Giá trị không thể đạt 100% vì có sự tồn tại sai
số tự nhiên đối với những đối tượng sát biên và trên thực tếcác đối tượng quan sát thu nhận là luôn luôn bị tác động bởinhiễu Thông thường để đánh giá hệ thống , hệ thống yêu cầumột tập các đối tượng quan sát để thử và đánh giá chất lượngđối tượng quan sát được nhận dạng khác với tập các đối tượng
Những sản phẩm nhận dạng chữ viết mang tính thươngmại bắt đầu xuất hiện từ những năm 1960 Một vài phươngpháp nhận dạng đơn giản đã được đưa vào áp dụng Có thể kể
ra một vài sản phẩm tiêu biểu là: IBM1418, IBM1428, IBM
1285, IBM 1287 của IBM, Facom 6399A của Fujitsu và H-852của Hitachi Kỹ thuật chủ yếu được sử dụng là phương pháp
Trang 15Vào những năm 1970, phần mềm nhận dạng chữ viết cóhiệu suất cao và giá rẻ được Hitachi đưa ra thị trường gọi làH8959 Cũng trong thời kỳ này, những tiến bộ công nghệ chophép chế tạo các máy quét laser giá rẻ và chất lượng cao, một
số phần mềm khác cũng được giới thiệu, được viết chủ yếutrên nền FORTRAN, sản phẩm nâng cấp H8959 của Hitachi đãđạt tới độ chính xác 100% nếu được huấn luyện bằng mẫu chữcủa một người và thử nghiệm lại bằng chính chữ của người đó.Những kỹ thuật phân tích cấu trúc đơn giản đã được tích hợpvào các hệ thống nhận dạng thời kỳ này
Từ giữa những năm 1970 đến những năm 1980, bắt đầuvào kỷ nguyên của PC, máy tính giờ đây nhỏ hơn, nhanh hơn,
và rẻ hơn Những sản phẩm nhận dạng chữ viết không ngừngđược nâng cao chất lượng Hệ thống ASPET/71 của ETL vàToshiba và hệ thống IBM1975 đã được thừa nhận và đưa vào
sử dụng trong công tác văn phòng Tháng 9/1975, trung tâmthị trường lao động - Bộ lao động Nhật Bản quyết định sử dụng
hệ thống nhận dạng chữ viết Katakana trong tất cả các hệthống bảo hiểm của họ
Từ những năm 1980 trở lại đây, với những cải tiến lớntrong công nghệ chế tạo phần cứng máy tính, với những tiến
bộ trong lĩnh vực xử lý thông tin, những bước đột phá trongviệc ứng dụng công nghệ tri thức, các hệ thống nhận dạng chữviết đang ngày một hướng tới sự hoàn thiện Với sự đóng gópcủa nhiều ngành khoa học, đặc biệt là Toán học và Khoa họcmáy tính, nhận dạng chữ viết tập trung nghiên cứu phát triểnnhằm mục tiêu nâng cao tính ổn định và tính linh hoạt, có khảnăng tự thích nghi với các dạng chữ viết khác lạ
Người ta quan tâm tới lĩnh vực nhận dạng chữ viết khôngchỉ vì nhu cầu cuộc sống, mà còn vì ham muốn hiểu rõ hơnquá trình nhận thức của mình Những phương pháp tiếp cậnkhác nhau trong nhận dạng chữ viết cũng được nảy sinh từnhững cách hiểu khác nhau về cách con người đọc chữ Theonhận thức của con người, E và E là có cùng một ý nghĩa trongcảm nhận khi nhìn thấy hai mẫu chữ đó Vậy thì liệu có haykhông một nguyên lý về sự tương đương giữa những mẫu của
Trang 16cùng một chữ? Cho tới tận bây giờ, vẫn không có một đáp ánchung nào cho nguyên lý đó cả và bài toán này vẫn là vấn đềtrung tâm trong lĩnh vực nhận dạng mẫu Tất cả những cốgắng từ trước tới nay bằng các phương pháp tiếp cận khácnhau chỉ có thể giải quyết được một phần vấn đề tuỳ theongôn ngữ cụ thể Những phương pháp tiếp cận đó có thể chialàm hai hướng chính: Phương pháp đối sánh mẫu (template -matching method) và phương pháp phân tích cấu trúc(structure analysis)
Trang 171.2.2 Sơ đồ tổng quát của một hệ nhận dạng chữ viết
Một hệ thống nhận dạng thường gồm các khối chính, phùhợp với các giai đoạn xử lý sau:
1.2.2.1 Giai đoạn xử lý sơ bộ
Đây là giai đoạn quan trọng ảnh hưởng đến kết quả nhậndạng Phụ thuộc vào chất lượng ảnh được quét mà ta tiếnhành các thủ tục xử lý khác nhau Vì quá trình xử lý sơ bộ cóthể làm chậm tốc độ xử lý của hệ thống nên nếu ảnh được
Trang 18quét vào là tốt thì ta có thể bỏ qua bước này Xử lý sơ bộ gồmcác bước sau:
Khử nhiễu: Nhiễu là điều không thể tránh khỏi trong các
hệ thống xử lý tín hiệu Có hai loại nhiễu là nhiễu hệ thống do
hệ thống thu nhận ảnh gây ra và nhiễu ngẫu nhiên Dù lànhiễu nào ta cũng phải loại bỏ hoặc làm giảm tối đa ảnhhưởng của nó
Làm trơn chữ: Đôi khi chất lượng ảnh quá thấp, các
đường biên không còn dáng vẻ trơn tru như ban đầu mà hìnhthành các đường răng cưa Trong trường hợp này ta phải ápdụng một số kỹ thuật để làm trơn biên chữ, lấp đầy các chỗtrống, xoá đi các điểm giả tạo trên biên
Làm đầy chữ: Thủ tục làm đầy chữ áp dụng cho các chữ
Xoay văn bản đi một góc: Do văn bản lúc đưa vào máy
tính có thể bị lệch đi một góc nào đó Trong trường hợp nàycần tính lại toạ độ mới theo:
X' = Xcos - Y} là không gian đặc tính.sin
Y} là không gian đặc tính.' = Xsin + Xcos
Trang 191.2.2.2 Giai đoạn tách chữ
Sau khi xử lý sơ bộ, văn bản (ảnh) đã được tăng cường độtương phản, ta chuyển sang giai đoạn phân tách chữ Chỉ cóthể nhận dạng đúng nếu chữ đã được tách ra khỏi văn bản Cónhiều thuật toán tách chữ từ đơn giản đến phức tạp áp dụngcho các font chữ khác nhau
Tách chữ theo chiều ngang - đứng: Với chữ in thường
và in hoa, các chữ do quy định của ấn loát cần nằm trọn trongmột ô nào đó Như vậy, quá trình tách chữ đồng nhất với việctìm ra khuôn chữ tại vị trí của nó trong văn bản Quá trình nàygọi là tách chữ theo hình chữ nhật (ngang và đứng) bao quanhchữ số Thao tác này đơn giản và nhanh, tuy nhiên không thể
áp dụng cho mọi font chữ
Tách chữ theo lược đồ xám: Khi máy Scanner tốt và
đối với một số font, các dòng văn bản được phân cách khá tốt,việc tìm ra đường phân ranh giữa hai dòng là khá dễ Songthực tế luôn không phải là dễ nhất là với chữ Việt có dấu, cácdòng có thể bị dính hay nhoè
Trong trường hợp này thường phân ranh giới được hiểu làđường có ít điểm cắt nhất, như vậy cần xây dựng lược đồ xámcho các dòng chữ và đường ngang nằm ở đáy của thung lũnglược đồ cần tìm, kỹ thuật này có thể được áp dụng cho nhậndạng chữ hoa
1.2.3 Nhận dạng bằng phương pháp đối sánh mẫu
Tên gọi phương pháp đối sánh mẫu xuất phát từ cácphương pháp nhận dạng chữ in dựa trên một quan sát đơngiản: Với một chữ được đúc trên khuôn in thì khi in ra tạinhững chỗ khác nhau, những chữ đó phải có những nét tươngđồng phụ thuộc vào khuôn đó giống như các con dấu vậy Tấtnhiên sẽ có những sai lệch nhất định do mực in, giấy inv.v nhưng do tính chất của khuôn, sẽ có những chỗ ít khi bịnhoè, có thể tạm coi là bất biến Nội dung của phương phápđối sánh mẫu là dựa vào những đặc điểm ít biến đổi đó đểtrích chọn lấy đặc trưng cho một mẫu chữ hoặc vẫn sử dụng
Trang 20tất cả các thông tin nhưng với độ tin cậy (trọng số) khác nhau
để làm đặc trưng
1.2.3.1 Phương pháp dùng dãy điểm đặc trưng
Trong phương pháp này, mỗi mẫu chữ chuẩn được coi làmột ảnh đen trắng, ảnh này sẽ được co về một khung kíchthước cố định, thường dùng là khung 16x16, 32x32 đối với bộchữ số Latin, hay 64x64 đối với chữ tượng hình Trên khung cốđịnh này, người ta lấy một số điểm làm đặc trưng Khi cần sosánh một mẫu cần nhận dạng với một mẫu chuẩn, ta lấy dãyđiểm đặc trưng trên mẫu chuẩn đối sánh với dãy điểm cùng vịtrí trên mẫu cần nhận dạng để xác định mức độ giống nhaugiữa hai mẫu và từ đó ra quyết định xem mẫu nhận dạngtương ứng với chữ cái nào
Việc chọn dãy điểm đặc trưng như thế nào là tuỳ thuộcvào ngôn ngữ, không có quy chuẩn nào cụ thể Nói chungkhông nên chọn dãy điểm đặc trưng là tất cả các điểm trênkhung Ví dụ ta có khoảng 10 mẫu số "2" khá giống nhau thìdãy điểm đặc trưng tốt nhất nên chọn là những vị trí có màugiống nhau trên cả 10 mẫu số 2 này
Khi đó dựa vào các thông số và trọng số kể trên, ta cóthể xây dựng được một hàm đặc trưng cho đối tượng và việc
Trang 21đối sánh hai đối tượng được quy về đối sánh các hàm đặctrưng.
Với phương pháp này, việc chuẩn hoá đối tượng là rấtquan trọng vì nó sẽ giúp cho việc xác định kích thước của lướichuẩn được sử dụng Hơn thế độ nghiêng của đối tượng cầnnhận dạng cũng có ảnh hưởng rất lớn đến kết quả của phươngpháp này
1.2.3.3 Phương pháp cung
Có thể loại bỏ ảnh hưởng của độ nghiêng trong phươngpháp lưới bằng cách thay thế lưới ô vuông chuẩn bằng lướihình vành khăn: các nan lưới là các đường tròn đồng tâm vàcác đường thẳng qua tâm Có thể coi đây là phương pháp lướitrong toạ độ cực Tâm cực là trọng tâm của đối tượng Những
vấn đề xác định đặc trưng còn lại tương tự như phương pháplưới
1.2.3.4 Phương pháp chia miền và đo mật độ
Trong phương pháp này, mỗi ảnh tương ứng với một mẫuchữ được chia thành những miền tách biệt và trên mỗi miềnngười ta đo mật độ những vùng thuộc chữ Những số đo nàyđược dùng làm đặc trưng cho mẫu và được dùng làm tham sốtính toán cho hàm phân biệt Phương pháp này rất nhạy cảm
với độ nghiêng, độ đậm của nét chữ
Trang 225 3 5
3 3 6
5 4 6
1.2.4 Nhận dạng bằng phương pháp phân tích cấu trúc
Đặc trưng của phương pháp phân tích cấu trúc là nhìnnhận mỗi mẫu chữ như được cấu thành từ những đối tượnghình học, quan tâm tới các nét, hướng, thứ tự tôpô và đặc tảnhững đối tượng cũng như mối quan hệ giữa chúng để làm đặctrưng cho mẫu Phương pháp phân tích cấu trúc thích hợp vớinhận dạng chữ viết tay, khi mà các chữ được viết có thể coi làkhông theo một khuôn mẫu nào cả
1.2.4.1 Phương pháp phân tích đường đơn
Năm 1960, Sherman đề xuất cách mô tả cấu trúc chữbằng các đường mảnh (có thể coi như khung xương của chữđược tạo thành nhờ các thuật toán làm mảnh) Với cách mô tảnày, mỗi mẫu chữ được tiệm cận bằng tập các đoạn thẳng đôimột không cắt nhau (nhưng được phép trùng nhau ở đầu mút)
Từ đó ông xây dựng một đồ thị phẳng tương ứng với tập cáccạnh là các đoạn thẳng và tập các đỉnh là tập các đầu mút.Trên đồ thị này, ông bỏ qua các đỉnh bậc hai, chỉ giữ lại nhữngđỉnh đặc trưng là: đỉnh treo, đỉnh rẽ nhánh, đỉnh cắt và coinhững thông số đó là đặc trưng để phân biệt các chữ Tuynhiên trong trường hợp này, góc nhìn tôpô là rất quan trọngbởi nếu chỉ dựa vào những thông số kể trên sẽ không tránhkhỏi sự sai lầm
Ví dụ tồi tệ đối với cách phân tích cấu trúc của Sherman
Cách thứ nhất, để khắc phục nhược điểm này là ngoàinhững đỉnh treo, đỉnh rẽ nhánh, đỉnh cắt, những phần còn lạicủa đồ thị sẽ được mô tả đưới dạng các đoạn thẳng và các
Trang 23cung Phương pháp này cho phép đặc tả cấu trúc chặt chẽ hơnnhưng lại hết sức khó khăn khi cài đặt.
Cách thứ hai, có thể áp dụng được trong trường hợp nàydựa vào nhận xét: Nếu bỏ đi các đỉnh rẽ nhánh, đỉnh cắt vàđỉnh treo thì mỗi phần rời còn lại có thể vẽ chỉ bằng một nétđơn Khi đó những nét đơn này có thể mã hoá bằng xíchhướng hay còn gọi là mã Freeman Các mã Freeman cùng với
những điểm đặc trưng trong phương pháp của Sherman sẽđược dùng để đặc tả cấu trúc chữ
Mã Freeman
1.2.4.2 Phương pháp phân tích hình học
Trong phương pháp này, mỗi đối tượng được đặt trongkhông gian Euclide hai chiều và được đặc tả bằng các kháiniệm hình học cơ bản: đoạn thẳng, đường tròn, ellipse, thậmchí cả các đường Bezier và B-Spline Mỗi đối tượng hình họcnày được viết phương trình toạ độ và được trích ra một số đặctrưng như hướng, độ cong, điểm uốn v.v Và những đặc trưngnày được dùng làm tham số cho hàm phân biệt của mỗi lớp
Cách tiếp cận này khá chặt chẽ về mặt lý thuyết, chẳnghạn có thể mô tả chữ O là một hình ellipse có phương trình
4 5
Freeman code: 3, 3, 2, 2, 1
Trang 241.2.4.3 Phương pháp phân tích đường biên
Trong phương pháp phân tích đường biên, từ một mẫuchữ, người ta tìm đường biên (contour) của chữ và các đườngbiên của: bao lồi (convex hull), miền lõm (concavity), các lỗ
hổng (hole) và vị trí tương đối giữa các lỗ hổng
Mẫu chữ (a), Bao lồi (b), Miền lõm (c), Lỗ hổng (d) và các đường biên (e)
Khi đó mỗi mẫu chữ sẽ được đặc tả bởi một bộ các đườngbiên Mỗi đường biên có thể được mô tả bằng mã Freeman,bằng đường cong nội suy
Có thể nhận thấy rằng nếu việc phân lớp các đường biênđược thực hiện tốt thì việc sử dụng quá nhiều yếu tố như trên
là quá chặt Đối với chữ số latinh, theo tôi chỉ cần lấy đườngbiên của chữ và vị trí tương đối của các lỗ hổng là đủ Bởi hìnhdạng của lỗ hổng cũng như bao lồi, miền lõm không mang tínhchất quyết định tới việc nhận dạng
Phương pháp phân tích đường biên rất nhạy cảm trongtrường hợp chữ bị dính nét hay đứt nét, chính vì vậy cần phải
có những giải pháp tiền xử lý đúng đắn trước khi thực hiệnviệc dò biên
1.2.4.4 Phương pháp sử dụng hình chiếu
Phải nói rằng đây là một phương pháp không có độ chínhxác cao, nhưng vẫn được nhiều tài liệu đề cập đến, bởi các hệthống nhận dạng sử dụng phương pháp này có tốc độ tốt vàtận dụng được những ưu điểm của hình chiếu so với bản thânmẫu chữ Phương pháp này đặc biệt hiệu quả trong trường hợpchỉ cần nhận dạng trong một tập hợp nhỏ các ký hiệu khó gâynên sự nhập nhằng (chẳng hạn như các chữ "Y} là không gian đặc tính." và "N", "C" và
"K", ) và cho phép một số sai sót nhất định Thống kê các
Trang 25phiếu điều tra là một ví dụ ứng dụng cho phương pháp sửdụng hình chiếu.
Phương pháp sử dụng hình chiếu tức là sử dụng biểu đồmật độ thay cho chữ Thông thường người ta sử dụng bốn loạibiểu đồ mật độ
ngang của chữ
của chữ
Trang 26Chi tiết về 4 phép chiếu này được trình bày trong hình
sau
Một số loại hình chiếu của mẫu chữ gốc
Một số ưu điểm nổi trội của các hình chiếu so với mẫuchữ ban đầu có thể kể ra là: Hình chiếu không có lỗ hổng(miền đơn liên) nên chỉ có một đường biên Để dò đường biêncủa hình chiếu không cần phải dùng các kỹ thuật của xử lýảnh mà có thể thực hiện ngay trong khi đo mật độ Hình chiếu
ít bị ảnh hưởng khi chữ bị dính hay đứt nét
Tuy nhiên phương pháp sử dụng hình chiếu cũng cónhược điểm: nó phụ thuộc vào độ dày của nét chữ (nếu làmmảnh nét sẽ khiến cho hình chiếu không rõ ràng) Mặc dùtrong các chữ in la tinh, không có hai chữ số nào giống nhautrên cả 4 loại hình chiếu nhưng đối với chữ viết tay, rất có thể
4 loại hình chiếu kể trên là chưa đủ để phân biệt
Việc đưa phương pháp sử dụng hình chiếu vào lớp cácphương pháp phân tích cấu trúc là chưa thật hợp lý, mà nêncoi đây chỉ là một giải pháp để thay việc nhận dạng mẫu chữ
về việc nhận dạng các hình chiếu, còn việc nhận dạng như thế
Trang 27nào hoàn toàn có thể sử dụng phương pháp đối sánh mẫu Tuynhiên để tận dụng được các ưu điểm của hình chiếu, người tavẫn thường dùng phương pháp phân tích đường biên Trongcông trình nhận dạng bộ chữ số Hangul (Hàn Quốc), Hee-SeonPark và Seong-Whan Lee đã mã hoá đường biên các hìnhchiếu dưới dạng mã Freeman và sử dụng mô hình Markov ẩn
để nhận dạng đạt độ chính xác 96.7%, đây là một hiệu suấtcao trong nhận dạng chữ tượng hình
Trang 281.3 Một số thuật toán nhận dạng mờ
Logic mờ được phát triển từ lý thuyết tập mờ để thựchiện lập luận một cách xấp xỉ thay vì lập luận chính xáctheo lôgic vị từ cổ điển Logic mờ có thể được coi là mặt ứngdụng của lý thuyết tập mờ để xử lý các giá trị trong thế giớithực cho các bài toán phức tạp
Người ta hay nhầm lẫn mức độ đúng với xác suất Tuynhiên, hai khái niệm này khác hẳn nhau; độ đúng đắn củalôgic mờ biểu diễn độ liên thuộc với các tập được định nghĩakhông rõ ràng, chứ không phải khả năng xảy ra một biến cốhay điều kiện nào đó Để minh họa sự khác biệt, xét tìnhhuống sau: Bảo đang đứng trong một ngôi nhà có hai phòngthông nhau: phòng bếp và phòng ăn Trong nhiều trường hợp,trạng thái của Bảo trong tập hợp gồm những thứ "ở trong bếp"hoàn toàn đơn giản: hoặc là anh ta "trong bếp" hoặc "không ởtrong bếp" Nhưng nếu Bảo đứng tại cửa nối giữa hai phòng thìsao? Anh ta có thể được coi là "có phần ở trong bếp" Việcđịnh lượng trạng thái "một phần" này cho ra một quan hệ liênthuộc đối với một tập mờ Chẳng hạn, nếu Bảo chỉ thò mộtngón chân cái vào phòng ăn, ta có thể nói rằng Bảo ở "trongbếp" đến 99% và ở trong phòng ăn 1% Một khi anh ta cònđứng ở cửa thì không có một biến cố nào (ví dụ một đồng xuđược tung lên) quyết định rằng Bảo hoàn toàn "ở trong bếp"hay hoàn toàn "không ở trong bếp" Các tập mờ được đặt cơ
sở trên các định nghĩa mờ về các tập hợp chứ không phải dựatrên sự ngẫu nhiên
Lôgic mờ cho phép độ liên thuộc có giá trị trong khoảngđóng 0 và 1, và ở hình thức ngôn từ, các khái niệm khôngchính xác như "hơi hơi", "gần như", "khá là" và "rất" Cụ thể,
nó cho phép quan hệ thành viên không đầy đủ giữa thành viên
và tập hợp Tính chất này có liên quan đến tập mờ và lý thuyếtxác suất Lôgic mờ đã được đưa ra lần đầu vào năm 1965 bởi
GS Lotfi Zadehtại Đại học California, Berkeley
Mặc dù được chấp nhận rộng rãi và có nhiều ứng dụng
Trang 29nghiên cứu Nó bị phủ nhận bởi một số kỹ sư điều khiển vì khảnăng thẩm định và một số lý do khác, và bởi một số nhà thống
kê - những người khẳng định rằng xác suất là mô tả toán họcchặt chẽ duy nhất về sự không chắc chắn (uncertainty).Những người phê phán còn lý luận rằng lôgic mờ không thể làmột siêu tập của lý thuyết tập hợp thông thường vì các hàmliên thuộc của nó được định nghĩa theo các tập hợp truyềnthống
Lôgic mờ có thể được sử dụng để điều khiển các thiết bịgia dụng như máy giặt (cảm nhận kích thước tải và mật độ bộtgiặt và điều chỉnh các chu kỳ giặt theo đó) và tủ lạnh
Một ứng dụng cơ bản có thể có đặc điểm là các khoảngcon của một biến liên tục Ví dụ, một đo đạc nhiệt độ chophanh (anti-lock brake) có thể có một vài hàm liên thuộc riêngbiệt xác định các khoảng nhiệt độ cụ thể để điều khiển phanhmột cách đúng đắn Mỗi hàm ánh xạ cùng một số đo nhiệt độtới một chân giá trị trong khoảng từ 0 đến 1 Sau đó các chângiá trị này có thể được dùng để quyết định các phanh nênđược điều khiển như thế nào
Lôgic mờ chính là "lôgic không chính xác": Lôgic mờ
chính xác không kém dạng lôgic bất kỳ nào khác: đây là mộtphương pháp toán học có tổ chức để làm việc với các kháiniệm có bản chất không chính xác Khái niệm "lạnh" khôngthể được biểu diễn trong một phương trình, vì mặc dù nhiệt độ
là một đại lượng đo được nhưng "lạnh" thì lại không Tuynhiên, người ta vẫn có khái niệm về "lạnh", và đồng ý với nhaurằng không có ranh giới chính xác giữa "lạnh" và "không lạnh"chẳng hạn như một thứ gì đó ở nhiệt độ N được gọi là lạnhnhưng khi ở nhiệt độ N + 1 thì được xem là "không lạnh" —một khái niệm mà lôgic cổ điển không thể dễ dàng xử lý được
Lôgic mờ là một cách mới để biểu diễn xác suất:
Lôgic mờ và xác suất nói đến các loại không chắc chắn khácnhau Lôgic mờ được thiết kế để làm việc với các sựkiện không chính xác (các mệnh đề lôgic mờ), trong khi xácsuất làm việc với các khả năng sự kiện đó xảy ra (nhưng vẫn
Trang 30coi kết quả là chính xác) Tuy nhiên, đây là một điểm gâytranh cãi Nhiều nhà thống kê đã bị thuyết phục bởi công trìnhnghiên cứu củaBruno de Finetti rằng chỉ cần đến duy nhất 1loại không chắc chắn toán học và do đó lôgic mờ là không cầnthiết Mặt khác, Bart Kosko lý luận rằng xác suất là một lýthuyết con của lôgic mờ, do xác suất chỉ làm việc với một loạikhông chắc chắn Ông còn khẳng định rằng mình đã chứngminh một dẫn xuất định lý Bayes từ khái niệm tập con mờ.Lotfi Zadeh, người tạo ra lôgic mờ, lý luận rằng lôgic mờ khácxác suất về đặc tính, và không phải là một sự thay thế cho xácsuất Ông đã tạo một loại xác suất mờ khác, và gọi đó là lýthuyết khả năng (possibility theory) Các cách tiếp cận gâytranh cãi khác tới sự không chắc chắn bao gồm: lý thuyếtDempster-Shafer và tập thô (rough set).
Khó triển khai lôgic mờ cho các bài toán lớn: Năm
1993, trong một bài báo được lan truyền rộng và gây nhiềutranh cãi, Charles Elkan bình luận rằng " có rất ít, nếu khôngmuốn nói là không hề có, các báo cáo đã công bố về hệchuyên gia được sử dụng thực tế dùng đến lập luận đó về lôgic
mờ Có vẻ như là các hạn chế của lôgic mờ đã không gây hạitrong các ứng dụng điều khiển là vì các bộ điều khiển mờ hiệnhành đơn giản hơn nhiều so với các hệ thống dựa trithức khác Trong tương lai, các hạn chế kỹ thuật của lôgic mờ
có thể trở nên quan trọng trong thực tiễn, và các công trình vềcác bộ điều khiển mờ sẽ gặp phải một số vấn đề về triển khaiđược biết với các hệ thống dựa tri thức khác" Các phản ứngđối với bài báo của Elkan có nhiều và đa dạng, một số chorằng đơn giản là ông đã nhầm, một số khác công nhận rằngElkan đã chỉ ra những hạn chế quan trọng của lôgic mờ mànhững người thiết kế hệ thống cần phải quan tâm Trong thực
tế, vào thời điểm đó, lôgic mờ chưa được sử dụng rộng rãi, cònngày nay, nó đã được dùng để giải những bài toán rất phứctạp trong lĩnh vực trí tuệ nhân tạo
1.3.1 Các thuật toán phân hoạch