Image-based character recognition
First Claim
1. A computer-implemented method, comprising:
- obtaining an image captured by a camera of a computing device;
analyzing the image to locate a region of text represented in the image;
binarizing the region of text to generate a binarized region;
recognizing text of the binarized region with a first optical character recognition (OCR) engine and a second (OCR) engine to identify first recognized text and second recognized text;
tuning a first processing speed associated with the first (OCR) engine and a second processing speed associated with the second OCR engine such that the first processing speed and the second processing speed are equal to within a predefined deviation;
determining a first confidence score for the first recognized text and a second confidence score for the second recognized text by;
searching a database for matching words within the first recognized text and the second recognized text;
increasing the first confidence score for the first recognized text based on matching a string of characters in the first recognized text or the second recognized text to at least one first word in the database; and
increasing the second confidence for the second recognized text based on matching a second string of characters in the second recognized text to at least one of the first word or a second word in the database; and
applying a combination function of the first confidence score and the second confidence score to generate a consensus string of text, the consensus string of text comprising at least a portion of at least one of the first recognized text or the second recognized text.
0 Assignments
0 Petitions
Accused Products
Abstract
Various embodiments enable a device to perform tasks such as processing an image to recognize and locate text in the image, and providing the recognized text an application executing on the device for performing a function (e.g., calling a number, opening an internet browser, etc.) associated with the recognized text. In at least one embodiment, processing the image includes substantially simultaneously or concurrently processing the image with at least two recognition engines, such as at least two optical character recognition (OCR) engines, running in a multithreaded mode. In at least one embodiment, the recognition engines can be tuned so that their respective processing speeds are roughly the same. Utilizing multiple recognition engines enables processing latency to be close to that of using only one recognition engine.
-
Citations
17 Claims
-
1. A computer-implemented method, comprising:
-
obtaining an image captured by a camera of a computing device; analyzing the image to locate a region of text represented in the image; binarizing the region of text to generate a binarized region; recognizing text of the binarized region with a first optical character recognition (OCR) engine and a second (OCR) engine to identify first recognized text and second recognized text; tuning a first processing speed associated with the first (OCR) engine and a second processing speed associated with the second OCR engine such that the first processing speed and the second processing speed are equal to within a predefined deviation; determining a first confidence score for the first recognized text and a second confidence score for the second recognized text by; searching a database for matching words within the first recognized text and the second recognized text; increasing the first confidence score for the first recognized text based on matching a string of characters in the first recognized text or the second recognized text to at least one first word in the database; and increasing the second confidence for the second recognized text based on matching a second string of characters in the second recognized text to at least one of the first word or a second word in the database; and applying a combination function of the first confidence score and the second confidence score to generate a consensus string of text, the consensus string of text comprising at least a portion of at least one of the first recognized text or the second recognized text. - View Dependent Claims (2, 3, 4)
-
-
5. A computer-implemented method, comprising:
-
analyzing an image to locate a region of text in the image; selecting a subset of the image associated with the region of text represented in the image; the subset of the image to generate a binarized region; tuning a first processing speed associated with a first optical character recognition (OCR) engine and a second processing speed associated with a second OCR engine such that the first processing speed and the second processing speed are equal to within a predefined deviation; recognizing the text represented in the image with the first OCR engine to yield a first recognized text; recognizing the text represented in the image with the second OCR engine to yield a second recognized text, the first OCR engine being different relative to the second OCR engine; determining a first confidence score for the first recognized text and a second confidence score for the second recognized text by; searching a database for matching words within the first recognized text and the second recognized text; increasing the first confidence score for the first recognized text based on matching a string of characters in the first recognized text or the second recognized text to at least one first word in the database; and increasing the second confidence for the second recognized text based on matching a second string of characters in the second recognized text to at least one of the first word or a second word in the database; and applying a combination function of the first confidence score and the second confidence score to generate a consensus string of text comprising at least a portion of at least one of the first recognized text from the first OCR engine or the second recognized text from the second OCR engine. - View Dependent Claims (6, 7, 8, 9, 10, 11)
-
-
12. A computing device, comprising:
-
a processor; a display screen; and memory including instructions that, when executed by the processor, cause the computing device to; analyze an image to locate a region of text in the image; select a subset of the image associated with the region of text represented in the image; binarize the subset of the image to generate a binarized region; tune a first processing speed associated with a first OCR engine and a second processing speed associated with a second OCR engine such that the first processing speed and the second processing speed are equal to within a predefined deviation; recognize the text represented in the image with the first OCR engine to yield a first recognized text; recognize the text represented in the image with the second OCR engine to yield a second recognized text, the first OCR engine being different relative to the second OCR engine; determine a first confidence score for the first recognized text and a second confidence score for the second recognized text by; searching a database for matching words within the first recognized text and the second recognized text; increasing the first confidence score for the first recognized text based on matching a string of characters in the first recognized text or the second recognized text to at least one first word in the database; and increasing the second confidence for the second recognized text based on matching a second string of characters in the second recognized text to at least one of the first word or a second word in the database; and apply a combination function of the first confidence score and the second confidence score to generate a consensus string of text comprising at least a portion of at least one of the first recognized text from the first OCR engine or the second recognized text from the second OCR engine. - View Dependent Claims (13, 14, 15, 16, 17)
-
Specification