←Select platform

RecognizeForm(string,List<IMasterFormsCategory>) Method

Summary
Recognize the Form type.

Syntax
C#
C++/CLI
Java
Python
public AutoFormsRecognizeFormResult recognizeForm( 
   java.lang.String fileName, 
   java.util.List<IMasterFormsCategory> categories 
); 
public: 
AutoFormsRecognizeFormResult^ RecognizeForm(  
   String^ fileName, 
   List<IMasterFormsCategory^>^ categories 
)  
def RecognizeForm(self,fileName,categories): 

Parameters

fileName
A System.String containing the name of the unknown form image file.

categories
List of Master Forms categories to use in comparison, pass null or empty to use all Master Forms in the repository.

Return Value

The result of the recognition will be the result of the Master Form with maximum confidence. If the confidence is less than MinimumConfidenceKnownForm it will return null, i.e. the form type is unknown and cannot be recognized.

Remarks

If RecognizeFirstPageOnly is true, the type of the form will be recognized based only on the first page of the form. If it is false the recognition will be done using all form image pages.

The  fileName should have all form pages if RecognizeFirstPageOnly is set to false.

If all Master Forms have a different first page, then recognizing the form according to its first page will be faster.

The recognition of the form will stop comparing the form with other Master Forms either when the confidence of the recognition result is greater or equal to MinimumConfidenceRecognized or when the Master Forms have all been compared.

The result of the recognition will be the result of the Master Form with maximum confidence. If the confidence is less than MinimumConfidenceKnownForm it will return null, i.e. the form type is unknown and cannot be recognized.

This method is useful when you have unknown forms and you want to recognize the types of these forms to archive, classify, and process.

Example
C#
using Leadtools; 
using Leadtools.Codecs; 
using Leadtools.Forms.Common; 
using Leadtools.Forms.Auto; 
using Leadtools.Document; 
using Leadtools.Ocr; 
using Leadtools.Forms.Recognition; 
using Leadtools.Forms.Processing; 
using Leadtools.Barcode; 
 
using Leadtools.Forms; 
 
public void AutoFormRecognitionAndProcessing2File() 
{ 
   string root = Path.Combine(LEAD_VARS.ImagesDir, @"Forms\FormsDemo\OCR_Test"); 
   RasterCodecs codecs = new RasterCodecs(); 
 
   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(); 
 
      AutoFormsEngine autoEngine = new AutoFormsEngine(repository, ocrEngine, barcodeEngine); 
      autoEngine.MinimumConfidenceRecognized = 80; 
 
      AutoFormsRecognizeFormResult result = autoEngine.RecognizeForm(Path.Combine(LEAD_VARS.ImagesDir, @"Forms\Forms to be Recognized\OCR\FCC-107_OCR_Filled.tif"), null); 
      if (result == null) 
         return; 
      FormPages formFields = autoEngine.ProcessForm(Path.Combine(LEAD_VARS.ImagesDir, @"Forms\Forms to be Recognized\OCR\FCC-107_OCR_Filled.tif"), result); 
   } 
} 
 
static class LEAD_VARS 
{ 
   public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images"; 
   public const string OcrLEADRuntimeDir = @"C:\LEADTOOLS23\Bin\Common\OcrLEADRuntime"; 
} 
Requirements

Target Platforms

Help Version 23.0.2024.2.29
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2024 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Forms.Auto Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.