IP Library Granted Patent US 11,893,784
Granted Patent B2
US 11,893,784 · App. 17/303,128 · Granted Feb 6, 2024

Assessment of image quality for optical character recognition using machine learning

Inventors: Ivan Zagaynov (Moscow Region, RU); Dmitry Rodin (Saratovkaya, RU); Vasily Loginov (Moscow, RU)
Assignee: ABBYY Development Inc.
G06V10/993G06F18/214G06F18/2163G06N5/04G06N20/00G06V10/32G06V10/50G06V10/806G06V30/10
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,893,784
App. No.
17/303,128
Granted
Feb 6, 2024
Kind
B2
Abstract

Aspects of the disclosure provide for systems and processes for assessing image quality for optical character recognition (OCR), including but not limited to: segmenting an image into patches, providing the segmented image as an input into a first machine learning model (MLM), obtaining, using the first MLM, for each patch, first feature vectors representative of a reduction of imaging quality in a respective patch, and second feature vectors representative of a text content of the respective patch, providing to a second MLM the first feature vectors and the second feature vectors, and obtaining, using the second MLM, an indication of suitability of the image for OCR.

Claims (85)

1. A method, comprising:

segmenting an image to obtain a plurality of patches;

providing the segmented image as a first input into a first machine learning model (MLM);

obtaining, using the first MLM, for each patch of the plurality of patches:

one or more first feature vectors representative of reduction of imaging quality in a respective patch, and

one or more second feature vectors representative of a text content of the respective patch;

providing a second input into a second MLM, the second input comprising, for each patch of the plurality of patches, the one or more first feature vectors and the one or more second feature vectors; and

obtaining, using the second MLM, an indication of suitability of the image for optical character recognition (OCR).

2. The method of claim 1 , wherein each of the one or more first feature vectors is representative of at least one of:

a blur in the respective patch,

a defocusing in the respective patch, or

a glare in the respective patch.

3. The method of claim 1 , wherein each of the one or more second feature vectors is representative of at least one of:

a presence of a text within the respective patch, or

a size of the text within the respective patch.

4. The method of claim 1 , further comprising:

obtaining, based on the one or more second feature vectors, one or more corresponding second feature values, each of the one or more second feature values characterizing at least one of:

a presence of a text in the respective patch, or

a size of the text in the respective patch.

5. The method of claim 1 , wherein the first MLM is trained, at least in part, by:

segmenting a training image (TI) into a plurality of patches;

for each of the plurality of patches of the TI:

i) obtaining, using the first MLM and based on the one or more first feature vectors for a respective patch of the TI, one or more corresponding first feature values, each of the one or more first feature values characterizing at least one of:

a degree of a blur in the respective patch of the TI, or

a degree of defocusing in the respective patch of the TI, and

ii) obtaining, using the first MLM and based on the one or more second feature vectors for the respective patch of the TI, one or more corresponding second feature values, each of the one or more second feature values characterizing at least one of:

a presence of a text in the respective patch of the TI, or

a size of the text in the respective patch of the TI, and

iii) identifying, one or more first target feature values and one or more corresponding second target feature values; and

adjusting parameters of the first MLM in view of:

a difference between each of the one or more first target feature values and a respective first feature value of the one or more first feature values, and

a difference between each of the one or more second target feature values and a respective second feature value of the one or more second feature values.

6. The method of claim 1 , wherein the plurality of patches comprises a first subplurality of patches of a first size and a second subplurality of patches of a second size that is different from the first size, the first subplurality of patches and the second subplurality of patches covering a common portion of the image.

7. The method of claim 6 , wherein the first size is one of 64×64 pixels, 128×128 pixels, or 256×256 pixels, the second size is one of 128×128 pixels, 256×256 pixels, or 512×512 pixels, and wherein segmenting the image comprises:

grayscaling the image; and

resizing the image to fit the image into an integer number of patches of the second size.

8. The method of claim 6 , wherein the second MLM performs operations comprising:

obtaining, based on the one or more first feature vectors and the one or more second feature vectors for each of the first subplurality of patches, a first feature tensor;

obtaining, based on the one or more first feature vectors and the one or more second feature vector for each of the second subplurality of patches, a second feature tensor;

obtaining a recomputed first feature tensor using the first feature tensor and one or more convolution operations;

obtaining a recomputed second feature tensor using the second feature tensor and one or more additional convolution operations; and

obtaining the indication of suitability of the image for OCR based on the recomputed first feature tensor and the recomputed second feature tensor.

9. The method of claim 8 , wherein obtaining the indication of suitability of the image for OCR is based on a combined feature tensor obtained by combining the recomputed first feature tensor and the recomputed second feature tensor.

10. The method of claim 9 , wherein obtaining the recomputed first feature tensor comprises downsampling the first feature tensor from the first size of the first subplurality of patches to the second size of the second subplurality of patches.

11. The method of claim 1 , wherein the plurality of patches comprises at least four subpluralities of patches, wherein each of the subpluralities of patches comprises patches of a size that is different than sizes of other subpluralities of patches, and wherein all of the subpluralities of patches correspond to a common portion of the image.

12. The method of claim 1 , wherein each of the first MLM and the second MLM comprises a neural network model having a plurality of layers of neurons.

13. The method of claim 12 , wherein each of the first MLM and the second MLM is i) a fully convolutional neural network, or ii) a neural network having one or more convolutional layers of neurons and one or more fully connected layers of neurons.

14. The method of claim 1 , further comprising:

providing the image as a third input into a third MLM to obtain a set of additional feature vectors, each of the additional feature vectors being representative of a glare in the image;

wherein the second input into the second MLM further comprises the set of the additional feature vectors.

15. The method of claim 1 , further comprising:

based on the one or more second feature vectors, resizing the image to obtain a resized image; and

re-obtaining the one or more first feature vectors and the one or more second feature vectors using the resized image; and

wherein obtaining the indication of suitability of the image for OCR is based on the reobtained one or more first feature vectors and one or more second feature vectors.

16. The method of claim 1 , further comprising:

based on the indication of suitability of the image for OCR, causing at least one of:

an automatic retaking of the image;

a presentation, on a user interface, of a first recommendation to use the image for OCR; or

a presentation, on the user interface, of a second recommendation to retake the image.

17. The method of claim 1 , further comprising:

causing a display, on a user interface, of an image quality map for the image, wherein the image quality map is based, at least in part, on the one or more first feature vectors for each of at least a subplurality of the plurality of patches of the image and comprises at least one of:

a blur map for the image,

a defocusing map for the image, or

a glare map for the image.

18. The method of claim 1 , further comprising:

causing a display, on a user interface, of a text segmentation map of the image, wherein the text segmentation map is based, at least in part, on the one or more second feature vectors for each of at least a subplurality of the plurality of patches of the image.

19. The method of claim 1 , wherein the plurality of patches corresponds to regions of the image selected randomly or according to a pre-determined geometric pattern.

20. A non-transitory machine-readable storage medium including instructions that, when accessed by a processing device, cause the processing device to:

segment an image to obtain a plurality of patches;

provide the segmented image as a first input into a first machine learning model (MLM);

obtain, using the first MLM, for each patch of the plurality of patches:

one or more first feature vectors representative of reduction of imaging quality in a respective patch, and

one or more second feature vectors representative of a text content of the respective patch;

provide a second input into a second MLM, the second input comprising, for each patch of the plurality of patches, the one or more first feature vectors and the one or more second feature vectors; and

obtain, using the second MLM, an indication of suitability of the image for optical character recognition (OCR).

21. A system comprising:

a memory; and

a processing device operatively coupled to the memory, the processing device to:

segment an image to obtain a plurality of patches;

provide the segmented image as a first input into a first machine learning model (MLM);

obtain, using the first MLM, for each patch of the plurality of patches:

one or more first feature vectors representative of reduction of imaging quality in a respective patch, and

one or more second feature vectors representative of a text content of the respective patch;

provide a second input into a second MLM, the second input comprising, for each patch of the plurality of patches, the one or more first feature vectors and the one or more second feature vectors; and

obtain, using the second MLM, an indication of suitability of the image for optical character recognition (OCR).

Assignments (2)
SECURITY INTEREST Recorded Aug 14, 2023
From: ABBYY INC.; ABBYY USA SOFTWARE HOUSE INC.; ABBYY DEVELOPMENT INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS AGENT
Reel/Frame 064730/0964 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 21, 2021
From: ZAGAYNOV, IVAN; RODIN, DMITRY; LOGINOV, VASILY
To: ABBYY DEVELOPMENT INC.
Reel/Frame 056311/0954 →
Priority Claims (1)
RU RU2021113767 · May 14, 2021 · national
Continuity (1)
Related Publication 20220366179A1 · Nov 17, 2022