IP Library Granted Patent US 11,475,655
Granted Patent B2
US 11,475,655 · App. 16/846,041 · Granted Oct 18, 2022

Methods for optical character recognition (OCR)

Inventor: H. Sprague Ackley (Seattle, WA)
Assignee: DATAMAX-O'NEIL CORPORATION
G06V10/758G06K9/6292G06V10/75G06V30/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,475,655
App. No.
16/846,041
Granted
Oct 18, 2022
Kind
B2
Abstract

A method is provided for Optical Character Recognition (OCR). A plurality of OCR decoding results each having a plurality of positions is obtained from capturing and decoding a plurality of images of the same one or more OCR characters. A recognized character in each OCR decoding result is compared with the recognized character that occupies an identical position in each of the other OCR decoding results. A number of occurrences that each particular recognized character occupies the identical position in the plurality of OCR decoding results is calculated. An individual confidence score is assigned to each particular recognized character based on the number of occurrences, with a highest individual confidence score assigned to a particular recognized character having the greatest number of occurrences. Determining which particular recognized character has been assigned the highest individual confidence score determines which particular recognized character comprises a presumptively valid character for the identical position.

Claims (76)

1. A method for Optical Character Recognition (OCR), the method comprising:

obtaining a plurality of OCR decoding results, wherein each OCR decoding result comprises a plurality of positions;

calculating, for each of the plurality of OCR decoding results, a number of occurrences of a first character in a first position of the plurality of positions and the number of occurrences of a second character in the first position;

determining that the first character in the first position of a first OCR decoding result of the plurality of OCR decoding results is not in a predefined lexicon and incrementing the number of occurrences of the first character;

associating the first character with an individual confidence score based on the number of occurrences of the first character;

associating the second character with the individual confidence score based on the number of occurrences of the second character; and

determining a presumptively valid OCR decoding character result for the first position based on the individual confidence score.

2. The method according to claim 1 , wherein obtaining the plurality of OCR decoding results further comprises:

capturing a plurality of images of the same one or more OCR characters; and

decoding each of the plurality of images to a character in each of the plurality of positions.

3. The method according to claim 1 , further comprising:

calculating, for each of the plurality of OCR decoding results, the number of occurrences of each additional character in each remaining position of the plurality of positions, wherein the number of occurrences of each additional character is incremented in an instance in which a character is not in the predefined lexicon;

associating each additional character in each remaining position with the individual confidence score; and

determining the presumptively valid OCR decoding character result for each remaining position based on the individual confidence score.

4. The method according to claim 2 , further comprising:

associating each presumptively valid OCR decoding character result with a total confidence score based on the individual confidence score; and

selecting a final OCR decoding result that is associated with a highest total confidence score.

5. The method according to claim 2 , further comprising:

selecting an identified character for each position of the OCR decoding result based on the identified character in each position having a highest total confidence score for that position across each OCR decoding character result.

6. The method according to claim 1 , further comprising:

determining that the number of occurrences of the first character or the number of occurrences of the second character do not satisfy a particular threshold; and

obtaining additional OCR decoding results.

7. The method according to claim 1 , further comprising:

determining that the number of occurrences of the first character and the number of occurrences of the second character do not satisfy a particular threshold; and

obtaining additional OCR decoding results.

8. The method according to claim 1 , further comprising:

determining that the individual confidence score of the first character does not satisfy a minimum individual confidence score; and

excluding the first character.

9. An optical character recognition (OCR) apparatus comprising:

an image sensor for capturing one or more images;

a memory; and

a processor communicatively coupled to the image sensor to convert the one or more images into a plurality of OCR decoding results; and

a non-transitory memory including computer program instructions configured to, when executed by the processor, cause the OCR apparatus to:

calculate, for each of the plurality of OCR decoding results, a number of occurrences of a first character in a first position of a plurality of positions and the number of occurrences of a second character in the first position;

determine that the first character in the first position of a first OCR decoding result of the plurality of OCR decoding results is not in a predefined lexicon and incrementing the number of occurrences of the first character;

associate the first character with an individual confidence score based on the number of occurrences of the first character;

associate the second character with the individual confidence score based on the number of occurrences of the second character; and

determine a presumptively valid OCR decoding character result for the first position based on the individual confidence score.

10. The OCR apparatus according to claim 9 , wherein the non-transitory memory including the computer program instructions is further configured to, when executed by the processor, cause the OCR apparatus to:

calculate, for each OCR decoding result of the plurality of OCR decoding results, the number of occurrences of each additional character in each remaining position of the plurality of positions, wherein the number of occurrences of each additional character is incremented in an instance in which a character is not in the predefined lexicon;

associate each additional character in each remaining position with the individual confidence score; and

determine the presumptively valid OCR decoding character result for each remaining position based on the individual confidence score.

11. The OCR apparatus according to claim 10 , wherein the non-transitory memory including the computer program instructions is further configured to, when executed by the processor, cause the OCR apparatus to:

associate each presumptively valid OCR decoding character result with a total confidence score based on the individual confidence score; and

select a final OCR decoding result that is associated with a highest total confidence score.

12. The OCR apparatus according to claim 10 , wherein the non-transitory memory including the computer program instructions is further configured to, when executed by the processor, cause the OCR apparatus to:

select an identified character for each position of the OCR decoding result based on the identified character in each position having a highest total confidence score for that position across each OCR decoding character result.

13. The OCR apparatus according to claim 9 , wherein the non-transitory memory including the computer program instructions is further configured to, when executed by the processor, cause the OCR apparatus to:

determine that the number of occurrences of the first character or the number of occurrences of the second character do not satisfy a particular threshold; and

obtain additional OCR decoding results.

14. The OCR apparatus according to claim 9 , wherein the non-transitory memory including the computer program instructions is further configured to, when executed by the processor, cause the OCR apparatus to:

determine that the number of occurrences of the first character and the number of occurrences of the second character do not satisfy a particular threshold; and

obtain additional OCR decoding results.

15. The OCR apparatus according to claim 9 , wherein the non-transitory memory including the computer program instructions is further configured to, when executed by the processor, cause the OCR apparatus to:

determine that the individual confidence score of the first character does not satisfy a minimum individual confidence score; and

exclude the first character.

16. A non-transitory computer program product for Optical Character Recognition (OCR), wherein the non-transitory computer program product comprises:

a non-transitory computer readable storage medium having computer readable program code embodied in said non-transitory computer readable storage medium, said computer readable program code comprising steps of:

obtaining a plurality of OCR decoding results, wherein each OCR decoding result comprises a plurality of positions;

calculating, for each of the plurality of OCR decoding results, a number of occurrences of a first character in a first position of the plurality of positions and the number of occurrences of a second character in the first position;

determining that the first character in the first position of a first OCR decoding result of the plurality of OCR decoding results is not in a predefined lexicon and incrementing the number of occurrences of the first character;

associating the first character with an individual confidence score based on the number of occurrences of the first character;

associating the second character with the individual confidence score based on the number of occurrences of the second character; and

determining a presumptively valid OCR decoding character result for the first position based on the individual confidence score.

17. The non-transitory computer program product according to claim 16 , wherein said computer readable program code further comprising the steps of:

capturing a plurality of images of the same one or more OCR characters; and

decoding each of the plurality of images to a character in each of the plurality of positions.

18. The non-transitory computer program product according to claim 16 , wherein said computer readable program code further comprising the steps of:

calculating, for each of the plurality of OCR decoding results, the number of occurrences of each additional character in each remaining position of the plurality of positions, wherein the number of occurrences of each additional character is incremented in an instance in which a character is not in the predefined lexicon;

associating each additional character in each remaining position with the individual confidence score; and

determining the presumptively valid OCR decoding character result for each remaining position based on the individual confidence score.

19. The non-transitory computer program product according to claim 18 , wherein said computer readable program code further comprising the steps of:

associating each presumptively valid OCR decoding character result with a total confidence score based on the individual confidence score; and

selecting a final OCR decoding result that is associated with a highest total confidence score.

20. The non-transitory computer program product according to claim 18 , wherein said computer readable program code further comprising a step of:

selecting an identified character for each position of the OCR decoding result based on the identified character in each position having a highest total confidence score for that position across each OCR decoding character result.

Assignments (3)
CORRECTIVE ASSIGNMENT TO CORRECT THE CORRECT NAME OF THE ASSIGNEE IS HAND HELD PRODUCTS, INC.. PREVIOUSLY RECORDED AT REEL: 062308 FRAME: 0749. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Feb 1, 2023
From: DATAMAX-O'NEIL CORPORATION
To: HAND HELD PRODUCTS, INC.
Reel/Frame 062639/0020 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 6, 2023
From: DATAMAX-O'NEIL CORPORATION
To: HAND HELD PRODUCTS, INC.
Reel/Frame 062308/0749 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 27, 2020
From: ACKLEY, H. SPRAGUE
To: DATAMAX-O'NEIL CORPORATION
Reel/Frame 052502/0765 →
Continuity (2)
Continuation 15720550 · Sep 29, 2017
Related Publication 20200250469A1 · Aug 6, 2020