了先进的自动化数据录入问题形式处理API。无论你是工作与客户调查、税务文件,或计费记录每天每个行业使用的形式开展业务。移动数据从纸到数字媒体可以是一个费时的麻烦。这就是为什么LEADTOOLS开发了独有的功能,从图像中提取文本包含的任意组合机印文本,1188金宝搏亚洲 ,通过显微镜,MRZ,有机磁共振字段。LEADTOOLS将自动检测和识别一切!以下是主要步骤快速、准确地处理各种形式无论如何格式化的数据类型。
首先,我们需要初始化表单引擎。这所有的努力阅读和识别数据:
静态孔隙InitFormsEngines(){控制台。WriteLine(“初始化引擎”);编解码器= new RasterCodecs ();recognitionEngine = new FormRecognitionEngine ();processingEngine = new FormProcessingEngine ();formsOCREngine = OcrEngineManager.CreateEngine (OcrEngineType.LEAD);formsOCREngine。启动(编解码器,空,空,@“C: \ LEADTOOLS21 \ Bin \常见\ OcrLEADRuntime ");OcrObjectsManager OcrObjectsManager = new OcrObjectsManager (formsOCREngine);ocrObjectsManager。引擎= formsOCREngine; recognitionEngine.ObjectsManagers.Add(ocrObjectsManager); Console.WriteLine("Engines initialized successfully"); }
形式认可需要主表单和填充表单。主表单包含空白字段和作为一个模板来指定区域。填写表单是一个包含数据的字段。
下一步是指定主形式:
私有静态孔隙CreateMasterFormAttributes(){控制台。WriteLine(“处理主表单”);string [] masterFileNames =目录。getfile (@“C: \ LEADTOOLS21 \ \ \ \ MasterForm集形式\ OCR图像资源”,“*。tif”, SearchOption.AllDirectories);foreach (string masterFileName masterFileNames){字符串formName = Path.GetFileNameWithoutExtension (masterFileName);使用(RasterImage图像=编解码器。加载(masterFileName 0 CodecsLoadByteOrder。BgrOrGray 1,1)) {FormRecognitionAttributes masterFormAttributes = recognitionEngine。CreateMasterForm (formName Guid。空,空);for (int i = 0;我< image.PageCount;我+ +){形象。Page = i + 1; recognitionEngine.AddMasterFormPage(masterFormAttributes, image, null); } recognitionEngine.CloseMasterForm(masterFormAttributes); File.WriteAllBytes(formName + ".bin", masterFormAttributes.GetData()); } } Console.WriteLine("Master Form Processing Complete"); Console.WriteLine("============================================================="); }
最后,我们准备读了形式:
私有静态孔隙RecognizeForm(){控制台。WriteLine(“认识形式\ n”);var GetProjectDirectory = Path.GetDirectoryName (System.Reflection.Assembly.GetExecutingAssembly () .Location);字符串formToRecognize = @ " C: \ LEADTOOLS21 \ Resources \ \形式\形式识别\ OCR图像\ W9_OCR_Filled.tif”;使用(RasterImage图像=编解码器。加载(formToRecognize 0 CodecsLoadByteOrder。BgrOrGray 1,1)) {FormRecognitionAttributes filledFormAttributes = recognitionEngine.CreateForm(空);for (int i = 0;我< image.PageCount;我+ +){形象。页面= i + 1; recognitionEngine.AddFormPage(filledFormAttributes, image, null); } recognitionEngine.CloseForm(filledFormAttributes); string resultMessage = "The form could not be recognized"; string[] masterFileNames = Directory.GetFiles(GetProjectDirectory, "*.bin"); foreach (string masterFileName in masterFileNames) { string fieldsfName = Path.GetFileNameWithoutExtension(masterFileName) + ".xml"; string fieldsfullPath = Path.Combine(@"C:\LEADTOOLS21\Resources\Images\Forms\MasterForm Sets\OCR", fieldsfName); processingEngine.LoadFields(fieldsfullPath); FormRecognitionAttributes masterFormAttributes = new FormRecognitionAttributes(); masterFormAttributes.SetData(File.ReadAllBytes(masterFileName)); FormRecognitionResult recognitionResult = recognitionEngine.CompareForm(masterFormAttributes, filledFormAttributes, null); if (recognitionResult.Confidence >= 80) { List alignment = new List(); for (int k = 0; k < recognitionResult.PageResults.Count; k++) alignment.Add(recognitionResult.PageResults[k].Alignment); resultMessage = $"This form has been recognized as a {Path.GetFileNameWithoutExtension(masterFileName)}"; ProcessForm(image, alignment); break; } } Console.WriteLine(resultMessage, "Recognition Results"); Console.WriteLine("=============================================================\n"); } } private static void ProcessForm(RasterImage image, List alignment) { processingEngine.OcrEngine = formsOCREngine; string resultsMessage = string.Empty; processingEngine.Process(image, alignment); foreach (FormPage formPage in processingEngine.Pages) foreach (FormField field in formPage) if (field != null) resultsMessage = $"{resultsMessage}{field.Name} = {(field.Result as TextFormFieldResult).Text}\n"; if (string.IsNullOrEmpty(resultsMessage)) Console.WriteLine("No fields were processed", "FieldProcessing Results"); else Console.WriteLine(resultsMessage, "Field ProcessingResults"); }
有你有它!这都是需要从填充的表单中提取数据。更深入地看,参考本教程如何识别和处理形式。
免费评估!
下载LEADTOOLS SDK直接从我们的网站免费。这个试验有利于60天,无限制的聊天和电子邮件的支持。
需要帮忙吗?
联系我们的支持团队免费的技术支持!定价或许可的问题,你可以联系我们的销售团队(sales@leadtools.com)或打电话给我们在704-332-5532。


扎克…希望执行OCR Leadtools Leadtools专有格式中存储的数据存储在一个数据库blob。W / O…如果Leadtools背景信息可以直接OCR blob W / O转换,看起来最有效的方式去(通过X因素)。
Leadtools能做吗?
如果是这样…我们可以聊聊OCR的批处理和性能。
嗨,史蒂文,
为此,您可以使用SDK文档。特别是LEADDocument DocumentFactory。LoadFromUri方法。
相关的文档链接:188宝金博安卓下载
//m.ahtuanjie.com/help/sdk/v21/dh/dox/leaddocument.html
//m.ahtuanjie.com/help/sdk/v21/dh/dox/documentfactory-loadfromuri.html
这是一个代码片段来达到你的目的:
如果你想讨论OCR和性能的批处理,请直接给我发邮件hadi.chami@leadtools.com或进入我们的在线聊天M-F 8:30am-6:00pm EST://m.ahtuanjie.com/support/chat