IP Library Granted Patent US 9,129,210
Granted Patent B2
US 9,129,210 · App. 14/266,671 · Granted Sep 8, 2015

Systems and methods of processing scanned data

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,129,210
App. No.
14/266,671
Granted
Sep 8, 2015
Kind
B2
Abstract

An efficient method and system to enhance digital acquisition devices for analog data is presented. The enhancements are available to the user in local as well as in remote deployments yielding efficiency gains for a large variety of business processes. The quality enhancements of the acquired digital data are achieved efficiently by employing virtual reacquisition, which renders unnecessary the physical reacquisition of the analog data in case the digital data by the acquisition are of insufficient quality. The method and system allows multiple users to access the same acquisition device for analog data. One or more users can virtually reacquire data provided by multiple analog or digital sources. The acquired raw data can be processed by each user according to his personal preferences and/or requirements.

Claims (104)

1. A method, comprising:

receiving data from a data capture device,

analyzing at least portions of the received data to determine whether the received data is within a first set of parameters, and if not:

generating a first set of processor settings in response to determining the received data is not within the first set of parameters;

processing the received data with the first set of processor setting to transform the received data into processed data according to one or more of: geometric processing, document orientation processing, background compensation, color compensation, text extraction, separation of text from background, page boundary detection, streak detection, page border detection, color scheme conversion, hue measurement, saturation measurement, luminescence measurement, grayscale intensity histogram analysis, color histogram analysis, gamma detection, and color detection; and

analyzing at least portions of the processed data to determine whether the processed data is within a second set of parameters, and if not:

generating a second set of processor settings to repress the received data; and

reprocessing the received data using the second set of processor settings; and

outputting at least one or the received data, the processed data, and the reprocessed data for inspection by a user;

wherein the second set of parameters is different than the first set of parameters,

wherein the second set of parameters comprises a predetermined metric, and

wherein at least one of the first set of processor settings and the second set of processor settings relate to one or more image characterstics selected from: brightness, contrast, gamma, erosion, orientation, segmentation, saturation, color rendering, resolution, warp angle, skew angle, despeckling, dilation and sequence detection.

2. The method as recited in claim 1 , wherein a first analytic engine is used to perform;

the analyzing the at least portions of the received data to determine whether the received data is within the first set of parameters; and

the generating the first set of processor settings in response to determining the received data is not within the first set of parameters.

3. The method as recited in claim 2 , wherein the first analytic engine is also used to perform the reprocessing.

4. The method as recited in claim 2 , further comprising sending the second set of processor settings and metadata relating to the received data to the first analytic engine.

5. The method as recited in claim 4 , further wherein the reprocessing is based at least in part on the metadata.

6. The method as recited in claim 4 , further comprising displaying the metadata and at least some of the received data; and

receiving user input relating to at least one of the displayed metadata and the displayed data.

7. The method as recited in claim 4 , wherein the metadata comprise one or more of:

a tag identifying a subsection of the received data;

a tag identifying a storage location of the received data;

a sequence number;

an indicator corresponding to a beginning of a data band;

an indicator corresponding to an end of the data bend; and

a pointer corresponding to a second data band.

8. The method as recited in claim 4 , further comprising storing the metadata in a computer accessible storage medium, the metadata relating to one or more of the received data and the processed data.

9. The method as recited in claim 1 , wherein a second analytic engine is used to perform:

the analyzing the at least portions of the processed data to determine whether the processed data is within the second set of parameters; and

the generating the second set of processor setting in response to determining the processed data is not within the second set of parameters.

10. The method as recited in claim 1 , wherein a first analytic engine is used to perform:

the analyzing the at least portions of the received data to determine whether the received data is within the first set of parameters;

the generating the first set of processor settings in response to determining the received data is not within the first set of parameters; and

the reprocessing; and

wherein a second analytic engine is used to perform:

the analyzing the at least portions of the processed data to determine whether the processed data is within the second set of parameters; and

the generating the second set of processor settings in response to determining the processed data is not within the second set of parameters.

11. The method as recited in claim 1 , wherein the processing comprises applying one or more algorithms to the received data, the one or more algorithms being selected from: a detection orientation algorithm, a detect bleed-through algorithm, a background smoothing algorithm, and a detection of page boundaries algorithm.

12. The method as recited in claim 1 , wherein the reprocessing comprises applying one or more algorithms to the processed data, the one or more algorithms being selected from: a detection orientation algorithm, a detect bleed-through algorithm, a background smoothing algorithm, and a detection of page boundaries algorithm.

13. The method as recited in claim 1 , wherein at least one of the analyzing at least portions of the received date and the analyzing at least portions of the processed data comprises performing one or more analyses selected from:

streak detection;

blank page detection;

shadow detection;

color representation conversion;

luminescence measurement;

grayscale intensity histogram analysis; and

color intensity histogram analysis.

14. The method as recited in claim 1 , wherein the data capture device comprises a mobile phone.

15. The method as recited in claim 1 , further comprising at least one of:

alerting the user that the received data is potentially of low quality in response to determining the received data is not within the first set of parameters; and

alerting the user that the processed data is potentially of low quality in response to determining the processed data is not within the second set of parameters.

16. The method as recited in claim 15 , further comprising:

receiving third processor settings from the user at least partially in response to the alerting, and

repeating the reprocessing using the third processor settings received from the user.

17. The method as recited in claim 1 , further comprising repeating the steps of:

analyzing at least portions of the processed data to determine whether the processed data is within the second set of parameters, and if not:

generating the second set of processor settings to reprocess the received data; and

reprocessing the received data with the second set of processor settings until the processed data is within the second set of parameters.

18. The method as recited in claim 1 , wherein at least one of the processing and the reprocessing comprises page boundary detection.

19. The method as recited in claim 18 , wherein the page boundary detection comprises:

statistically analyzing portions of at least one of the received data and the processed data, the statistically analyzed portions corresponding to at least two image corner regions;

aggregating results of the statistically analyzed portions; and

defining one or more background properties based at least in part on the aggregated results.

20. The method as recited in claim 19 , wherein the page boundary detection further comprises identifying one or more pixels characterized by at least one statistical property significantly different from at least one of the background properties.

21. A computer program product for virtual image reacquisition, the computer program product comprising a non-transitory computer readable storage medium having computer readable program code embodied therewith, the computer readable program ode comprising:

computer readable program code configured to receive data from a data capture device;

computer readable program code configured to analyze at least portions of the received data to determine whether the received data is within a first set of parameters, and if not:

generate a first set of processor settings in response to determining the received data is not within the first set of parameters;

process the received data with the first set of processor settings to transform the received data into processed data according to one or more of: geometric processing, document orientation processing, background compensation, color compensation, text extraction, separation of text from background, page boundary detection, streak detection, page border detection, color scheme conversion, hue measurement, saturation measurement, luminescence measurement, grayscale intensity histogram analysis, color histogram analysis, gamma detection, and color detection; and

analyze at least portions of the processed data to determine whether the processed data is within a second set of parameters, and if not:

generate a second set of processor settings to reprocess the received data; and

reprocess the received data using the second set of processor setting; and

computer readable program code configured to output at least one of the received data, the processed data, and the reprocessed data for display on a mobile device;

wherein the second set of parameters is different than the first set of parameters,

wherein the second set of parameters comprises a predetermined metric, and

wherein at least one of the first set of processor settings and the second set of processor settings relate to one or more image characteristics selected from: brightness, contrast, gamma, erosion, orientation, segmentation, saturation, color rendering, resolution, warp angle, skew angle, despeckling, dilation and sequence detection.

22. The computer program product as recited in claim 21 , further comprising computer readable program code configured as a first analytic engine, the first analytic engine comprising computer readable program code configured to perform:

the analyzing the at least portions of the received data to determine whether the received data is within the first set of parameters; and

the generating the first set of processor settings in response to determining the received data is not within the first set of parameters.

23. The computer program product as recited in claim 22 , wherein the first analytic engine is also configured to perform the reprocessing.

24. The computer program product as recited in claim 22 , further comprising computer readable program code configured to send the second set of processor settings and metadata relating to the received data to the first analytic engine.

25. The computer program product as recited in claim 24 , wherein the reprocessing is based at least in pan urn the metadata.

26. The computer program product as recited in claim 24 , further comprising computer readable program code configured to display the metadata and at least some of the received data; and

computer readable program code configured to receive user input relating to at least one of the displayed metadata and the displayed data.

27. The computer program product as recited in claim 24 , wherein the metadata comprise one or more of:

a tag identifying a subsection of the received data;

a tag identifying a storage location of the received data;

a sequence number;

an indicator corresponding to a beginning of a data band;

as indicator corresponding to an end of the data band; and

a pointer corresponding to a second data band.

28. The computer program product as recited in claim 24 , further comprising storing the metadata in a computer accessible storage medium, the metadata relating to one or more of the received data and the processed data.

29. The computer program product as recited in claim 21 , further comprising computer readable program code configured as a second analytic engine, the second analytic engine comprising computer readable program code configured to perform:

the analyzing the at least portions of the processed data to determine whether the processed data is within the second set of parameters; and

the generating the second set of processor settings in response to determining the processed data is not within the second set of parameters.

30. The computer program product as recited in claim 21 , farther comprising computer readable program code configured as a first analytic engine, the first analytic engine comprising computer readable program code configured to perform:

the analyzing the at least portions of the received data to determine whether the received data is within the first set of parameters;

the generating the first set of processor settings in response to determining the received data is not within the first set of parameters; and

the reprocessing; and

wherein a second analytic engine is used to perform:

the analyzing the at least portions of the processed data to determine whether the processed data is within the second set of parameters; and

the generating the second set of processor settings in response to determining the processed data is not within the second set of parameters.

31. The computer program product as recited in claim 21 , wherein the computer readable program code configured to process the received data with the first set of processor settings comprises computer readable program code configured to: apply one or more algorithms to the received data, the one or more algorithms being selected from: a detection orientation algorithm, a detect bleed-through algorithm, a background smoothing algorithm, and a detection of page boundaries algorithm.

Assignments (8)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 15, 2024
From: KOFAX, INC.
To: TUNGSTEN AUTOMATION CORPORATION
Reel/Frame 067428/0392 →
RELEASE OF SECURITY INTEREST Recorded Jul 21, 2022
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: KAPOW TECHNOLOGIES, INC.; KOFAX, INC.
Reel/Frame 060805/0161 →
FIRST LIEN INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Jul 20, 2022
From: KOFAX, INC.; PSIGEN SOFTWARE, INC.
To: JPMORGAN CHASE BANK, N.A. AS COLLATERAL AGENT
Reel/Frame 060757/0565 →
SECURITY INTEREST Recorded Jul 20, 2022
From: KOFAX, INC.; PSIGEN SOFTWARE, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 060768/0159 →
SECURITY INTEREST Recorded Jul 7, 2017
From: KOFAX, INC.
To: CREDIT SUISSE
Reel/Frame 043108/0207 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 20, 2017
From: BORREY, ROLAND G.; SCHMIDTLER, MAURITIUS A.R.; TAYLOR, ROBERT A., MR.; FECHTER, JOEL S.; ASURI, HARI S.
To: KOFAX IMAGE PRODUCTS, INC..
Reel/Frame 042756/0135 →
CHANGE OF NAME Recorded Jun 20, 2017
From: KOFAX IMAGE PRODUCTS, INC.
To: KOFAX, INC
Reel/Frame 042913/0837 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 28, 2014
From: BORREY, ROLAND G.; SCHMIDTLER, MAURITIUS A.R.; ASURI, HARI S.
To: KOFAX, INC.
Reel/Frame 034051/0406 →