HỌC VIỆN CÔNG NGHỆ BƢU CHÍNH VIỄN THÔNG
TIỂU LUẬN MÔN HỌC
PHƢƠNG PHÁP LUẬN NGHIÊN CỨU KHOA HỌC
Đề tài:
“ỨNG DỤNG KỸ THUẬT NHẬN DẠNG BẰNG
SVM VÀO XÂY DỰNG PHẦN MỀM NHẬP
ĐIỂM TỰ ĐỘNG TẠI TRƢỜNG ĐẠI HỌC AN
GIANG”
Giáo viên hƣớng dẫn : GV.CC.TS Nguyễn Văn Y
Sinh viên thực hiện : Nguyễn Tấn An
Mã học viên : N13CHIS002
Lớp : M13CQIS01-N
Hồ Chí Minh - 2014
LỚI CẢM ƠN
Đầu tiên, em xin gửi lời cảm ơn sâu sắc đến thầy giáo Tiến sĩ Nguyễn Văn Y ngƣời đã
truyền đạt kiến thức cho em về môn nghiên cứu phƣơng pháp luận khoa học tại Học
Viện Bƣu Chính Viễn Thông. Qua 2 tháng em đã tiếp thu đƣợc rất nhiều điểu bổ ích
về cách làm một bài luận khoa học, từ đó đúc kết đƣợc nhiều kinh nghiệm để thực hiện
bài tiểu luận nghiên cứu khoa học với đề tài “Ứng dụng kỹ thuật nhận dạng bằng SVM
vào xây dựng phần mềm nhập điểm tự động tại trƣờng Đại học An Giang”.
Em cũng xin bày tỏ lời cảm ơn đến tập thể lớp cao học hệ thống thông tin
M13CQIS01-N, những ngƣời bạn đã cùng đồng hành trong suốt quá trình học tập môn
nghiên cứu phƣơng pháp luận khoa học, đã lắng nghe, đóng góp và chia sẽ kinh
nghiệm đã giúp em hoàn thành tốt hơn bài tiểu luận của mình.
Em xin chân thành cảm ơn.
Tp Hồ Chí Minh, ngày 18 tháng 01 năm 2014
Học viên
Nguyễn Tấn An
Tiểu luận môn Phƣơng pháp luận và nghiên cứu khoa học Trang 1
GV.CC.TS Nguyễn Văn Y Ngƣời thực hiện: Nguyễn Tấn An
MỤC LỤC
MỞ ĐẦU 2
1. Lý do chọn đề tài 2
2. Mục tiêu của đề tài 3
3. Câu hỏi nghiên cứu 3
4. Phạm vi nghiên cứu 3
5. Giải pháp hiện có 3
6. Đối tƣợng và khách thể nghiên cứu 3
7. Giả thuyết khoa học 3
8. Phƣơng pháp chứng mình giả thuyết 4
Chƣơng 1: CƠ SỞ LÝ LUẬN 5
1.1. Tổng quan vấn đề nghiên cứu 5
1.2. Các khái niệm liên quan đến đề tài 7
1.3. Hƣơng tiếp cận của đề tài 13
1.4. Các yếu tố ảnh hƣởng đến đề tài 14
Kết luận chƣơng 1 15
Chƣơng 2: CƠ SỞ THỰC TIỄN 16
2.1. Giới thiệu 16
2.2. Khảo sát hiện trạng hệ thống 16
2.3. Kinh nghiệm một số nơi 18
Kết luận chƣơng 2 19
Chƣơng 3: GIẢI PHÁP – MÔ HÌNH – SẢN PHẨM 20
3.1. Mô tả dữ liệu đầu vào và đầu ra 20
3.2. Mô tả sơ lƣợc về phiếu điểm 20
3.3. Giải pháp và các mô hình các quá trình xử lý 22
Kết luận chƣơng 3 28
KẾT LUẬN 29
KHUYẾN NGHỊ 29
TÀI LIỆU THAM KHẢO 30
Tiểu luận môn Phƣơng pháp luận và nghiên cứu khoa học Trang 2
GV.CC.TS Nguyễn Văn Y Ngƣời thực hiện: Nguyễn Tấn An
MỞ ĐẦU
1. Lý do chọn đề tài
Trƣờng Đại học An Giang là một trong những trƣờng đại học lớn ở đồng bằng
sông Cửu Long, với tổng số sinh viên lên đến 10000 sinh viên, việc quản lý thông tin
sinh viên và kết quả học tập của sinh viên ở trƣờng đã đƣợc tin học hóa thông qua
website regis.agu.edu.vn, ở website này sinh viên sẽ biết đƣợc các thông tin về đăng
ký học phần, thời khóa biểu, lịch thi, kết quả học tập của mình. Để cung cấp kết quả
học tập của một số lƣợng lớn sinh viên nhƣ vậy, cứ mỗi kỳ thi cán bộ nhập điểm phải
nhập điểm vào hệ thống cơ sở dữ liệu điểm để đƣa lên website, công việc này mất rất
nhiều thời gian và công sức của ngƣời nhập liệu, đồng thời nếu thời gian thông báo
chậm trễ sẽ làm ảnh hƣởng xấu cho sinh viên trong khâu chuẩn bị cải thiện kết quả học
tập của mình.
Mặt khác, hiện nay khi các lĩnh vực khai thác dữ liệu ngày càng phát triển, trong
đó lĩnh vực nhận dạng ký tự cũng là một trong những đề tài đã đƣợc các nhà nghiên
cứu quan tâm rất nhiều. Bài toán này có 2 dạng, một dạng là bài toán nhận dạng ký tự
in và dạng còn lại là bài toán nhận dạng ký tự viết tay, về nhận dạng ký tự in do ký tự
in có kiểu chữ, kích thƣớc, khoảng cách viết đều có qui định cụ thể nên bài toán này
gần nhƣ đã đƣợc giải quyết trọn vẹn, tuy nhiên với bài toán nhận dạng ký tự viết tay
vẫn còn là một thách thức lớn, vì nó phụ thuộc nhiều vào ngƣời viết và sự biến đổi quá
đa dạng trong cách viết của mỗi ngƣời,… Nếu đặt bài toán này trong một phạm vi hẹp
lại, cụ thể hạn chế lại số mẫu chữ viết, và lập yêu cầu cụ thể cách viết rõ ràng hơn thì
bài toán này sẽ cho kết quả khả quan hơn. Các phƣơng pháp tiếp cận giải quyết bài
toán nhận dạng ký tự viết tay khá phong phú, một số phƣơng pháp thƣờng đƣợc áp
dụng nhƣ: mô hình Markov ẩn, cây quyết định, mạng nơ-ron nhân tạo, phƣơng pháp
máy học vec-tơ hỗ trợ (SVM), giải thuật Knn, …. . Trong đó giải thuật SVM là một
giải thuật tiên tiến hiện nay, có độ chính xác cao và giải thuật này đã đƣợc các nhà
nghiên cứu khai khoáng dữ liệu thiết kế và cài đặt một cách hoàn chỉnh vì vậy có thể
sử dụng để xây dựng một ứng dụng riêng khá dễ dàng và đạt hiểu quả cao. Từ những
bƣớc phát triển trên, nếu ứng dụng bài toán nhận dạng ký tự bằng giải thuật SVM này
vào giải quyết vấn đề nhập điểm của trƣờng Đại học An Giang sẽ là một giải pháp hữu
hiệu nhằm giảm tải công sức nhập liệu của cán bộ đồng thời nó sẽ giúp nâng cáo chất
lƣợng học tập của sinh viên tại trƣờng và là một trong những ứng dụng công nghệ
Tiểu luận môn Phƣơng pháp luận và nghiên cứu khoa học Trang 3
GV.CC.TS Nguyễn Văn Y Ngƣời thực hiện: Nguyễn Tấn An
thông tin vào trƣờng học. Vì vậy tôi xây dựng đề tài “Ứng dụng kỹ thuật nhận dạng ký
tự bằng SVM vào xây dựng phần mềm nhập điểm tự động tại trƣờng Đại học An
Giang” đi đến xây dựng một chƣơng trình nhập điểm tự động cho trƣờng.
2. Mục tiêu của đề tài
Nghiên cứu các cơ sở lý thuyết, giải thuật SVM và các thuật toán xử lý ảnh.
Xây dựng mô hình nhận dạng ký tự bằng giải thuật SVM.
Đƣa ra mô hình làm việc với phiếu điểm tại trƣờng Đại học An Giang.
Tích hợp mô hình nhận dạng ký tự vào quy trình nhập điểm tự động tại trƣờng Đại
học An Giang.
3. Câu hỏi nghiên cứu
SVM là gì? Sử dụng giải thuật SVM vào bài toán nhận dạng nhƣ thế nào? Ƣu
khuyết điểm của SVM so với các giải thuật nhận dạng khác?
Ứng dụng bài toán nhận dạng ký tự bằng SVM vào phần mềm nhập điểm tự động
nhƣ thế nào?
4. Phạm vi nghiên cứu
Ứng dụng nhận dạng ký tự bằng giải thuật SVM vào xây dựng phần mềm nhập điểm
tự động cho trƣờng Đại học An Giang.
5. Giải pháp hiện có
Thực hiện thủ công:
Ƣu điểm: Tỷ lệ chính xác tƣơng đối cao, trải qua nhiều khâu xác nhận từ sinh
viên đến giảng viên đến ngƣời nhập điểm nên hạn chế nhiều sai sót về điểm xảy ra.
Nhƣợc điểm: mất nhiều thời gian nhập điểm và vẫn còn sai sót diễn ra, chƣa
phù hợp với sự phát triển của trƣờng Đại học lớn.
6. Đối tƣợng và khách thể nghiên cứu
Nghiên cứu cấu trúc phiếu điểm của trƣờng Đại học An Giang.
Nghiên cứu phép toán tiền xử lý ảnh phục vụ bài toán nhận dạng ký tự.
Nghiên cứu giải thuật SVM nhận dạng ký tự số viết tay và ký tự in thông qua phiếu
điểm của trƣờng Đại học An Giang.
7. Giả thuyết khoa học
Đề tài phân tích đƣợc mô hình nhận dạng ký tự bằng giải thuật SVM cho phiếu
điểm của trƣờng Đại học An Giang.
Tiểu luận môn Phƣơng pháp luận và nghiên cứu khoa học Trang 4
GV.CC.TS Nguyễn Văn Y Ngƣời thực hiện: Nguyễn Tấn An
Xây dựng đƣợc một công cụ nhập điểm tự động cho trƣờng Đại học An Giang
mang lại hiệu quả cao về hiệu suất làm việc cũng nhƣ tiết kiệm đƣợc rất nhiều thời
gian so với cách nhập điểm bằng tay thông thông.
Nghiên cứu phân tích đƣợc bộ nhận dạng chữ viết tay cho nhập điểm sẽ là tiền đề
áp dụng cho nhiều ứng dụng khác.
8. Phƣơng pháp chứng mình giả thuyết
Nghiên cứu lý thuyết về thuật toán SVM nhận dạng ký tự viết tay.
Sử dụng mã nguồn mở thƣ viện SVM để xây dựng ứng dụng nhập điểm tự động
cho trƣờng Đại học An Giang.
Nghiên cứu so sánh các giải thuật trong lĩnh vực nhận dạng chữ viết tay từ đó rút ra
điểm mạnh yếu làm tiền để khoa học cho đề tài.
Thực nghiệm ứng dụng nhập điểm thông qua phiếu điểm tự động bằng ứng dụng
thực tế tại trƣờng Đại học An Giang.
Tiểu luận môn Phƣơng pháp luận và nghiên cứu khoa học Trang 5
GV.CC.TS Nguyễn Văn Y Ngƣời thực hiện: Nguyễn Tấn An
Chƣơng 1: CƠ SỞ LÝ LUẬN
1.1. Tổng quan vấn đề nghiên cứu
Tổng quan
Trên thế giới hiện nay có nhiều chƣơng trình nhận dạng chữ viết (chữ in và chữ viết
tay) bằng các thứ tiếng Anh, Nga, v.v… nhƣ các hệ OMNIPAGE, READ-WRITE,
WORD-SCAN, … Ở Việt Nam cũng có một số hệ nhƣ WORC của công ty 3C, VIET-
IN của công ty SEATIC, VNDOCR của Viện Công Nghệ Thông Tin, Image Scon của
Trung Tâm Tự Động Hóa Thiết Kế, hệ WINGIS của công ty DolfSoft…
Nhìn chung, các sản phẩm phần mềm nhận dạng văn bản tiếng Việt chữ in của nƣớc ta
đã thu đƣợc các kết quả khả quan, đặc biệt phần mềm VNDOCR đã đƣợc sử dụng
rộng rãi trong các cơ quan nhà nƣớc. Tuy nhiên về các ứng dụng nhận dạng chữ viết
tay thì còn rất hạn chế vì chƣa đạt đƣợc độ chính xác cao cần thiết để có thể áp dụng
rộng rãi trên thực tế, hiện nay bài toán này thƣờng chủ yếu phục vụ yêu cầu đọc và xử
lý trên các biểu mẫu do các chữ viết tay đƣợc nằm riêng biệt và rõ ràng, ví dụ nhƣ: hóa
đơn, phiếu điều tra, …. . Nhập điểm tự động cũng là một dạng bài toán nhận dạng ký
tự viết tay rời rạc trích xuất từ biểu mẫu cố định.
Có rất nhiều phƣơng pháp sử dụng cho bài toán nhận dạng ký tự đã đƣợc nghiên cứu
từ trƣớc đến nay và đạt kết quả khá khả quan. Dƣới đây là một số kết quả của một số
phƣơng pháp của các nhà nghiên cứu trƣớc trên cùng một bộ dữ liệu chữ viết tay
MNIST:
Bảng 1-1: Bảng so sánh độ chính xác các giải thuật nhận dạng chữ viết tay [4]
STT
Phƣơng pháp
Độ chính xác (%)
1
1-layer Neural nets (LeCun et al., 1998)
88.00
2
Nearest-neighbor (Euclidean L2) nets (LeCun et al.,
1998)
95.00
3
Convolution net LeNet-1 (LeCun et al., 1998)
98.30
4
Convolution net LeNet-4* (LeCun et al., 1998)
98.90
5
Convolution net LeNet-5* (LeCun et al., 1998)
99.15
Tiểu luận môn Phƣơng pháp luận và nghiên cứu khoa học Trang 6
GV.CC.TS Nguyễn Văn Y Ngƣời thực hiện: Nguyễn Tấn An
6
Convulution Neural Net (CNN)* (Simard el al.,03)
99.10
7
LIBSVM (RBF, = 0.05, c =
)
98.37
8
LIBSVM (RBF, = 0.05, c =
)
96.65
9
AdaBootst.M1 (100trees with C4.5)
95.95
Kết quả nhận dạng với phƣơng pháp SVM đã mức độ trung bình từ 96.65% đến
98.37% và đặc biệt với giải thuật SVM này không cần bất kỳ xử lý nào đặc biệt khi
huấn luyện và thời gian huấn luyện nhanh hơn chỉ mất 30 phút (nhanh hơn 50 lần so
với mạng tích chập CNN của (Simard el al.,03), (O’Neill, 2006) và giải thuật
AdaBootst.M1(Freund & Schapire, 1995), (Witten & Frank, 2005) cần thời gian
huấn luyện gần 1 ngày để đạt độ chính xác nhƣ trong bảng) cho độ chính xác tƣơng
đƣơng (thấp hơn 0.5%).
Tình hình trong nƣớc
Ở Việt Nam, ở một số trƣờng Đại học nhƣ Đại học Hồng Bàng, Đại học Mở, Đại học
Kỹ thuật Công Nghệ Hồ Chí Minh cũng đã có các công trình nghiên cứu về ứng dụng
nhập điểm tự động tuy nhiên các công trình nãy vẫn chƣa thể đƣa vào triển khai thực
tế vì vẫn còn sai sót nhiều trong quá trình nhận dạng.
Tình hình ngoài nƣớc
Nói chung về bài toán nhận dạng ký tự viết tay có thể kể đến nhƣ: hệ thống nhận
dạng chữ viết tay trong lĩnh vực kiểm tra tài khoản ở ngân hàng của nhóm nghiên cứu
Simon và O.Baret (Laoria/CNRS & ENPC, Paris)[]; hệ thống chuyên nhận dạng các
địa chỉ nhƣ ở bƣu điện của J.J.Hull, T.K.Ho, J.Favata, V.Govindaraju và S.N.Srihari ở
trƣờng Đại học NewYord[]; phần mềm đọc phiếu xuất nhập cảnh của Singapore:
Tiểu luận môn Phƣơng pháp luận và nghiên cứu khoa học Trang 7
GV.CC.TS Nguyễn Văn Y Ngƣời thực hiện: Nguyễn Tấn An
Hình 1-1: Phiếu xuất nhập cảnh Singapore đọc đƣợc bằng máy.
1.2. Các khái niệm liên quan đến đề tài
Giới thiệu SVM
SVM đƣợc nghiên cứu từ những năm của thập niên 1960 với công trình của
Vapnik và Lerner (1963), Vapnik và Chervonenkis (1964). Cơ sở của SVM dựa trên
nền tảng của lý thuyết học thống kê và lý thuyết chiều Vapnik Chervonenkis đã đƣợc
phát triển qua 3 thập kỷ bởi Vapnik và Chervonenkis. Lý thuyết này bắt đầu có những
bƣớc phát triển mạnh mẽ về mặt ứng dụng kể từ những năm cuối của thập niên 1990
(Burges, 1996; Osuma, 1997; Platt, 1998) 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, …
Trong những năm gần đây, SVM đƣợc biết đến nhƣ một hƣớng tiếp cận phân
lớp hiệu quả và đang đƣợc áp dụng rộng rãi trong nhiều ứng dụng thực tế. Ƣu điểm
của SVM là khả năng phân lớp với độ chính xác cao, điều này đƣợc bảo đảm bởi các
tính chất của siêu phẩm tối ƣu và cách sử dụng hàm nhân. Tuy nhiên, tốc độ phân lớp
của SVM bị đánh giá chậm hơn so với các phƣơng pháp phân lớp khác. Trong quá
trình phân lớp, SVM phải duyệt qua tất cả các véc tơ tựa để so sánh với mẫu cần nhận
dạng, khi số véc tơ tựa tăng thì tốc độ phân lớp cũng giảm xuống tƣơng ứng.
Các thuật toán huấn luyện SVM đƣợ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 2 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
Tiểu luận môn Phƣơng pháp luận và nghiên cứu khoa học Trang 8
GV.CC.TS Nguyễn Văn Y Ngƣời thực hiện: Nguyễn Tấn An
với việc giải bài toán tối ƣu với số lƣợng các biến là và số các tham số là
, trong đó
là số lƣợng mẫu huấn luyện.
Hình 1-2: Phân lớp SVM.[1]
Đ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. Hơn nữa, siêu phẳng tối ƣu lại nằm trong không
gian đặc trƣng với số chiều cao hơn dựa trên cơ sở lựa chọn hàm nhân. Mà việc lựa
chọn hàm nhân phù hợp cho từng ứng dụng cụ thể buộc ngƣời sử dụng SVM phải thực
hiện nhiều lần huấn luyện với các loại hàm nhân khác nhau tƣơng ứng với các giá trị
tham số khác nhau của chúng. 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ẩm đƣợc gọi là véc tơ tựa (SV –
Support Vector). Có nhiều thuật toán huấn luyện SVM, các thuật toán chặt khúc và
thuật toán phân rã đã phân tích bài toán quy hoạch toàn phƣơng (QP – Quadratic
Programing) ban đần thành một dãy các bài toán QP nhỏ hơn. Các bài toán này đã
chứng tỏ rằng có thể giải các bài toán có kích thƣớc vƣợt quá khả năng lƣu trữ của bộ
nhớ máy tính. Thuật toán SMO có thể xem là trƣờng hợp cá biệt của thuật toán phân
rã, trong mỗi lần lặp SMO giải một bài toán QP với kích thƣớc là hai bằng giải pháp
phân tích, vì vậy không cần phải giải bài toán tối ƣu. Các thuật toán này đã đƣợc cài
đặt trong hầu hết các phần mềm SVM mã nguồn mở hiện nay nhƣ SVMLight,
LIBSVM, SVMTorch và HeroSvm.
Phƣơng pháp trích trọn đặc trƣng WaveletHaar
Tiểu luận môn Phƣơng pháp luận và nghiên cứu khoa học Trang 9
GV.CC.TS Nguyễn Văn Y Ngƣời thực hiện: Nguyễn Tấn An
Phƣơng pháp trích chọn đặc trƣng Wavelet Haar là một dãy các kỹ thuật khai
triển cho phép mô tả đặc trƣng của ảnh ở các mức độ khác nhau.
Hình 1-3: Trích chọn đặc trƣng waveletHaar.[3]
Từ ảnh nhị phân kích thƣớc
(hình) quá trình trích chọn đặc trƣng đƣợc
mô tả theo thuật toán sau:
Procedure waveletHaarFeature
Đầu vào: Ma trận vuông (A,n) cấp
Đầu ra: Tập các đặc trƣng
.
Phƣơng thức
Khởi tạo: Queue = ; i = 1;
Tính
Tổng các điểm đen trong toàn bộ ma trận (A,n);
PUSH((A,n),Queue);
while Queue Do
{
- POP(Queue,(A,n));
- if(n > 1)
{
N = n div 2;
Chia ảnh thành 4 phần:
;(Hình 3-1)
for(j = 1; j4; j++)
PUSH((
,n),Queue);
}
- Gọi S, S1, S2, S3, S4 là tổng các điểm đen tƣơng ứng với các khối
A,
;
- Tính
- i i+ 3;
Tiểu luận môn Phƣơng pháp luận và nghiên cứu khoa học Trang 10
GV.CC.TS Nguyễn Văn Y Ngƣời thực hiện: Nguyễn Tấn An
}
Nhƣ vậy với việc chọn kích thƣớc chuẩn hóa cho ảnh ký tự là 16x16 thì phƣơng
pháp wavelet Haar sẽ trích chọn ra : 1+ 3+ 4x3 + 4x4x3 + 4x4x4x3 = 256 đặc trƣng.
Phƣơng pháp trích chọn đặc trƣng này sẽ tạo ra một dãy số các đặc trƣng giảm
dần. Với cùng một chữ thì các giá trị lớn ở đầu dãy tƣơng đối ổn định, có thể đại diện
cho hình dạng khái quát của chữ, còn các giá trị cuối dãy nhỏ dần và không ổn định,
thể hiện sự đa dạng trong từng chi tiết nhỏ của chữ.
Một số khái niệm về xử lý ảnh
Khái niệm về ảnh số:
Ảnh số là hình ảnh đƣợc lƣu trong các thiết bị số nhƣ máy ảnh kỹ thuật số, máy
tính hoặc các thiết bị số khác. Ảnh số là một mảng hai chiều gồm các điểm ảnh (pixel),
mỗi điểm ảnh đƣợc xác định bởi tọa độ (x,y) và đƣợc biểu diễn bởi n bytes dƣới các hệ
màu khác nhau, theo hệ màu thƣờng có 3 loại ảnh chính:
- Ảnh màu (color image): mỗi điểm ảnh có giá trị gồm 3 màu đỏ (red) cộng xanh
lục (green) cộng xanh dƣơng (blue). Mỗi màu có giá trị từ 0 đến 255, nghĩa là
mỗi điểm ảnh cần 24bits hay 3bytes để biểu diễn.
- Ảnh xám (gray image): giá trị mỗi điểm ảnh nằm trong giải giá trị từ 0 đến 255,
nghĩa là cần 8 bits hay 1 byte để biểu diễn mỗi điểm ảnh này.
Ảnh nhị phân (binary image): giá trị mỗi điểm ảnh là 0 hoặc 1, nghĩa là trắng
hoặc đen. Khi xử lý trên máy tính thì ngƣời ta dùng ảnh xám để biểu diễn ảnh nhị phân
và lúc này 2 giá trị là 0 hoặc 255, giá trị 0 biểu diễn cho màu đen và giá trị 255 biểu
diễn cho màu trắng
Hình 1-4: Ảnh nhị phân; (A) ảnh đầu vào, (B) ảnh nhị phân.
Nhị phân hóa ảnh:
Tiểu luận môn Phƣơng pháp luận và nghiên cứu khoa học Trang 11
GV.CC.TS Nguyễn Văn Y Ngƣời thực hiện: Nguyễn Tấn An
Nhị phân hóa ảnh là quá trình đƣợc thực hiện nhờ vào hàm phân ngƣỡng:
Dest(x, y) = 1 if Source(x, y) >= T
0 if Source(x, y) < T
Trong đó, Source(x,y) là giá trị điểm ảnh ở vị trí (x,y) của ảnh nguồn,
Dest(x,y) là giá trị điểm ảnh tƣơng ứng ở vị trí (x,y) của ảnh đích. T là giá trị
ngƣỡng. Tuy nhiên, giá trị cụ thể của ngƣỡng lại phụ thuộc vào từng ảnh, vùng ảnh
đầu vào đang xét, không thể lấy cố định.
Phép toán hình thái (Morphology)
Phép toán hình thái là những thao tác toán học rời rạc trên tập hợp điểm đó đƣợc
sử dụng để làm rõ những nét đặc trƣng riêng của hình dạng đối tƣợng, do vậy có thể
tính toán hay nhận biết đƣợc chúng một cách dễ dàng. Phần lớn các phép toán hình
thái học đƣợc định nghĩa từ hai phép toán cơ bản là phép co nhị phân (Erosion) và
phép toán giãn nhị phân (Dilation).
- Phép giãn nhị phân (Dilation)
Phép giãn nhị phân của một tập hợp A bởi một phần tử cấu trúc B đƣợc ký hiệu
là và đƣợc định nghĩa qua công thức sau:
Phép giãn nhị phân của tập hợp A bởi phần tử cấu trúc B là tập hợp của tất cả các
điểm z (z là tâm điểm của phần tử cấu trúc B trên tập hợp A) sao cho phản xạ của
giao với tập A tại ít nhất một điểm. Hay nói cách khác, phép giãn nhị phân là sự chồng
chéo ít nhất một phần tử từ phản xạ của phần tử cấu trúc B với tập hợp A. Đồng thời
các phần tử này phải là tập con của tập hợp A.
Dilation phục vụ nhiều mục đích khác nhau nhƣ mở rộng (phình to) các thành
liên thông trong ảnh nhƣ việc nối kết các vết đứt trong kí tự lại với nhau, lọc biên ,…
- Phép co nhị phân (Erotion)
Phép co nhị phân của tập hợp A bởi phần tử cấu trúc B đƣợc kí hiệu và
viết dƣới dạng công thức nhƣ sau:
Tiểu luận môn Phƣơng pháp luận và nghiên cứu khoa học Trang 12
GV.CC.TS Nguyễn Văn Y Ngƣời thực hiện: Nguyễn Tấn An
Với
Nhƣ vậy phép co nhị phân của tập hợp A bởi phần tử cấu trúc B là tập hợp các
điểm z (z là tâm điểm của phần tử cấu trúc B trên tập hợp A) sao cho
là tập con của
A.
Việc thao tác Erosion ảnh phục vụ nhiều mục đích khác nhau nhƣ bào mòn (thu
nhỏ) thành phần liên thông, lọc biên, có thể khữ nhiễu.
Khung sƣơng của ảnh(Skeletonization)
Khung xƣơng của đối tƣợng ảnh là tập hợp các điểm ảnh cách đều biên của đối
tƣợng, trong luận văn này skeletonization đƣợc dùng để biến các ảnh ký tự số đầu vào
thành những ảnh nét đơn (có độ dày 1 hay 2 điểm ảnh) chính vì vậy khi các ký tự đƣợc
viết dƣới các nét dày hay mỏng khác nhau thì qua phƣơng pháp này đều chuyển về
một chuẩn nhất định, điều này giúp tăng độ chính xác cho việc nhận dạng.
Lƣợc đồ chiếu dọc và lƣợc đồ chiếu ngang
Lƣợc đồ chiếu dọc (Vertical Histogram) và lƣợc đồ chiếu ngang (Horizotal
Histogram) hai loại lƣợc đồ này xây dựng cho đối tƣợng là ảnh nhị phân nhằm thống
kê các điểm ảnh theo chiều dọc hay chiều ngang. Hai lƣợc đồ này ứng dụng chủ yếu
trong phần tách các thành phần bảng điểm trong phần xây dựng ứng dụng sau của luận
văn này.
Lấy lƣợc đồ chiếu ngang bằng cách duyệt từ trên xuống dƣới và từ trái qua phải
của ảnh, qua mỗi dòng pixel ta sẽ tiến hành cộng dồn số pixel đen trên từng dòng. Số
pixel đen trên từng dòng sẽ đƣợc biểu diễn thành một đồ thị với trục nằm dọc là chiều
cao của ảnh còn trục nằm ngang là số pixel đen đếm đƣợc trên dòng. Thông qua lƣợc
đồ này ta có thể nhận thấy đƣợc sự phân cách giữa các khối văn bản giữa các dòng với
nhau.
Hình 1-5: Lƣợc đồ chiếu ngang.
Tiểu luận môn Phƣơng pháp luận và nghiên cứu khoa học Trang 13
GV.CC.TS Nguyễn Văn Y Ngƣời thực hiện: Nguyễn Tấn An
Lấy lƣợc đồ chiếu dọc bằng cách duyệt chúng theo chiều dọc, ứng với mỗi cột ta
sẽ cộng dồn số pixel đen. Trên lƣợc đồ trục Oy sẽ là số pixel đen trên một mỗi cột và
trục Ox là chiều rộng của ảnh. Thông qua lƣợc đồ này ta có thể nhận thấy đƣợc sự
phân cách giữa các khối văn bản giữa các dòng với nhau.
Hình 1-6: Lƣợc đồ chiếu dọc
1.3. Hƣớng tiếp cận của đề tài
Tiếp cận đề tài từ mô hình chung ứng dụng SVM vào bài toán nhận dạng chữ viết
tay rời rạc để xây dựng ứng dụng nhập điểm tự động.
Hình 1-7: Mô hình nhận dạng ký tự viết tay rời rạc bằng SVM. [2]
- Bƣớc 1: Xây dựng mô hình huấn luyện.
Tập dữ liệu huấn luyện sau khi qua các khâu tiền xử lý và trích chọn đặc trƣng sẽ đƣợc
đƣa vào máy huấn luyện phân lớp SVM. Sau khi kết thúc quá trình huấn luyện, hệ
thống sẽ lƣu lại giá trị các tham số của hàm quyết định phân lớp để phục vụ cho việc
nhận dạng sau này. Quá trình huấn luyện tiêu tốn khá nhiều thời gian, tốc độ huấn
Tiểu luận môn Phƣơng pháp luận và nghiên cứu khoa học Trang 14
GV.CC.TS Nguyễn Văn Y Ngƣời thực hiện: Nguyễn Tấn An
luyện nhanh hay chậm tùy thuộc vào từng thuật toán huấn luyện, chiến lƣợc phân lớp
SVM cũng nhƣ số lƣợng mẫu tham gia huấn luyện.
- Bƣớc 2: Phân lớp nhận dạng.
Dựa vào giá trị các tham số của hàm quyết định thu đƣợc ở Bƣớc 1, một mẫu mới x
sau khi đã qua các khâu tiền xử lý và trích chọn đặc trƣng sẽ đƣợc đƣa vào tính toán
thông qua hàm quyết định để xác định lớp của mẫu x.
Ngoài ra hƣớng tiếp cận khác của đề tài là tiếp cận theo mô hình tƣơng tác với
phiếu điểm nhằm xây dựng một quy trình mới áp dụng nhập điểm tự động tại trƣờng
Đại học An Giang.
Giảng viên
Giảng viên
Cán bộ phòng khảo thí
Cán bộ phòng khảo thí
Phiểu điểm
RegisDatabase
Xem điểm
Phản hồi
Chƣơng trình
nhập điểm tự
động
Chỉnh sửa
Hình 1-8: Mô hình tƣờng tác phiếu điểm tại trƣờng Đại học An Giang.
1.4. Các yếu tố ảnh hƣởng đến đề tài
- Mỗi ngƣời có một kiểu chữ khác nhau không của ai giống ai hoàn toàn.
- Bộ ký tự tiếng Việt có nhiều chữ có hình dạng rất giống nhau, chỉ khác nhau chút ít
về phần dấu điều này khiến hiệu quả nhận dạng là rất thấp.
Tiểu luận môn Phƣơng pháp luận và nghiên cứu khoa học Trang 15
GV.CC.TS Nguyễn Văn Y Ngƣời thực hiện: Nguyễn Tấn An
- Chƣa có nhiều nghiên cứu ứng dụng đƣợc triển khai rộng rãi trong lĩnh vực này ở
Việt Nam.
Kết luận chƣơng 1
Chƣơng 1 đã khái quát cho chúng ta biết sơ lƣợc về tình hình chung của bài toán
nhận dạng ký tự viết tay trên Thế giới và Việt Nam, những ứng dụng thực tế, những
kết quả đạt đƣợc. Đồng thời cung cấp thông tin về một số khái niệm liên quan đến đề
tài nhƣ SVM, các thuật toán xử lý ảnh nhƣ nhị phân hóa ảnh, phép toán hình thái, lƣợc
đồ chiếu, …. Chƣơng 1 cũng nêu lên các mô hình tiếp cận về đề tài, mô hình tổng quát
về một bài toán nhận dạng ký tự bằng SVM từ đó giúp ta tiếp cận với vấn đề nghiên
cứu của đề tài tốt hơn.
Tiểu luận môn Phƣơng pháp luận và nghiên cứu khoa học Trang 16
GV.CC.TS Nguyễn Văn Y Ngƣời thực hiện: Nguyễn Tấn An
Chƣơng 2: CƠ SỞ THỰC TIỄN
2.1. Giới thiệu
Trƣờng Đại học An Giang đƣợc thành lập theo Quyết định số 241/1999/QĐ-TTg,
ngày 30 tháng 12 năm 1999 của Thủ tƣớng Chính phủ và khai giảng năm học đầu tiên
ngày 09 tháng 9 năm 2000. Năm học 2009 – 2010, đánh dấu một bƣớc phát triển mới
của Trƣờng Đại học An Giang sau 10 năm thành lập. Đây là năm học đầu tiên chuyển
đổi toàn bộ hệ đào tạo chính quy từ niên chế sang học chế tín chỉ. Đến nay, cơ sở hạ
tầng tại các cơ sở tƣơng đối hoàn chỉnh, thƣ viện mới đƣợc hình thành theo tiêu chí thƣ
viện điện tử với 1.200 máy tính nối mạng, thực hiện xã hội hóa khu liên hợp thể dục,
thể thao tại khu trƣờng mới, bổ sung máy móc thiết bị khu thí nghiệm, tiếp tục bổ sung
trang thiết bị dạy học tiên tiến, đẩy mạnh ứng dụng công nghệ thông tin … Trƣờng Đại
học An Giang có 10,695 sinh viên và 738 cán bộ giảng viên và công nhân viên.
Trƣờng có 6 khoa: Khoa sƣ phạm, Khoa Nông nghiệp và Tài nguyên Thiên nhiên,
Khoa Kỹ thuật – Công nghệ - Môi trƣờng, Khoa Kinh tế - Quản trị Kinh doanh, Khoa
Văn hóa nghệ thuật và khoa Lý luận chính trị.
Trên cơ sở lƣu lƣợng sinh viên nhiều nhƣ vậy thì công việc kiểm soát điểm thi
các loại theo quy trình thủ công hiện tại sẽ mất nhiều thời gian, từ đó dẫn đến sai sót
khi phải kiểm tra theo dõi một lƣợng rất lớn dữ liệu nhƣ vậy. Xuất phát từ thực tế nhƣ
trên bài toán đƣợc đặt ra là cần có một công cụ nhập điểm tự động thông qua phiếu
điểm phổ thông nhƣ hiện tại.
Để giải quyết khó khăn đó thì vấn đề là nhận dạng ký tự, đặc biệt kí tự viết tay là
bài toán ứng dụng thực tế giải quyết vấn đề của chúng ta. Máy tính xử lí, nhận dạng
các biểu mẫu, phiếu điều tra tự động, bằng cách này ta có thể tiết kiệm đƣợc nhiều chi
phí về thời gian, công sức cũng nhƣ các chi phí khác cho việc nhập dữ liệu.
Ngày nay cùng với sự phát triển về mặt lý thuyết, công nghệ, có rất nhiều hƣớng
đi cho việc giải quyết bài toán này, trong đó giải pháp máy học vector hỗ trợ là một
phƣơng pháp hữu hiệu và đƣợc đánh giá cao trong các giải pháp.
2.2. Khảo sát hiện trạng hệ thống
Hiện trạng quy trình làm việc hiện tại của việc nhập điểm
Tiểu luận môn Phƣơng pháp luận và nghiên cứu khoa học Trang 17
GV.CC.TS Nguyễn Văn Y Ngƣời thực hiện: Nguyễn Tấn An
Giảng viên
Giảng viên
Cán bộ phòng khảo thí
Cán bộ phòng khảo thí
Phiếu điểm
Sinh viên
RegisDatabase
Vào điểm
Cung cấp
Tra cứu
Xác nhận
Nhập liệu
Phiểu điểm
Tổng hợp
Hình 2-1: Hiện trạng quy trình nhập điểm tại trƣờng Đại học An Giang.
Phòng đào tạo gửi phiếu ghi điểm các môn học cho các giảng viên phụ trách
giảng dạy môn học, cứ sau mỗi học kì trƣớc khi kì thi bắt đầu khoảng 1 tuần và sau khi
có kết quả thi, giảng viên sẽ thông báo điểm trong quá trình học tập và điểm thi cho
các sinh viên, các sinh viên sẽ xác nhận lại điểm số xem có sai sót xảy ra không, sau
đó giảng viên sẽ nộp lại phòng khảo thí. Cán bộ ở phòng khảo thí sẽ phụ trách nhập
điểm vào hệ thống cơ sở dữ liệu của website thông báo kết quả học tập của sinh viên
để lƣu lại và để sinh viên có thể tra cứu kết quả học tập của mình khi cần.
Nhƣ vậy với số lƣợng lớn sinh viên nhƣ hiện nay thì công việc nhập liệu điểm
vào cơ sở dữ liệu là một công việc tốn thời gian rất nhiều và công sức của cán bộ nhập
liệu.
Hiện trạng về mã nguồn mở thƣ viện SVM
Hiện tại giải thuật SVM đã đƣợc các nhà nghiên cứu triển khai thành các thƣ viện gần
nhƣ hoàn chỉnh, có rất nhiều thƣ viện SVM đã đƣợc công bố trên thế giới nhƣ:
- LibSVM: A Library for Support Vector Machines do 2 nhà nghiên cứu Chih-
Chung Chang and Chih-Jen Lin thực hiện, thƣ viện này có thể dùng ngôn ngữ C++
và java đề biên dịch sử dụng.
Tiểu luận môn Phƣơng pháp luận và nghiên cứu khoa học Trang 18
GV.CC.TS Nguyễn Văn Y Ngƣời thực hiện: Nguyễn Tấn An
- LIBLINEAR: A Library for Large Linear Classification do nhóm máy học ở đại
học quốc gia Đài Loan nghiên cứu, đây là một thƣ viện lập trình gồm nhiều thuật
toán phân loại tuyến tính, trong đó có SVM, thƣ viện này có thể dùng
MATLAB/Octave, Java, Python, Ryby interfaces để biên dịch sử dụng.
- SVMlight: của tác giả Thorsten Joachims của trƣờng đại học Cornell nghiên cứu.
Thƣ viện này có thể sử dụng ngôn ngữ C để biên dịch sử dụng.
- SVM.net của Matthew Johnson là phiên bản đƣợc chuyển đổi từ phiên bản
libSVM dành cho java. Nó cung cấp đầy đủ tính năng và hiệu quả giống nhƣ phiên
bản gốc nhƣng cấu trúc đƣợc thay đổi cho phù hợp với nền tảng .Net.
2.3. Kinh nghiệm một số nơi
Tại trƣờng Đại học Khoa học Tự nhiên trong những năm gần đây đã triển khai
quy trình nhập điểm tự động dựa trên phiếu điểm.
Tại trƣờng Đại học Thủy Sản Nha Trang đã đƣợc triển khai thí nghiệm mô hình
tƣơng tự cho đăng ký môn học nó có các ƣu nhƣợc điểm sau:
Ƣu điểm:
- Khả năng nhận dạng các kí tự chữ số và kí tự chữ cái viết hoa là tƣơng đối tốt,
với trạng thái viết thoải mái, bình thƣờng và kiểu chữ viết không phức tạp.
- Điều này cho thấy hƣớng đi của lý thuyết đề ra là hợp lý, làm nền tảng cơ sở
cho sự phát triển ứng dụng sau này của hệ thống.
- Việc tách các kí tự ra khỏi văn bản tƣơng đối chính xác.
- Ta chỉ mất nhiều thời gian cho quá trình huấn luyện mạng, song quá trình nhận
dạng thì đơn giản và nhánh chóng.
- Với cơ sở lý thuyết đã nêu và những trãi nghiệm cho thấy dựa vào đó ta có thể
xây dựng đƣợc nhiều ứng dụng khác nhau.
Nhƣợc điểm:
Chƣơng trình đang ở mức thử nghiệm, chƣa áp dụng vào thực tế. Hệ thống cài đặt còn
hạn chế về giao diện, việc quản lí bộ nhớ chƣa đƣợc chú trọng, cụ thể cần phải thay
đổi định dạng file ảnh lƣu trữ vì kích thƣớc định dạng file ảnh bảng điểm đầu vào kích
thƣớc quá lớn.
Tiểu luận môn Phƣơng pháp luận và nghiên cứu khoa học Trang 19
GV.CC.TS Nguyễn Văn Y Ngƣời thực hiện: Nguyễn Tấn An
Kết luận chƣơng 2
Thông qua chƣơng 2 ta thấy đƣợc thực trạng vấn đề nhập điểm thủ công tại
trƣờng Đại học An Giang rất tốn thời gian và công sức chính vì vậy việc chuyển khai
đề tài là cần thiết, đi đến việc xây dựng hệ thống “Nhập điểm tự động” cho trƣờng
nhằm tin học hóa tự động hóa công việc, nâng cao hiệu suất làm việc.
Ngoài ra, chƣơng 2 còn giới thiệu về các thƣ viện SVM hiện nay cho thấy sự
phát triển và sự hoàn chỉnh của giải thuật là cơ sở để áp dụng giải thuật này vào xây
dựng ứng dụng nhập điểm tự động một cách hiệu quả và đơn giản.
Tiểu luận môn Phƣơng pháp luận và nghiên cứu khoa học Trang 20
GV.CC.TS Nguyễn Văn Y Ngƣời thực hiện: Nguyễn Tấn An
Chƣơng 3: GIẢI PHÁP – MÔ HÌNH – SẢN PHẨM
3.1. Mô tả dữ liệu đầu vào và đầu ra
Dữ liệu đầu vào của chƣơng trình:
Ảnh phiếu điểm
Dữ liệu đầu ra của chƣơng trình:
File dữ liệu điểm theo định dạng sẵn ( Ví dụ: excel, )
Tra cứu điểm sinh viên.
3.2. Mô tả sơ lƣợc về phiếu điểm
Dƣới đây là hình ảnh của bảng điểm đƣợc phòng khảo thí trƣờng Đại học An Giang
cung cấp cho cán bộ giảng viên ghi lại điểm của các bài thi trƣớc khi nhập điểm vào hệ
thống máy tính lƣu trữ của trƣờng. Qua phân tích bố cục của bảng điểm bao gồm các
khối nhƣ sau:
Khối thông tin đơn vị tổ chức thi cử;
Khối thông tin mẫu in;
Khối tên bảng điểm;
Khối thông tin bảng điểm;
Khối thông tin trang bảng điểm;
Khối bảng điểm;
Khối thống kê số sinh viên và bài thi của phòng thi;
Khối ngày tháng năm in bảng điểm;
Khối thông tin cán bộ coi thi;
Khối thông tin thanh tra giám sát vào điểm;
Khối thông tin cán bộ đối chiếu điểm;
Khối thƣ ký vào điểm.
Tiểu luận môn Phƣơng pháp luận và nghiên cứu khoa học Trang 21
GV.CC.TS Nguyễn Văn Y Ngƣời thực hiện: Nguyễn Tấn An
Hình 3-1: Ảnh phiếu điểm trƣờng Đại học An Giang.
Tiểu luận môn Phƣơng pháp luận và nghiên cứu khoa học Trang 22
GV.CC.TS Nguyễn Văn Y Ngƣời thực hiện: Nguyễn Tấn An
3.3. Giải pháp và các mô hình các quá trình xử lý
Tổng quan về phần mềm nhập điểm tự động
Tiến trình chủ yếu của phần mềm nhập điểm tự động nhƣ sau:
Phiếu ghi điểm
Scaner Tiển xử lý ảnh
Nhận dạng ký tự
in
File ảnh phiếu
điểm
Tách MSSV và điểm số
ra khỏi ảnh
Tách ký tự các
MSSV
Tách ký tự số từ
điểm số
Mô hình huấn luyện
SVM nhận dạng ký tự in
Mô hình huấn luyện SVM
nhận dạng ký tự số viết tay
Nhận dạng ký tự
số viết tay
Lưu trữ dữ liệu
Hình 3-2: Mô hình tổng quát tiến trình nhập điểm tự động.
Phần mềm sẽ gồm 3 quá trình chính:
Quá trình tiền xử lý và tách vùng ảnh phiếu điểm.
Quá trình xây dựng mô hình huấn luyện SVM cho nhận dạng ký tự in và ký tự
số.
Quá trình nhận dạng ký tự.
Tiểu luận môn Phƣơng pháp luận và nghiên cứu khoa học Trang 23
GV.CC.TS Nguyễn Văn Y Ngƣời thực hiện: Nguyễn Tấn An
Quá trình tiền xử lý ảnh và tách vùng ảnh phiếu điểm:
Ảnh phiếu ghi
điểm
Tách khối bảng
điểm
Tách cột MSSV Tách cột điểm
Tách hàng cột
điểm
Tách hàng cột
MSSV
Tách ký tự MSSV
Tách ký tự điểm
viết tay
Tiền xử lý ảnh
phiếu điểm
Hình 3-3: Mô hình tiền xử lý và tách vùng ảnh phiếu điểm.
- Quá trình tiền xử lý ảnh:
Quá trình này bao gồm các bƣớc cơ bản nhầm nâng cao chất lƣợng ảnh đầu vào nhƣ:
Lọc nhiễu: nhiễu có thể làm ảnh bị mờ đi, không sắc nét, nỗi đốm trắng hoặc
đen. Do đó trƣớc khi tiến hành phân tích và xử lý ảnh thì phải tiến hành công
việc loại bỏ nhiễu, đây là bƣớc quan trọng. Do có nhiều loại nhiễu can thiệp vào
quá trình xử lý ảnh nên cần có nhiều bộ lọc thích hợp. Với nhiễu cộng, nhiễu
nhân ta dùng các bộ lọc thông thấp, lọc trung bình và lọc đồng hình, với nhiễu
xung ta dùng lọc trung vị, lọc ngoài.
Chỉnh nghiêng ảnh bảng điểm: quá trình scan thƣờng làm ảnh bị nghiêng, do đó
có thể dẫn đến các quá trình tách ảnh ở phần sau bị sai lệch vì vậy cần phải thực
hiện quá trình chỉnh nghiêng ảnh bảng điểm. Phƣơng pháp hough là một
phƣơng pháp chỉnh nghiêng cho ảnh văn bản một cách hiệu quả
Xám hóa ảnh và nhị phân ảnh nhằm chuyển ảnh về dạng dữ liệu số để thực hiện
các thuật toán xử lý ảnh ở các phần sau. Để tìm ngƣỡng nhị phân hóa ảnh thì