> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Tips and tricks

> Explore tips and tricks for building FlexiLayouts that extract data from low-quality images, with sample projects covering typical search problems.

This section describes several typical ways to create FlexiLayouts that find data fields on low-quality images. Such images are fairly common, with various scanning defects mostly caused by incorrect scanning settings.

For instance, an image may be too bright or too dark if brightness settings are not correct. As a result, some information on the image may be lost, or parts of the image may be noisy.

It is not always possible to rescan the documents, and you often have to extract data from corrupted images. Moreover, some documents may have notes handwritten over useful information, which often causes recognition errors.

## How image damage affects pre-recognition quality

All these types of text damage severely impair the quality of pre-recognition. Changing the recognition mode to **Accurate** can improve pre-recognition quality, but this does not always help and greatly extends the pre-recognition time.

## How FlexiLayouts tolerate inaccurate pre-recognition

When you create a FlexiLayout in FlexiLayout Studio, you can specify that pre-recognition results may be inaccurate, that is, differ from the source text. The standard settings of an element reflect this, for example, the maximum number of errors in a **Static Text** element, or the percentage of non-alphabetic characters in a **Character String** element.

High pre-recognition quality is not actually required when searching for data fields. It is required, however, when the detected fields are recognized in FlexiCapture, which offers specialized data types for each field, significantly improving the quality of recognition.

Pre-recognition in FlexiLayout Studio is full-page OCR, and practice has shown that this is usually enough to detect the data fields on a document.

## Extend a FlexiLayout to handle low-quality images

In real-life projects, it is usually enough to create just a few elements to get a FlexiLayout that can successfully process good-quality images. Any user can easily create a FlexiLayout that will detect the required data fields on about 70% of the images. Such a FlexiLayout can be used in FlexiCapture.

A FlexiLayout can be updated and taught to extract data from low-quality images. The degree of such modification depends on the task at hand and the time available to the user.

Modifying a FlexiLayout involves identifying previously undetected elements and attempting to find them with additional elements (possibly of a different type) that have less strict search constraints.

## When one FlexiLayout replaces several Document Definitions

Other situations also require modifying the FlexiLayout, including creating additional elements. You often have to process similar documents received from different sources, for example, documents created in different regional branches of a government institution.

Such documents, despite their apparent likeness, may differ in the layout of data fields. In such cases it is advisable to create one FlexiLayout instead of several slightly different FlexiCapture Document Definitions.

Documents may differ in the types of separators they use, or they may be filled in not only by hand but also by a printer. To teach the FlexiLayout to find such fields, use the methods described in this section.

## Sample project walkthroughs

A FlexiLayout Studio project that contains test images and a tested FlexiLayout is located in `%public%\ABBYY\FlexiCapture\12.0\Samples\FLS\Tips and Tricks`.

Each of the following walkthroughs demonstrates a technique for a typical search problem:

* [Date search after high or low-quality recognition](/flexi-capture/fls/tips-tricks/date2)
* [Set multiple Static Text values for field name variants](/flexi-capture/fls/tips-tricks/date3)
* [Exclude regions from a search area](/flexi-capture/fls/tips-tricks/date4)
* [Optimize FlexiLayout structure and search with Group elements](/flexi-capture/fls/tips-tricks/date5)
* [Search for single-line Static Text elements](/flexi-capture/fls/tips-tricks/date6)
* [Restrict the search area with RestrictSearchArea](/flexi-capture/fls/tips-tricks/date7)
* [Search for single-line fields of known or unknown format on documents of varying OCR quality](/flexi-capture/fls/tips-tricks/date8)
* [Search for elements with Nearest and FuzzyQuality](/flexi-capture/fls/tips-tricks/date9)
* [Optimize Group element search](/flexi-capture/fls/tips-tricks/date10)
* [The Optional property of a Group element](/flexi-capture/fls/tips-tricks/date11)
* [Search for strings of digits](/flexi-capture/fls/tips-tricks/date12)
* [Simplify a FlexiLayout with an auxiliary element and a null hypothesis](/flexi-capture/fls/tips-tricks/date13)
* [Describe text fields containing framed letters](/flexi-capture/fls/tips-tricks/combed-letters)
