彩票走势图

LEADTOOLS .NET OCR示例:多线程OCR

原创|使用教程|编辑:郝浩|2013-09-29 09:55:28.000|阅读 832 次

概述:LEADTOOLS v18的全新设计极大地简化了开发而无需牺牲控制力。LEADTOOLS v18增强了其用于光学字符识别的.Net类。LEADTOOLS的架构灵活、直观而且易于使用。开发人员仅通过三行代码就可以实现图像的OCR功能。本文接下来将着重介绍全新的LEADTOOLS .NET OCR 类,以及展示如何创建一个OCR程序。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

LEADTOOLS v18的全新设计极大地简化了开发而无需牺牲控制力。LEADTOOLS v18增强了其用于光学字符识别的.Net类。LEADTOOLS的架构灵活、直观而且易于使用。开发人员仅通过三行代码就可以实现图像的OCR功能。本文接下来将着重介绍全新的LEADTOOLS .NET OCR 类,以及展示如何创建一个OCR程序。

程序环境

LEADTOOLS OCR .NET类库提供了Win32 和 x64 版本,适用于下列开发环境:

  • Windows 8 (32 & 64-bit editions)
  • Windows 7 (32 & 64-bit editions)
  • Windows 2008 (32 & 64-bit editions)
  • Windows Vista (32 & 64-bit editions)
  • Windows XP (32 & 64-bit editions)
  • Windows 2000

LEADTOOLS OCR工作原理

LEADTOOLS使用OCR手柄连接OCR引擎和包含在页面列表中的OCR文档。OCR手柄是LEADTOOLS OCR和OCR引擎之间的通信会话。OCR手柄是一个包含了识别、获取/设置信息以及文本验证的所有必要信息的内部结构。

以下是识别单页或者多文档所涉及到的基本步骤:

1、选择你想使用的引擎类型并创建一个IOcrEngine接口实例。
2、根据IOcrEngine.Startup方法启动OCR引擎。
3、创建一个OCR文档。
4、手动或者自动创建页面区域。(该步骤为可选步骤)
5、设置OCR引擎所使用的活动语言。(默认为英语)
6、设置拼写语言。(默认为英语)
7、设置任意特殊识别模块选项。如果页面包含区域,该步骤是必须的。
8、识别。
9、如果需要,可以保存识别结果。可将识别结果保存到一个文件或者内存中。
10、关闭OCR引擎。

只要步骤4、5、6和7在启动OCR引擎后和完成识别前进行都可以,而且可以不按照顺序进行。

添加引用到.Net程序的Leadtools.Forms.Ocr.dll 程序集中,以启动LEADTOOLS for .NET OCR。该程序集包含了各种接口、类和结构。由于LEADTOOLS图像开发包提供了多引擎支持,因此 链接引擎的实际代码被储存在一个单独的程序集中。因此,必须确保你打算用的引擎程序集位于Leadtools.Forms.Ocr.dll 程序集中。如果需要自动检测依赖性,你可以将引擎程序集作为引用添加到项目中。

下列代码演示了如何执行上次步骤:

Visual Basic

' *** Step 1: Select the engine type and
' create an instance of the IOcrEngine interface.
' We will use the LEADTOOLS OCR Plus engine and use it in the same process
Dim ocrEngine As IOcrEngine = _
OcrEngineManager.CreateEngine(OcrEngineType.Plus, False)

' *** Step 2: Startup the engine.
' Use the default parameters
ocrEngine.Startup(Nothing, Nothing, Nothing)

' *** Step 3: Create an OCR document with one or more pages.
Dim ocrDocument As IOcrDocument = _
ocrEngine.DocumentManager.CreateDocument()

' Add all the pages of a multi-page TIF image to the document
ocrDocument.Pages.AddPages("C:\Images\Ocr.tif", 1, -1, Nothing)

' *** Step 4: Establish zones on the page(s), either manually or automatically
' Automatic zoning
ocrDocument.Pages.AutoZone(Nothing)

' *** Step 5: (Optional) Set the active languages to be used by the OCR engine
' Enable English and German languages
ocrEngine.LanguageManager.EnableLanguages(New String() {"en", "de"})

' *** Step 6: (Optional) Set the spell checking language
' Enable the spell checking system and set English as the spell language
ocrEngine.SpellCheckManager.Enabled = True
ocrEngine.SpellCheckManager.SpellLanguage = "en"

' *** Step 7: (Optional) Set any special recognition module options

' Change the fill method for the first zone in the first page to be Omr
Dim ocrZone As OcrZone = ocrDocument.Pages(0).Zones(0)
ocrZone.FillMethod = OcrZoneFillMethod.Omr
ocrDocument.Pages(0).Zones(0) = ocrZone

' *** Step 8: Recognize
ocrDocument.Pages.Recognize(Nothing)

' *** Step 9: Save recognition results
' Save the results to a PDF file
ocrDocument.Save("C:\\Images\Document.pdf", OcrDocumentFormat.PdfA, Nothing)
ocrDocument.Dispose()

' *** Step 10: Shut down the OCR engine when finished
ocrEngine.Shutdown()
ocrEngine.Dispose()

C#

// *** Step 1: Select the engine type and 
// create an instance of the IOcrEngine interface.
// We will use the LEADTOOLS OCR Plus engine and use it in the same process
IOcrEngine ocrEngine = OcrEngineManager.CreateEngine(OcrEngineType.Plus, false);

// *** Step 2: Startup the engine.
// Use the default parameters
ocrEngine.Startup(null, null, null);

// *** Step 3: Create an OCR document with one or more pages.
IOcrDocument ocrDocument = ocrEngine.DocumentManager.CreateDocument();

// Add all the pages of a multi-page TIF image to the document
ocrDocument.Pages.AddPages(@"C:\Images\Ocr.tif", 1, -1, null);

// *** Step 4: Establish zones on the page(s), either manually or automatically
// Automatic zoning
ocrDocument.Pages.AutoZone(null);

// *** Step 5: (Optional) Set the active languages to be used by the OCR engine
// Enable English and German languages
ocrEngine.LanguageManager.EnableLanguages(new string[] { "en", "de"});

// *** Step 6: (Optional) Set the spell checking language
// Enable the spell checking system and set English as the spell language
ocrEngine.SpellCheckManager.Enabled = true;
ocrEngine.SpellCheckManager.SpellLanguage = "en";

// *** Step 7: (Optional) Set any special recognition module options
// Change the fill method for the first zone in the first page to be default
OcrZone ocrZone = ocrDocument.Pages[0].Zones[0];
ocrZone.FillMethod = OcrZoneFillMethod.Default;
ocrDocument.Pages[0].Zones[0] = ocrZone;

// *** Step 8: Recognize
ocrDocument.Pages.Recognize(null);

// *** Step 9: Save recognition results
// Save the results to a PDF file
ocrDocument.Save(@"C:\Images\Document.pdf", OcrDocumentFormat.PdfA, null);
ocrDocument.Dispose();

// *** Step 10: Shut down the OCR engine when finished
ocrEngine.Shutdown();
ocrEngine.Dispose();

接下来的示例展示了如何利用IOcrAutoRecognizeManager执行相同任务,

Visual Basic

' Create the engine instance
Using ocrEngine As IOcrEngine = _
OcrEngineManager.CreateEngine(OcrEngineType.Plus, False)
' Startup the engine
ocrEngine.Startup(Nothing, Nothing, Nothing)
' Convert the multi-page TIF image to a PDF document
ocrEngine.AutoRecognizeManager.Run( _
"C:\Images\Ocr.tif", _
"C:\Images\Document.pdf", _
Nothing, _
OcrDocumentFormat.PdfA, _
Nothing)
End Using

C#

// Create the engine instance
using (IOcrEngine ocrEngine =
OcrEngineManager.CreateEngine(OcrEngineType.Plus, false))
{
// Startup the engine
ocrEngine.Startup(null, null, null);

// Convert the multi-page TIF image to a PDF document
ocrEngine.AutoRecognizeManager.Run(
@"C:\Images\Ocr.tif",
@"C:\Images\Document.pdf",
null,
OcrDocumentFormat.PdfA,
null);
}

标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn

文章转载自:慧都控件网

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
相关产品
LEADTOOLS Imaging Pro Developer Toolkit

20多年的老牌图像处理控件,支持TWAIN扫描、200多种图像效果、150多种图像格式…

LEADTOOLS Document Suite Developer Toolkit

LEADTOOLS Document Imaging Suite SDK是LEADTOOLS SDK中各种特点的精选组合,这套强大的工具利用了LEAD行业领先的图像处理技术来智能地识别文档的特征,而根据文档的特征可以识别扫描的或传真的任何类型的表格图像。

LEADTOOLS Document Imaging Developer Toolkit

多语言的文档图像处理控件,支持光符识别处理、条形码扫描识别等。

LEADTOOLS Professional Asian OCR Module

LEADTOOLS Asian OCR Module在应用程序中增加了一些光学字符识别(OCR)技术的方法,并包含了开发健壮的,高性能的和可扩展的图像识别方案所需要的技术。

LEADTOOLS OCR Module - LEAD Engine

开发健壮的,高性能的和可扩展的图像识别方案所需要的OCR 识别技术。

扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP