Verifying Recognized Data

Verification is a process of checking recognized data. It is performed by comparing recognition results with the image of any document part. When the program is not absolutely certain about the accuracy of recognition of a certain characters, it marks them as recognized "unreliably." The purpose of the verification process is to verify such characters and correct any errors if necessary.

Typically, verification is a two-stage process consisting of group and context verification. However, one of these stages can be skipped.

Group verification is a verification mode whereby identically recognized characters are submitted for verification in groups. Group verification involves grouping character images recognized as having identical values and displaying them in a verifier screen, enabling the operator to easily identify and correct characters that deviate from the group.

Context verification is a verification mode intended for effective correction of errors of "well-recognized" fields, i.e. fields whose range of values is known or can be easily identified. An example of such a field is a field containing a country or city name.

How to verify recognized data

  1. Call the StartVerification method of the Batch object or StartVerification method of the Project object to run the verification process.

Note: You cannot run two verification sessions in one process simultaneously.

  1. Before starting the verification, you can set the verification options using the Options property of the VerificationSession object:
    • specify if context verification should be performed (the VerifyFields property)
    • specify which symbols should be verified during group verification (the VerifyBaseSymbols and VerifyExtraSymbols properties), or disable group verification (set both these properties to FALSE)
    • specify which symbols should be excluded from the verification process

Note: Verification options can be set only before starting the verification (before the first IVerificationSession::NextWorkSet method call). After beginning the verification, all these settings become read-only.

  1. When the verification parameters are set, call the NextWorkSet method of the VerificationSession object to receive a part of the data that need verification (a work set). Each verification session contains one or several work sets. Documents are combined into work sets depending on the available resources. Work sets enable several verifiers to process one big batch.
  2. For each work set:
    • A work set consists of several groups of objects to verify. To receive the next group, call the NextGroup method of the VerificationWorkSet object.
    • For each group:
      1. A verification group consists of several verification objects. It can include objects which are to be verified in one group during group verification, or objects which have the same meaning (e.g. the "Name" fields from all the verified documents). Go through the verification group, using the Count property and Item method of the VerificationGroup object.
      2. A verification object can be submitted for group or context verification. This is determined by the type of the object. For each object:
        1. Check the type of the object using the Type property of the VerificationObject object.
        2. If this is a context verification object, use the AsContextVerificationObject method to obtain the ContextVerificationObject object. The ContextVerificationObject object provides access to the field containing an error and the rules applied to this field.
        3. If this is a group verification object, use the AsGroupVerificationObject method to obtain the GroupVerificationObject object. The GroupVerificationObject object provides access to the character submitted for group verification and its image.
    • When you finish verification of the data in the current work set, you must call the Commit method of the VerificationWorkSet object to save the changes.
  3. After you have finished verification, call the Close method of the VerificationSession object to close the verification session. An open verification session uses more resources than a closed one. So if you have finished verification and need to free some resources, call this method to close the verification session.

C++ (COM) code

See also


Working with Recognized Data

15.08.2023 13:19:30

Usage of Cookies. In order to optimize the website functionality and improve your online experience ABBYY uses cookies. You agree to the usage of cookies when you continue using this site. Further details can be found in our Privacy Notice.