IP Library Granted Patent US 9,710,704
Granted Patent B2
US 9,710,704 · App. 14/559,078 · Granted Jul 18, 2017

Method and apparatus for finding differences in documents

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,710,704
App. No.
14/559,078
Granted
Jul 18, 2017
Kind
B2
Abstract

Systems and methods for finding and presenting differences between documents are provided. One method includes identifying one or more differences between a first document and at least one second document. The method further includes determining each of the one or more differences to be either a significant difference or an insignificant difference. The determination of whether each of the one or more differences is a significant difference or an insignificant difference may be performed in an automated manner without intervention from a user. The method further includes providing an identification of the significant differences to the user. The method further includes either hiding the insignificant differences from the user or providing an identification of the insignificant differences in a different manner than a manner in which the identification of the significant differences is provided.

Claims (76)

1. A method for finding and presenting differences between a plurality of documents, the method comprising:

identifying, using a computing device comprising one or more processors, one or more differences between a first document and a second document of the plurality of documents;

determining, using the computing device, each of the one or more differences between the first document and the second document to be either a significant difference or an insignificant difference, wherein the determination of whether each of the one or more differences is a significant difference or an insignificant difference is performed in an automated manner without intervention from a user of the computing device;

providing an identification of the significant differences to the user; and

either hiding the insignificant differences from the user or providing an identification of the insignificant differences in a different manner than a manner in which the identification of the significant differences is provided.

2. The method of claim 1 , further comprising:

performing optical character recognition on the first document and the at least one second document;

wherein identifying the one or more differences between the first document and the at least one second document comprises identifying at least one of the one or more differences based on the optical character recognition.

3. The method of claim 2 , wherein:

identifying the one or more differences comprises identifying one or more OCR-related differences likely to have resulted from the optical character recognition; and

determining each of the one or more differences to be either a significant difference or an insignificant difference comprises determining the one or more OCR-related differences to be insignificant differences.

4. The method of claim 3 , wherein identifying the one or more OCR-related differences comprises, for at least a first difference of the one or more differences:

comparing a first set of hypotheses of recognition for the first difference in the first document with a second set of hypotheses of recognition for the first difference in the at least one second document, wherein the first set of hypotheses of recognition and the second set of hypotheses of recognition comprise a plurality of candidates identified by the optical character recognition as potentially corresponding to the first difference; and

identifying the first difference as one of the one or more OCR-related differences when the first set of hypotheses of recognition includes a same candidate as the second set of hypotheses of recognition.

5. The method of claim 1 , wherein determining each of the one or more differences to be either a significant difference or an insignificant difference comprises, for at least a first difference of the one or more differences:

determining a first width of a first blank space associated with the first difference in the first document;

determining a second width of a second blank space associated with the first difference in the at least one second document; and

determining the first difference to be either a significant difference or an insignificant difference based on a comparison of the first width and the second width.

6. The method of claim 5 , wherein determining the first difference to be either a significant difference or an insignificant difference based on the comparison of the first width and the second width comprises determining the first difference to be a significant difference when a difference between the first width and the second width exceeds a threshold value.

7. The method of claim 1 , wherein determining each of the one or more differences to be either a significant difference or an insignificant difference comprises, for at least a first difference of the one or more differences:

determining the first difference to be associated with a line break;

determining a distance from a last character to a right text edge in a line before the line break for at least one of the first document and the at least one second document; and

determining the first difference to be a significant difference when the distance exceeds a threshold value.

8. The method of claim 1 , wherein providing an identification of the significant differences to the user comprises:

providing a list of the significant differences to the user; and

when the user selects a significant difference from the list of significant differences, providing a visualization of the significant difference in the first document and the at least one second document.

9. The method of claim 1 , further comprising classifying each of the significant differences according to one of a plurality of difference types, wherein providing an identification of the significant differences to the user comprises providing an indication of the difference type for each of the significant differences.

10. The method of claim 1 , further comprising providing the user with an option to display both the identification of the significant differences and the identification of the insignificant differences.

11. A system comprising:

at least one computing device operably coupled to at least one memory and configured to:

identify one or more differences between a first document and a second document of a plurality of documents;

determine each of the one or more differences between the first document and the second document to be either a significant difference or an insignificant difference, wherein the at least one computing device is configured to determine whether each of the one or more differences is a significant difference or an insignificant difference in an automated manner without intervention from a user of the at least one computing device;

provide an identification of the significant differences to the user; and

either hide the insignificant differences from the user or provide an identification of the insignificant differences in a different manner than a manner in which the identification of the significant differences is provided.

12. The system of claim 11 , wherein the at least one computing device is configured to:

perform optical character recognition on the first document and the at least one second document; and

identify at least one of the one or more differences based on the optical character recognition.

13. The system of claim 12 , wherein the at least one computing device is configured to:

identify one or more OCR-related differences likely to have resulted from the optical character recognition; and

determine the one or more OCR-related differences to be insignificant differences.

14. The system of claim 13 , wherein the at least one computing device is configured, for at least a first difference of the one or more differences, to:

compare a first set of hypotheses of recognition for the first difference in the first document with a second set of hypotheses of recognition for the first difference in the at least one second document, wherein the first set of hypotheses of recognition and the second set of hypotheses of recognition comprise a plurality of candidates identified by the optical character recognition as potentially corresponding to the first difference; and

identify the first difference as one of the one or more OCR-related differences when the first set of hypotheses of recognition includes a same candidate as the second set of hypotheses of recognition.

15. The system of claim 11 , wherein the at least one computing device is configured, for at least a first difference of the one or more differences, to:

determine a first width of a first blank space associated with the first difference in the first document;

determine a second width of a second blank space associated with the first difference in the at least one second document; and

determine the first difference to be either a significant difference or an insignificant difference based on a comparison of the first width and the second width.

16. The system of claim 15 , wherein the at least one computing device is configured to determine the first difference to be a significant difference when a difference between the first width and the second width exceeds a threshold value.

17. The system of claim 11 , wherein the at least one computing device is configured, for at least a first difference of the one or more differences, to:

determine the first difference to be associated with a line break;

determine a distance from a last character to a right text edge in a line before the line break for at least one of the first document and the at least one second document; and

determine the first difference to be a significant difference when the distance exceeds a threshold value.

18. The system of claim 11 , wherein the at least one computing device is configured to:

provide a list of the significant differences to the user; and

when the user selects a significant difference from the list of significant differences, provide a visualization of the significant difference in the first document and the at least one second document.

19. The system of claim 11 , wherein the at least one computing device is configured to classify each of the significant differences according to one of a plurality of difference types and provide an indication of the difference type for each of the significant differences.

20. A computer-readable storage medium having instructions stored thereon that, when executed by a processor, cause the processor to perform operations comprising:

performing optical character recognition on a first document and a second document of a plurality of documents;

identifying one or more differences between the first document and the second document of the plurality of documents based at least in part on the optical character recognition;

determining each of the one or more differences between the first document and the second document to be either a significant difference or an insignificant difference, wherein the determination of whether each of the one or more differences is a significant difference or an insignificant difference is performed in an automated manner without intervention from a user;

providing an identification of the significant differences to the user; and

either hiding the insignificant differences from the user or providing an identification of the insignificant differences in a different manner than a manner in which the identification of the significant differences is provided.

21. The computer-readable storage medium of claim 20 , wherein:

identifying the one or more differences comprises identifying one or more OCR-related differences likely to have resulted from the optical character recognition; and

determining each of the one or more differences to be either a significant difference or an insignificant difference comprises determining the one or more OCR-related differences to be insignificant differences.

22. The computer-readable storage medium of claim 21 , wherein identifying the one or more OCR-related differences comprises, for at least a first difference of the one or more differences:

comparing a first set of hypotheses of recognition for the first difference in the first document with a second set of hypotheses of recognition for the first difference in the at least one second document, wherein the first set of hypotheses of recognition and the second set of hypotheses of recognition comprise a plurality of candidates identified by the optical character recognition as potentially corresponding to the first difference; and

identifying the first difference as one of the one or more OCR-related differences when the first set of hypotheses of recognition includes a same candidate as the second set of hypotheses of recognition.

23. The computer-readable storage medium of claim 20 , wherein determining each of the one or more differences to be either a significant difference or an insignificant difference comprises, for at least a first difference of the one or more differences:

determining a first width of a first blank space associated with the first difference in the first document;

determining a second width of a second blank space associated with the first difference in the at least one second document; and

determining the first difference to be a significant difference when a difference between the first width and the second width exceeds a threshold value.

24. The computer-readable storage medium of claim 20 , wherein determining each of the one or more differences to be either a significant difference or an insignificant difference comprises, for at least a first difference of the one or more differences:

determining the first difference to be associated with a line break;

determining a distance from a last character to a right text edge in a line before the line break for at least one of the first document and the at least one second document; and

determining the first difference to be a significant difference when the distance exceeds a threshold value.

Assignments (4)
SECURITY INTEREST Recorded Aug 14, 2023
From: ABBYY INC.; ABBYY USA SOFTWARE HOUSE INC.; ABBYY DEVELOPMENT INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS AGENT
Reel/Frame 064730/0964 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 25, 2022
From: ABBYY PRODUCTION LLC
To: ABBYY DEVELOPMENT INC.
Reel/Frame 059249/0873 →
MERGER Recorded Dec 31, 2018
From: ABBYY DEVELOPMENT LLC
To: ABBYY PRODUCTION LLC
Reel/Frame 047997/0652 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 16, 2015
From: PANFEROV, VASILY VLADIMIROVICH; ISAEV, ANDREY ANATOLIEVICH; BOBROVA, CATHERINE YURIEVNA; ZHUKOVSKAYA, OLGA
To: ABBYY DEVELOPMENT LLC
Reel/Frame 034740/0191 →