IP Library Granted Patent US 10,013,624
Granted Patent B2
US 10,013,624 · App. 14/971,318 · Granted Jul 3, 2018

Text entity recognition

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,013,624
App. No.
14/971,318
Granted
Jul 3, 2018
Kind
B2
Abstract

Various embodiments enable the identification of semi-structured text entities in an imager. The identification of the text entities is a relatively simple problem when the text is stored in a computer and free of errors, but much more challenging if the source is the output of an optical character recognition (OCR) engine from a natural scene image. Accordingly, output from an OCR engine is analyzed to isolate a character string indicative of a text entity. Each character of the string is then assigned to a character class to produce a character class string and the text entity of the string is identified based in part on a pattern of the character class string.

Claims (58)

1. A computer-implemented method, comprising:

receiving an output from an optical character recognition (OCR) performed on an image;

determining, from the output, first values associated with a first pixel region of the image and second values associated with a second pixel region of the image;

determining a character string indicative of a text entity from the output when one or more differences between the first values and the second values exceeds a threshold;

assigning each character of the character string to a character class to produce a character class string;

identifying the character string as being the text entity;

identifying a text entity type associated with the text entity; and

autocorrecting at least one character in the character string to provide a corrected character, the at least one character belonging to a character class not associated with the text entity type.

2. The computer-implemented method of claim 1 , wherein autocorrecting at least one character in the character string includes replacing the at least one character belonging to the character class not associated with the text entity with at least one second character belonging to a second character class associated with the text entity.

3. The computer-implemented method of claim 1 , wherein the analyzing of the output isolates the character string by performing one or more heuristic tests.

4. The computer-implemented method of claim 3 , further comprising:

converting the output into text lines; and

omitting characters that do not fit a pattern indicative of the text entity.

5. The computer-implemented method of claim 1 , wherein identifying the character string as being the text entity includes:

determining a matching score for the character string, the matching score being based at least in part on a number of edits made to the character class string.

6. The computer-implemented method of claim 5 , wherein determining the matching score includes:

assigning costs to edits made to the character class string, wherein the costs are based on a similarity between characters.

7. The computer-implemented method of claim 6 , wherein the costs assigned to the edits made to the character class string are represented in an N by M matrix where N represents a number possible ASCII characters and M represents a number of possible character classes.

8. A computer-implemented method, comprising:

receiving an output from an optical character recognition (OCR) performed on an image;

determining, from the output, first values associated with a first pixel region of the image and second values associated with a second pixel region of the image;

determining a character string indicative of a text entity from the output when one or more differences between the first values and the second values exceeds a threshold;

assigning each character of the character string to a character class to produce a character class string;

identifying the character string as being the text entity; and

validating the character string by comparing the character string to text entity-specific patterns, wherein the validating provides at least one corrected character for the character string.

9. The computer-implemented method of claim 8 , wherein validating the character string by comparing the character string to text entity-specific patterns includes:

determining that the text entity is associated with a pattern indicative of a URL; and

comparing the character string to a determined number of URLs.

10. The computer-implemented method of claim 8 , wherein the analyzing of the output isolates the character string by performing one or more heuristic tests.

11. The computer-implemented method of claim 10 , further comprising:

converting the output into text lines; and

omitting characters that do not fit a pattern indicative of the text entity.

12. The computer-implemented method of claim 8 , wherein identifying the character string as being the text entity includes:

determining a matching score for the character string, the matching score being based at least in part on a number of edits made to the character class string.

13. The computer-implemented method of claim 12 , wherein determining the matching score includes:

assigning costs to edits made to the character class string, wherein the costs are based on a similarity between characters.

14. The computer-implemented method of claim 13 , wherein the costs assigned to the edits made to the character class string are represented in an N by M matrix where N represents a number possible ASCII characters and M represents a number of possible character classes.

15. A computing device, comprising:

a processor;

a display screen; and

memory including instructions that, when executed by the processor, cause the computing device to:

receive an output from an optical character recognition (OCR) performed on an image;

determine, from the output, first values associated with a first pixel region of the image and second values associated with a second pixel region of the image;

determine a character string indicative of a text entity from the output when one or more differences between the first values and the second values exceeds a threshold;

assign each character of the character string to a character class to produce a character class string;

identify the character string as being the text entity; and

validate the character string by comparing the character string to text entity-specific patterns, wherein the validation provides at least one corrected character for the character string.

16. The computing device of claim 15 , wherein the instructions, when executed to validate the character string by comparing the character string to text entity-specific patterns, further enables the computing device to:

determine that the text entity is associated with a pattern indicative of a URL; and

compare the character string to a determined number of URLs.

17. The computing device of claim 15 , wherein the instructions, when executed by the processor, further cause the computing device to:

identify a text entity type associated with the text entity; and

autocorrect at least one character in the character string, the at least one character belonging to a character class not associated with the text entity type.

18. The computing device of claim 15 , wherein the instructions, when executed to identify the character string as being the text entity, further enables the computing device to:

determine a matching score for the character string, the matching score being based at least in part on a number of edits made to the character class string.

19. The computing device of claim 18 , wherein the instructions, when executed to determine the matching score, further enables the computing device to:

assign costs to edits made to the character class string, wherein the costs are based on a similarity between characters.

20. The computing device of claim 19 , wherein the costs assigned to the edits made to the character class string are represented in an N by M matrix where N represents a number possible ASCII characters and M represents a number of possible character classes.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 13, 2024
From: A9.COM, INC.
To: AMAZON TECHNOLOGIES, INC.
Reel/Frame 069167/0493 →