IP Library Granted Patent US 9,769,354
Granted Patent B2
US 9,769,354 · App. 14/814,455 · Granted Sep 19, 2017

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,769,354
App. No.
14/814,455
Granted
Sep 19, 2017
Kind
B2
Abstract

An efficient method and system to enhance digital acquisition devices for analog data is presented. The enhancements offered by the method and system 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. The method of virtual reacquisition renders unnecessary the physical reacquisition of the analog data in case the digital data obtained by the acquisition device are of insufficient quality. The method and system allows multiple users to access the same acquisition device for analog data. In some embodiments, 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. The preferred processing settings and attributes are determined interactively in real time as well as non real time, automatically and a combination thereof.

Claims (73)

1. A computer-implemented data processing method comprising:

receiving image data from a data acquisition device;

automatically analyzing, using a first analytic engine, at least portions of the image data to determine whether the image data is within a first set of parameters;

generating a first set of processor settings when the image data is not within the first set of parameters;

processing the image data with the first set of processor settings to generate processed data;

automatically analyzing, using a second analytic engine, 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 using the second analytic engine, wherein generating the second set of processor settings comprises independently identifying a binarization threshold range for each image feature depicted in the at least portions of the processed data;

reprocessing the image data using the second set of processor settings to generate reprocessed data; and

outputting at least one of the processed data and the reprocessed data;

wherein the second set of parameters is different than the first set of parameters; and

wherein the first set of processor settings and the second set of processor settings each relate to one or more image characteristics selected from: brightness, contrast and gamma.

2. The method as recited in claim 1 , further comprising performing a plurality of thresholding iterations, each thresholding iteration comprising:

the 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 image data; and

the reprocessing the image data with the second set of processor settings to generate the reprocessed data, and

wherein for each of the plurality of thresholding iterations, the second set of processor settings comprises a different binarization threshold than a binarization threshold employed in an immediately previous thresholding iteration.

3. The method as recited in claim 2 , each thresholding iteration further comprising: extracting image features from one or more of the processed data and the reprocessed data.

4. The method as recited in claim 2 , each thresholding iteration further comprising: extracting textual information from one or more of the processed data and the reprocessed data, and the method further comprising assembling the extracted textual information from two or more of the thresholding iterations.

5. The method as recited in claim 1 , further comprising performing a plurality of thresholding iterations on a per-feature basis.

6. The method as recited in claim 4 , wherein the extracted textual information comprises a plurality of characters, and the method further comprising:

determining a threshold level of each of the plurality of characters from each of the two or more thresholding iterations; and

selecting a set of optimal characters based on the threshold level of each of the plurality of characters; and

wherein the assembling further comprises assembling the set of optimal characters into a composite image.

7. The method as recited in claim 1 , wherein the at least portions of the image comprise one or more trouble regions identified based on a learn-by-example (LBE) training process.

8. The method as recited in claim 4 , further comprising validating the extracted textual information.

9. The method as recited in claim 1 , wherein the processing includes applying a color conversion algorithm, and

wherein applying the color conversion algorithm comprises normalizing intensity values across one or more color channels of the image data, the one or more color channels being selected from R, G and B.

10. The method as recited in claim 1 , wherein at least one of the first set of parameters and the second set of parameters comprise a classification confidence value threshold.

11. The method as recited in claim 1 , wherein each of the first set of processor settings and the second set of processor settings comprise one or more binarization thresholds.

12. The method as recited in claim 1 , wherein analyzing at least portions of the image data to determine whether the image data is within the first set of parameters comprises optical character recognition (OCR).

13. The method as recited in claim 1 , wherein analyzing at least portions of the image data to determine whether the image data is within the first set of parameters comprises a connected components analysis.

14. The method as recited in claim 1 , wherein the at least portions of the image data comprise a plurality of regions of interest each depicting one or more image features, and the method further comprising locating the plurality of regions of interest within the image data based at least in part on a learn-by-example (LBE) training operation; and

wherein analyzing at least portions of the image data to determine whether the image data is within the first set of parameters comprises an image classification operation based at least in part on the learn-by-example (LBE) training operation.

15. The method as recited in claim 1 , further comprising inverting the image data.

16. A computer program product configured to perform data processing, the computer program product comprising a non-transitory computer readable storage medium having stored thereon computer readable program instructions configured to cause one or more processors, upon execution of the instructions, to:

receive image data from a data acquisition device;

analyze at least portions of the image data to determine whether the image data is within a first set of parameters;

generate a first set of processor settings when the image data is not within the first set of parameters;

process the image data with the first set of processor settings to generate processed data;

perform a plurality of thresholding iterations, each thresholding iteration comprising:

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 reprocess the image data;

reprocessing the image data with the second set of processor settings to generate the reprocessed data;

extracting textual information from one or more of the processed data and the reprocessed data; and

wherein for each of the plurality of thresholding iterations, the second set of processor settings comprises a different binarization threshold than a binarization threshold employed in an immediately previous thresholding iteration; and

assemble the extracted textual information from two or more of the thresholding iterations; and

output at least one of the processed data and the reprocessed data,

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

wherein the first set of processor settings and the second set of processor settings each relate to one or more image characteristics selected from: brightness, contrast and gamma.

17. The computer program product as recited in claim 16 , the computer readable program instructions being further configured to cause one or more processors, upon execution of the instructions, to: perform a plurality of thresholding iterations, each thresholding iteration comprising:

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

generating the second set of processor settings to reprocess the image data;

reprocessing the image data with the second set of processor settings to generate the reprocessed data; and

extracting textual information from one or more of the processed data and the reprocessed data, and

wherein for each of the plurality of thresholding iterations, the second set of processor settings comprises a different binarization threshold than a binarization threshold employed in an immediately previous thresholding iteration.

18. A computer-implemented data processing device comprising one or more processors configured to execute logic; and

logic configured to cause at least one of the processors, upon execution of the logic, to:

receive image data from a data acquisition device;

analyze at least portions of the image data to determine whether the image data is within a first set of parameters;

generate a first set of processor settings when the image data is not within the first set of parameters;

process the image data with the first set of processor settings to generate processed data;

perform a plurality of thresholding iterations, each thresholding iteration comprising:

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 reprocess the image data;

reprocessing the image data with the second set of processor settings to generate the reprocessed data;

extracting textual information from one or more of the processed data and the reprocessed data; and

wherein for each of the plurality of thresholding iterations, the second set of processor settings comprises a different binarization threshold than a binarization threshold employed in an immediately previous thresholding iteration; and

validate the extracted textual information; and

output at least one of the processed data and the reprocessed data,

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

wherein the first set of processor settings and the second set of processor settings each relate to one or more image characteristics selected from: brightness, contrast and gamma.

19. The device as recited in claim 18 , further comprising logic configured to cause one or more of the processors to:

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

generate the second set of processor settings to reprocess the image data;

reprocess the image data with the second set of processor settings to generate the reprocessed data; and

extract textual information from one or more of the processed data and the reprocessed data, and

wherein for each of the plurality of thresholding iterations, the second set of processor settings comprises a different binarization threshold than a binarization threshold employed in an immediately previous thresholding iteration.

Assignments (6)
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 Jul 5, 2017
From: THRASHER, CHRISTOPHER W.; SHUSTOROVICH, ALEXANDER; THOMPSON, STEPHEN MICHAEL; AMTRUP, JAN W.; MACCIOLA, ANTHONY; BORREY, ROLAND G.; SCHMIDTLER, MAURITIUS A.R.; TAYLOR, ROBERT A.; FECHTER, JOEL S.; ASURI, HARI S.
To: KOFAX, INC.
Reel/Frame 042911/0683 →