You are here >   News > Khoa_Hoc_Cong_Nghe > ViewNews
Register   |  Login
Phiếu điều tra và hệ thống nhập phiếu điều tra tự động
Cập nhật ngày: 16/02/2005

Trong báo cáo này chúng tôi đề cập đến cấu trúc dữ liệu của phiếu điều tra trong hệ thống nhập phiếu điều tra tự động dạng dấu hoặc chữ viết tay có hạn chế. Phiếu điều tra dạng dấu thông thường được hiểu là các phiếu điều tra được đánh dấu bên trong các hình cơ bản như e-lip, hình chữ nhật, hình vuông, hình tròn và đôi khi còn cả chữ viết tay hạn chế bên trong các hình này. Sự kết hợp giá trị của một nhóm các hình cơ bản này sẽ cho ta giá trị của một trường trong phiếu điều tra cần nhập. Việc cấu trúc dữ liệu Theo chiều dưới lên có kết hợp những đặc điểm riêng mà báo cáo đưa ra tỏ ra có hiệu quả đối với các phiếu điều tra cơ bản như: điều tra thị hiếu, thi trắc nghiệm, lấy ý kiến người tiêu dùng v.v..1. Giới thiệu Trong công nghệ thông tin, nhập liệu tự động là một trong những yếu tố quan trọng nhằm nâng cao tốc độ và hiệu quả của quá trình xử lý thông tin. Kỹ thuật nhập liệu tự động trong thời gian qua đã phát triển một cách mạnh mẽ và đã mang lại sự thay đổi lớn trong các tính toán khoa học kỹ thuật cũng như trong quản lý hành chính và điều khiển học... Đã có nhiều hệ thống nhập liệu tự động Theo các tiếp cận khác nhau như: Nhận dạng hoá đơn, phiếu điều tra, ký tự quang học, Zipcode trong bưu điện, nhập bản đồ tự động như Omnipage, R2V, TrixSystems, ArcInfo, ArcView, Integraph v.v.. Mỗi hệ nhập liệu tự động có các đặc thù riêng nhằm phục vụ các ứng dụng khác nhau. Hiện nay ở nước ta đã có các hệ thống nhận dạng chữ viết như hệ nhận dạng các ký tự la tinh từ năm 1990 (ADOR, DOCR), nhận dạng chữ Việt in VnDOCR, MapScan 1.0 của phòng Nhận dạng và Công nghệ Tri thức Viện Công nghệ Thông tin, hệ WinGIS của công ty DolfSoft v.v.. Sự phát triển của các hệ thị giác máy `computer vision` trên thế giới là kết hợp nhận dạng chữ viết lẫn nhận dạng dấu trong phiếu điều tra kết hợp với việc nhận dạng mã vạch. Một số hãng đang phát triển Theo hướng này như Scansoft (http://www.scansoft.com/), VisionShape (http://www.visionshape.com/), DRS (`http://www.drs.co.uk/intdstrb.htm`). Hãng Caere có các sản phẩm như OmniPage, OmniForm, Omnifile, hãng VisionShape có các sản phẩm nhận dạng chữ, đọc mã vạch, dấu quang học, còn hệ thống dịch vụ quốc tế nghiên cứu và nhập dữ liệu DRS của Anh đặt tại các nước: Argentina , Australia , Belgium v.v... Ngoài ra còn nhiều hãng khác trên thế giới phát triển các hệ thống nhận dạng chữ, dấu, mã vạch kết hợp với phiếu điều tra. Các sản phẩm trên được gắn với phần cứng Scanner. Nói chung các hệ thống nêu trên có giá cao. Việt Nam bước đầu nghiên cứu bài toán nhập liệu tự động và đã có phần mềm MarkRead 1.0 của Viện Công nghệ Thông tin.Nhận dạng dấu quang học là gì? Nhận dạng nhãn quang học OMR (Optical Mark Reading) là việc xử lý để tách ra dấu trong các ô chữ nhật. Theo tiếp cận cổ điển thì các phiếu được làm bằng giấy đặc biệt, tại các vị trí đánh dấu hay trả lời có màu khác biệt với phần giấy khác. Trên thực tế hầu hết các phiếu điều tra không đáp ứng được yêu cầu này. Các vị trí đánh dấu là các ô hình vuông của tệp ảnh mẫu(Check Mark). Để nhận dạng đúng nội dung các phiếu điều tra cần tách ra các dấu đúng vị trí sau đó đưa chúng vào cơ sở dữ liệu. Trong nhận dạng phiếu điều tra cần giải quyết các bài toán khó như hiệu chỉnh góc lệch của phiếu điều tra, chỉnh lề của phiếu điều tra so với phiếu mẫu, tách các ô chứa dấu trong phiếu mẫu và nhận dạng các ô đánh dấu trong các phiếu điều tra (các bài toán này đã được đề cập đến trong các bài báo [1,3]). Đối với phiếu điều tra đơn thuần chỉ có các ô đánh dấu đơn lẻ không theo nhóm thì chúng ta chỉ cần nhận dạng từng ô và mỗi ô có nội dung đúng hoặc sai (đánh dấu hoặc không đánh dấu). Trong thực tế các câu hỏi thường có nhiều phương án trả lời, có thể chọn một trong các trả lời hoặc các câu trả lời loại trừ nhau, ngoài ra trong các ô đánh dấu có điền các chữ trong các ô chữ nhật và e-lip, tập các ô có thể tạo thành một dãy các chữ hoặc số được lưu trong bảng 1 chiều (ngang hoặc dọc). Do đó cần một cấu trúc dữ liệu mềm dẻo để đáp ứng cho việc nhận dạng các phiếu điều tra.

Phần còn lại của báo cáo được cấu trúc như sau: Phần 2 nêu ra mục tiêu của hệ thống nhận dạng nhãn quang học. Phần 3 trình bày cấu trúc trường OMR. Phần 4 trình bày cấu trúc kết quả. Cuối cùng là phần kết luận về hướng phát triển tiếp của chúng tôi đối với vấn đề này.2. Mục tiêu thiết kế OMRSCAn Dựa vào phần mềm MarkRead 1.0 (xem [5]) chúng tôi tiến hành nghiên cứu, thiết kế và cài đặt thử nghiệm hệ nhận dạng nhãn quang học OMRScan phục vụ nhập liệu tự động phiếu điều tra, kiểm phiếu, thi trắc nghiệm, kiểm tra, phiếu thăm dò ý kiến và các phiếu mẫu văn phòng khác chứa các ô chữ nhật, e-lip có đánh dấu và chữ, số viết tay có hạn chế. Dữ liệu vào: Phiếu điều tra là các ảnh đen trắng hoặc đa cấp xám từ đĩa hoặc từ Scanner. + Yêu cầu về dữ liệu: Các tệp ảnh có thể có nhiễu, nghiêng và dịch chuyển nhưng hạn chế, các bản in và photocopy tương đối rõ ràng. + Khuôn dạng: Hầu hết các khuôn dạng thông thường như TIFF, GIF, PCX, BMP, JPG,... Các ảnh này gồm các ô hình vuông, chữ nhật, tròn, e-lip có thể đánh dấu, chữ và chữ số có hạn chế. Học và nhận dạng phiếu điều tra: + Giai đoạn học: Học theo tương tác người máy: Người dùng chỉ cần quan tâm đến một số đối tượng và dùng chuột để định vị vùng chứa các đối tượng cần nhận dạng (một vùng có thể chứa nhiều đối tượng), nhóm các đối tượng thành các trường gồm nhiều ô. Học tự động: Tự động nhặt ra các đối tượng theo mẫu đã chỉ ra trong các phiếu mẫu. Hiệu chỉnh: Hiệu chỉnh bằng tay hoặc tự động các vị trí trong phiếu mẫu. Trích chọn đặc trưng mẫu: Tự động phân tích và tách các vùng này các đối tượng riêng lẻ (cô lập đối tượng) và tính đặc trưng cho các hình này rồi lưu vào tệp mẫu học. + Giai đoạn nhận dạng: Đối với mỗi đối tượng cần nhận dạng sẽ được tiến hành theo các bước cơ bản: Xử lý sơ bộ, trích chọn các đặc trưng liên quan đến mẫu, đối sánh các đặc trưng của đối cần nhận dạng với mẫu. Dữ liệu ra: Tệp kết quả của nhận dạng được đưa ra theo các qui cách DBF, MDB, XLS. + Mỗi phiếu là một bản ghi gồm các trường tương ứng với các đối tượng cần nhận dạng (hình vuông, chữ nhật, hình tròn, e-lip) đã được điền khi điều tra. + Tên các trường được sinh ra một cách tự động hoặc được người dùng đưa vào. Tiếp cận phương pháp nhận dạng nhãn quang học hiện đại: + Tự động xử lý các bản kiểm tra, phiếu thăm dò, câu hỏi và các phiếu mẫu khác. Phần mềm OMRScan sử dụng việc nhận dạng nhãn quang học tự động (OMR), xử lý tự động các chữ có hạn chế và đánh dấu trong các hộp hoặc hình tròn, để xác định các vùng trên phiếu mẫu. OMRScan chuyển đổi dữ liệu từ các dạng này thành các qui cách có thể xử lý được trên máy tính. + Các phiếu mẫu có thể được tạo ra trong xử lý phiếu điều tra hoặc phần mềm thiết kế điều tra hoặc trên máy in và photocopy. OMRScan không cần thiết in theo mực đặc biệt và ký hiệu đặc biệt được gọi là `registration marks` trên phiếu mẫu cho các mục đích gióng thẳng. OMRScan làm việc với các scanner chung chứ không phải trên máy OMR chuyên dụng.3. Cấu trúc của trường

Trong đó các thành phần của trường OMR được mô tả như sau: a) Field Names-Tên trường Khi xác định một trường OMR với các câu hỏi nhiều lựa chọn (multiple) trong cùng một trường, có thể xác định tên trường đối với mỗi câu hỏi trong trường mà bạn cần cung cấp cho toàn bộ trường. Bằng cách sử dụng các tên riêng dễ dàng ghi dữ liệu vào cơ sở dữ liệu hiện có và các kiểu tệp khác nhau. b) Field Size- Kích thước của trường OMR Number of Columns: Số cột chứa trong trường Number of Rows: Số hàng chứa trong trường c) Field Type-Kiểu trường: Kiểu của trường gồm: Multiple - Chỉ ra một trường chứa nhiều câu hỏi lựa chọn Grid - Một lưới gồm số ô có giá trị bằng một phần dữ liệu (ví dụ: số hiệu của sinh viên gồm nhiều ô ghép lại). List - Để chỉ một trường mà ở đó mỗi ô được gán một giá trị ra duy nhất nhưng các ô không được chứa trong một hàng hoặc cột duy nhất.

Boolean - Khi giá trị của trường có giá trị (Yes) câu trả lời khẳng định điền và (No) câu trả lời phủ định. Binary - Giá trị đưa ra là 1 nếu phần trả lời được đánh dấu và 0 đối với phần không được đánh dấu. Các trường Binary trả lại xâu các trả lời gồm các giá trị1 hoặc 0. Text: Khi giá trị của trường có giá trị là một dẫy các ký tự được đặt trong một ô Table: Giá trị của text được viết trong bảng và mỗi ô chứa một ký tự riêng biệt. d) Field Orientation - Hướng của trường theo cột hoặc hàng Column - trường chứa các câu hỏi được định hướng theo cột (mỗi câu hỏi chọn một trong các trả lời trong một cột). Row - trường chứa các câu hỏi được hướng theo hàng (mỗi câu hỏi chọn một trong các trả lời trong một hàng). e) Output Label - Nhãn ra gồm Data Type - Kiểu dữ liệu được đặt để chỉ ra dữ liệu ra là text hoặc số. Label Range - Đặt các giá trị ngầm định định trước là các nhãn ra (chẳng hạn các nhãn A - E hoặc 1 - 5) Labels - Tập dữ liệu ra sẽ xuất hiện trong lưới (grid) người dùng đưa vào. Value - Sử dụng cách đặt này kết hợp với giá trị số với lựa chọn trả lời text. Các giá trị được sử dụng để tính toán giá trị trung bình cho các trả lời mà nó được đặt kiểu dữ liệu Text. Các giá trị cũng được sử dụng để tính toán thống kê. f) Value Range - Đặt miền giá trị của các số được xác định trước làm các giá trị. Cách đặt này tăng tốc độ đưa các giá trị đối với mỗi một trong các nhãn vào lưới giá trị ngược với việc nhập các giá trị riêng rẽ. g) Scale - Đặt cho các giá trị được xác định trước là các nhãn mà bạn có thể ghi và dùng lại chẳng hạn (Tốt, Khá, Trung bình, Kém). Như vậy việc nhóm các khối lại thành trường OMR gồm nhiều cột và nhiều hàng để trả lời các câu hỏi lựa chọn. Khi chọn theo các khối cột, hàng có thể hiệu chỉnh được vị trí của trang văn bản với mẫu. Các thao tác chuẩn bị học form Joining các trường OMR Các đánh bị tách nhau bởi các đoạn văn bản, danh sách, dãy các câu hỏi có cùng tính chất hay đồ thị không thể chọn trong một trường. Do đó việc nối các trường cho phép bạn nối các kiểu đánh dấu thành một trường. Kiểu trường OMR có thể được kết nối gồm Multiple, Grid, List, Binary and Add.

Tốc độ thực thi chậm. Khả năng thực hiện phụ thuộc vào các điều khiển và các giao tiếp có trên máy tính của người sử dụng. Để khắc phục các nhược điểm trên, chúng tôi đã sử dụng các phương pháp cài đặt trực tiếp các Marco vào trong các tệp cơ sở dữ liệu. Thông qua modul “Save Data”, các dữ liệu có được sau quá trình nhận dạng sẽ được chuyển thành dạng dữ liệu nội tại (dữ liệu được định dạng theo một khuôn dạng đặc biệt ). Sau đó, các Macro - đã được cài sẵn trong các file CSDL - sẽ tự động nạp các file dữ liệu nội tại này và chuyển vào trong các file CSDL chuẩn. Dữ liệu được đưa vào các file CSDL dưới dạng các trường. Mỗi trường được xác định bởi: tên trường, giá trị của trường và các chú thích về trường (nếu có). Phương pháp cài Macro trong các file cơ sở dữ liệu có các ưu điểm sau: Tốc độ chuyển đổi dữ liệu nhanh. Tính khả chuyển cao: Không yêu cầu máy tính cấu hình cao. Không đòi hỏi bất kỳ một giao tiếp sẵn có nào trong máy tính của người sử dụng. Có thể thực hiện được với tất cả các phiên bản khác nhau của một hệ quản trị CSDL (ngay cả các phiên bản thấp). Người dùng được cung cấp các Macro chuyển đổi dữ liệu dưới dạng mã nguồn Visual Basic, điều này cung cấp một phương pháp vạn năng và rất mạnh để giúp người dùng có thể lấy dữ liệu từ chương trình, và có thể chỉnh sửa mã nguồn để có được các định dạng dữ liệu mong muốn. Có tính mở cao và khả năng nâng cấp, sửa đổi dễ dàng: Việc nâng cấp hay sửa đổi cấu trúc dữ liệu khi đưa vào các file CSDL chỉ thực hiện ở các modul dữ liệu mà không ảnh hưởng đến bất kỳ một modul nào trong hệ thống. Hơn nữa việc chỉnh sửa các modul dữ liệu tương đối đơn giản, không yêu cầu nhiều thời gian và công sức. Điều này làm tăng tính năng khả chuyển cho chương trình. Cho phép các chương trình khác có thể lấy dữ liệu của chương trình bằng cách sử dụng lại các macro có sẵn.5. Kết luận Báo cáo này đã nêu ra sự cần thiết của việc nhập các phiếu điều tra bằng cách đánh dấu vào các ô hình chữ nhật.có thể dùng cho thi trắc nghiệm, bỏ phiếu, kiểm tra lấy bằng xe máy v.v.. Từ đó đưa ra cấu trúc dữ liệu của các trường để nhận dạng các câu trả lời của các câu hỏi theo nhiều phương án trả lời theo các kiểu danh sách, lưới, nhiều trả hoặc loại trừ. Trong phiên bản đầu, dữ liệu của chương trình được export ra dưới dạng đơn giản (chỉ có trường Logic hoặc Text). Nhưng ở những phiên bản dữ liệu được xuất ra sẽ có định dạng phức tạp hơn tuy nhiên nguyên lí của việc dữ liệu sẽ không thay đổi. Trong tương lai không xa chúng tôi sẽ xây dựng các kỹ thuật tương tự dành cho các hệ quản trị dữ liệu không hỗ trợ VBA (Visual Basic for Application) như: hệ Paradox (dùng ngôn ngữ Object Pal) hoặc hệ Oracle (sử dụng ngôn ngữ Java) và nhiều hệ khác.Tài liệu tham khảo Tạo, N. Q., Toàn, Đ. N., Một số phương pháp nâng cao hiệu quả nhận dạng phiếu điều tra dạng dấu phục vụ cho thiết kế hệ nhập liệu tự động MARKREAD, Tạp chí Tin học và Điều khiển học, Tập 15, số 4, năm 1999. Paker J.R., Algorithms for Image Processing and Computer Vision, Chapter: Optical Character Recognition, Wiley Computer Publishing, Jhon & Son Inc., New York, 1997, pp 275-304. Toàn Đ. N., Tạo N. Q., Tách các đối tượng hình học trong phiếu điều tra dạng dấu, Tạp chí Bưu chính Viễn thông, chuyên san `Các công trình nghiên cứu - triển khai Công nghệ Thông tin và Viễn thông`, Số 2, tháng 12/1999, Tr 69-76. K. Voss and H. Suesse, Invariant Fitting of Planar Objects by Primitives, IEEE Trans. Pattern Analysis and Machine Intelligence, Vol. 19, No 1, pp. 80-84, January, 1997. Ngô Quốc Tạo, Bạch Hưng Khang, Lương Chi Mai, Đỗ NăngToàn và các cộng sự, Thiết kế và cài đặt hệ thống nhập liệu tự động - MarkRead dựa trên các kỹ thuật nhận dạng và xử lý ảnh, mã số TT99-01, Trung tâm Khoa học tự nhiên và Công nghệ Quốc Gia, Hà nội, tháng 12 năm 2000

Ý kiến của bạn Gửi cho bạn bè In bài này Trở lại