IP Library Granted Patent US 10,503,995
Granted Patent B2
US 10,503,995 · App. 15/854,348 · Granted Dec 10, 2019

Optical character recognition of series of images

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 10,503,995
App. No.
15/854,348
Granted
Dec 10, 2019
Kind
B2
Abstract

Systems and methods for performing OCR of a series of images depicting text symbols. An example method comprises performing OCR a series of images to produce symbol sequences and corresponding symbol sequence quadrangles; identifying median string; calculating transformation of the symbol sequence quadrangles into a common coordinate system; determining distances between the transformed symbol sequence quadrangles; identifying a median symbol sequence quadrangle; displaying, using the median symbol sequence quadrangle, a resulting OCR text representing at least a portion of the original document.

Claims (64)

1. A method, comprising:

receiving, by a processing device, a current image of a series of images of an original document, wherein the current image at least partially overlaps with a previous image of the series of images;

performing optical character recognition (OCR) of the current image to produce a current symbol sequence and a corresponding text layout,

wherein the text layout of the current image comprises coordinates of a current symbol sequence quadrangle containing the symbol sequence in the current image;

associating, using a coordinate transformation, the current symbol sequence with a first cluster of a plurality of clusters of previous symbol sequences, wherein each previous symbol sequence in the first cluster is produced by processing one of a plurality of previously received images of the series of images, wherein each of the previously received images has a corresponding previous image text layout comprising coordinates of a previous symbol sequence quadrangle containing the previous symbol sequence;

merging the symbol sequences from the first cluster by identifying a first median string representing the first cluster of symbol sequences based on a first subset of images of the series of images, wherein the first median string is a resulting OCR text representing at least a portion of the original document;

calculating transformations of the previous symbol sequence quadrangles to the current image to produce transformed previous symbol sequence quadrangles;

determining distances between the transformed previous symbol sequence quadrangles and the current symbol sequence quadrangle;

identifying a median symbol sequence quadrangle for the previous symbol sequence quadrangles and the current symbol sequence quadrangle based on the distances between the transformed previous symbol sequence quadrangles and the current symbol sequence quadrangle; and

displaying, using the median symbol sequence quadrangle, a resulting OCR text representing at least a portion of the original document.

2. The method of claim 1 , wherein a distance between the transformed previous symbol sequence quadrangles and the current symbol sequence quadrangle represents a measure of difference in geometry of the symbol sequence quadrangles.

3. The method of claim 1 wherein the determining distances between the transformed previous symbol sequence quadrangles and the current symbol sequence quadrangle comprises:

determining projection coefficients for the current symbol sequence quadrangle into a unit square; and

applying the determined projective transformation to the transformed previous symbol sequence quadrangles to obtain a converted transformed previous symbol sequence quadrangles.

4. The method of claim 3 wherein the determining distances between the transformed previous symbol sequence quadrangles and the current symbol sequence quadrangle further comprises determining lengths of line segments connecting vertices of the converted transformed previous symbol sequence quadrangles and vertices of the unit square.

5. The method of claim 1 wherein the identifying of the median symbol sequence quadrangle is a transformed symbol sequence quadrangle, which distance from the current symbol sequence quadrangle is a median to the other distances between the transformed previous symbol sequence quadrangles and the current symbol sequence quadrangle.

6. The method of claim 4 wherein the lengths of line segments between vertices of the transformed previous symbol sequence quadrangles and vertices of the unit square are weighted.

7. The method of claim 1 wherein for each recognized symbol of the current symbol sequence the text layout of the current image comprises coordinates of a current symbol rectangle containing the symbol in the current image.

8. The method of claim 7 wherein the determining distances between the transformed symbol sequence quadrangles and the current symbol sequence quadrangle comprises

normalizing the distances between the transformed symbol sequence quadrangles and the current symbol sequence quadrangles by number of symbols in the symbol sequences.

9. The method of claim 1 , wherein displaying, using the median symbol sequence quadrangle, a resulting OCR text further comprises:

determining symbol quadrangles for symbols of the first median string based on the median symbol sequence quadrangle;

determining base lines based on the symbol quadrangles; and

determining a median string quadrangle based on the symbol quadrangles.

10. A system, comprising:

a memory;

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

receive, by a processing device, a current image of a series of images of an original document, wherein the current image at least partially overlaps with a previous image of the series of images;

perform optical character recognition (OCR) of the current image to produce a current symbol sequence and a corresponding text layout,

wherein the text layout of the current image comprises coordinates of a current symbol sequence quadrangle containing the symbol sequence in the current image;

associate, using a coordinate transformation, the current symbol sequence with a first cluster of a plurality of clusters of previous symbol sequences, wherein each previous symbol sequence in the first cluster is produced by processing one of a plurality of previously received images of the series of images, wherein each of the previously received images has a corresponding previous image text layout comprising coordinates of a previous symbol sequence quadrangle containing the previous symbol sequence;

merge the symbol sequences from the first cluster by identifying a first median string representing the first cluster of symbol sequences based on a first subset of images of the series of images, wherein the first median string is a resulting OCR text representing at least a portion of the original document;

calculate transformations of the previous symbol sequence quadrangles to the current image to produce transformed previous symbol sequence quadrangles;

determine distances between the transformed previous symbol sequence quadrangles and the current symbol sequence quadrangle;

identify a median symbol sequence quadrangle for the previous symbol sequence quadrangles and the current symbol sequence quadrangle based on the distances between the transformed previous symbol sequence quadrangles and the current symbol sequence quadrangle; and

display, using the median symbol sequence quadrangle, a resulting OCR text representing at least a portion of the original document.

11. The system of claim 10 , wherein a distance between the transformed previous symbol sequence quadrangles and the current symbol sequence quadrangle represents a measure of difference in geometry of the symbol sequence quadrangles.

12. The system of claim 10 wherein the determining distances between the transformed previous symbol sequence quadrangles and the current symbol sequence quadrangle comprises:

determining projection coefficients for the current symbol sequence quadrangle into a unit square; and

applying the determined projective transformation to the transformed previous symbol sequence quadrangles to obtain a converted transformed previous symbol sequence quadrangles.

13. The system of claim 12 wherein the determining distances between the transformed previous symbol sequence quadrangles and the current symbol sequence quadrangle further comprises determining lengths of line segments connecting vertices of the converted transformed previous symbol sequence quadrangles and vertices of the unit square.

14. The system of claim 10 wherein the identifying of the median symbol sequence quadrangle is a transformed symbol sequence quadrangle, which distance from the current symbol sequence quadrangle is a median to the other distances between the transformed previous symbol sequence quadrangles and the current symbol sequence quadrangle.

15. The system of claim 13 wherein the lengths of line segments between vertices of the transformed previous symbol sequence quadrangles and vertices of the unit square are weighted.

16. The system of claim 10 wherein for each recognized symbol of the current symbol sequence the text layout of the current image comprises coordinates of a current symbol rectangle containing the symbol in the current image.

17. The system of claim 16 wherein the determining distances between the transformed symbol sequence quadrangles and the current symbol sequence quadrangle comprises

normalizing the distances between the transformed symbol sequence quadrangles and the current symbol sequence quadrangles by number of symbols in the symbol sequences.

18. The system of claim 10 , wherein displaying, using the median symbol sequence quadrangle, a resulting OCR text further comprises:

determining symbol quadrangles for symbols of the first median string based on the median symbol sequence quadrangle;

determining base lines based on the symbol quadrangles; and

determining a median string quadrangle based on the symbol quadrangles.

19. A computer-readable non-transitory storage medium comprising executable instructions that, when executed by a processing device, cause the processing device to:

receive, by a processing device, a current image of a series of images of an original document, wherein the current image at least partially overlaps with a previous image of the series of images;

perform optical character recognition (OCR) of the current image to produce a current symbol sequence and a corresponding text layout,

wherein the text layout of the current image comprises coordinates of a current symbol sequence quadrangle containing the symbol sequence in the current image;

associate, using a coordinate transformation, the current symbol sequence with a first cluster of a plurality of clusters of previous symbol sequences, wherein each previous symbol sequence in the first cluster is produced by processing one of a plurality of previously received images of the series of images, wherein each of the previously received images has a corresponding previous image text layout comprising coordinates of a previous symbol sequence quadrangle containing the previous symbol sequence;

merge the symbol sequences from the first cluster by identifying a first median string representing the first cluster of symbol sequences based on a first subset of images of the series of images, wherein the first median string is a resulting OCR text representing at least a portion of the original document;

calculate transformations of the previous symbol sequence quadrangles to the current image to produce transformed previous symbol sequence quadrangles;

determine distances between the transformed previous symbol sequence quadrangles and the current symbol sequence quadrangle;

identify a median symbol sequence quadrangle for the previous symbol sequence quadrangles and the current symbol sequence quadrangle based on the distances between the transformed previous symbol sequence quadrangles and the current symbol sequence quadrangle; and

display, using the median symbol sequence quadrangle, a resulting OCR text representing at least a portion of the original document.

20. The storage medium of claim 19 , wherein displaying, using the median symbol sequence quadrangle, a resulting OCR text further comprises:

determining symbol quadrangles for symbols of the first median string based on the median symbol sequence quadrangle;

determining base lines based on the symbol quadrangles; and

determining a median string quadrangle based on the symbol quadrangles.

Assignments (4)
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 Feb 25, 2022
From: ABBYY PRODUCTION LLC
To: ABBYY DEVELOPMENT INC.
Reel/Frame 059249/0873 →
MERGER Recorded Jan 24, 2019
From: ABBYY DEVELOPMENT LLC
To: ABBYY PRODUCTION LLC
Reel/Frame 048129/0558 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 26, 2017
From: KALYUZHNY, ALEKSEY IVANOVICH
To: ABBYY DEVELOPMENT LLC
Reel/Frame 044486/0113 →