public AutoFormsEngine(
IMasterFormsRepository repository,
IOcrEngine ocrEngine,
BarcodeEngine barcodeEngine,
AutoFormsRecognitionManager managers,
int minimumConfidenceKnownForm,
int minimumConfidenceRecognized,
bool recognizeFirstPageOnly
)
Public Function New( _
ByVal repository As IMasterFormsRepository, _
ByVal ocrEngine As IOcrEngine, _
ByVal barcodeEngine As BarcodeEngine, _
ByVal managers As AutoFormsRecognitionManager, _
ByVal minimumConfidenceKnownForm As Integer, _
ByVal minimumConfidenceRecognized As Integer, _
ByVal recognizeFirstPageOnly As Boolean _
)
public:
AutoFormsEngine(
IMasterFormsRepository^ repository,
IOcrEngine^ ocrEngine,
BarcodeEngine^ barcodeEngine,
AutoFormsRecognitionManager managers,
int minimumConfidenceKnownForm,
int minimumConfidenceRecognized,
bool recognizeFirstPageOnly
)
repository
Repository of Master Forms.
ocrEngine
The Leadtools.Ocr.IOcrEngine that is used for optical character recognition and processing.
barcodeEngine
The Leadtools.Barcode.BarcodeEngine that is used for barcode recognition and processing.
managers
The Object Managers to be used to recognize forms and generate Master Forms attributes in GenerateMasterFormAttributes.
minimumConfidenceKnownForm
The minimum confidence value to decide that the Form type result is a known type. It ranges from 0 to 100 and usually it is less than minimumConfidenceRecognized.
minimumConfidenceRecognized
The minimum confidence value to decide that the Form type is recognized and no further comparison with Master Forms is needed. It ranges from 0 to 100 and usually it is greater than minimumConfidenceKnownForm.
recognizeFirstPageOnly
Recognize the form based on the first page only.
It is the user's responsibility to dispose of this object when it is no longer needed by calling Dispose.
If ocrEngine is null, Leadtools.Forms.Recognition.Ocr.OcrObjectsManager will not be used for recognition and Leadtools.Forms.Processing.TextFormField and Leadtools.Forms.Processing.OmrFormField will not be processed.
If barcodeEngine is null, Leadtools.Forms.Recognition.Barcode.BarcodeObjectsManager will not be used for recognition and Leadtools.Forms.Processing.BarcodeFormField will not be processed.
The recognition Object Managers will be set to the managers used to generate the Master Forms in the repository.
Important: Different OCR engines might have slight differences in form alignment and recognition. Therefore, it is best to use the same Leadtools.Ocr.OcrEngineType when generating the master forms and when recognizing and processing forms.
using Leadtools;
using Leadtools.Codecs;
using Leadtools.Forms.Common;
using Leadtools.Forms.Auto;
using Leadtools.Ocr;
using Leadtools.Forms.Recognition;
using Leadtools.Forms.Processing;
using Leadtools.Barcode;
public void AutoFormRunManual()
{
string root = Path.Combine(LEAD_VARS.ImagesDir, @"Forms\FormsDemo\OCR_Test");
RasterCodecs codecs = new RasterCodecs();
//create repository
DiskMasterFormsRepository repository = new DiskMasterFormsRepository(codecs, root);
using (IOcrEngine ocrEngine = OcrEngineManager.CreateEngine(OcrEngineType.LEAD))
{
ocrEngine.Startup(null, null, null, LEAD_VARS.OcrLEADRuntimeDir);
BarcodeEngine barcodeEngine = new BarcodeEngine();
//create AutoForm Engine
AutoFormsEngine autoEngine = new AutoFormsEngine(repository, ocrEngine, barcodeEngine, AutoFormsRecognitionManager.Ocr | AutoFormsRecognitionManager.Default, 30, 80, true);
//load the first page of the image
RasterImage form = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, @"Forms\Forms to be Recognized\OCR\FCC-107_OCR_Filled.tif"), 1, CodecsLoadByteOrder.Bgr, 1, -1);
//recognize and process the form
autoEngine.UseThreadPool = true;
autoEngine.TradeoffMode = FormsTradeoffMode.Accurate;
AutoFormsRunResult result = autoEngine.Run(form, null, null, null);
if (result == null)
return;
}
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS21\Resources\Images";
public const string OcrLEADRuntimeDir = @"C:\LEADTOOLS21\Bin\Common\OcrLEADRuntime";
}
Imports Leadtools
Imports Leadtools.Codecs
Imports Leadtools.Forms.Common
Imports Leadtools.Forms.Auto
Imports Leadtools.Ocr
Imports Leadtools.Forms.Recognition
Imports Leadtools.Forms.Processing
Imports Leadtools.Barcode
Public Sub AutoFormRunManual()
Dim root As String = Path.Combine(LEAD_VARS.ImagesDir, "Forms\FormsDemo\OCR_Test")
Dim codecs_Renamed As RasterCodecs = New RasterCodecs()
'create repository
Dim repository As DiskMasterFormsRepository = New DiskMasterFormsRepository(codecs_Renamed, root)
Using ocrEngine As IOcrEngine = OcrEngineManager.CreateEngine(OcrEngineType.LEAD)
ocrEngine.Startup(Nothing, Nothing, Nothing, LEAD_VARS.OcrLEADRuntimeDir)
Dim engineBarcode As BarcodeEngine = New BarcodeEngine()
'create AutoForm Engine
Dim autoEngine As AutoFormsEngine = New AutoFormsEngine(repository, ocrEngine, engineBarcode, AutoFormsRecognitionManager.Ocr Or AutoFormsRecognitionManager.Default, 30, 80, True)
'load the first page of the image
Dim form As RasterImage = codecs_Renamed.Load(Path.Combine(LEAD_VARS.ImagesDir, "Forms\Images\FCC-107_OCR_Filled.tif"), 1, CodecsLoadByteOrder.Bgr, 1, -1)
'recognize and process the form
'autoEngine.FastRecognitionMode = False
Dim result As AutoFormsRunResult = autoEngine.Run(form, Nothing, Nothing, Nothing)
If result Is Nothing Then
Return
End If
End Using
End Sub
Public NotInheritable Class LEAD_VARS
Public Const ImagesDir As String = "C:\LEADTOOLS21\Resources\Images"
Public Const OcrLEADRuntimeDir As String = "C:\LEADTOOLS21\Bin\Common\OcrLEADRuntime"
End Class
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document
Your email has been sent to support! Someone should be in touch! If your matter is urgent please come back into chat.
Chat Hours:
Monday - Friday, 8:30am to 6pm ET
Thank you for your feedback!
Please fill out the form again to start a new chat.
All agents are currently offline.
Chat Hours:
Monday - Friday
8:30AM - 6PM EST
To contact us please fill out this form and we will contact you via email.