Bài toán nhận dạng đóng vai trò quan trọng trong nhiều ứng dụng thực tế như: giám sát an ninh, giao thông, nhận dạng trong y học, nhận dạng đối tượng, nhận dạng khuôn mặt, nhận dạng chữ,
Trang 4MỤC LỤC
DANH MỤC CÁC TỪ VIẾT TẮT v
DANH MỤC HÌNH VẼ vi
MỞ ĐẦU 1
1 TÍNH CẤP THIẾT CỦA ĐỀ TÀI 1
2 MỤC TIÊU 2
3 ĐỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU 2
4 PHƯƠNG PHÁP NGHIÊN CỨU 2
5 KẾT QUẢ DỰ KIẾN 2
6 BỐ CỤC LUẬN VĂN 3
CHƯƠNG 1 TỔNG QUAN VỀ NHẬN DẠNG CHỮ QUANG HỌC 4
1.1 GIỚI THIỆU CHUNG 4
1.2 MÔ HÌNH NHẬN DẠNG CHỮ TỔNG QUÁT 5
1.2.1 Tiền xử lý 5
1.2.2 Khối tách chữ 8
1.2.3 Trích chọn đặc trưng 8
1.2.4 Huấn luyện và nhận dạng 10
1.2.5 Hậu xử lý 10
1.3 CÁC KHÁI NIỆM CƠ BẢN VÀ MỘT SỐ KỸ THUẬT XỬ LÝ ẢNH TRONG NHẬN DẠNG 11
1.3.1 Các khái niệm cơ bản 11
1.3.2 Một số kỹ thuật trong xử lý ảnh 13
1.3.3 Một số kỹ thuật cải thiện ảnh nhị phân 20
1.3.4 Phép biến đổi Hough 22
1.4 CÁC PHƯƠNG PHÁP NHẬN DẠNG 26
1.4.1 Đối sánh mẫu 26
1.4.2 Phương pháp tiếp cận cấu trúc 27
1.4.3 Các phương pháp thống kê 29
1.4.4 Máy véc tơ hỗ trợ (SVM) 29
Trang 51.4.5 Mạng nơ-ron nhân tạo (ANN) 30
1.5 KẾT CHƯƠNG 1 31
CHƯƠNG 2 MẠNG NƠ-RON NHÂN TẠO 32
2.1 GIỚI THIỆU MẠNG NƠ-RON 32
2.1.1 Khái niệm cơ bản 32
2.1.2 Mô hình mạng nơ-ron nhân tạo 35
2.1.3 Khả năng ứng dụng của mạng nơ-ron nhân tạo 38
2.2 MẠNG TRUYỀN THẲNG MỘT LỚP 40
2.2.1 Mạng perceptron một lớp 40
2.2.2 Quá trình học của mạng truyền thẳng một lớp 41
2.3 MẠNG TRUYỀN THẲNG NHIỀU LỚP 42
2.3.1 Mạng perceptron nhiều lớp 42
2.3.2 Thuật toán học theo phương pháp lan truyền ngược sai số 42
2.3.3 Huấn luyện mạng theo thuật toán lan truyền ngược 43
2.3.4 Một số vấn đề khi sử dụng mạng MLP 45
2.4 KẾT CHƯƠNG 2 47
CHƯƠNG 3 ỨNG DỤNG NHẬN DẠNG THẺ BHYT 48
3.1 BÀI TOÁN NHẬN DẠNG THẺ BẢO HIỂM Y TẾ 48
3.2 CƠ SỞ DỮ LIỆU THỰC NGHIỆM 49
3.3 MÔ HÌNH NHẬN DẠNG THẺ BHYT 50
3.3.1 Thẻ BHYT 50
3.3.2 Tiền xử lý 55
3.3.4 Tách ký tự ảnh của mã thẻ 58
3.3.5 Huấn luyện và nhận dạng ký tự 59
3.3.6 Hậu xử lý 61
3.4 MÔI TRƯỜNG CÀI ĐẶT 61
3.5 GIAO DIỆN CHƯƠNG TRÌNH 61
3.5.1 Giao diện chính của chương trình 61
3.5.2 Các chức năng trong chương trình 62
Trang 63.6 KẾT CHƯƠNG 3 65
KẾT LUẬN 66 TÀI LIỆU THAM KHẢO 68 QUYẾT ĐỊNH GIAO ĐỀ TÀI LUẬN VĂN (Bản sao)
Trang 7DANH MỤC CÁC TỪ VIẾT TẮT
ANN Artificial Neural Network
BHYT Bảo hiểm y tế
CGA Color Graphic Adaptor
k-NN k-láng giềng gần nhất
HMM Hidden Markov Model – mô hình Markov ẩn MLP Multilayer Perceptron
OCR Optical Character Recognition
SVM Support Vector Machine
VGA Video Graphic Array
Trang 81.10 Ảnh sau khi áp dụng lần lượt hai kỹ thuật “Giãn” và “Co” 21
2.3 Mạng nơ-ron nhân tạo chỉ có một nút và có sự phản hồi 36
2.6 Lan truyền tín hiệu theo phương pháp lan truyền ngược 43 2.7 Hàm sigmoid ( ) 1 / (1 x)
Trang 10MỞ ĐẦU
1 TÍNH CẤP THIẾT CỦA ĐỀ TÀI
Trong thời đại hiện nay, với sự phát triển mạnh mẽ của công nghệ thông tin, bài toán nhận dạng là một lĩnh vực đang được quan tâm và phát triển Bài toán nhận dạng đóng vai trò quan trọng trong nhiều ứng dụng thực tế như: giám sát an ninh, giao thông, nhận dạng trong y học, nhận dạng đối tượng, nhận dạng khuôn mặt, nhận dạng chữ, nhận dạng tiếng nói, phát hiện chuyển động, theo dõi chuyển động,…
Cùng với sự thúc đẩy của quá trình tin học hóa trong lĩnh vực y tế, đầu tháng
7 năm 2016, Bảo hiểm xã hội Việt Nam đã triển khai việc cấp phát thẻ BHYT theo cấu trúc mã thẻ mới có mã vạch 2 chiều cho tất cả các đối tượng tham gia BHYT dựa trên những quy định tại Quyết định số 1351/QĐ-BHXH ngày 16 tháng 11 năm
2015 của Bảo hiểm xã hội Việt Nam về việc ban hành mã số ghi trên thẻ bảo hiểm y tế; việc sử dụng thẻ BHYT mã vạch 2 chiều đã mang lại nhiều tiện ích cho các cơ
sở khám chữa bệnh và người dân tham gia BHYT khi đi khám chữa bệnh, đảm bảo
sự chính xác thông tin trong việc cấp phát thẻ BHYT cho bệnh nhân Tuy nhiên trong quá trình triển khai còn gặp nhiều những khó khăn như: việc đầu tư cơ sở vật chất chưa đồng bộ, cần có lộ trình và kinh phí, trình độ tin học, công nghệ thông tin của nhân viên ở các cơ sở khám chữa bệnh vẫn chưa theo kịp đà phát triển của công nghệ…, một vấn đề khó khăn nữa là một số thẻ mới phát hành đã bị mờ, mực in bị bong tróc, không rõ thông tin, máy không đọc được mã vạch…gây khó khăn cho người dân lẫn các cơ sở khám chữa bệnh, nhiều người ở xa đến, không khám bảo hiểm được phải tự chi trả hoặc phải quay về xin cấp lại thẻ, mất thời gian, khó khăn
và tốn kém cho người bệnh
Xuất phát từ thực tiễn trên, Tôi ứng dụng sức mạnh của công nghệ thông tin
trong lĩnh vực máy học để thực hiện đề tài “Nghiên cứu phương pháp nhận dạng chữ quang học và Ứng dụng nhận dạng thẻ bảo hiểm y tế” Nhận dạng thẻ
BHYT là một chương trình hỗ trợ trong việc quản lý BHYT, từ kết quả nhận dạng
mã số trên thẻ BHYT nó giúp người quản lý tìm kiếm, trích xuất được thông tin về
Trang 11bệnh nhân dựa trên thẻ BHYT một cách nhanh chóng, chính xác, hạn chế tình trạng trùng thẻ BHYT, đảm bảo cho việc thanh toán BHYT chính xác đạt hiệu quả cao, hạn chế tiêu cực, đồng thời theo dõi xuyên suốt quá trình điều trị bệnh của bệnh nhân Trong đề tài này, Tôi sẽ nghiên cứu một số phương pháp nhận dạng trong lĩnh vực nhận dạng chữ quang học Từ đó, chúng ta sẽ có cách nhìn rõ nét hơn về lĩnh vực máy học, hiểu được tầm quan trọng và tính thực tiễn của nó trong cuộc sống con người
3 ĐỐI TƯỢNG VÀ PHẠM VI NGHIÊN CỨU
3.1 Đối tượng nghiên cứu
4 PHƯƠNG PHÁP NGHIÊN CỨU
Để hoàn thành mục tiêu đề ra, tôi chọn phương pháp nghiên cứu lý thuyết và tiến hành ứng dụng thực nghiệm Cụ thể như sau:
- Về lý thuyết: Tham khảo các tài liệu lý thuyết liên quan
- Về thực nghiệm:
+ Thu thập dữ liệu ảnh thẻ BHYT để xây dựng cơ sở tri thức
+ Ứng dụng nhận dạng thẻ BHYT trên dữ liệu ảnh thu thập được
5 KẾT QUẢ DỰ KIẾN
5.1 Lý thuyết
- Nghiên cứu tổng quan về nhận dạng ảnh, nhận dạng ký tự quang học
Trang 12- Nghiên cứu về lĩnh vực máy học, các phương pháp nhận dạng: phương pháp Máy vector hỗ trợ (SVM); Mạng nơ-ron nhân tạo (ANN), mô hình Markov ẩn (HMN)…để làm cơ sở cho việc phân tích dữ liệu
- Tìm hiểu về lập trình với CShap (C#), Matlab…
5.2 Thực tiễn
Từ kết quả nhận dạng mã thẻ BHYT, dùng để hỗ trợ cho việc quản lý thẻ BHYT trong khám chữa bệnh tại các cơ sở y tế
6 BỐ CỤC LUẬN VĂN
Luận văn dự kiến tổ chức thành 3 chương chính như sau:
Chương 1: TỔNG QUAN VỀ NHẬN DẠNG CHỮ QUANG HỌC
Chương này giới thiệu khái quát về nhận dạng chữ quang học, mô hình nhận dạng ký tự tổng quát, các khái niệm cơ bản về xử lý ảnh và một số kỹ thuật, phương pháp nhận dạng chữ áp dụng trong lĩnh vực nhận dạng
Chương 2: MẠNG NƠ-RON NHÂN TẠO
Chương này giới thiệu về mạng nơ-ron nhân tạo Với những đặc trưng, tính năng của mạng nơ-ron nhân tạo là mạng có khả năng học và là một hệ thống gồm nhiều phần tử xử lý đơn giản cùng hoạt động xử lý song song, cho phép nó có thể được áp dụng để giải các bài toán từ đơn giản đến phức tạp
Chương 3: CÀI ĐẶT VÀ THỬ NGHIỆM KẾT QUẢ
Trong chương này, Tôi đưa ra một chương trình mô phỏng được xây dựng và cài đặt dựa trên thuật toán mạng nơ-ron perceptron một lớp để huấn luyện, nhận dạng 18 chữ cái từ A đến Y và 10 chữ số từ 0 đến 9 và bộ dữ liệu mẫu gồm 200 file ảnh dùng để kiểm thử nhận dạng Đây là các ký tự thường được dùng trong việc cấp phát mã số trên thẻ BHYT dùng trong việc khám chữa bệnh tại các cơ sở y tế Dựa trên kết quả nhận dạng được từ chương trình, người ta có thể dùng truy xuất dữ liệu
và quản lý thẻ BHYT đạt hiệu quả qua đó nâng cao hiệu suất trong quản lý và đồng thời theo dõi xuyên suốt quá trình khám chữa bệnh cho bệnh nhân
Cuối cùng là phần kết luận và hướng nghiên cứu phát triển của luận văn
Trang 13CHƯƠNG 1 TỔNG QUAN VỀ NHẬN DẠNG CHỮ QUANG HỌC
Chương này giới thiệu khái quát về nhận dạng chữ quang học, mô hình nhận dạng ký tự tổng quát, các khái niệm cơ bản về xử lý ảnh và một số kỹ thuật, phương pháp nhận dạng chữ áp dụng trong lĩnh vực nhận dạng
1.1 GIỚI THIỆU CHUNG
Nhận dạng chữ là lĩnh vực được nhiều nhà nghiên cứu quan tâm và cho đến nay lĩnh vực này cũng đã đạt được nhiều thành tựu lớn lao cả về mặt lý thuyết lẫn ứng dụng thực tế Lĩnh vực nhận dạng chữ được chia làm hai loại: nhận dạng chữ in
và nhận dạng chữ viết tay, được gọi chung là nhận dạng chữ quang học hay còn gọi
là nhận dạng ký tự quang học (OCR) Nhận dạng OCR, dùng các kỹ thuật quang học chẳng hạn như gương và ống kính và nhận dạng ký tự số thì sử dụng máy quét (scanner) và các thuật toán máy tính, lúc ban đầu được xem xét như hai lĩnh vực khác nhau Nhưng do có rất ít các ứng dụng tồn tại với các kỹ thuật quang học thực
sự, vì vậy thuật ngữ nhận dạng ký tự quang học được mở rộng và bao gồm luôn ý nghĩa nhận dạng ký tự số Nó được ứng dụng trong công tác quét và lưu trữ các tài liệu cũ, đẩy nhanh việc nhập dữ liệu vào máy với ít lỗi hơn
Hiện nay bài toán nhận dạng vẫn còn nhiều vấn đề chưa được giải quyết một cách triệt để, như vấn đề về tốc độ xử lý, độ chính xác của tách từ, hay độ chính xác của nhận dạng Mặt khác, các kiến thức cần thiết để nghiên cứu về lĩnh vực nhận dạng ký tự tương đối rộng, có liên quan đến nhiều lĩnh vực khác nhau như [5]:
- Xử lý ảnh (Image processing): Các kỹ thuật xử lý ảnh được sử dụng trong các giai đoạn tiền xử lý, tách chữ và trích chọn đặc trưng Chẳng hạn như các thuật toán khử nhiễu, tìm xương, phát hiện biên, phân vùng ảnh
- Học máy (Machine learning): được sử dụng trong giai đoạn huấn luyện và nhận dạng, chẳng hạn như các mạng nơ-ron nhân tạo, SVM…
- Lý thuyết nhận dạng (Pattern recognition): sử dụng các phương pháp luận phân lớp sử dụng trong công đoạn huấn luyện và nhận dạng
Trang 14- Xác suất thống kê và toán ứng dụng: lý thuyết xác suất đóng vai trò rất quan trọng trong các phương pháp phân lớp thống kê như mô hình Markov ẩn, phương pháp k-láng giềng gần nhất,.v.v
- Ngôn ngữ học và ngôn ngữ học tính toán (Linguistic and Computational Linguistic): Các kiến thức về ngữ pháp đóng vai trò quan trọng trong công đoạn hậu xử lý, nâng cao độ chính xác cho các hệ thống nhận dạng
1.2 MÔ HÌNH NHẬN DẠNG CHỮ TỔNG QUÁT
Nhận dạng [2] là quá trình phân loại các đối tượng được biểu diễn theo một
mô hình nào đó và gán cho chúng một lớp (gán cho đối tượng một tên gọi) dựa theo những quy luật và các mẫu chuẩn Quá trình nhận dạng dựa vào những mẫu học biết trước gọi là nhận dạng có giám sát (supervised learning) trong trường hợp ngược lại gọi là nhận dạng không có giám sát (unsupervised learning)
Mô hình nhận dạng chữ tổng quát gồm 5 khối công việc chính được mô tả một cách tổng quát trên sơ đồ hình 1.1 và được chia thành các bước cơ bản sau:
Hình 1.1 Sơ đồ tổng quát của một hệ thống nhận dạng chữ
Huấn luyện và nhận dạng Hậu xử lý
Kết quả nhận
dạng được
Trang 15tùy thuộc vào chất lượng ảnh quét vào để 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, điều chỉnh độ nghiên văn bản
1.2.1.1 Nhị phân hóa ảnh
Nhị phân hóa ảnh [5] 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 (ví dụ“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”)
Hình 1.2 Nhị phân hóa ảnh 1.2.1.2 Khử nhiễu
Nhiễu [5] 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 )
Hình 1.3 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
Trang 16các nhiễu có kích thước lớn) thì 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
1.2.1.3 Chuẩn hóa kích thước ảnh
Việc chuẩn hóa kích thước ảnh [5] 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ữ 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
Hình 1.4 Chuẩn hóa kích thước ảnh 1.2.1.4 Điều chỉnh độ nghiêng của ảnh văn bản
Do ảnh văn bản quét vào không cẩn thận hoặc do sự cố in ấn, các hàng chữ
bị lệch so với lề chuẩn một góc , điều này gây khó khăn cho công đoạn tách chữ, đôi khi không thể tách được Trong những trường hợp như vậy, phải tính lại tọa độ điểm ảnh của các chữ bị sai lệch Có nhiều kỹ thuật để điều chỉnh độ nghiêng, kỹ thuật phổ biến nhất dựa trên cơ sở biểu đồ chiếu (projection profile) của ảnh tài liệu; một số kỹ thuật dựa trên cơ sở các phép biến đổi Hough và Fourier [12]; một số kỹ thuật hiệu chỉnh độ nghiêng khác
Trang 17Hình 1.5 Hiệu chỉnh độ nghiêng của ảnh văn bản
1.2.2 Khối tách chữ [5]
Khối này có nhiệm vụ tách từng ký tự ra khỏi ảnh văn bản Chỉ khi nào ảnh văn bản được tách và cô lập đúng từng ký tự đơn ra khỏi tổng thể ảnh văn bản thì hệ thống mới có thể nhận dạng đúng ký tự đó Sau đây là một số phương pháp tách chữ thông dụng:
1.2.2.1 Tách chữ theo chiều nằm ngang và thẳng đứng [5]
Phương pháp này thường áp dụng cho chữ in với kích thước và kiểu chữ cố định, phải tuân theo một số quy định in ấn, các chữ phải nằm gọn trong một khung nên việc cô lập một ký tự đơn có thể đồng nhất với việc tìm ra khung bao của chữ
đó tại vị trí của nó trong văn bản Tách chữ theo chiều nằm ngang và thẳng đứng là tìm một hình chữ nhật có cạnh thẳng đứng và nằm ngang chứa trọn một ký tự ở bên trong
1.2.2.2 Tách chữ theo lược đồ xám
Lược đồ mức xám (histogram) [2] là một hàm cung cấp tần suất xuất hiện của mỗi mức xám (gray-level) trong ảnh Histogram cung cấp rất nhiều thông tin về phân bố mức xám của ảnh và là công cụ khá hữu hiệu dùng trong nhiều công đoạn
của xử lý ảnh
1.2.3 Trích chọn đặc trưng
Trích chọn đặc trưng [5], đóng vai trò cực kỳ quan trọng trong một hệ thống nhận dạng Trong trường hợp đơn giản nhất, ảnh đa cấp xám hoặc ảnh nhị phân được sử dụng cho việc nhận dạng Tuy nhiên, trong hầu hết các hệ nhận dạng, để
Trang 18giảm độ phức tạp và tăng độ chính xác của các thuật toán phân lớp thì đòi hỏi các đặc trưng được trích chọn phải rút gọn lại càng nhỏ càng tốt nhưng vẫn phải đảm bảo được thông tin của ký tự Với mục tiêu này, một tập các đặc trưng được trích chọn cho mỗi lớp sao cho có thể phân biệt được với các lớp khác Có rất nhiều phương pháp trích chọn đặc trưng cho ảnh văn bản, có thể gom lại thành ba nhóm chính sau [5]:
1.2.3.1 Biến đổi toàn cục và khai triển chuỗi
Một tín hiệu liên tục thường chứa nhiều thông tin và chúng có thể sử dụng làm các đặc trưng cho mục đích phân lớp Các đặc trưng được trích chọn cũng có thể đúng đối với việc xấp xỉ các tín hiệu liên tục thành các tín hiệu rời rạc Một cách
để biểu diễn một tín hiệu là sử dụng một tổ hợp tuyến tính của một dãy các hàm đơn giản hơn Các hệ số của tổ hợp tuyến tính cung cấp một tri thức giải mã vừa đủ, chẳng hạn như các phép biến đổi hoặc khai triển chuỗi Một số biến dạng khác như các phép dịch chuyển và phép quay là bất biến dưới các phép biến đổi toàn cục và khai triển chuỗi Điển hình là phương pháp biến đổi Fourier, biến đổi Wavelet, phương pháp mô men…
1.2.3.2 Đặc trưng thống kê
Các đặc trưng thống kê của ảnh văn bản bảo toàn các kiểu biến đổi đa dạng
về hình dáng của chữ Mặc dù các kiểu đặc trưng này không thể xây dựng lại ảnh gốc, nhưng nó được sử dụng để thu nhỏ số chiều của tập đặc trưng nhằm tăng tốc độ
và giảm thiểu độ phức tạp tính toán Một số phương pháp đặc trưng thường dùng để biểu diễn ảnh như: phân vùng (zoning), tính các giao điểm và khoảng cách, các phép chiếu, đặc trưng hướng…
1.2.3.3 Đặc trưng hình học và hình thái
Do các tính chất cục bộ và toàn cục khác nhau của các ký tự có thể được biểu diễn bằng các đặc trưng hình học và hình thái Các kiểu đặc trưng này cũng có thể giải mã một số tri thức về cấu trúc của đối tượng ảnh hoặc có thể cung cấp một số tri thức như sắp xếp các thành phần để tạo ra đối tượng, phổ biến là các loại đặc
Trang 19trưng như: trích chọn và đếm các cấu trúc hình thái, đo và xấp xỉ các tính chất hình học, đồ thị và cây…
Trích chọn đặc trưng hầu hết được thực hiện trên ảnh nhị phân Tuy nhiên, việc nhị phân hóa ảnh đa cấp xám có thể xóa đi một số thông tin quan trọng của các ký tự Trong trường hợp này, cũng có một số công trình nghiên cứu để trích chọn các đặc trưng trực tiếp từ các ảnh đa cấp xám Cuối cùng, mục đích chính của việc trích chọn đặc trưng là lựa chọn một tập đặc trưng phục vụ cho việc phân lớp sao cho hệ thống nhận dạng đạt độ chính xác cao nhất với số lượng phần tử được trích chọn ít nhất
1.2.4 Huấn luyện và nhận dạng
Đối với bài toán nhận dạng chữ in hoặc chữ viết tay, quá trình nhận dạng thường được thực hiện lần lượt theo các bước từ phân vùng ảnh đến tách dòng, tách từng ô và tách ký tự ra khỏi từng ô Do các ký tự trong một ô hầu hết là rời nhau nên việc tách ký tự là khả thi
Quá trình nhận dạng ký tự có thể hình dung như các thao tác gán nhãn cho đối tượng dựa trên những tri thức đã học được, nói cách khác đây là thao tác tìm kiếm một lớp mẫu phù hợp nhất với đối tượng đầu vào Đây chính là giai đoạn quan trọng nhất, giai đoạn này quyết định độ chính xác của hệ thống nhận dạng
Có nhiều phương pháp khác nhau được áp dụng cho các hệ thống nhận dạng chữ viết Các phương pháp này sẽ được trình bày trong mục 1.4
1.2.5 Hậu xử lý
Đây là công đoạn cuối cùng của quá trình nhận dạng Có thể hiểu hậu
xử lý là bước ghép nối các kí tự đã nhận dạng thành các từ, các câu, các đoạn văn hoặc dãy các ký tự nhằm để thực hiện một công việc nào đó hoặc đưa ra một kết luận
Trang 201.3 CÁC KHÁI NIỆM CƠ BẢN VÀ MỘT SỐ KỸ THUẬT XỬ LÝ ẢNH
1.3.1.2 Điểm ảnh (Picture Element)
Gốc của ảnh (ảnh tự nhiên) là ảnh liên tục về không gian và độ sáng Để xử
lý bằng máy tính (số), ảnh cần phải được số hoá Số hoá ảnh là sự biến đổi gần đúng một ảnh liên tục thành một tập điểm phù hợp với ảnh thật về vị trí (không gian) và
độ sáng (mức xám) Khoảng cách giữa điểm ảnh đó được thiết lập sao cho mắt người không phân biệt được ranh giới giữa chúng Mỗi một điểm như vậy gọi là điểm ảnh (PEL:Picture Element) hay gọi tắt là Pixel Trong khuôn khổ ảnh hai chiều, mỗi Pixel ứng với cặp tọa độ (x,y)
Như vậy, điểm ảnh (Pixel) là một phần tử của ảnh số tại toạ độ (x,y) với độ xám hoặc màu nhất định Kích thước và khoảng cách giữa các điểm ảnh đó được chọn thích hợp sao cho mắt người cảm nhận sự liên tục về không gian và mức xám (hoặc màu) của ảnh số gần như ảnh thật Mỗi phần tử trong ma trận được gọi là một phần tử ảnh, có thể tìm thấy trong [1]
1.3.1.3 Độ phân giải của ảnh
Độ phân giải (Resolution) của ảnh [1] là mật độ điểm ảnh được ấn định trên một ảnh số được hiển thị Theo định nghĩa ở trên thì mỗi Pixel gồm một cặp toạ độ (x,y) và màu Độ phân giải của ảnh chính là tích số của giá trị lớn nhất của x với giá trị lớn nhất của y Ví dụ như màn hình máy tính có nhiều loại với độ phân giải khác nhau: màn hình CGA có độ phân giải 320 x 200; màn hình VGA độ phân giải 1280
x 800 Rõ ràng màn hình có độ phân giải càng cao thì ta có cảm giác nó càng „mịn‟ hơn so với loại có độ phân giải thấp hơn
Trang 21Ảnh đen trắng: là ảnh có hai màu đen, trắng (không chứa màu khác) với mức xám ở các điểm ảnh có thể khác nhau
Ảnh nhị phân: ảnh chỉ có 2 mức đen, trắng phân biệt tức dùng 1 bit mô tả 21mức khác nhau hay mỗi điểm ảnh nhị phân chỉ có 1 trong 2 giá trị hoặc là 1 hoặc là 0
Ảnh màu: với mỗi điểm ảnh thì người ta dùng 3 byte để mô tả mức màu được tạo nên từ 3 màu cơ bản: đỏ (red), xanh đậm (blue) và xanh lục (green), do đó
có 28*3 =224=16,7 triệu màu
1.3.1.5 Một số định dạng ảnh [2]
Ảnh BMP (Bitmap) là ảnh được mô tả bởi một ma trận các giá trị số xác định màu và bảng màu của các điểm ảnh tương ứng khi hiển thị Ưu điểm của ảnh Bitmap là tốc độ vẽ và tốc độ xử lý nhanh Nhược điểm của nó là kích thước rất lớn
Ảnh JPEG (Joint Photographic Experts Group) là một định dạng ảnh được hỗ trợ bởi nhiều trình duyệt web Ảnh JPEG được phát triển để nén dung lượng và lưu trữ ảnh chụp, và được sử dụng tốt nhất cho đồ họa có nhiều màu sắc, ví dụ như là ảnh chụp được scan File Ảnh JPEG là ảnh Bitmap đã được nén lại
Ảnh GIF (Graphics Interchange Format) được phát triển dành cho những ảnh có tính chất thay đổi Nó được sử dụng tốt nhất cho đồ họa có ít màu, ví dụ như là ảnh hoạt hình hoặc là những bức vẽ với nhiều đường thẳng File ảnh GIF là những ảnh Bitmap được nén lại Có hai sự khác nhau cơ bản giữa ảnh GIF và ảnh JPEG:
Trang 22 Ảnh GIF nén lại theo cách giữ nguyên toàn bộ dữ liệu ảnh trong khi ảnh JPEG nén lại nhưng làm mất một số dữ liệu trong ảnh
Ảnh GIF bị giới hạn bởi số màu nhiều nhất là 256 trong khi ảnh JPEG không giới hạn số màu mà chúng sử dụng
Ảnh WMF (Windows Metafiles) là một tập hợp các lệnh GDI dùng để mô
tả ảnh và nội dung ảnh Có hai ưu điểm khi sử dụng ảnh WMF: kích thước file WMF nhỏ và ít phụ thuộc vào thiết bị hiển thị hơn so với ảnh Bitmap
1.3.2 Một số kỹ thuật trong xử lý ảnh
1.3.2.1 Xử lý histogram
Histogram là một đồ thị hiển thị sự phân bố tần số của một tập dữ liệu Trong xử lý ảnh, histogram còn được gọi là lược đồ xám [2] của một ảnh, là một hàm cung cấp tần suất xuất hiện của mỗi mức xám
Lược đồ xám được biểu diễn trong một hệ tọa độ vuông góc (x,y) Trong
hệ tọa độ này, trục hoành biểu diễn số mức xám từ 0 đến L, L là mức xám cực đại Trục tung biểu diễn số điểm ảnh cho một mức xám (số lượng các điểm ảnh
có cùng mức xám)
Lược đồ xám cung cấp rất nhiều thông tin về phân bố mức xám của ảnh
- Nếu ảnh đậm, lược đồ xám nằm bên trái (mức xám thấp)
- Nếu ảnh sang, lược đồ xám nằm bên phải (mức xám cao)
Lược đồ xám là công cụ khá hữu hiệu dùng trong nhiều công đoạn của xử
lý ảnh Từ lược đồ xám ta có thể suy diễn ra các tính chất quan trọng của ảnh nhờ giá trị xám trung bình hoặc độ tản mạn Qua cách tác động lên điểm ảnh, sự phân bố của biểu đồ cột được thay đổi theo mục đích Dựa vào lược đồ xám chúng ta có thể xác định được ngưỡng thích hợp cho quá trình phân đoạn hoặc tính đựợc các đại lượng đặc trưng của một ảnh
Trang 23Hình 1.6 Lược đồ xám của ảnh 1.3.2.2 Cải thiện ảnh dùng toán tử điểm
Toán tử điểm [1] là toán tử không bộ nhớ, ở đó một mức xám u [0,N] được ánh xạ sang một mức xám khác v [0,N]: v=f(u) Ánh xạ f tùy theo các ứng dụng khác nhau có dạng khác nhau và được liệt kê như sau:
1.3.2.3 Tăng độ tương phản (Streching Contrast)
Ảnh số là tập hợp các điểm, mà mỗi điểm có giá trị độ sáng khác nhau Thức
tế chỉ ra rằng, hai đối tượng có cùng độ sáng nhưng đặt trên hai nền khác nhau sẽ cho cảm nhận khác nhau Như vậy, độ tương phản biểu diễn sự thay đổi đọ sáng của đối tượng so với nền Hay, độ tương phản là độ nổi của điểm ảnh hay vùng ảnh so với nền, được tìm thấy trong [1]
Đối với những ảnh có độ tương phản thấp, thường là do điều kiện sáng không đủ hay không đều Để điều chỉnh lại độ tương phản của ảnh, ta điều chỉnh lại biên độ trên toàn dải hay có giới hạn bằng cách biến đổi tuyến tính biên độ đầu vào (cũng có thể giới hạn bằng phép biến đổi phi tuyến)
Hàm biến đổi tuyến tính được cho như sau:
( ) {
( ) ( )
(1.1)
Trang 24Tách nhiễu [1] là trường hợp đặc biệt của giãn độ tương phản khi hệ số góc α
= γ = 0 Tách nhiễu được ứng dụng một cách hữu hiệu để giảm nhiễu khi biết tín hiệu vào nằm trên khoảng [a,b]
Phân ngưỡng là trường hợp đặc biệt của tách nhiễu khi a = b = const và rõ ràng trong trường hợp này, ảnh đầu ra là ảnh nhị phân (vì chỉ có hai mức) Phân ngưỡng hay dùng trong kỹ thuật in ảnh 2 màu vì ảnh gần nhị phân không thể cho ra ảnh nhị phân khi quét ảnh bởi có sự xuất hiện của nhiễu do bộ cảm biến và sự biến đổi của nền
Trang 25Ví dụ như trường hợp của ảnh vân tay
Ánh xạ f trong trường hợp tách nhiễu được cho như sau:
( ) {
(1.2) Khi a = b = C = const gọi là phân ngưỡng, lúc này ánh xạ f:
( ) {
Để làm trơn nhiễu hay khử nhiễu, người ta sử dụng các bộ lọc tuyến tính (lọc trung bình, thông thấp) hoặc lọc phi tuyến (trung vị, giả trung vị, lọc đồng hình)
Từ bản chất của nhiễu (thường tương ứng với tần số cao) và từ cơ sở lý thuyết lọc là: bộ lọc chỉ cho tín hiệu có tần số nào đó thông qua do đó, để lọc nhiễu người ta thường dùng lọc thông thấp (theo quan điểm tần số không gian) hay lấy tổ hợp
Trang 26tuyến tính để san bằng (lọc trung bình) Để làm nổi cạnh (ứng với tần số cao), người ta dùng các bộ lọc thông cao, lọc Laplace
Trước khi xem xét chi tiết các kỹ thuật áp dụng, cần phân biệt các loại nhiễu hay can thiệp trong quá trình xử lý ảnh Trên thực tế tồn tại nhiều loại nhiễu; tuy nhiên người ta thường xem xét
Có 3 loại nhiễu chính: nhiễu cộng, nhiễu nhân và nhiễu xung:
• Nhiễu cộng
Nhiễu cộng thường phân bố khắp ảnh Nếu gọi ảnh quan sát (ảnh thu được) là
Xqs, ảnh gốc là Xgốc, nhiễu là η, ảnh thu được có thể biểu diễn bởi: Xqs = Xgốc + η
Trang 27 và NW là số điểm ảnh trong cửa sổ lọc W
Lọc trung bình có trọng số chính là thực hiện nhân chập ảnh đầu vào với cửa
sổ lọc H Thông thường trong trường hợp này H có dạng:
] (1.7)
Trang 28 Lọc phi tuyến
Lọc phi tuyến [1] là bộ lọc thường được dùng trong tăng cường ảnh Trong
kỹ thuật này, người ta thường dùng bộ lọc trung vị (median filter)
Với lọc trung vị điểm ảnh đầu vào sẽ được thay thế bởi trung vị các điểm ảnh
và được viết với công thức:
( , ) ( ( , ))
v m n trungvi y m k n l với { , } W k l (1.8)
Kỹ thuật này đòi hỏi các điểm ảnh trong cửa sổ phải xếp theo thứ tự tăng hoặc giảm dần so với giá trị trung vị Kích thước của cửa sổ lọc thường được chọn sao cho số điểm ảnh trong cửa sổ là lẻ, thường là: 3x3, 5x5, 7x7
Ví dụ: Nếu u(m) = [2, 4, 3, 8, 2] và cửa sổ w = (-1, 0, 1), thì ảnh kết quả thu được sau lọc trung vị sẽ là: v(m) = [2, 3, 4, 3, 2]
Lọc trung vị có lợi cho việc loại bỏ các điểm ảnh hay các hàng mà vẫn bảo toàn độ phân giải Hiệu quả của lọc trung vị sẽ giảm khi số điểm nhiễu trong cửa sổ lớn hơn hoặc bằng một nửa số điểm trong cửa sổ
I [i, j] = I [i, j] > = θ? Max : Min;
* Ứng dụng: Nếu Min = 0, Max = 1 kỹ thuật chuyển ảnh thành ảnh đen trắng
được ứng dụng khi quét và nhận dạng văn bản có thể xảy ra sai sót nền thành ảnh hoặc ảnh thành nền dẫn đến ảnh bị đứt nét hoặc dính
Trang 291.3.3 Một số kỹ thuật cải thiện ảnh nhị phân
Với ảnh nhị phân [2], mức xám chỉ nhận hai giá trị là 0 hoặc 1 Do vậy, ta coi một phần tử ảnh như một phần tử logic và có thể áp dụng các toán tử hình học (morphology operators) dựa trên khái niệm biến đồi hình học của một ảnh bởi một phần tử cấu trúc (structural element)
Phần tử cấu trúc là một mặt nạ dạng bất kỳ mà các phần tử của nó tạo nên một mô-típ Người ta tiến hành rê mặt nạ đi khắp ảnh và tính giá trị điểm ảnh bởi các điểm lân cận với mô-típ của mặt nạ theo cách lấy hội hay lấy tuyển Hình dưới đây
sẽ chỉ ra một phần tử cấu trúc và cách lấy hội hay tuyển trên một vùng ảnh:
Trang 30Dựa vào nguyên tắc trên, ta sử dụng hai kỹ thuật: giãn ảnh (dilation) và co ảnh (erosion)
1.3.3.1 Giãn ảnh
Giãn ảnh nhằm loại bỏ điểm đen bị vây bởi điểm trắng Kỹ thuật này kết hợp với kỹ thuật co ảnh để lấp các lỗ hổng trên ảnh Trong kỹ thuật này, ta sử dụng phép tuyển logic, đƣợc định nghĩa nhƣ sau: ( )
Trong đó:
D(I): Ảnh thu đƣợc sau khi giãn ảnh
I(m,n): Ảnh đầu vào và T(k,l): Mặt nạ
E(I): Ảnh thu đƣợc sau khi co ảnh
I(m,n): Ảnh đầu vào và T(k,l): Mặt nạ
Hình 1.10 Ảnh sau khi áp dụng lần lượt hai kỹ thuật “Giãn” và “Co”
Trang 31Với mặt nạ T được sử dụng ở cả hai trường hợp là: [
] (1.12)
1.3.4 Phép biến đổi Hough
Do ảnh văn bản quét vào không cẩn thận hoặc do sự cố in ấn, các hàng chữ
bị lệch so với lề chuẩn một góc , điều này gây khó khăn cho công đoạn tách chữ, đôi khi không thể tách được Trong những trường hợp như vậy, phải tính lại tọa độ điểm ảnh của các chữ bị sai lệch dựa trên cơ sở các phép biến đổi để hiệu chỉnh độ nghiêng, luận văn lựa chọn phương pháp biến đổi Hough [7] để hiệu chỉnh độ nghiên của ảnh văn bản
1.3.4.1 Biến đổi Hough cho đường thẳng
Bài toán: Cho n điểm (xi; yi) i = 1, n và ngưỡng θ hãy kiểm tra n điểm có tạo thành đường thẳng hay không?
* Phương pháp:
- Xây dựng mảng chỉ số [a, b] và gán giá trị 0 ban đầu cho tất cả các phân tử của mảng
Trang 32- Với mỗi (xi, yi) và ∀a, b là chỉ số của phần tử mảng thoả mãn b= - xia+ yi tăng giá trị của phân tử mảng tương ứng lên 1
- Tìm phần tử mảng có giá trị lớn nhất nếu giá trị lớn nhất tìm được so với số phần tử lớn hơn hoặc bằng ngưõng θ cho trước thì ta có thể kết luận các điểm nằm trên cùng 1 đường thẳng và đường thẳng có phương trình y = ax + b trong đó a, b tương ứng là chỉ số của phần tử mảng có giá trị lớn nhất tìm được:
Ví dụ:
Cho 5 điểm (0, 1); (1, 3); (2, 5); (3, 5); (4, 9) và θ = 80% Hãy kiểm tra xem
5 điểm đã cho có nằm trên cùng một đường thẳng hay không? Hãy cho biết phương trình đường thẳng nếu có?
Trang 331.3.4.2 Biến đổi Hough cho đường thẳng trong tọa độ cực
Mỗi điểm (x,y) trong mặt phẳng được biểu diễn bởi cặp (r, ) trong tọa
0= r0 Biến đổi Hough ánh xạ n điểm này thành n đường sin trong tọa độ cực mà
các đường này đều đi qua (r0, 0) Giao điểm (r0, 0) của n đường sin sẽ xác định
một đường thẳng trong hệ tọa độ đề các Như vậy, những đường thẳng đi qua điểm (x,y) sẽ cho duy nhất một cặp (r, ) và có bao nhiêu đường qua (x,y) sẽ có bấy nhiêu cặp giá trị (r, )
Trang 341.3.4.3 Áp dụng biến đổi Hough trong phát hiện góc nghiêng văn bản
Ý tưởng của việc áp dụng biến đổi Hough [7] trong phát hiện góc nghiêng văn bản là dùng một mảng tích luỹ để đếm số điểm ảnh nằm trên một đường thẳng trong không gian ảnh Mảng tích luỹ là một mảng hai chiều với chỉ số hàng của mảng cho biết góc lệch của một đường thẳng và chỉ số cột chính là giá trị r khoảng cách từ gốc toạ độ tới đường thẳng đó Sau đó tính tổng số điểm ảnh nằm trên những đường thẳng song song nhau theo các góc lệch thay đổi
Góc nghiêng văn bản tương ứng với góc có tổng giá trị mảng tích luỹ cực đại Theo biến đổi Hough, mỗi một đường thẳng trong mặt phẳng tương ứng được biểu diễn bởi một cặp (r, ) Giả sử ta có một điểm ảnh (x,y) trong mặt phẳng, vì qua điểm ảnh này có vô số đường thẳng, mỗi đường thẳng lại cho một cặp (r, ) nên với mỗi điểm ảnh ta sẽ xác định được một số cặp (r, ) thoả mãn phương trình Hough
Hình vẽ trên minh hoạ cách dùng biến đổi Hough để phát hiện góc nghiêng văn bản Giả sử ta có một số điểm ảnh, đây là những điểm giữa đáy các hình chữ nhật ngoại tiếp các đối tượng đã được lựa chọn từ các bước trước Ở đây, ta thấy trên mặt phẳng có hai đường thẳng song song nhau Đường thẳng thứ nhất có ba điểm ảnh nên giá trị mảng tích luỹ bằng 3, đường thẳng thứ hai có gia trị mảng tích luỹ bằng 4 Do đó, tổng giá trị mảng tích luỹ cho cùng góc trường hợp này bằng 7
Gọi Hough [360][Max] là mảng tích lũy, giả sử M và N tương ứng là chiều rộng và chiều cao của ảnh, ta có các bước chính trong quá trình áp dụng biến đổi Hough phát hiện góc nghiêng văn bản như sau:
Trang 35Bước 1: Khai báo mảng chỉ số Hough[][r] với 0 ≤ ≤ 360 và
0 r M M * N N *
Bước 2: Gán giá trị khởi tạo bằng 0 cho các phần tử của mảng
Bước 3: Với mỗi cặp (x,y) là điểm giữa đáy của hình chữ nhật ngoại tiếp một
- Tăng giá trị của phần tử mảng Hough[i][r0] lên một đơn vị
Bước 4: Trong mảng Hough[][r] tính tổng giá trị các phần tử theo từng dòng và xác định dòng có tổng giá trị lớn nhất
Do số phần tử của một phần tử mảng Hough[0][r0] chính là số điểm ảnh thuộc đường thẳng x.cos0+y.sin0= r0 vì vậy tổng số phần tử của một hàng chính
là tổng số điểm ảnh thuộc các đường thẳng tương ứng được biểu diễn bởi góc ϕ của hàng đó Do đó, góc nghiêng của toàn văn bản chính là hàng có tổng giá trị các phần tử mảng lớn nhất
1.4 CÁC PHƯƠNG PHÁP 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 hệ thống nhận dạng chữ Các phương pháp này [5] có thể được tích hợp trong các hướng tiếp cận sau: đối sánh mẫu, thống kê (mô hình Markov ẩn-HMM), cấu trúc, mạng nơ-ron và phương pháp SVM,…
1.4.1 Đối sánh mẫu
Kỹ thuật nhận dạng chữ đơn giản nhất dựa trên cơ sở đối sánh các nguyên mẫu (prototype) với nhau để nhận dạng ký tự hoặc từ Nói chung, toán tử đối sánh xác định mức độ giống nhau giữa hai vé tơ (nhóm các điểm, hình dạng, độ cong )
Trang 36trong một không gian đặc trưng Các kỹ thuật đối sánh [9] có thể nghiên cứu theo ba hướng sau:
Đối sánh trực tiếp: Một ký tự đầu vào là ảnh đa cấp xám hoặc ảnh nhị phân được so sánh trực tiếp với một tập mẫu chuẩn đã được lưu trữ Việc so sánh dựa theo một độ đo về sự tương đồng nào đó (chẳng hạn như độ đo Euclide) để nhận dạng Các kỹ thuật đối sánh này có thể đơn giản như việc so sánh một – một hoặc phức tạp hơn như phân tích cây quyết định Mặc dù phương pháp đối sánh trực tiếp đơn giản và có một cơ sở toán học vững chắc nhưng kết quả nhận dạng của nó cũng rất nhạy cảm với nhiễu
Các mẫu biến dạng và Đối sánh mềm: Một phương pháp đối sánh khác
là sử dụng các mẫu biến dạng, trong đó một phép biến dạng ảnh được dùng để đối sánh một ảnh chưa biết với một cơ sở dữ liệu ảnh đã biết Ý tưởng cơ bản của đối sánh mềm là đối sánh một cách tối ưu mẫu chưa biết với tất cả các mẫu có thể mà các mẫu này có thể kéo giãn ra hoặc co lại Chỉ một không gian đặc trưng được thành lập, các véc tơ chưa biết được đối sánh bằng cách sử dụng quy hoạch động và một hàm biến dạng
Đối sánh giảm nhẹ: Đây là một kỹ thuật đối sánh ảnh ở mức độ tượng trưng, kỹ thuật này sử dụng hình dáng đặc trưng cơ bản của ảnh ký tự Thứ nhất, các vùng đối sánh đã được nhận biết Sau đó, trên cơ sở một số vùng đối sánh được đánh giá tốt, các phần tử của ảnh được so sánh với các vùng đối sánh này Công việc này đòi hỏi một kỹ thuật tìm kiếm trong một không gian đa chiều để tìm cực đại toàn cục của một số hàm
1.4.2 Phương pháp tiếp cận cấu trúc [5]
Cách tiếp cận của phương pháp này dựa vào việc mô tả đối tượng nhờ một số khái niệm biểu diễn đối tượng cơ sở trong ngôn ngữ tự nhiên Để mô tả đối tượng người ta dùng một số dạng nguyên thuỷ như đoạn thẳng, cung,… Mỗi đối tượng được mô tả như một sự kết hợp của các dạng nguyên thuỷ Các quy tắc kết hợp các dạng nguyên thuỷ được xây dựng giống như việc nghiên cứu văn phạm trong một
Trang 37ngôn ngữ, do đó quá trình quyết định nhận dạng là quá trình phân tích cú pháp Phương pháp này đặt vấn đề để giải quyết bài toán nhận dạng chữ tổng quát Tuy vậy, cho đến nay còn nhiều vấn đề liên quan đến hệ nhận dạng cú pháp chưa được giải quyết độc lập và chưa xây dựng được các thuật toán phổ dụng Hiện nay, nhận dạng theo cấu trúc phổ biến là trích trọn các đặc trưng của mẫu học, phân hoạch bảng ký tự dựa trên các đặc trưng này, sau đó ảnh cần nhận dạng sẽ được trích chọn đặc trưng và so sánh trên bảng phân hoạch để tìm ra ký tự có các đặc trưng phù hợp
Các phương pháp cấu trúc áp dụng cho các bài toán nhận dạng chữ được phát triển theo hai hướng sau:
1.4.2.1 Phương pháp ngữ pháp (Grammatical Methods)
Giữa thập niên 1960, các nhà nghiên cứu bắt đầu xét các luật của ngôn ngữ học để phân tích tiếng nói và chữ viết Sau đó, các luật đa dạng của chính tả, từ vựng và ngôn ngữ học đã được áp dụng cho các chiến lược nhận dạng Các phương pháp ngữ pháp khởi tạo một số luật sinh để hình thành các ký tự từ một tập các công thức ngữ pháp nguyên thủy Các luật sinh này có thể kết nối bất kỳ kiểu đặc trưng thống kê và đặc trưng hình thái nào dưới một số cú pháp hoặc các luật ngữ nghĩa Giống như lý thuyết ngôn ngữ, các luật sinh cho phép mô tả các cấu trúc câu có thể chấp nhận được và trích chọn thông tin theo ngữ cảnh về chữ viết bằng cách sử dụng các kiểu ngữ pháp khác nhau
Trong các phương pháp này, việc huấn luyện được thực hiện bằng cách mô
tả mỗi ký tự bằng một văn phạm Gi Còn trong pha nhận dạng thì chuỗi, cây hoặc
đồ thị của một đơn vị viết bất kỳ (ký tự, từ hoặc câu) được phân tích để quyết định văn phạm của mẫu đó thuộc lớp nào Các phương pháp ngữ pháp hầu hết được sử dụng trong giai đoạn hậu xử lý để sửa các lỗi mà khối nhận dạng đã thực hiện sai
1.4.2.2 Phương pháp đồ thị (Graphical Methods)
Các đơn vị chữ viết được mô tả bởi các cây hoặc các đồ thị Các dạng nguyên thủy của ký tự (các nét) được lựa chọn bởi một hướng tiếp cận cấu trúc Đối với mỗi lớp, một đồ thị hoặc cây được thành lập trong giai đoạn huấn luyện để mô
Trang 38tả các nét, các ký tự hoặc các từ Giai đoạn nhận dạng gán một đồ thị chưa biết vào một trong các lớp bằng cách sử dụng một độ đo để so sánh các đặc điểm giống nhau giữa các đồ thị Có rất nhiều hướng tiếp cận khác nhau sử dụng phương pháp đồ thị, tiêu biểu là hướng tiếp cận đồ thị phân cấp được dùng trong việc nhận dạng chữ viết tay Trung Quốc và Hàn Quốc
1.4.3 Các phương pháp thống kê [5]
Hầu hết các kỹ thuật thống kê đều dựa trên cơ sở ba giả thuyết chính sau:
1 Phân bố của tập đặc trưng là phân bố Gausse hoặc trong trường hợp xấu nhất là phân bố đều
2 Có các số liệu thống kê đầy đủ có thể dùng cho mỗi lớp
3 Cho tập ảnh {I}, tập ảnh này có thể trích chọn một tập đặc trưng {fi}∈F, i∈{1, ,n} mà tập đặc trưng này đại diện cho mỗi lớp mẫu riêng biệt
Điển hình nhất của phương pháp này là mô hình Markov ẩn (HMM)
HMM là một mô hình xác suất hữu hạn trạng thái theo kiểu phát sinh tiến trình bằng cách định nghĩa xác suất liên kết trên các chuỗi quan sát Mỗi chuỗi quan sát được sinh ra bởi một chuỗi các phép chuyển trạng thái, bắt đầu từ trạng thái khởi đầu cho đến khi thu được trạng thái kết thúc Tại mỗi trạng thái thì một phần tử của chuỗi quan sát được phát sinh ngẫu nhiên trước khi chuyển sang trạng thái tiếp theo Các trạng thái của HMM được xem là ẩn bên trong mô hình vì tại mỗi thời điểm chỉ nhìn thấy các kí hiệu quan sát còn các trạng thái cũng như sự chuyển đổi trạng thái được vận hành ẩn bên trong mô hình HMM đã từng được áp dụng rộng rãi đối với các bài toán nhận dạng chữ viết tay ở mức từ
1.4.4 Máy véc tơ hỗ trợ (SVM)
SVM [5] được nghiên cứu từ những năm của thập niên 1960 với những công trình của Vapnik và Lerner (1963), Vapnik và Chervonenkis (1964) và từ đó đến nay nó đã trở thành một công cụ khá mạnh trong nhiều lĩnh vực như: nhận dạng chữ viết, nhận dạng mặt người
Trang 39Các thuật toán huấn luyện SVM [18] được thực hiện theo ý tưởng sau: tìm siêu phẳng tối ưu trong không gian đặc trưng để cực đại khoảng cách giữa hai lớp mẫu huấn luyện trong bài toán phân lớp nhị phân Như vậy, việc huấn luyện SVM
tương đương với việc giải bài toán tối ưu với số lượng các biến là l và số các tham
số là l 2 , trong đó l là số lượng mẫu huấn luyện Điều này dẫn đến bài toán trở nên
phức tạp hơn trong cả hai mặt: không gian nhớ để lưu trữ và độ phức tạp tính toán Mặt khác, mục đích của việc huấn luyện SVM là lọc ra các mẫu huấn luyện có tham gia vào việc tạo siêu phẳng đồng thời loại bỏ các mẫu không liên quan, các mẫu có tham gia tạo ra siêu phẳng được gọi là các véc tơ tựa (SV - Support Vector) SVM có một nền tảng lý thuyết chặt chẽ, dựa trên nhiều định lý toán học SVM là một phương pháp tốt (phù hợp) đối với những bài toán phân lớp
có không gian biểu diễn thuộc tính lớn - các đối tượng cần phân lớp được biểu diễn bởi một tập rất lớn các thuộc tính SVM đã được biết đến là một trong số các phương pháp phân lớp tốt nhất đối với các bài toán phân lớp văn bản
1.4.5 Mạng nơ-ron nhân tạo (ANN)
Một mạng nơ-ron nhân tạo [5] hay còn gọi là mạng nơ-ron được định nghĩa như một cấu trúc tính toán bao gồm nhiều bộ xử lý “nơ ron” được kết nối song song chằng chịt với nhau Do bản chất song song của các nơ-ron nên nó có thể thực hiện các tính toán với tốc độ cao hơn so với các kỹ thuật phân lớp khác Một mạng nơ-ron chứa nhiều nút, đầu ra của một nút được sử dụng cho một nút khác ở trong mạng và hàm quyết định cuối cùng phụ thuộc vào sự tương tác phức tạp giữa các nút Mặc dù nguyên lý khác nhau, nhưng hầu hết các kiến trúc mạng nơ-ron đều tương đương với các phương pháp nhận dạng mẫu thống kê Các kiến trúc mạng nơ-ron có thể được phân thành hai nhóm chính: mạng truyền thẳng và mạng lan truyền ngược Trong các hệ thống nhận dạng chữ, các mạng nơ-ron sử dụng phổ biến nhất là mạng perceptron đa lớp thuộc nhóm mạng truyền thẳng và mạng SOM (Self Origanizing Map) của Kohonen thuộc nhóm mạng lan truyền ngược
Trang 40Mạng perceptron đa lớp được đề xuất bởi Rosenblatt [14,17] được nhiều tác giả sử dụng trong các hệ nhận dạng chữ viết tay [16] SOM kết hợp trích chọn đặc trưng và nhận dạng trên một tập lớn các ký tự huấn luyện Mạng này chứng tỏ rằng
nó tương đương với thuật toán phân cụm k-means Với thuật toán đơn giản nhưng rất hiệu quả, cùng với thành công của mô hình này trong các ứng dụng thực tiễn, mạng nơ-ron hiện đang là một trong các hướng nghiên cứu của lĩnh vực học máy Mạng nơ-ron tỏ ra phù hợp với các bài toán đối sánh, phân loại mẫu, xấp xỉ hàm, tối
ưu hoá, lượng tử hoá véc tơ và phân hoạch không gian dữ liệu, trong khi các phương pháp truyền thống không đủ khả năng giải quyết các vấn đề nêu trên một cách hiệu quả Đặc biệt trong các hệ thống nhận dạng sử dụng mạng nơ-ron đã đạt được tỉ lệ nhận dạng khá chính xác, có thể so sánh với các phương pháp nhận dạng cấu trúc, thống kê,…
1.5 KẾT CHƯƠNG 1
Chương này giới thiệu một cách tổng quan về lĩnh vực nhận chữ quang học,
mô hình nhận dạng chữ tổng quát các khái niệm cơ bản, kỹ thuật về xử lý ảnh và một số phương pháp nhận dạng chữ áp dụng trong lĩnh vực nhận dạng Cho đến nay các kết quả nghiên cứu nhận dạng ở lĩnh vực này vẫn còn hạn chế, các ứng dụng chủ yếu chỉ tập trung ở một số lĩnh vực hẹp Có nhiều mô hình, kỹ thuật tiên tiến trong lĩnh vực máy học đang được áp dụng cho bài toán nhận dạng chữ như: mạng nơ-ron nhân tạo, mô hình Markov ẩn, máy véc tơ hỗ trợ (SVM),