# US 10,120,856 B2 · Recognition of fields to modify image templates

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 10,120,856 B2
- Document ID: US10120856B2
- Status: Granted
- Kind: B2
- Application number: 14/928,112
- Filed: 2015-10-30
- Published: 2017-05-04
- Granted: 2018-11-06
- Earliest claimed: 2015-10-30
- Assignees: International Business Machines Corporation
- Applicants: International Business Machines Corporation
- Inventors: Srinivas Jandhyala; Krishnan P. Rajagopalan
- Web page: https://patentgrep.com/patent/US10120856B2

## CPC

- G06F 40/186: Templates
- G06F 3/0484: for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F 40/174: Form filling; Merging
- G06F 40/295: Named entity recognition
- G06V 30/412: Layout analysis of documents structured with printed lines or input boxes, e.g. business forms or tables
- G06V 30/10: Character recognition
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G06V: IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING

## Abstract

Modifying image templates based on recognition of fields (zones). A template is created based on a first form and, upon application of the template to a second form, fields of the template are modified to align with fields of the second form.

## Claims

### Claim 1

A method comprising:
identifying, on a first form, a first field name corresponding to a first field;
identifying, within the first field, first content, the first content having a first length;
determining a first set of coordinates for the first field, the first set of coordinates including the first length;
generating a first template based, at least in part, on the first set of coordinates, the first template including a first template field corresponding to the first field;
applying the first template to a second form having a second field name;
determining the first template field of the first template is not proximate the second field name of the second form;
generating a second template having a second template field by, with reference to the first template, locating the first template field proximate the second field name, the second form including a second content associated with the second field name, the second content located in a second field proximate the second field name, the second content having a second length; and
generating a second set of coordinates for the second template field including the second length;
wherein:
at least determining the first set of coordinates for the set of first fields on the first form is performed by computer software running on computer hardware.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
receiving a set of adjustments for the second template field;
wherein:
adjusting the second template field is further based, at least in part, on the set of adjustments.

### Claim 3 (depends on 2)

The method of claim 2, wherein the set of adjustments include a manual adjustment to be made by a user.

### Claim 4 (depends on 1)

The method of claim 1, further comprising:
displaying the second template.

### Claim 5 (depends on 1)

The method of claim 1, wherein superimposing the first template on the second form is performed at a runtime.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
storing the second template.

### Claim 7 (depends on 1)

The method of claim 1, further comprising:
identifying, on the second form, the second field name corresponding to the second field; and
determining that the second field name is synonymous to the first field name.

### Claim 8

A computer program product comprising:
a computer readable storage medium having stored thereon:
first instructions executable by a device to cause the device to identify, on a first form, a first field name corresponding to a first field;
sixth instructions executable by the device to cause the device to identify, within the first field, first content, the first content having a first length;
second instructions executable by the device to cause the device to determine a first set of coordinates for the first field, the first set of coordinates including the first length;
third instructions executable by the device to cause the device to generate a first template based, at least in part, on the first set of coordinates and, the first template including a first template field corresponding to the first field;
fourth instructions executable by the device to cause the device to apply the first template to a second form having a second field name;
seventh instruction executable by the device to determine the first template field of the first template is not proximate the second field name of the second form;
ninth instructions executable by the device to cause the device to generate a second template having a second template field by, with reference to the first template, locating the first template field proximate the second field name, the second form including a second content associated with the second field name, the second content located in a second field proximate the second field name, the second content having a second length; and
fifth instructions executable by the device to cause the device to generate a second set of coordinates for the second template field including the second length.

### Claim 9 (depends on 8)

The computer program product of claim 8, further comprising:
eighth instructions executable by the device to cause the device to receive a set of adjustments to the second set of coordinates for the second template field;
wherein:
adjusting the second template field is further based, at least in part, on the set of adjustments.

### Claim 10 (depends on 9)

The computer program product of claim 9, wherein the set of adjustments include a manual adjustment to be made by a user.

### Claim 11 (depends on 8)

The computer program product of claim 8, further comprising:
eighth instructions executable by the device to cause the device to display the second template.

### Claim 12 (depends on 8)

The computer program product of claim 8, wherein superimposing the first template on the second form is performed at a runtime.

### Claim 13 (depends on 8)

The computer program product of claim 8, further comprising:
eighth instructions executable by the device to cause the device to store the second form.

### Claim 14 (depends on 8)

The computer program product of claim 8, further comprising:
eight instructions executable by the device to cause the device to identify, on the second form, the second field name corresponding to the second field; and
tenth instructions executable by the device to cause the device to determine that the second field name is synonymous to the first field name.

### Claim 15

A computer system comprising:
a processor set; and
a computer readable storage medium;
wherein:
the processor set is structured, located, connected, and/or programmed to execute instructions stored on the computer readable storage medium; and
the instructions include:
first instructions executable by a device to cause the device to identify, on a first form, a first field name corresponding to a first field;
sixth instructions executable by the device to cause the device to identify, within the first field, first content, the first content having a first length;
second instructions executable by the device to cause the device to determine a first set of coordinates for the first field, the first set of coordinates including the first length;
third instructions executable by the device to cause the device to generate a first template based, at least in part, on the first set of coordinates and, the first template including a first template field corresponding to the first field;
fourth instructions executable by the device to cause the device to apply the first template to a second form having a second field name;
seventh instruction executable by the device to determine the first template field of the first template is not proximate the second field name of the second form;
ninth instructions executable by the device to cause the device to generate a second template having a second template field by, with reference to the first template, locating the first template field proximate the second field name, the second form including a second content associated with the second field name, the second content located in a second field proximate the second field name, the second content having a second length; and
fifth instructions executable by the device to cause the device to generate a second set of coordinates for the second template field including the second length.

### Claim 16 (depends on 15)

The computer system of claim 15, further comprising:
eighth instructions executable by the device to cause the device to receive a set of adjustments to the second set of coordinates for the second template field;
wherein:
adjusting the second template field is further based, at least in part, on the set of adjustments.

### Claim 17 (depends on 15)

The computer system of claim 15, further comprising:
eighth instructions executable by the device to cause the device to display the second template.

### Claim 18 (depends on 15)

The computer system of claim 15, wherein the first template on the second form is performed at a runtime.

### Claim 19 (depends on 16)

The computer system of claim 16, wherein the set of adjustments include a manual adjustment to be made by a user.

### Claim 20 (depends on 15)

The computer system of claim 15, further comprising:
eight instructions executable by the device to cause the device to identify, on the second form, the second field name corresponding to the second field; and
tenth instructions executable by the device to cause the device to determine that the second field name is synonymous to the first field name.
