簡介
在實際工作中,人們常常採用手工輸入的方式進行數據錄入。但是,這種方式存在效率低、易出差錯等缺點。隨著數據規模變大,這些缺點就會越發嚴重地顯現出來。因此,尋找一種用以替代手工錄入方式的自動化數據錄入技術方案,對於實際工作具有十分重要的意義。
如果系統提供數據導入功能或數據錄入接口,錄入原始電子數據只是一項簡單的日常工作,無需贅言;即便沒有這些便捷途徑,只要原始數據和它們在系統中的存儲存在能夠確定的對應關係,也只需要編制數據轉換(必要時)和寫入程式就能實現高效、零差錯數據錄入。自動數據錄入系統的這些錄入方式有著一個重要的相同特徵:繞開錄入界面,把待錄入數據直接寫入存儲位置。
系統功能
應自動數據錄入系統能實現三大功能:
(1)當設定好通信狀態時,能自動從主機接收數據;
(2)當與計算機相連時,能自動向計算機傳送數據。
(3)具有掉電保護功能,在不通電狀態下,數據能保存二十年左右。
系統設計思想
往往一片單片機無法滿足對象需求時,須通過系統擴展,在外部匯流排上擴展相應外圍功能單元,這就構成單片機系統。此單片機系統設計包含兩部分內容:一是系統擴展,即單片機內部的功能單元不能滿足套用系統要求時,須擴展外部ROM、RAM、I/O口時,應選擇適當的晶片,設計相應的電路。二是系統配置。即按照系統功能要求配置外圍設備,設計合適的接口電路。
系統的擴展和配置遵循下列原則:
(1)儘可能選擇典型電路,並符合單片機的常規用法。
(2)整個系統中相關的器件要儘可能做到性能匹配。如選用頻率較高的晶振時,存儲器應選擇存取速度較高的晶片。
(3)可靠性和抗干擾設計。它包括晶片、器件選擇,去耦濾波,印刷電路板布線,通道隔離等。
表格數據自動錄入系統
定義及意義
表格數據錄入系統是基於實際工作需要而開發的,它可以通過對任意表格的學習產生相應的資料庫,便於檢索、查詢等後處理工作的進行。表格數據的自動錄入在諸如身份證識別、圖書卡片自動管理、考勤管理、人事檔案管理等各行各業都有巨大的套用價值,所以該系統的開發對提高辦公自動化程度是很有意義的。
系統構成
系統主要由三個部分組成,現分別介紹如下:
1表格信息學習
在實際工作中遇到的表格往往是各式各樣的,但其基本結構都是相似的,表格的每項內容都分布在一個矩形內,如果能夠預先知道表格行、列的數目和各矩形確切的位置,那么數據錄入的關鍵就轉化為字元識別的問題了。這也是表格信息學習的目的所在。
用於學習的樣張一般要求整潔、清晰,學習時可根據丁字交叉的特徵點來定位。對於位於同一行的兩個相鄰丁字交叉,可以認為確定一個表格項的縱坐標。同理,位於同一列的兩個相鄰丁字交叉確定表格項的橫坐標。考慮到由於掃描過程中樣張傾斜或其它噪聲引起的誤差,在搜尋表格框線時可以引進一個容許度,並建立一表決器,對坐標有突變的象素不做回響。
這樣對樣張進行一遍分析就可行到有關表格排列的信息來,與此同時我們也可以生成一個相應的數據結構,用於存放識別結果。
2表格識別
為保證後面的字元識別部分能正常工作,對表格的識別應當正確無誤。為此,我們不是僅僅利用表格學習部分得到的有關信息對實際圖象進行簡單的分割,而是把它當作一個參考去搜尋實際圖象中的表格信息。實際上,在實用階段遇到的表格圖象.與學習樣張往往有些出入,這時就應以搜尋判斷的結果作為表格分割的依據。如果掃描圖象因為污染或掃描量化誤差而引起毛刺甚至大的污斑,這時就應按學習得到的信息來進行表格分割。
3字元識別
包括字的切分、歸一化和字元分類。字的切分是正確識別的基礎。通過對文本圖象行列分割,可以得到孤立字元的最小內切矩形,各個分立字元進行歸一化處理後即可做為分類模組的輸入。實際工作中遇到的文本圖象往往會因為掃描器量化誤差或紙張污染等因素引起噪聲,這就要求我們進行文本分割時全面考慮可能出現的情況。
系統硬體實現
系統的硬體由一台微機、一台掃瞄器構成。系統的軟體在DOS環境下用C++語言編寫。為配合市售的Hp、MICROTEK系列掃瞄器使用,做到批量高速處理,軟體對掃瞄器進行編程,直接控制其工作,並及時讀取圖象數據。這不僅節省了硬碟空間,而且可以自由控制掃描亮度、對比度等參數,使系統的運行適於各種印刷質量的文本。同時系統也擺脫了市售掃描程式通常所要求的Windows運行環境。如果能配一台自動送紙器,那么表格數據的錄入就可以完全脫離手工的操作。
批量數據自動化錄入系統
通過錄入界面錄入數據,通常是採用諸如鍵盤和滑鼠等輸入設備進行數據錄入的。但是,這並不意味著只能用手工的方式來完成錄入工作。實際上,利用某種具有發出鍵盤和滑鼠等設備的輸入指令的程式設計語言,就可以實現數據錄入自動化。目前來說,Autolt和AutoHotkey是Windows平台下具備此項功能且較為流行的兩款開源自動化腳本語言。
通用系統可以設計成如下算法完成對應
關係的建立:
(1)讓用戶打開原始數據檔案和運行MIS系統,通用系統記錄完整路徑;
(2)根據原始數據檔案格式解析數據,得到一條條數據記錄;
(3)呈現第一條數據記錄:
(4)fieldID=I:
(5)設定數據記錄第fieldID個欄位為當前欄位;
(6)在數據轉換框中輸入轉換公式,結果作為當前輸入內容;
(7)讓用戶在MIS系統輸入界面上找到對應輸入項,通用系統把當前輸入內容複製其中,供用戶查看;通用系統記錄用戶操作步驟;
(8)若正確,轉到下一步,否則轉第(6)步:
(9)若第fieldlD欄位非最後欄位,則fieldlD=fieldID+1,並轉第(5)步;
(10)結束。
以上算法涉及到解析原始數據檔案的問題。原始數據檔案的格式有多種形式,如Excel表格,Access資料庫檔案和CVS文本檔案等,並且具體是哪一種檔案格式事先無法得知,甚至是通用系統原來不支持的檔案格式。在考慮選用設計模式時,可以選用如下方案:用XML檔案記錄不同檔案格式的解析規則,通過添加新的解析規則就可以做到支持新的檔案格式;採用工廠模式從XML中讀取檔案格式解析規則,動態創建解析器對象。