Identify and Register Images
The IdentificationProcessor is capable of identifying a FormImage as one FormModel out of many in the FormModels collection through a call to Identify method. This method will also generate the registration information required to align the FormImage with the FormModel. The IdentificationProcessor can also be configured to align the FormImage in the call to Identify (when identification is successful), using the AutoAlign property.
Supplemental Identification
There are many ways to perform identification apart from using the IdentificationProcessor. For example, your forms may have a bar code that uniquely identifies the matching template, or your forms may have a revision number printed in one corner. IRS forms have data printed in the top left and right corners that can be used to identify each form. You may be able to constrain the template choices based on whether you are processing the front or back of a sheet. In very unusual situations, you may be able to hand-sort your forms.
Two ways to insert supplemental identification are:
- Perform identification on your own and then run the identification with an IdentificationProcessor, constrained to the form you selected. In this case, the identification stage is simply performing registration. See the LimitIdentificationToSubset property.
If you are certain that you will need to supplement identification and you can reliably perform identification before your images are precisely registered, this is the best approach. A good example is a case where all forms have a barcode that can easily be found and read and that uniquely identifies the matching template.
- Attempt identification with an IdentificationProcessor, and then use a supplementary algorithm to handle problems. The confidence values produced by identification can be very useful in selecting the correct form. Once you have narrowed the list of templates down to a single template, you can continue processing using the registration information available using GetRegistrationResult.
This is the best approach so you do not always need to supplement identification or when you cannot use your supplemental identification process without performing registration first. A good example is processing a 16-page form where pages 13 and 14 are identical except for the page number. The IdentificationProcessor can very precisely indicate what part of the page needs to be recognized to accurately determine which page is being processed.
Identification Quality
Many identification problems can be resolved by increasing the IdentificationQuality property. The default value is 100 and works in many instances. Increasing the value will dramatically improve the abilities and quality of the identification process at a significant increase in CPU time needed for each image.
Template Selection
If you plan to use the drop-out feature of FormFix, the templates should be blank. However, if you will only perform identification, the templates can contain filled data. The filled data generally has no impact on the accuracy or speed of identification.
Registration Errors
Registration errors are often identification errors and may be treated as false negatives. See Correct Image False Negatives and Positives for some techniques that may correct registration errors.