Kết quả thử nghiệm trên dữ liệu bảng điểm thực

Một phần của tài liệu Xây dựng ứng dụng tự động đọc bảng điểm (Trang 42)

Trong luận văn này tôi sử dụng 30bảng điểm chính quy của học viên Nông nghiệp Việt Nam trong đó phần điểm số được ghi bằng tay. Các bảng điểm của nhiều giáo viên bao gồm cả bản gốc và bản photo không bị rách và nhàu nát được thu thập tại bộ môn Khoa học máy tính, khoa Công nghệ thông tin, sau đó được scan bằng máy scan với độ phân giải 300dpi. Trong số các ảnh scan, bằng trực quan có thể thấy bao gồm cả ảnh có nhiễu, ảnh sạch, ảnh được scan ngay ngắn và ảnh bị nghiêng. Ví dụ dưới đây là hình ảnh của một số bảng điểm mà tôi đã sử dụng.

Hình 23: Hình ảnh một số bảng điểm

Phát hiện khu vực quan tâm

 Phát hiện khu vực bảng và xoay ảnh:

Thử nghiệm chương trình với 30 bảng điểm, kết quả phát hiện khu vực bảng và xoay ảnh như sau:

- Với phương pháp 1: xác định chính xác trên 27 bảng, không phát hiện được trên 3 bảng.

Hình 25: Trường hợp không phát hiện được khu vực bảng

- Với phương pháp 2: xác định chính xác trên 28 bảng, không phát hiện được trên 2 bảng.

 Phát hiện khu vực chứa mã sinh viên và điểm

- Thử nghiệm với 27 bảng điểm thu được bằng phương pháp 1, kết quả cho thấy việc xác định các vùng mã sinh viên và điểm cho kết quả chính xác 100%.

- Thử nghiệm với 28 bảng điểm thu được bằng phương pháp 2, kết quả cho thấy việc xác định các vùng mã sinh viên và điểm cho kết quả chính xác trên 27 bảng điểm. Với bảng điểm chỉ được xác định khu vực bảng đúng bằng phương pháp 2, khi xác định các cột mã sinh viên và điểm cho kết quả không chính xác do quá trình xoay ảnh không chính xác (ảnh vẫn bị nghiêng sau khi thực hiện xoay) nên không xác định được các đường thẳng đứng và dẫn tới không xác định được các khu vực chứa mã sinh viên và điểm.

Nhận dạng mã môn học

Thử nghiệm chương trình để nhận dạng mã môn học cho 27 bảng điểm, kết quả thu được như sau:

Số lượng nhận dạng đúng Số lượng nhận dạng sai Phần trăm nhận dạng đúng

21 6 77,8%

Bảng 4: Kết quả nhận dạng mã môn học

Trong số 6 trường hợp nhận dạng sai có 5 trường hợp ký tự “0” được nhận dạng thành “O” và một trường hợp ký tự “T” được nhận dạng thành “F”.

Bảng dưới đây là ví dụ trong trường hợp nhận dạng sai mã môn học. Ảnh vùng mã môn học

Mã môn học đúng TH2021/03/001 TT122/01/001 Mã môn học được nhận

dạng sai TH2021/03/O01 TF122/01/001

Thử nghiệm chương trình với 10 bảng điểm được lấy ngẫu nhiên trong số 27 bảng điểm, kết quả nhận dạng mã sinh viên như sau:

Bảng điểm Số lượng nhận dạng đúng Số lượng nhận dạng sai Phần trăm nhận dạng đúng

1 37 0 100.0% 2 37 0 100.0% 3 37 0 100.0% 4 37 0 100.0% 5 21 0 100.0% 6 22 0 100.0% 7 37 0 100.0% 8 37 0 100.0% 9 20 1 95.2% 10 30 1 96.8% Trung bình 99.2%

Bảng 6: Kết quả nhận dạng mã sinh viên

Trường hợp nhận dạng sai là do có nhiễu. Bảng dưới đây chỉ ra trường hợp mã sinh viên bị nhận dạng sai do có nhiễu.

Ảnh vùng mã sinh viên

Mã sinh viên đúng 531967

Mã sinh viên được nhận dạng sai 1 531967

Bảng 7: Ví dụ nhận dạng sai mã sinh viên

Nhận dạng điểm

Kết quả nhận dạng điểm của 10 bảng điểm được sử dụng để nhận dạng mã sinh viên, kết quả nhận dạng như sau:

Bảng điểm Số lượng nhận dạng đúng Số lượng nhận dạng sai Phần trăm nhận dạng đúng 1 28 9 75.7% 2 35 2 94.6% 3 32 5 86.5% 4 25 12 67.6% 5 17 4 81.0% 6 15 9 62.5% 7 32 5 86.5% 8 30 7 81.1%

9 15 6 71.4%

10 24 7 77.4%

Trung bình 78.4%

Bảng 8: Kết quả nhận dạng điểm

Bảng kết quả nhận dạng điểm cho thấy kết quả nhận dạng trên các bảng điểm là không giống nhau. Độ chính xác của quá trình nhận dạng điểm số bị ảnh hưởng bởi độ chính xác của quá trình phân tách các chữ số trong phần điểm. Dưới đây là một số nguyên nhân có thể làm cho kết quả phân tách các chữ số không chính xác:

 Các số được viết gần giống nhau, ví dụ: số 3 và số 5; số 2 và số 8, số 4 và số 7, số 5 và số 6…

 Các số bị viết dính liền vào nhau hoặc dính vào hàng, cột dẫn tới việc phân tách các số cho kết quả không chính xác hoặc các số có thể bị cắt mất một phần.

 Các số được viết với kích thước không đều nhau có số quá to, có số quá nhỏ, dẫn tới kết quả nhận dạng bị mất một hoặc toàn bộ các số trong điểm, do quá trình phân đoạn loại bỏ đi những bounding box có kích thước quá to hoặc quá nhỏ.

 Các số được viết với nét không liên tục hoặc dấu phẩy (ký hiệu ngăn cách giữa phân nguyên và phần lẻ của điểm) được viết to tương đương với số, dẫn tới số lượng bounding box tìm được nhiều hơn số chữ số trong điểm. Trong trường hợp này điểm số sẽ được nhận dạng với nhiều chữ số hơn điểm thực tế.

Dưới đây là một số ví dụ điểm số bị nhận dạng sai:

 Điểm bị sai do nhận dạng nhầm số này thành số khác: Ảnh điểm

Điểm đúng 8.5 4.5 5.5

 Điểm bị sai do số bị loại bỏ trong quá trình phân tách các chữ số. Ảnh điểm Điểm đúng 4.2 4.2 6.5 KQ tách số KQ nhận dạng 4 2 6

Bảng 10: Điểm bị sai do loại mất số trong điểm

 Điểm bị sai do quá trình phân tách thu được số bounding box nhiều hơn số chữ số trong điểm.

Ảnh điểm

Điểm đúng 5.5 3.5

KQ tách số

KQ nhận dạng 0.15 9.69

CHƢƠNG 5:KẾT LUẬN 5.1 Các kết quả đã đạt đƣợc

Qua thời gian tìm hiểu và thực hiện luận văn “Xây dựng ứng dụng tự động đọc bảng điểm” tôi đã thực hiện được các nhiệm vụ sau:

 Về lý thuyết: Tôi học được một số kỹ thuật xử lý ảnh, một số kỹ thuật xử lý và các bước thực hiện trong bài toán nhận dạng ký tự. Ứng dụng phần mềm nguồn mở Tesseract OCR trong việc nhận dạng ký tự.

 Về thực nghiệm: Từ những kiến thức thu được tôi thực hiện phân tích giải pháp và xây dựng hệ thống thử nghiệm để đọc bảng điểm của Học viện Nông nghiệp Việt Nam. Hệ thống đã giải quyết được các vấn đề:

o Xác định được các khu vực cần quan tâm trong bảng điểm.

o Nhận dạng được ký tự in (mã môn học, mã sinh viên) và chữ số viết tay với phần mềm nguồn mở Tesseract OCR.

 Hệ thống cài đặt thử nghiệm có một số ưu điểm nổi bật như:

o Người dùng có thể thay đổi được các vùng quan tâm trong bảng điểm. Do đó khi cấu trúc của bảng điểm bị thay đổi do nguyên nhân chủ quan hay khách quan thì hệ thống vẫn có thể hoạt động được.

o Việc xác định các đường ngang và dọc trong phần bảng có ý nghĩa quan trọng, nó ảnh hưởng đến kết quả của việc xác định các khu vực chứa mã sinh viên và điểm số. Với hệ thống thực nghiệm này, việc xác định các đường ngang và dọc được thực hiện sau khi ảnh được xử lý với phép toán hình thái nhằm loại bỏ bớt nội dung nằm trong các ô của bảng, do vậy kết quả thu được chính xác hơn.

5.2 Các mặt còn hạn chế

Bên cạnh các ưu điểm của hệ thống thử nghiệm như đã trình bày trong phần 5.1, hệ thống còn một số nhược điểm:

 Việc xác định và hiệu chỉnh góc nghiêng của bảng được các định một cách tương đối (phụ thuộc vào việc chọn giá trị ngưỡng), do đó độ chính xác chưa cao.

 Việc tách các chữ số trong phần điểm của sinh viên chưa xử lý tốt cho các trường hợp điểm bị dính vào nhau, dính vào biên hoặc các chữ số được viết không đều nhau dẫn tới kết quả nhận dạng điểm chưa cao.

5.3 Định hƣớng phát triển

Trong tương lai, hệ thống cần được cải thiện thêm để có thể ứng dụng trong các hệ thống quản lý điểm:

 Áp dụng một số kỹ thuật để cải thiện việc hiệu chỉnh trong trường hợp ảnh bị nghiêng, và bảng điểm scan bị mất một số cột không cần thiết.

 Cải thiện trong việc phân tách các chữ sỗ trong phần điểm để cải thiện độ chính xác trong nhận dạng điểm số.

 Thử nghiệm trên số lượng bảng điểm đa dạng hơn nữa để đưa ra đánh giá chính xác và cải tiến chương trình cho phù hợp hơn với nhu cầu thực tế.

TÀI LIỆU THAM KHẢO

[1]. Lương Mạnh Bá và Nguyễn Thanh Thuỷ, chủ biên (2003), Nhập môn xử lý ảnh số, Nxb Khoa học và kỹ thuật Hà Nội.

[2]. Phạm Thị Thanh Hiển(2013), Nhận dạng ký hiệu toán học, Luận văn thạc sĩ, Học viện công nghệ Bưu chính Viễn thông.

[3]. DO Thi Hong Ha (2012), Construction d’une application de lecture automatique des relevés de notes, Đồ án tốt nghiệp đại học, Đại học Bách khoa Hà Nội.

[4]. Patel, C., Patel, A., & Patel, D. (2012). Optical character recognition by open source ocr tool tesseract: A case study. International Journal of Computer Applications, 55(10), 50-56.

[5]. Rakshit, S., & Basu, S. (2010). Development of a multi-user handwriting recognition system using tesseract open source ocr engine. arXiv preprint arXiv:1003.5886.

[6]. Rakshit, S., Kundu, A., Maity, M., Mandal, S., Sarkar, S., & Basu, S. (2010). Recognition of handwritten roman numerals using tesseract open source ocr engine. arXiv preprint arXiv:1003.5898.

[7]. Sharda, V., & Kishan, A.C. (2009). Skew detection and correction in scanned document images, barchelor of technology in computer science and engineering,. National Institute of Technology Rourkela, India.

[8]. Smith, R. (2007). An overview of the tesseract ocr engine. icdar, IEEE.

[9]. Smith, R., Antonova, D., & Lee, D.-S. (2009). Adapting the Tesseract open source OCR engine for multilingual OCR. Proceedings of the International Workshop on Multilingual OCR.

[10].https://code.google.com/p/bbtesseract/, tham khảo tháng 8/2015. [11].http://code.google.com/p/tesseract-ocr, tham khảo tháng 8/2015. [12].http://jocr.sourceforge.net/, tham khảo 5/9/1015.

[13].http://docs.opencv.org//, tham khảo tháng 8/2014

[14].http://sourceforge.net/projects/javaocr/, tham khảo 5/9/1015.

[15].http://tesseract-ocr.googlecode.com/files/TesseractOSCON.pdf, tham khảo tháng 8/2015.

[16].http://vietunicode.sourceforge.net/howto/tesseract-ocr_vi.html, tham khảo 5/9/1015.

[17].http://www.free-ocr.com/, tham khảo 5/9/1015.

[18].http://www.ieev.org/search/label/008.CB%20x%E1%BB%AD%20l%C3%BD %20%E1%BA%A3nh, tham khảo tháng 8/2014.

Một phần của tài liệu Xây dựng ứng dụng tự động đọc bảng điểm (Trang 42)