原創|行業資訊|編輯:郝浩|2013-09-05 09:16:24.000|閱讀 375 次
概述:本文接下來將討論處理大量Master forms的一些相關策略,以及如何利用LEADTOOLS Forms Recognition SDK快速、準確地處理表單。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
目前,大多數公司仍然依賴紙質表單來收集客戶信息。金融機構、政府機構和醫院等大型企業每天的表單堆積如山,但是只要通過良好的規劃和合理的設計,表單問題完全可以輕松解決。解決表單問題最行之有效的方式之一就是自動表單識別。自動表單識別滲入到了工作中的方方面面,將用戶從大量的紙質表單識別中拯救來,不僅節約時間和金錢,而且提高了識別精度,避免了人工誤差。
任何表單識別應用程序中都包含這2種表單:master和filled。Master forms是定義數據提取來源的空白模板。當客戶填寫并提交表單后,這些表單便與Master forms進行對比,然后提取數據。而filled forms 是企業中最常見最普通的表單。因此,企業在解決表單識別問題的時候,首當其沖的是要解決好Master forms的問題。
本文接下來將討論處理大量Master forms的一些相關策略,以及如何利用LEADTOOLS Forms Recognition SDK快速、準確地處理表單。
利用多線程提速
如今利用多線程提速已不言而喻。LEADTOOLS Forms Recognition SDK也提供了多線程支持,當初始化AutoFormsEngine時,只需傳遞IOcrEngine,LEADTOOLS便會自動完成剩下的工作。
// Create an OCR Engine for each processor on the machine. This // allows for optimal use of thread during recognition and processing. ocrEngines = new List<IOcrEngine>(); for (int i = 0; i < Environment.ProcessorCount; i++) { ocrEngines.Add(OcrEngineManager.CreateEngine(OcrEngineType.Advantage, false)); ocrEngines[i].Startup(formsCodec, null, String.Empty, String.Empty); } // Point repository to directory with existing master forms formsRepository = new DiskMasterFormsRepository(formsCodec, masterFormsFolder); autoEngine = new AutoFormsEngine(formsRepository, ocrEngines, null, AutoFormsRecognitionManager.Default | AutoFormsRecognitionManager.Ocr, 30, 80, true);
使用條形碼分類表單
條形碼可能是實現表單分類最直接最快速的方法之一。條形碼的最大好處就是,它可以將大量的信息打包到一個狹小的空間,例如QR碼便可存儲 4,296 個字母數字字符。既然簡單的條形碼便可識別表單,為何還要使用表單識別?乍一看,使用表單識別似乎有點小題大做了,但是 LEADTOOLS 所提供的先進的表單識別和表單處理技術有更大的好處。如果你打算通過OCR識別表單上的用戶信息,你便需要進行一些特殊的步驟來準確地提取信息,如圖像清理、頁面對齊、校正偏差等。實現這些功能是一項復雜而艱巨的任務,需要編寫數千行代碼,而 LEADTOOLS SDK中提供了這些圖像處理功能。
// Set up the AutoFormsEngine to use Barcodes autoEngine = new AutoFormsEngine(formsRepository, ocrEngines, null, AutoFormsRecognitionManager.Barcode, 30, 70, true); // Run the forms recognition and processing on this document AutoFormsRunResult runResult = autoEngine.Run(document, null); if (runResult != null) { // Process the recognized form and extract desired info foreach (FormPage formPage in runResult.FormFields) { foreach (FormField field in formPage) { // Do something with the extracted field data... } } }
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自:慧都控件網