IP Library Granted Patent US 9,665,801
Granted Patent B1
US 9,665,801 · App. 14/673,472 · Granted May 30, 2017

Method and system for extracting alphanumeric content from noisy image data

Inventors: Guillaume B. Koch (San Jose, CA); Arnaud G. Flament (Sunnyvale, CA)
Assignee: Open Text Corporation
G06K9/6264G06K9/40G06K9/6202G06K2209/01
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 9,665,801
App. No.
14/673,472
Granted
May 30, 2017
Kind
B1
Abstract

In general, embodiments of the technology relate to extracting content from documents. More specifically, embodiments of the technology relate to using fuzzy regular expressions to process content results obtained from one or more documents in order to extract content for these documents. Further, embodiments of the technology enable the format modification of the content after the content has been identified and extracted from the documents.

Claims (59)

1. A method for processing documents, comprising:

obtaining optical character recognition (OCR) results for a document;

processing the OCR results using a matching graph to obtain matching results, comprising:

generating an observation graph using the OCR results; and

determining a best path in the matching graph, the matching graph comprising:

an initial state,

a final state,

at least one matching subgraph node between the initial state and the final state, and

a trash state, between the initial state and the final state, wherein the trash state and the at least one matching subgraph node are not directly connected by any edge in the matching graph,

wherein determining the best path in the matching graph comprises traversing the matching graph at least once, from the initial state to the final state via the at least one matching subgraph nodes, using observation nodes in the observation graph; and

providing the matching results to a user computing system.

2. The method of claim 1 , wherein the observation graph comprises at least one branch.

3. The method of claim 1 , wherein the at least one matching subgraph node comprises an exact match state and a wildcard state.

4. The method of claim 1 , further comprising:

generating the matching graph using a fuzzy regular expression.

5. The method of claim 4 , wherein the matching graph comprises a matching subgraph node for each component of the fuzzy regular expression.

6. The method of claim 1 , wherein the OCR results comprise a set of hypotheses, wherein each hypothesis in the set of hypotheses is associated with a confidence score.

7. The method of claim 1 , wherein the matching graph comprises a plurality of transitions, wherein each of the plurality of transitions is associated with a weight, and wherein the weight of at least one of the plurality of transitions is one selected from a group consisting of a weight for a correct match, a weight for an insertion, a weight for a substitution, and a weight for a deletion.

8. The method of claim 1 , wherein the matching graph comprises a plurality of transitions, wherein each of the plurality of transitions is associated with a weight determined using at least one selected from a group consisting of a matching threshold and a trash score.

9. The method of claim 1 , wherein the matching results comprise at least a partial match of a fuzzy regular expression, wherein providing the matching results to the user computing system comprises modifying at least the partial match prior to obtain a modified match result, wherein the modified match result is provided to the user computing system.

10. A system, comprising:

a processor comprising an integrated circuit;

an optical character recognition (OCR) component executing on the processor, configured to:

obtain OCR results for a document; and

a fuzzy matching component executing on the processor, configured to:

receive the OCR results for the document; and

process the OCR results using a matching graph to obtain matching results, the processing the OCR results comprising:

generating an observation graph using the OCR results; and

determining a best path in the matching graph, the matching graph comprising:

an initial state,

a final state,

at least one matching subgraph node between the initial state and the final state, and

a trash state, between the initial state and the final state, wherein the trash state and the at least one matching subgraph node are not directly connected by any edge in the matching graph,

wherein determining the best path in the matching graph comprises traversing the matching graph at least once, from the initial state to the final state via the at least one matching subgraph nodes, using observation nodes in the observation graph;

wherein the matching results are provided to a user computing system operatively connected to the system.

11. The system of claim 10 , further comprising:

a format modification component executing on the processor, configured to modify at least a partial match of a fuzzy regular expression to obtain a modified match result, wherein the modified match result is provided to the user computing system.

12. The system of claim 10 , wherein the observation graph comprises at least one branch.

13. The system of claim 10 , wherein the at least one matching subgraph node comprises an exact match state and a wild card state.

14. The system of claim 10 , wherein the fuzzy matching component is further configured to:

generate the matching graph using a fuzzy regular expression, wherein the matching graph comprises a matching subgraph node for each component of the fuzzy regular expression.

15. The system of claim 10 , wherein the matching graph comprises a plurality of transitions, wherein each of the plurality of transitions is associated with a weight, and wherein the weight of at least one of the plurality of transitions is one selected from a group consisting of a weight for a correct match, a weight for an insertion, a weight for a substitution, and a weight for a deletion.

16. The system of claim 10 , wherein the matching graph comprises a plurality of transitions, wherein each of the plurality of transitions is associated with a weight determined using at least one selected from a group consisting of a matching threshold and a trash score.

17. A non-transitory computer readable medium comprising computer readable program code, which when executed by a computer processor enables the computer processor to:

obtain a data model for content of a document;

generate a matching graph, the matching graph comprising:

an initial state,

a final state,

at least one matching subgraph node between the initial state and the final state, and

a trash state, between the initial state and the final state, wherein the trash state and the at least one matching subgraph node are not directly connected by any edge in the matching graph,

wherein generating the matching graph comprises using a fuzzy regular expression, wherein the matching graph comprises a matching subgraph node for each component of the fuzzy regular expression and a trash state;

process the data model using the matching graph to obtain matching results; and

provide the matching results to a user computing system,

wherein processing the data model comprises:

generating an observation graph using the data model; and

determining a best path in the matching graph using observation nodes in the observation graph to transition between states of the matching graph,

wherein determining the best path in the matching graph comprises traversing the matching graph at least once, from the initial state to the final state via the at least one matching subgraph nodes, using observation nodes in the observation graph,

wherein the at least one matching subgraph node comprises an exact match state and a wildcard state,

wherein the matching graph comprises a plurality of transitions, wherein each of the plurality of transitions is associated with a weight determined using at least one selected from a group consisting of a matching threshold and a trash score.

Assignments (7)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2017
From: EMC CORPORATION
To: OPEN TEXT CORPORATION
Reel/Frame 041140/0780 →
RELEASE OF SECURITY INTEREST Recorded Jan 23, 2017
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC CORPORATION
Reel/Frame 041073/0443 →
PATENT RELEASE (REEL:40134/FRAME:0001) Recorded Jan 23, 2017
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
To: EMC CORPORATION, AS GRANTOR
Reel/Frame 041073/0136 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 9, 2015
From: KOCH, GUILLAUME B.; FLAMENT, ARNAUD G.
To: EMC CORPORATION
Reel/Frame 035370/0904 →