IP Library Granted Patent US 11,436,407
Granted Patent B2
US 11,436,407 · App. 16/940,604 · Granted Sep 6, 2022

Generating machine renderable representations of forms using machine learning

Inventors: Vinoth Jeba Kumar Radha Krishnan (Bangalore, IN); Ganesh Bhat (Bangalore, IN)
Assignee: Intuit Inc.
G06F40/177G06F16/212G06F16/2264G06F16/285
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,436,407
App. No.
16/940,604
Granted
Sep 6, 2022
Kind
B2
Abstract

A method may include clustering form elements into line objects and columns of a table of a structured representation by applying a trained multi-dimensional clustering model to spatial coordinates of the form elements, and assigning a table header line type to a table header line object of the line objects based on a spatial coordinate of the table header line object relative to a spatial coordinate of a topmost table data line object of the line objects, and a determination that a number of columns of the table header line object is within a threshold of a number of columns of the topmost table data line object. The topmost table data line object may be assigned a table data line type. The method may further include presenting the structured representation to a user.

Claims (83)

1. A method comprising:

clustering a plurality of form elements into a plurality of line objects and a plurality of columns of a table of a structured representation by applying a trained multi-dimensional clustering model to a plurality of spatial coordinates of the plurality of form elements, wherein applying the trained multi-dimensional clustering model to the spatial coordinates of the plurality of form elements comprises:

identifying a first form element of the plurality of form elements that corresponds to a first document element of the plurality of document elements;

identifying a second form element of the plurality of form elements that corresponds to a second document element of the plurality of document elements;

calculating a distance between the first document element and the second document element using the spatial coordinates corresponding to the first document element and the spatial coordinates corresponding to the second document element; and

in response to the distance being within a threshold distance, clustering the first form element and the second form element into a same line object of the plurality of line objects;

assigning a table header line type to a table header line object of the plurality of line objects based on:

a spatial coordinate of the table header line object relative to a spatial coordinate of a topmost table data line object of the plurality of line objects, wherein the topmost table data line object is assigned a table data line type, and

a determination that a number of columns of the table header line object is within a threshold of a number of columns of the topmost table data line object; and

presenting the structured representation to a user.

2. The method of claim 1 , wherein the plurality of line objects comprises a first line object and a second line object, and wherein the plurality of form elements comprises a first form element in the first line object and a second form element in the second line object, the method further comprising:

assigning, based on applying a trained classifier to the plurality of spatial coordinates of the plurality of form elements, a same column ID to the first form element and the second form element, wherein the same column ID identifies a column of the plurality of columns.

3. The method of claim 1 , further comprising:

receiving a correction to the structured representation from the user;

modifying the structured representation by re-clustering the plurality of form elements using the correction; and

retraining the trained multi-dimensional clustering model using the correction.

4. The method of claim 3 ,

wherein the correction modifies a line type of a line object in the plurality of line objects, and

wherein modifying the structured representation further comprises assigning, in the structured representation, the modified line type to the line object.

5. The method of claim 1 , further comprising

obtaining a plurality of document elements from a document; and

converting the plurality of document elements to the plurality of form elements, wherein the plurality of spatial coordinates of the plurality of form elements match a plurality of spatial coordinates describing placement of the plurality of document elements within the document.

6. The method of claim 1 , further comprising:

assigning a table data line type to a subset of the plurality of line objects, wherein the subset comprises the topmost table data line object; and

determining at least one spatial coordinate for at least one of the plurality of line objects.

7. A system, comprising:

a computer processor;

a data repository configured to store a structured representation comprising a plurality of line objects and a plurality of columns of a table; and

a structured representation generator, executing on the computer processor and configured to:

cluster a plurality of form elements into the plurality of line objects and the plurality of columns of the table by applying a trained multi-dimensional clustering model to a plurality of spatial coordinates of the plurality of form elements, wherein applying the trained multi-dimensional clustering model to the spatial coordinates corresponding to the plurality of document elements comprises:

identifying a first form element of the plurality of form elements that corresponds to a first document element of the plurality of document elements;

identifying a second form element of the plurality of form elements that corresponds to a second document element of the plurality of document elements;

calculating a distance between the first document element and the second document element using the spatial coordinates corresponding to the first document element and the spatial coordinates corresponding to the second document element; and

in response to the distance being within a threshold distance, clustering the first form element and the second form element into a same line object of the plurality of line objects,

assign a table header line type to a table header line object of the plurality of line objects based on:

a spatial coordinate of the table header line object relative to a spatial coordinate of a topmost table data line object of the plurality of line objects, wherein the topmost table data line object is assigned a table data line type, and

a determination that a number of columns of the table header line object is within a threshold of a number of columns of the topmost table data line object, and

present the structured representation to a user.

8. The system of claim 7 , wherein the plurality of line objects comprises a first line object and a second line object, wherein the plurality of form elements comprises a first form element in the first line object and a second form element in the second line object, and wherein the structured representation generator is further configured to:

assign, based on applying a trained classifier to the plurality of spatial coordinates of the plurality of form elements, a same column ID to the first form element and the second form element, wherein the same column ID identifies a column of the plurality of columns.

9. The system of claim 7 , wherein the structured representation generator is further configured to:

receive a correction to the structured representation from the user;

modify the structured representation by re-clustering the plurality of form elements using the correction; and

retrain the trained multi-dimensional clustering model using the correction.

10. The system of claim 9 ,

wherein the correction modifies a line type of a line object in the plurality of line objects, and

wherein modifying the structured representation further comprises assigning, in the structured representation, the modified line type to the line object.

11. The system of claim 7 , wherein the structured representation generator is further configured to:

obtain a plurality of document elements from a document; and

convert the plurality of document elements to the plurality of form elements, wherein the plurality of spatial coordinates of the plurality of form elements match a plurality of spatial coordinates describing placement of the plurality of document elements within the document.

12. The system of claim 7 , wherein the structured representation generator is further configured to:

assign a table data line type to a subset of the plurality of line objects, wherein the subset comprises the topmost table data line object; and

determine at least one spatial coordinate for at least one of the plurality of line objects.

13. A method comprising:

clustering an initial plurality of form elements into an initial plurality of line objects and an initial plurality of columns of an initial table of an initial structured representation by applying a trained multi-dimensional clustering model to an initial plurality of spatial coordinates of the initial plurality of form elements, the initial structured representation having a structured representation type;

assigning a table header line type to an initial table header line object of the initial plurality of line objects based on:

a spatial coordinate of the initial table header line object relative to a spatial coordinate of an initial topmost table data line object of the initial plurality of line objects, wherein the initial topmost table data line object is assigned a table data line type, and

a determination that a number of columns of the initial table header line object is within a threshold of a number of columns of the initial topmost table data line object;

adding the initial structured representation to a data repository;

clustering a next plurality of form elements into a next plurality of line objects and a next plurality of columns of a next table of a next structured representation by applying the trained multi-dimensional clustering model to a next plurality of spatial coordinates of the next plurality of form elements, the next structured representation having the structured representation type;

assigning the table header line type to a next table header line object of the next plurality of line objects based on:

a spatial coordinate of the next table header line object relative to a spatial coordinate of a next topmost table data line object of the next plurality of line objects, wherein the next topmost table data line object is assigned the table data line type, and

a determination that a number of columns of the next table header line object is within a threshold of a number of columns of the next topmost table data line object;

determining that the initial structured representation and the next structured representation are different; and

in response to determining that the initial structured representation and the next structured representation are different, replacing, in the data repository, the initial structured representation with the next structured representation.

14. The method of claim 13 , wherein determining that the initial structured representation and the next structured representation are different comprises:

determining that a number of columns of the initial table and a number of columns of the next table are different.

15. The method of claim 13 , wherein determining that the initial structured representation and the next structured representation are different comprises:

determining that a difference between a spatial coordinate of a column in the initial plurality of columns and a spatial coordinate of a corresponding column in the next plurality of columns exceeds a threshold.

16. The method of claim 13 , wherein determining that the initial structured representation and the next structured representation are different comprises:

determining that a number of line objects assigned the table header line type in the initial structured representation and a number of line objects assigned the table header line type in the next structured representation are different.

17. The method of claim 13 , further comprising

obtaining an initial plurality of document elements from an initial document and a next plurality of document elements from a next document;

converting the initial plurality of document elements to the initial plurality of form elements, wherein the initial plurality of spatial coordinates of the initial plurality of form elements match an initial plurality of spatial coordinates describing placement of the initial plurality of document elements within the initial document; and

converting the next plurality of document elements to the next plurality of form elements, wherein the next plurality of spatial coordinates of the next plurality of form elements match a next plurality of spatial coordinates describing placement of the next plurality of document elements within the next document.

18. The method of claim 13 , the method further comprising:

wherein the initial plurality of line objects comprises a first line object and a second line object,

wherein the initial plurality of form elements comprises a first form element in the first line object and a second form element in the second line object,

wherein the next plurality of line objects comprises a third line object and a fourth line object,

wherein the next plurality of form elements comprises a third form element in the third line object and a fourth form element in the fourth line object, and

wherein the method further comprises:

assigning, based on applying a trained classifier to the initial plurality of spatial coordinates of the initial plurality of form elements, an initial same column ID to the first form element and the second form element, wherein the initial same column ID identifies an initial column of the initial plurality of columns, and

assigning, based on applying the trained classifier to the next plurality of spatial coordinates of the next plurality of form elements, a next same column ID to the third form element and the fourth form element, wherein the next same column ID identifies a next column of the next plurality of columns.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 18, 2021
From: RADHA KRISHNAN, VINOTH JEBA KUMAR; BHAT, GANESH
To: INTUIT INC.
Reel/Frame 056589/0586 →
Continuity (1)
Related Publication 20220035996A1 · Feb 3, 2022