Text Extraction
This scenario is used to recognize all document text to prepare documents for search and extraction of useful data.
The steps outlined below may serve as a basis for implementing more complex procedures which will extract the necessary data from documents, especially for automated input of paper document data into information systems and databases, and for automated classification and indexing of documents in document management systems (e.g., inputting invoices into accounting software, inputting questionnaires into a CRM system).
This scenario enables the extraction of the body text of a document and texts on logos, seals, and any elements other than the body text.
To extract the main text of the document, image files obtained by scanning or saved in the electronic format typically go through several processing stages, each of which has its own peculiarities:
- Preprocessing the scanned images or photos
Scanned images may require some preprocessing prior to recognition, for example, if scanned documents contain background noise, skewed text, inverted colors, black margins, wrong orientation, or resolution.
- Recognition of maximum amount of text on a document image
Recognition of images is performed using settings that ensure that all possible text is found and extracted from a document image.
The text obtained as a result of the processing may be used to search for the important data (however, instructions on how to implement this search are outside the scope of this article). Special algorithms can be devised to look up key words, e.g., titles of form fields, tables, lines and table columns, signature and stamp fields, etc. Fields containing important data can be found by key words and then re-read using special recognition parameters depending on the type of data. You can also check them for consistency with the data type and compliance with the necessary restrictions.
The extracted data can be saved to a database and an uneditable copy of the paper document can be put in the digital archive.
Scenario implementation
Below is the detailed description of the recommended method of using ABBYY FineReader Engine 12 in this scenario. The proposed method uses processing settings that are most suitable for this scenario.
Step 1. Loading ABBYY FineReader Engine
Step 2. Loading settings for the scenario
Step 3. Loading and preprocessing the images
Step 4. Document recognition
Step 5. Searching for important information
Step 6. Unloading ABBYY FineReader Engine
Required resources
You can use the FREngineDistribution.csv file to automatically create a list of files required for your application to function. For processing with this scenario, select in the column 5 (RequiredByModule) the following values:
Core
Core.Resources
Opening
Opening, Processing
Processing
Processing.OCR
Processing.OCR, Processing.ICR
Processing.OCR.NaturalLanguages
Processing.OCR.NaturalLanguages, Processing.ICR.NaturalLanguages
If you modify the standard scenario, change the required modules accordingly. You also need to specify the interface languages, recognition languages and any additional features which your application uses (such as, e.g., Opening.PDF if you need to open PDF files, or Processing.OCR.CJK if you need to recognize texts in CJK languages). See Working with the FREngineDistribution.csv File for further details.
Additional optimization for specific tasks
- Opening and preprocessing
- Image Preprocessing
Description of the ABBYY FineReader Engine scenario for preliminary preparation of images. - Recognition
- Tuning Parameters of Preprocessing, Analysis, Recognition, and Synthesis
Customization of document processing using objects of analysis, recognition and synthesis parameters. - PageProcessingParams Object
This object enables customization of analysis and recognition parameters. Using this object, you can indicate which image and text characteristics must be detected (inverted image, orientation, barcodes, recognition language, recognition error margin). - SynthesisParamsForPage Object
This object includes parameters responsible for restoration of a page formatting during synthesis. - SynthesisParamsForDocument Object
This object enables customization of document synthesis: restoration of its structure and formatting. - MultiProcessingParams Object
Simultaneous processing may be useful when processing a large number of images. In this case, the processing load will be spread over the processor cores during image opening and preprocessing, layout analysis, and recognition, which makes it possible to speed up processing.
Reading modes (simultaneous or consecutive) are set using the MultiProcessingMode property. The RecognitionProcessesCount property controls the number of processes that may be started. - Searching for important information
- Working with Layout and Blocks
About page layout, block types, and working with them. - Layout Object
This object's parameters provide access to the page layout and the recognized text after document recognition. - Working with Text
Working with recognized text, paragraphs, words, and symbols. - Re-reading of document using special parameters for specified data type
- Field-Level Recognition
Description of scenario for recognizing short text segments. - Saving data
- To save recognized data, you may use the Export or ExportPages methods of the FRDocument object by assigning the FileExportFormatEnum constant as one of the parameters.
- Document Archiving
Description of the scenario for saving an electronic copy of document.
See also
03.07.2024 8:50:25