Tách và nhận dạng số viết tay trong phiếu nhập dữ liệu

  • Số trang: 96 |
  • Loại file: PDF |
  • Lượt xem: 15 |
  • Lượt tải: 0
nhattuvisu

Đã đăng 26946 tài liệu

Mô tả:

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN THANH PHÚC TÁCH VÀ NHẬN DẠNG SỐ VIẾT TAY TRONG PHIẾU NHẬP DỮ LIỆU LUẬN VĂN THẠC SĨ Hà Nội – 2008 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN THANH PHÚC TÁCH VÀ NHẬN DẠNG SỐ VIẾT TAY TRONG PHIẾU NHẬP DỮ LIỆU Ngành: Công nghê ̣ Thông tin Chuyên ngành: Công nghệ Phần mềm Mã số: 60 48 10 LUẬN VĂN THẠC SĨ NGƢỜI HƢỚNG DẪN KHOA HỌC: PGS.TS. Ngô Quốc Tạo Hà Nội – 2008 i MỤC LỤC MỤC LỤC .................................................................................................................. i MỘT SỐ THUẬT NGỮ ANH-VIỆT ...................................................................... iii DANH MỤC HÌNH VẼ ........................................................................................... iv DANH MỤC BẢNG................................................................................................. vi MỞ ĐẦU ................................................................................................................... 1 1.1 Đặt vấn đề .......................................................................................................... 1 1.2 Nội dung và cấu trúc của khóa luận .................................................................... 3 Mở đầu ................................................................................................................. 3 Chương 1: Đề xuất giải pháp tiền xử lý ảnh .......................................................... 4 Chương 2: Đề xuất giải pháp phân vùng và nhận dạng ảnh ................................... 4 Chương 3: Xây dựng hệ thống tích hợp ................................................................ 5 Chương 4: Thực nghiệm ....................................................................................... 5 Kết luận ................................................................................................................ 5 CHƢƠNG 1 – ĐỀ XUẤT GIẢI PHÁP TIỀN XỬ LÝ ẢNH ................................... 6 1.1 Lọc nhiễu và nhị phân hoá. ................................................................................. 6 Mô tả thuật toán.................................................................................................... 6 1.2 Xác định góc nghiêng của ảnh .......................................................................... 11 1.2.1 Phương pháp xác định góc nghiêng dựa trên phép chiếu. ........................... 13 1.2.2 Phương pháp xác định góc nghiêng dựa trên các block. ............................. 18 CHƢƠNG 2 – ĐỀ XUẤT GIẢI PHÁP PHÂN VÙNG VÀ NHẬN DẠNG ẢNH . 21 2.1 Tách vùng nhập dữ liệu trên ảnh ....................................................................... 21 2.1.1 Đặc trưng bài toán...................................................................................... 21 2.1.2 Xác định vùng nhập liệu dựa trên các mốc quy chiếu ................................. 22 2.1.3 Xác định vùng dựa vào vị trí tương đối đến các các mốc quy chiếu trên form ........................................................................................................................... 23 2.1.4 Xác định vùng nhận dạng dựa trên vị trí tương đối đến các đường thẳng ... 29 2.2 Nhận dạng vùng nhập liệu ................................................................................ 42 2.2.1 Nhận dạng vùng đánh dấu .......................................................................... 43 2.2.2 Nhận dạng vùng nhập liệu dạng số ............................................................. 48 CHƢƠNG 3 - XÂY DỰNG HỆ THỐNG TÍCH HỢP .......................................... 55 3.1 Phân tích bài toán ............................................................................................. 55 3.2 Xây dựng hệ thống ........................................................................................... 62 3.2.1 Xác định các đối tượng .............................................................................. 62 3.2.2 Mô hình khái niệm ..................................................................................... 63 3.2.3 Biểu đồ các quy trình thiết kế, nhận dạng ................................................... 67 CHƢƠNG 4 – THỰC NGHIỆM ............................................................................ 72 4.1 Môi trường thực nghiệm ................................................................................... 72 ii 4.2 Thực nghiệm về Lọc nhiễu, tách nền và tìm ngưỡng nhị phân hóa. ................... 72 4.3 Thực nghiệm về xác định góc nghiêng của ảnh dựa trên phép chiếu ................. 73 4.4 Thực nghiệm về xác định góc nghiêng của ảnh dựa trên block ......................... 75 4.5 Thực nghiệm về phân vùng ảnh dựa trên block................................................. 76 4.6 Thực nghiệm về phân vùng ảnh dựa trên đường thẳng ...................................... 77 4.6.1 Thực nghiệm 1: Xác định các đường thẳng ................................................ 77 4.6.2 Thực nghiệm 2: Tìm cặp các đường thẳng giữa ảnh scan với ảnh mẫu. ...... 78 4.6.3 Thực nghiệm 3: Xác định các vùng cần nhận dạng..................................... 78 4.6.4 Thực nghiệm 4: tìm kích thước trung bình trên ảnh.................................... 79 4.7 Thực nghiệm nhận dạng ................................................................................... 80 4.7.1 Thực nghiệm nhận dạng ô đánh dấu ........................................................... 80 4.7.2 Thực nghiệm nhận dạng số ........................................................................ 81 4.8 Thực nghiệm tích hợp các thành phần .............................................................. 81 KẾT LUẬN ............................................................................................................. 83 TÀI LIỆU THAM KHẢO ...................................................................................... 85 iii MỘT SỐ THUẬT NGỮ ANH-VIỆT Thuật ngữ Giải nghĩa Black run Tập hợp các điểm đen liên tiếp kề nhau theo chiều thẳng đứng hoặc theo chiều ngang trên ảnh Block Một hoặc một cụm các đối tượng được coi là liền kề nhau Bounding Box Hình hộp bao quanh một đối tượng hay một khối các đối tượng Deskew Khử nghiêng DPI Dots per inch – Số lượng các điểm trên một inch Form Recognition Nhận dạng form Object Là một tập hợp các điểm đen liền kề nhau để tạo nên một đối tượng như chữ cái, đường thẳng, điểm, … Region Extraction Tách vùng Resolution Độ phân giải Skewed Image Ảnh bị nghiêng iv DANH MỤC HÌNH VẼ Hình 1-1: Lƣợc đồ mức xám của ảnh .................................................................................. 7 Hình 1-2: Đồ thị biến đổi mức xám ..................................................................................... 8 Hình 1-3: Ảnh trƣớc (a) và sau biến đổi lần 1 (b) ............................................................... 9 Hình 1-4: (a) Ảnh scan; (b) Ảnh sau lần lọc thứ nhất; (c) Ảnh sau lần lọc cuối cùng; (d) Ảnh sau khi nhị phân hóa .......................................................................................... 11 Hình 1-5: (a) ảnh sau khi khử nhiễu và tách nền; (b) ảnh sau khi khử nghiêng ............. 12 Hình 1-6: (a)ảnh với góc nghiêng bằng không; (b) đồ thị của phép chiếu ngang trên ảnh (a) ................................................................................................................................ 13 Hình 1-7: (a) ảnh với góc nghiêng 50; (b) đồ thị của phép chiếu ngang trên ảnh (a) ....... 13 Hình 1-8: (a) Ảnh scan, các đƣờng màu đỏ là các đƣờng chiếu ở góc nghiêng θ. (b) Ảnh đƣợc xấp xỉ bởi các hình bình hành........................................................................... 15 Hình 1-9: (a) Ảnh scan. (b) (c) (d) Ảnh các đƣờng chiếu đen và trắng ở các góc nghiêng 2.5, -3.5, 2 .................................................................................................................... 15 Hình 1-10: (a) Ảnh scan. (b) Ảnh sau khi chính xác góc nghiêng .................................... 17 Hình 1-11: Một phần ảnh mẫu với các block ở lề phải ..................................................... 18 Hình 1-12: block trong mẫu và block bị nghiêng trong ảnh scan .................................... 19 Hình 1-13: (a) ảnh scan bị nghiêng; (b) các đối tƣợng tìm đƣợc trên ảnh; (c) sau khi loại các đối tƣợng quá lớn, bé; (d) sau khi loại các đối tƣợng rỗng; (e) sau khi loại các đối tƣợng không sát lề; (f) xấp xỉ đƣờng thẳng qua các block .................................. 20 Hình 2-1: form mẫu và các vùng nhập dữ liệu đƣợc định nghĩa...................................... 21 Hình 2-2: Form sau khi đƣợc in ra, điền thông tin và scan vào máy tính........................ 22 Hình 2-3: (a) ảnh gốc; (b) ảnh scan sau khi tiền xử lý ...................................................... 23 Hình 2-4: Nội suy block bị mất .......................................................................................... 25 Hình 2-5: Khoảng cách các block trong mẫu và trong ảnh scan...................................... 25 Hình 2-6: Tƣơng ứng các mốc quy chiếu trong ảnh scan và trong mẫu .......................... 26 Hình 2-7: Mốc quy chiếu gần nhất đến các vùng nhập liệu.............................................. 27 Hình 2-8: Vùng tìm kiếm đƣợc xác định trên ảnh ............................................................ 27 Hình 2-9: Vùng nhập liệu đƣợc sử dụng làm mốc quy chiếu ........................................... 28 Hình 2-10: Cập nhật khoảng cách đến mốc quy chiếu gần nhất ...................................... 28 Hình 2-11: (a)ảnh sau khi tiền xử lý; (b)ảnh sau khi lọc các black run ngắn theo chiều ngang (c) ảnh sau khi hợp cách black run dài theo chiều ngang; (d) ảnh sau khi lọc các black run ngắn theo chiều thẳng đứng (e)ảnh sau khi hợp các black run dài theo chiều thẳng đứng (f)các đƣờng thẳng xác định đƣợc trên ảnh ......................... 30 Hình 2-12: (a) đƣờng thẳng mờ và bị đứt doạn (b) đƣờng thẳng xác định đƣợc khi tính đến mật độ .................................................................................................................. 31 Hình 2-13: xác định nhầm đƣờng thẳng do phân bố không đều trên đƣờng................... 31 Hình 2-14: chia đƣờng thẳng thành các đoạn ngắn rồi tính mật độ trên các đoạn này .. 32 Hình 2-15: Ảnh cần xác định kích thƣớc font chữ trung bình ......................................... 36 Hình 2-16: Hình chữ nhật bao các đối tƣợng tìm đƣợc trên ảnh ..................................... 36 Hình 2-17: Hình chữ nhật bao quanh các đối tƣợng chữ tìm đƣợc trên ảnh................... 36 Hình 2-18: Đối tƣợng tạo bởi các black run ...................................................................... 37 v Hình 2-19: gán nhãn các đối tƣợng trên ảnh nhị phân ..................................................... 38 Hình 2-20: ảnh sau khi giảm bớt các điểm đen ................................................................. 39 Hình 2-21: Kết quả xác định các đối tƣợng ...................................................................... 40 Hình 2-22: Hình chữ nhật bao quanh các đôi tƣợng tìm đƣợc......................................... 40 Hình 2-23: (a) vùng nhập dữ liệu trên ảnh mẫu; (b) ảnh scan; (c) các đƣờng thẳng gần vùng nhập dữ liệu nhất; (d) kết quả tách vùng trên ảnh scan .................................. 42 Hình 2-24: Những kiểu vùng nhập dữ liệu giải quyết trong luận văn ............................. 43 Hình 2-25: Vùng đánh dấu trả lời câu hỏi trong bài thi trắc nghiệm .............................. 43 Hình 2-26: Kết quả phép chiếu theo chiều ngang ............................................................. 44 Hình 2-27: Các phân đoạn tiềm năng................................................................................ 45 Hình 2-28: Các phân đoạn đúng tìm đƣợc ........................................................................ 45 Hình 2-29: (a) Kết quả phép chiếu theo chiều dọc, (b) các phân đoạn tiềm năng, (c) các phân đoạn đúng tìm đƣợc .......................................................................................... 45 Hình 2-30: Vùng nhập số ................................................................................................... 48 Hình 2-31: (a) vùng tìm kiếm bị mất đƣờng bao; (b) vùng tìm kiếm đƣợc mở rộng ....... 48 Hình 2-32: Các đƣờng thẳng trong vùng .......................................................................... 49 Hình 2-33: Các đƣờng thẳng sau bƣớc 2........................................................................... 49 Hình 2-34: Các đƣờng thẳng sau bƣớc 3........................................................................... 49 Hình 2-35: Các đƣờng đứng xác định đƣợc sau bƣớc 4 ................................................... 49 Hình 2-36: Kết quả tách ô bởi các đƣờng thẳng bƣớc 3,4 ................................................ 50 Hình 2-37: Vùng nhập số trong mẫu và trong ảnh scan ................................................... 50 Hình 2-38: Ảnh trƣớc và sau khi lọc nhiễu ....................................................................... 51 Hình 2-39: Hình bao xác định đƣợc trên ảnh ................................................................... 51 Hình 2-40: Các nét cơ bản tạo nên số dạng nét thẳng ...................................................... 51 Hình 2-41: Các số mẫu từ 0 đến 9 ..................................................................................... 51 Hình 2-42: Các nét ngang .................................................................................................. 52 Hình 2-43: Các nét đứng .................................................................................................... 52 Hình 3-1: Mẫu form nhập liệu “Sample Dta Etry Form” ................................................ 57 Hình 3-2: Mẫu form nhập liệu “Sample Data Entry Form” có sử dụng block ............... 58 Hình 3-3: Mẫu form nhập liệu “Mẫu Dữ Liệu Số” với các block và vùng định danh form ..................................................................................................................................... 59 Hình 3-4: Mẫu form nhập liệu “Mẫu Phiếu Trả Lời Bài Thi Trắc Nghiệm” .................. 60 Hình 3-5: Mẫu form nhập liệu “Phiếu Đánh giá môn học”.............................................. 61 Hình 3-6: Mô hình khái niệm ............................................................................................ 64 Hình 3-7: Quy trình thiết kế mẫu phiếu............................................................................ 68 Hình 3-8: Vùng mã form trên ảnh..................................................................................... 69 Hình 3-9: Quy trình nhận dạng mẫu phiếu khi chƣa biết mã phiếu ................................ 70 Hình 3-10: Quy trình nhận dạng mẫu phiếu khi đã biết mã phiếu .................................. 71 Hình 4-2: Vùng cần xác định bị lệch so với vùng xác định thực tế .................................. 79 Hình 4-3: (a) Ảnh mẫu (b) Kết quả thu đƣợc sau khi phân vùng ................................... 79 Hình 4-1: (a) ảnh thử nghiệm; (b) Một phần của ảnh đƣợc phóng to.............................. 80 vi DANH MỤC BẢNG Bảng 1: Bảng phân loại ảnh............................................................................................... 72 Bảng 2: Lọc nhiễu .............................................................................................................. 73 Bảng 3: Góc nghiêng với ảnh 150DPI ............................................................................... 74 Bảng 4: độ lệch trung bình so với góc thực tế ................................................................... 74 Bảng 5: So sánh hiệu năng của phƣơng pháp phép chiếu tối ƣu với phƣơng pháp phép chiếu ............................................................................................................................ 75 Bảng 6: Kết quả xác định góc nghiêng bằng block ........................................................... 76 Bảng 7: Thời gian xâc định block ...................................................................................... 76 Bảng 8: Độ chính xác phƣơng pháp tách vùng dựa trên block ........................................ 77 Bảng 9: Độ chính xác của phƣơng pháp xác định đƣờng thẳng....................................... 77 Bảng 10: Độ chính xác của phƣơng pháp ghép cặp các đƣờng thẳng trong tập mẫu và tập ảnh mới ................................................................................................................. 78 Bảng 11: Độ chính xác phƣơng pháp tách vùng dựa trên đƣờng thẳng .......................... 79 Bảng 12: Kết quả xác định kích thƣớc trung bình của các đối tƣợng.............................. 80 Bảng 13: Thời gian xác định kích thƣớc trung bình ......................................................... 80 Bảng 14: Độ chính xác phƣơng pháp tách vùng dựa trên đƣờng thẳng .......................... 81 Bảng 15: Kết quả thực nghiệm nhận dạng số ................................................................... 81 Bảng 16: Kết quả thực nghiệm tích hợp............................................................................ 82 1 MỞ ĐẦU 1.1 Đặt vấn đề Nhận dạng là bài toán đã xuất hiện khá lâu và đã đạt được nhiều thành tựu. Tuy nhiên nhận dạng một văn bản bất kì bao gồm cả các văn bản có lẫn chữ viết tay hoặc hình ảnh luôn là một bài toán khó mà cho đến nay vẫn chưa thật sự có giải pháp hoàn chỉnh. Để giải quyết bài toán nhận dạng hiện đang có nhiều xu hướng tiếp cận khác nhau tương ứng với những loại văn bản khác nhau, trong đó nhập dữ liệu tự động là phương pháp tiếp cận về nhận dạng đối với các văn bản kiểu form nhập liệu. Càng ngày nhu cầu xử lý dữ liệu của con người trên máy tính càng tăng lên. Chính vì lý do đó bài toán nhập dự liệu tự động đang ngày càng thu hút được nhiều sự chú ý và đầu tư. Nó đã vượt ra ngoài khuôn khổ các lĩnh vực nghiên cứu và đang dần được áp dụng vào thực tế bởi khả năng áp dụng rộng rãi cùng những hiệu quả mà nó có thể mang lại. Trên thế giới, hiện đã có nhiều ứng dụng liên quan đến vấn đề nhận dạng văn bản hay nhập dữ liệu tự động. Có thể kể đến như : sản phẩm FineReader, Scan To Office của hãng ABBYY, Smart scan Xpress của Pegasus Image, các ứng dụng chấm thi tự động …Ở Việt Nam cũng đã có các ứng dụng nhận dạng văn bản như VNDocR của Viện Công nghệ Thông tin hay ImageScan của CardPro. Đây là các ứng dụng nhận dạng chữ in. Việc nhận dạng chữ viết tay đang còn là một thách thức. Đã có một số nghiên cứu về nhận dạng chữ viết tay và chữ viết tay tiếng Việt như đề tài "Ứng dụng mạng Neural trong nhận dạng văn bản"[1]. Tuy nhiên các nghiên cứu này vẫn còn rất nhiều hạn chế do khả năng nhận dạng chữ viết tay chưa đạt được độ chính xác cần thiết để có thể áp dụng trên thực tế một cách rộng rãi. Cùng với sự phát triển của công nghệ thông tin hiện nay, các thuật toán nhận dạng cũng ngày càng chính xác và đưa ra được các kết quả đáng tin cậy. Ngay cả đối với chữ viết tay cũng có thể đạt được độ chính xác cao với điều kiện là chỉ nhận dạng từng chữ riêng biệt và chữ viết đẹp. Với các văn bản thông thường ta khó có thể đạt được điều này. Tuy nhiên, Các form nhập liệu là kiểu văn bản có cấu trúc và ta có thể đưa ra một số quy tắc ràng buộc để tăng độ chính xác cho việc nhận dạng - chẳng hạn như: các chữ được viết riêng rẽ trên các ô riêng biệt của các vùng nhập liệu. Mặt khác, việc nhận dạng không cần thiết phải tiến hành trên toàn bộ ảnh của tài liệu mà chỉ giới hạn ở những vùng nhập dữ liệu. Đặc điểm này cũng cho phép ta tiếp cận bài toán một cách hiệu quả hơn, chẳng hạn có thể sử dụng các thông tin sẵn có từ form mẫu như định dạng vùng nhập liệu, kích thước ô,…làm tham số nhận dạng. Một khía cạnh khác của nhận dạng form nhập liệu là các dữ liệu nhận dạng được của mỗi vùng trên form sẽ phải được tự động gắn vào một trường dữ liệu xác định của ứng dụng. 2 Bài toán nhập liệu tự động từ form tài liệu bao gồm các vấn đề sau :  Quản trị form: thiết kế form nhập liệu ; quản lý và lưu trữ tự động các tham số của form để có thể cung cấp dữ liệu cho quá trình nhận dạng sau này nhanh chóng và tin cậy ; tích hợp với cơ sở dữ liệu.  Nhận dạng các vùng dữ liệu (bài toán phát hiện và phân vùng dữ liệu).  Nhận dạng chữ viết tay trên các vùng dữ liệu ; xử lý từ vựng và ghi nhận vào cơ sở dữ liệu.  Nhưng trước hết phải tiền xử lý ảnh để làm tốt ảnh, phục vụ cho quá trình nhận dạng, đảm bảo độ tin cây. Hình 0-1: Sơ đồ hệ thống Luận văn này chỉ giới hạn trình bày các giải pháp bao gồm các công việc cụ thể như sau :  tiền xử lý ảnh để làm tốt ảnh, phục vụ cho quá trình nhận dạng, đảm bảo độ tin cậy. - Thuật toán lọc nhiễu, khử nền và nhị phân hóa ảnh. - Thuật toán xác định góc nghiêng dựa trên phép chiếu. - Thuật toán xác định góc nghiêng dựa trên các block.  Tách các vùng nhập dữ liệu (bài toán phát hiện và phân vùng dữ liệu). - Thuật toán xác định các đường thẳng trong văn bản phục vụ cho việc xác định các vùng nhận dạng. 3 - Phân vùng ảnh dựa trên các đường thẳng xác định được. - Phân vùng ảnh dựa trên vị trí tương đối đến các mốc quy chiếu.  Nhận dạng các vùng nhập liệu. - Nhận dạng số viết tay dạng nét thẳng. - Nhận dạng các ô đánh dấu.  Quản trị form - Thiết kế form nhập liệu. - Quản lý và lưu trữ tự động các tham số của form để có thể cung cấp thông tin cho quá trình nhận dạng sau này nhanh chóng và tin cậy ; hỗ trợ các thông tin để tích hợp với cơ sở dữ liệu. 1.2 Nội dung và cấu trúc của khóa luận Hệ thống mà tôi thực hiện như đã giới thiệu ở trên là bài toán xác định dữ liệu được nhập vào form sau khi có ảnh từ máy quét. Quy trình xử lý bao gồm : tiền xử lý ảnh, phân vùng ảnh, nhận dạng ảnh và quản trị form. Nắm bắt được khó khăn cũng như những đặc trưng của bài toán này, hệ thống được xây dựng đã áp dụng các giải pháp có độ chính xác cao, phù hợp với đặc trưng ảnh của form nhập dữ liệu với các giả thiết, ràng buộc của loại ảnh này sẽ được nêu cụ thể ở từng chương tương ứng. Với nội dung chính là trình bày những lý thuyết cơ bản về xử lý ảnh, về các bước trong quy trình xử lý của hệ thống và lựa chọn các giải pháp áp dụng vào bài toán, khóa luận được tổ chức như sau : Mở đầu Phần mở đầu giới thiệu về bài toán nhập dữ liệu tự động nói chung: tình hình Việt Nam và thế giới, các thành tựu đã đạt được trong lĩnh vực nhận dạng chữ viết, những khó khăn cũng như các đặc trưng của bài toán nhận dạng form nhập dữ liệu so với các bài toán nhận dạng khác. Phần tiếp theo giới thiệu về hệ thống mà tôi đang tiến hành nghiên cứu và xây dựng : Tách và nhận dạng số viết tay trong phiếu nhập dữ liệu cùng với quy trình nhập dữ liệu tự động bằng nhận dạng quang học, phạm vi giới hạn và trình tự giải quyết bài toán. Từ đó nêu lên nội dung mà tôi nghiên cứu và thực hiện thông qua việc trình bày nội dung và cấu trúc của khóa luận. 4 Chƣơng 1: Đề xuất giải pháp tiền xử lý ảnh Chương này trình bày về các phần việc chính liên quan đến tiền xử lý ảnh trong hệ thống đó là : Giải pháp lọc nhiễu, khử nền và nhị phân hóa thông qua giãn độ tương phản kết hợp loại bỏ nền lặp lại nhiều lần trên lược đồ histogram; Giải pháp cho việc khử nghiêng ảnh bằng phép chiếu, bằng các block với các biện pháp tối ưu hóa và xác định ảnh ngược. Nội dung của chương tập trung vào:  Phân tích những đặc trƣng của ảnh dạng form nhập liệu từ đó đưa ra giải pháp cho việc tiền xử lý ảnh.  Quy trình thực hiện các giải pháp này.  Đánh giá ưu và nhược điểm của các phương pháp. Chƣơng 2: Đề xuất giải pháp phân vùng và nhận dạng ảnh Chương này trình bày về các giải pháp tách vùng nhập liệu trên ảnh dựa vào các thông tin cung cấp bởi các form mẫu. Tập trung vào hai hướng chính là xác định vị trí các vùng theo tọa độ tương đối từ các đường thẳng trên form và từ các mốc quy chiếu. Sau khi tách các vùng nhập liệu trên ảnh, các vùng này sẽ được nhận dạng. Trong khuôn khổ luận văn chỉ trình bày về nhận dạng số viết tay dạng nét thẳng và các ô đánh dấu là các đối tượng nhập liệu phổ biến nhất. Nội dung của chương tập trung vào:  Phân tích những đặc trƣng của ảnh dạng form nhập liệu từ đó đưa ra giải pháp cho việc tách vùng và nhận dạng.  Xác định các đối tượng làm mốc quy chiếu trên ảnh( đường thẳng, các block bên cạnh form).  Tách vùng nhập liệu.  Nhận dạng số viết tay và các ô đánh dấu.  Đánh giá ưu và nhược điểm của các phương pháp. 5 Chƣơng 3: Xây dựng hệ thống tích hợp Chương 4 trình bày về module quản trị form nhập liệu cho các nhóm form với các đặc điểm mà các giải pháp ở các chương trước hướng đến. Nội dung của chương tập trung vào:  Giới thiệu đặc trƣng của các form nhập liệu mà luận văn này tập trung giải quyết.  Thiết kế form nhập liệu.  Quản lý và lưu trữ tự động các tham số của form để có thể cung cấp thông tin cho quá trình nhận dạng ảnh sau này nhanh chóng và tin cậy ; hỗ trợ các thông tin để tích hợp với cơ sở dữ liệu. Chƣơng 4: Thực nghiệm Chương 5 mô tả chi tiết quá trình thực nghiệm với các giải pháp đề xuất trong luận văn cùng với thực nghiệm về hệ thống chung. Đồng thời chương cũng đề cập đến quá trình thu thập và xây dựng cơ sở dữ liệu ảnh dạng form sử dụng cho thực nghiệm. Kết luận Tổng kết lại những kết quả đạt được và chưa đạt được trong quá trình nghiên cứu và thực hiện khóa luận. Từ đó nêu lên những kết quả cần hướng tới và hướng nghiên cứu, phát triển trong tương lai. 6 CHƯƠNG 1 – ĐỀ XUẤT GIẢI PHÁP TIỀN XỬ LÝ ẢNH Sau khi nhận được ảnh từ máy quét, ảnh thu được có thể bị nghiêng do đặt lệch giấy trong quá trình quét hoặc có thể có nhiễu nền. Những nguyên nhân này làm cho các vùng nhập liệu trên ảnh bị thay đổi vị trí, biến dạng. Do đó tiền xử lý là một bước rất quan trọng, tạo tiền đề để có thể nhận dạng ảnh chính xác và hiệu quả. Các giải pháp được áp dụng trong hệ thống bao gồm : lọc nhiễu và nhị phân hóa [3], xác định góc nghiêng dựa trên phép chiếu [3] và xác định góc nghiêng dựa trên các block. 1.1 Lọc nhiễu và nhị phân hoá. Thông thường văn bản được quét và lưu trữ dưới dạng ảnh đa mức xám trong khi đó hầu hết các thuật toán về xử lý và phân tích văn bản đều dựa trên ảnh nhị phân. Việc sử dụng ảnh nhị phân chỉ với hai mức trắng và đen giảm bớt được khối lượng tính toán và đơn giản hoá các phương pháp phân tích so với ảnh xám( 256 mức). Do vậy việc tìm ra một thuật toán nhị phân hóa nhanh và hiệu quả là một điều rất cần thiết Nhiều phương pháp về nhị phân hóa ảnh đã được phát triển, trong số đó có những phương pháp đem lại kết quả rất tốt. Có thể kể đến như thuật toán dựa trên sự biến thiên về cường độ mức xám ở các vùng khác nhau của văn bản [24], thuật toán về tính ngưỡng nhị phân cục bộ [18] hay thuật toán dựa trên đa độ phân giải [17] … Tuy nhiên các phương pháp này thường áp dụng đối với những hình ảnh tổng quát và đòi hỏi tính toán phức tạp bởi vì đều phải tính đến cấu trúc của ảnh. Trong bài toán này, chúng tôi chỉ xử lý trên các văn bản kiểu form nhập liệu, vốn dĩ là các ảnh đơn giản chỉ gồm hai mức đen (để thể hiện chữ) và trắng (nền của văn bản); văn bản cũng thường phân bố khá đồng đều. Chính vì vậy việc nhị phân hóa ảnh có thể được thực hiện chỉ dựa trên lược đồ xám của ảnh mà không phụ thuộc vào cấu trúc. Trên cơ sở này, chúng tôi đã kết hợp các kỹ thuật thực hiện nhiều lần tăng cường độ tương phản bằng cách điều chỉnh mức xám, phân ngưỡng tự động để nhị phân hoá ảnh. Mô tả thuật toán Ảnh của văn bản gốc vốn dĩ là ảnh nhị phân, tức là chỉ có hai ngưỡng đen, trắng cho chữ và nền. Song sau khi in ra và quét lại vào máy tính, nó trở thành ảnh đa mức xám tức là có 256 ngưỡng khác nhau. Một số vùng nền có thể xám hơn, ngược lại một số đối tượng chữ, bảng và dòng kẻ có thể mờ đi. Nhiệm vụ của chúng ta ở đây là tách các đối tượng cần xử lý ra khỏi hình nền. Thuật toán được xây dựng dựa trên giả thiết tổng diện tích của hình( chữ và đối tượng trên form) so với diện tích ảnh là nhỏ ,và tuy có sự biến đổi về ngưỡng nhưng vẫn có sự khác biệt tương đối giữa ngưỡng của chữ và của nền. Thông qua việc 7 tăng cường độ tương phản lặp lại nhiều lần, ta hi vọng rằng có thể khuyếch đại sự khác biệt này một cách đáng kể. Ảnh là một tập các điểm ảnh, được biểu diễn bởi công thức : I  x, y   n  n [0,255] Công thức 1-1 Trong đó x,y là các trục tọa độ của ảnh và n có thể lấy bất kì giá trị nào trong khoảng [0, 255]. Khi n = 255 thì đó là điểm trắng, n = 0 thì đó là điểm đen. Khi đó giá trị trung bình của mức xám là: x W y  H T   I ( x, y ) x 0 y 0 W H  W : Width   H : Height Công thức 1-2 Hình 1-1: Lƣợc đồ mức xám của ảnh Với giả định rằng tổng số lượng điểm ảnh biểu diễn cho chữ và các đối tượng chứa thông tin là nhỏ so với kích cỡ của ảnh, và các điểm ảnh này cũng có mức xám nhỏ hơn so với các điểm ảnh nền, chúng tôi cho rằng giá trị trung bình của mức xám của ảnh được quyết định bới các điểm ảnh nền. Dựa trên giả thiết này, để tăng độ tương phản của ảnh – tức là làm tăng độ nổi của các điểm ảnh chứa thông tin so với nền, chúng tôi coi như tất cả các điểm ảnh có mức xám lớn hơn giá trị của mức xám trung bình là các điểm ảnh nền và đặt lại mức xám của chúng là 255 (trắng). Sau bước biến đổi này ta thu được một ảnh mới: I ' ( x, y)  n' (n' [0, T ]  {255}) Công thức 1-3 8 Tiếp đó để tăng cường độ tương phản của ảnh sau khi chọn T là ngưỡng để tách nền, ta tăng cường độ tương phản của ảnh mới thông qua việc giãn khoảng của mức xám [2] của các điểm ảnh có mức xám nhỏ hơn mức xám trung bình từ [0,T] lên [0,255] n1  f ( n ') f ( n ')  255.n ' T Công thức 1-4 Cuối cùng ta thu được ảnh mới : I1 ( x, y)  n1 (n1  [0,255]) Công thức 1-5 Hình 1-2: Đồ thị biến đổi mức xám 9 Hình 1-3: Ảnh trƣớc (a) và sau biến đổi lần 1 (b) Công việc trên được thực hiện lặp đi lặp lại cho đến khi hình ảnh đạt được đến một độ sạch cần thiết. Điều kiện kết thúc là khi mức xám trung bình của ảnh trước và sau khi biến đổi không thay đổi. Ta có thể tóm tắt quy trình lọc nhiễu như sau : Bƣớc 1 : Tính giá trị trung bình T W Tk  H  I ( x, y) x 0 y 0 k W H Công thức 1-6 Bƣớc 2 : Loại nền cho ảnh dựa vào Tk  I ( x, y ) I k' ( x, y )   k 255 Công thức 1-7 Bƣớc 3 : Tăng độ tương phản cho ảnh mới I k ( x, y )  Tk I k ( x, y)  Tk 10 I k 1  f ( I k' ) Công thức 1-8 Bƣớc 4 : Lặp lại bước 1 cho tới khi giá trị T giữa 2 lần lọc liên tiếp nhau là gần như nhau Với cách lọc trực tiếp trên ảnh ở trên, thì tiếp chi phí tính toán cho phương pháp lọc này chủ yếu tập trung vào chi phí tính toán ở Tk và Ik+1. Trong công thức tính Tk, giá trị của Tk chỉ phụ thuộc vào giá trị của Ik(x,y) chứ không phụ thuộc vào vị trí. Nếu ta lưu lại được giá trị này thì sẽ không cần đọc lại ảnh trong mỗi bước lặp. Để giảm chi phí tính toán cho phép lọc này chúng ta chỉ tính lược đồ histogram của ảnh, sau đó tất cả các tính toán đều thực hiện trên lược đồ histogram với 256 phần tử( so với 1241x1755 điểm ảnh của ảnh trang A4 scan với độ phân giải 150DPI). Phép lọc ảnh được thực hiện nhiều lần chỉ trên lược đồ mức xám và cuối cùng mới thực hiện phép biến đổi tăng độ tương phản( công thức 2-7) cho ảnh cuối Ifinal. Ta có thể hình dung các bước thực trên lược đồ mức xám như sau:  Bước 1 : Xác định lược đồ mức xám của ảnh  Bước 2 : Tính giá trị trung bình Tk, dựa vào lược đồ mức xám  Bước 3 : Biến đổi lược đồ mức xám dựa trên Tk  Bước 4 : Lặp lại bước 2, cho tới khi Tk và Tk-1 gần như nhau.  Bước 5 : Thực hiện điều chỉnh độ tương phản cho ảnh gốc cuối cùng dựa trên kết quả của lược đồ mức xám ở bước cuối. Sau cùng, khi ảnh đã được lọc nền và làm sạch, ta tiến hành nhị phân hóa ảnh. Ngưỡng nhị phân được chọn là: 3 Threshold  T final  10 N 4 Công thức 1-9 Trong đó Tfinal là mức xám trung bình trong bước biến đổi cuối cùng, N là số bước thực hiện biến đổi. 11 Ta thu được ảnh đã lọc nhiễu và nhị phân hóa như trong hình vẽ Hình 1-4: (a) Ảnh scan; (b) Ảnh sau lần lọc thứ nhất; (c) Ảnh sau lần lọc cuối cùng; (d) Ảnh sau khi nhị phân hóa Dựa trên kết quả thực nghiệm sau khi áp dụng thuật toán đối với 60 form văn bản thuộc về 4 loại khác nhau, chúng tôi thấy rằng kết quả thu được hoàn toàn có thể so sánh với kết quả của các thuật toán khác. Thời gian để nhị phân hóa ảnh có độ phân giải là 300 DPI với 10 lần lặp chỉ là 66 ms. Điều này chứng minh rằng thuật toán có thể áp dụng rất hiệu quả khi ta cần xử lý văn bản với số lượng lớn. 1.2 Xác định góc nghiêng của ảnh Văn bản bị nghiêng xảy ra trong quá trình copy hoặc khi quét vào máy tính, điều này ảnh hưởng đến toàn bộ các đối tượng có trong văn bản nhất là các vùng mà ta cần phải nhận dạng. Văn bản bị nghiêng là một điều không thể tránh khỏi, và trong nhiều trường hợp gây ảnh hưởng không tốt đến độ chính xác đối với kết quả phân vùng và nhận dạng ký tự. Cũng có một số phương pháp về phân vùng ảnh không yêu cầu văn bản phải có góc nghiêng bằng không [5, 25]. Tuy nhiên các phương pháp này vẫn đòi hỏi góc nghiêng của văn bản nằm trong một khoảng giới hạn cho phép. Bên cạnh đó, đơn giản hóa vấn đề này sẽ dẫn tới phức tạp hóa cũng như tốn thời gian xử lý đối với các nhiệm vụ khác. Do đó chính xác lại góc nghiêng của ảnh là một việc làm tất yếu và phải được thực hiện trước khi tiến hành phân vùng và nhận dạng ảnh. 12 Hình 1-5: (a) ảnh sau khi khử nhiễu và tách nền; (b) ảnh sau khi khử nghiêng Các văn bản có rất nhiều đặc trưng khác nhau như đặc trưng về hướng, về cấu trúc phân bố các đối tượng... Từ đó cũng có một số phương pháp xác định góc nghiêng cho ảnh của văn bản tương ứng như các phương pháp dựa trên phép biến đổi Hough [9,19,14,29,34], hàng xóm gần nhất( Nearest Neighbour) [7,30,37], phép chiếu [6,8,22,36] , đối tượng liên kết [28,31], và một số phương pháp khác [10,15,32,38]. Mỗi phương pháp có một cách tiếp cận khác nhau cùng những ưu điểm và nhược điểm nhất định. Một số phương pháp có khả năng tìm góc nghiêng trong khoảng [-50,+50] cho đến [-450,+450]. Một số phương pháp khác cho phép tìm góc nghiêng bất kỳ đối với nhiều loại văn bản đa dạng và phức tạp. Bên cạnh đó còn một số phương pháp đặc thù như sử dụng đường thẳng dày [4], sử dụng khung [11] …Các phương pháp này gắn chặt với một vài loại form văn bản nhất định đã được định nghĩa từ trước. Góc nghiêng tìm được thông qua việc tìm các đối tượng đánh dấu trên form. Trong bài toán mà ta đang xem xét, khi nhận dạng để nhập dữ liệu tự động, ta thu được một tập ảnh của cùng một loại form mẫu để nhận dạng, thông thường là qua quét ảnh theo lô. Góc nghiêng của ảnh chỉ có thể lên đến nhiều nhất là ±200. Cộng với cấu trúc của không quá phức tạp và yêu cầu về tốc độ xử lý. Do đó tôi đã lựa chọn hai phương pháp trình bày dưới đây khi xây dựng hệ thống, những phương pháp này tuy còn một số hạn chế nhưng phù hợp với đặc trưng ảnh của bài toán, cho thời gian tính toán nhanh và chính xác.
- Xem thêm -