Skip to content

Commit ec2ac48

Browse files
authored
Merge pull request #216020 from laujan/215715-neta-updates
215715 neta updates
2 parents 13460de + 5bcd955 commit ec2ac48

File tree

1 file changed

+131
-33
lines changed

1 file changed

+131
-33
lines changed

articles/applied-ai-services/form-recognizer/concept-id-document.md

Lines changed: 131 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,50 +1,53 @@
11
---
2-
title: Identity document (ID) processing – Form Recognizer
2+
title: Form Recognizer Identity Document (ID) model
33
titleSuffix: Azure Applied AI Services
4-
description: Automate identity document (ID) processing of driver licenses, passports, and more with Form Recognizer.
4+
description: Concepts related to data extraction and analysis using the prebuilt ID document model and extracting information from identity documents with OCR and AI.
55
author: laujan
66
manager: nitinme
77
ms.service: applied-ai-services
88
ms.subservice: forms-recognizer
99
ms.topic: conceptual
10-
ms.date: 10/14/2022
10+
ms.date: 10/27/2022
1111
ms.author: lajanuar
12-
monikerRange: '>=form-recog-2.1.0'
1312
recommendations: false
13+
ms.custom: references.regions
1414
---
1515
<!-- markdownlint-disable MD033 -->
1616

1717
# Identity document (ID) processing
1818

19-
[!INCLUDE [applies to v3.0 and v2.1](includes/applies-to-v3-0-and-v2-1.md)]
19+
::: moniker range="form-recog-3.0.0"
20+
[!INCLUDE [applies to v3.0](includes/applies-to-v3-0.md)]
21+
::: moniker-end
2022

21-
## What is identity document (ID) processing
23+
::: moniker range="form-recog-2.1.0"
24+
[!INCLUDE [applies to v2.1](includes/applies-to-v2-1.md)]
25+
::: moniker-end
2226

23-
Identity document (ID) processing involves extraction of data from identity documents whether manually or using OCR based techniques. Examples of identity documents include passports, driver licenses, resident cards, and national identity cards like the social security card in the US. It is an important step in any business process that requires some proof of identity. Examples include customer verification in banks and other financial institutions, mortgage applications, medical visits, claim processing, hospitality industry, and more. Individuals provide some proof of their identity via driver licenses, passports, and other similar documents so that the business can efficiently verify them before providing services and benefits.
24-
25-
## Form Recognizer Identity document (ID) model
26-
27-
The Form Recognizer Identity document (ID) model combines Optical Character Recognition (OCR) with deep learning models to analyze and extract key information from identity documents: US Drivers Licenses (all 50 states and District of Columbia), international passport biographical pages, US state IDs, social security cards, and permanent resident cards and more. The API analyzes identity documents, extracts key information, and returns a structured JSON data representation.
27+
The ID document model combines Optical Character Recognition (OCR) with deep learning models to analyze and extract key information from identity documents: US Drivers Licenses (all 50 states and District of Columbia), international passport biographical pages, US state IDs, social security cards, and permanent resident cards and more. The API analyzes identity documents, extracts key information, and returns a structured JSON data representation.
2828

2929
***Sample U.S. Driver's License processed with [Form Recognizer Studio](https://formrecognizer.appliedai.azure.com/studio/prebuilt?formType=idDocument)***
3030

3131
:::image type="content" source="media/studio/analyze-drivers-license.png" alt-text="Image of a sample driver's license.":::
3232

3333
## Development options
3434

35+
::: moniker range="form-recog-3.0.0"
3536
The following tools are supported by Form Recognizer v3.0:
3637

3738
| Feature | Resources | Model ID |
3839
|----------|-------------|-----------|
3940
|**ID document model**|<ul><li> [**Form Recognizer Studio**](https://formrecognizer.appliedai.azure.com)</li><li>[**REST API**](https://westus.dev.cognitive.microsoft.com/docs/services/form-recognizer-api-2022-08-31/operations/AnalyzeDocument)</li><li>[**C# SDK**](quickstarts/get-started-sdks-rest-api.md?view=form-recog-3.0.0&preserve-view=true)</li><li>[**Python SDK**](quickstarts/get-started-sdks-rest-api.md?view=form-recog-3.0.0&preserve-view=true)</li><li>[**Java SDK**](quickstarts/get-started-sdks-rest-api.md?view=form-recog-3.0.0&preserve-view=true)</li><li>[**JavaScript SDK**](quickstarts/get-started-sdks-rest-api.md?view=form-recog-3.0.0&preserve-view=true)</li></ul>|**prebuilt-idDocument**|
41+
::: moniker-end
4042

41-
### Try Identity document (ID) extraction
43+
::: moniker range="form-recog-2.1.0"
4244

4345
The following tools are supported by Form Recognizer v2.1:
4446

4547
| Feature | Resources |
4648
|----------|-------------------------|
4749
|**ID document model**| <ul><li>[**Form Recognizer labeling tool**](https://fott-2-1.azurewebsites.net/prebuilts-analyze)</li><li>[**REST API**](/azure/applied-ai-services/form-recognizer/how-to-guides/use-sdk-rest-api?view=form-recog-2.1.0&preserve-view=true&tabs=windows&pivots=programming-language-rest-api#analyze-identity-id-documents)</li><li>[**Client-library SDK**](/azure/applied-ai-services/form-recognizer/how-to-guides/v2-1-sdk-rest-api)</li><li>[**Form Recognizer Docker container**](containers/form-recognizer-container-install-run.md?tabs=id-document#run-the-container-with-the-docker-compose-up-command)</li></ul>|
50+
::: moniker-end
4851

4952
Extract data, including name, birth date, machine-readable zone, and expiration date, from ID documents using the Form Recognizer Studio. You'll need the following resources:
5053

@@ -54,7 +57,9 @@ Extract data, including name, birth date, machine-readable zone, and expiration
5457

5558
:::image type="content" source="media/containers/keys-and-endpoint.png" alt-text="Screenshot: keys and endpoint location in the Azure portal.":::
5659

57-
#### Form Recognizer Studio
60+
::: moniker range="form-recog-3.0.0"
61+
62+
#### Form Recognizer Studio
5863

5964
> [!NOTE]
6065
> Form Recognizer studio is available with the v3.0 API (API version 2022-08-31 generally available (GA) release)
@@ -69,6 +74,50 @@ Extract data, including name, birth date, machine-readable zone, and expiration
6974

7075
> [!div class="nextstepaction"]
7176
> [Try Form Recognizer Studio](https://formrecognizer.appliedai.azure.com/studio/prebuilt?formType=idDocument)
77+
::: moniker-end
78+
79+
::: moniker range="form-recog-2.1.0"
80+
81+
#### Form Recognizer sample labeling tool
82+
83+
1. Navigate to the [Form Recognizer Sample Tool](https://fott-2-1.azurewebsites.net/).
84+
85+
1. On the sample tool home page, select **Use prebuilt model to get data**.
86+
87+
:::image type="content" source="media/label-tool/prebuilt-1.jpg" alt-text="Analyze results of Form Recognizer Layout":::
88+
89+
1. Select the **Form Type** to analyze from the dropdown window.
90+
91+
1. Choose a URL for the file you would like to analyze from the below options:
92+
93+
* [**Sample invoice document**](https://raw.githubusercontent.com/Azure-Samples/cognitive-services-REST-api-samples/master/curl/form-recognizer/invoice_sample.jpg).
94+
* [**Sample ID document**](https://raw.githubusercontent.com/Azure-Samples/cognitive-services-REST-api-samples/master/curl/form-recognizer/DriverLicense.png).
95+
* [**Sample receipt image**](https://raw.githubusercontent.com/Azure-Samples/cognitive-services-REST-api-samples/master/curl/form-recognizer/contoso-allinone.jpg).
96+
* [**Sample business card image**](https://raw.githubusercontent.com/Azure/azure-sdk-for-python/master/sdk/formrecognizer/azure-ai-formrecognizer/samples/sample_forms/business_cards/business-card-english.jpg).
97+
98+
1. In the **Source** field, select **URL** from the dropdown menu, paste the selected URL, and select the **Fetch** button.
99+
100+
:::image type="content" source="media/label-tool/fott-select-url.png" alt-text="Screenshot of source location dropdown menu.":::
101+
102+
1. In the **Form recognizer service endpoint** field, paste the endpoint that you obtained with your Form Recognizer subscription.
103+
104+
1. In the **key** field, paste the key you obtained from your Form Recognizer resource.
105+
106+
:::image type="content" source="media/fott-select-form-type.png" alt-text="Screenshot: select form type dropdown window.":::
107+
108+
1. Select **Run analysis**. The Form Recognizer Sample Labeling tool will call the Analyze Prebuilt API and analyze the document.
109+
110+
1. View the results - see the key-value pairs extracted, line items, highlighted text extracted and tables detected.
111+
112+
:::image type="content" source="media/id-example-drivers-license.jpg" alt-text="Analyze Results of Form Recognizer invoice model":::
113+
114+
1. Download the JSON output file to view the detailed results.
115+
116+
* The "readResults" node contains every line of text with its respective bounding box placement on the page.
117+
* The "selectionMarks" node shows every selection mark (checkbox, radio mark) and whether its status is "selected" or "unselected".
118+
* The "pageResults" section includes the tables extracted. For each table, the text, row, and column index, row and column spanning, bounding box, and more are extracted.
119+
* The "documentResults" field contains key/value pairs information and line items information for the most relevant parts of the document.
120+
::: moniker-end
72121

73122
## Input requirements
74123

@@ -78,19 +127,23 @@ Extract data, including name, birth date, machine-readable zone, and expiration
78127

79128
| Model | Language—Locale code | Default |
80129
|--------|:----------------------|:---------|
81-
|ID document| <ul><li>English (United States)—en-US (driver's license)</li><li>Biographical pages from international passports</br> (excluding visa and other travel documents)</li><li>English (United States)—en-US (state ID)</li><li>English (United States)—en-US (social security card)</li><li>English (United States)—en-US (Residence permit card)</li></ul></br>|English (United States)—en-US|
130+
|ID document| <ul><li>English (United States)—en-US (driver's license)</li><li>Biographical pages from international passports</br> (excluding visa and other travel documents)</li><li>English (United States)—en-US (state ID)</li><li>English (United States)—en-US (social security card)</li><li>English (United States)—en-US (permanent resident card)</li></ul></br>|English (United States)—en-US|
131+
132+
::: moniker range="form-recog-3.0.0"
82133

83134
## Field extractions
84135

85-
Below are the fields extracted per document type. The Azure Form Recognizer ID model `prebuilt-idDocument` extracts the below fields in the `documents.*.fields`. It also extracts all the text in the documents, words, lines and styles which will be included in the JSON output in the different sections.
86-
* `pages.*.words`
87-
* `pages.*.lines`
88-
* `paragraphs`
89-
* `styles`
90-
* `documents`
91-
* `documents.*.fields`
136+
Below are the fields extracted per document type. The Azure Form Recognizer ID model `prebuilt-idDocument` extracts the below fields in the `documents.*.fields`. It also extracts all the text in the documents, words, lines, and styles that are included in the JSON output in the different sections.
137+
138+
* `pages.*.words`
139+
* `pages.*.lines`
140+
* `paragraphs`
141+
* `styles`
142+
* `documents`
143+
* `documents.*.fields`
144+
145+
### Document type - `idDocument.driverLicense` fields extracted
92146

93-
#### Document type - `idDocument.driverLicense` fields extracted:
94147
| Field | Type | Description | Example |
95148
|:------|:-----|:------------|:--------|
96149
|`CountryRegion`|`countryRegion`|Country or region code|USA|
@@ -112,7 +165,8 @@ Below are the fields extracted per document type. The Azure Form Recognizer ID m
112165
|`Restrictions`|`string`|Restrictions|B|
113166
|`VehicleClassifications`|`string`|Vehicle classification|D|
114167

115-
#### Document type - `idDocument.passport` fields extracted:
168+
### Document type - `idDocument.passport` fields extracted
169+
116170
| Field | Type | Description | Example |
117171
|:------|:-----|:------------|:--------|
118172
|`DocumentNumber`|`string`|Passport number|340020013|
@@ -142,7 +196,8 @@ Below are the fields extracted per document type. The Azure Form Recognizer ID m
142196
|`MachineReadableZone.DateOfExpiration`|`date`|Date of expiration|2019-05-05|
143197
|`MachineReadableZone.Sex`|`string`|Sex|F|
144198

145-
#### Document type - `idDocument.nationalIdentityCard` fields extracted:
199+
### Document type - `idDocument.nationalIdentityCard` fields extracted
200+
146201
| Field | Type | Description | Example |
147202
|:------|:-----|:------------|:--------|
148203
|`CountryRegion`|`countryRegion`|Country or region code|USA|
@@ -161,7 +216,8 @@ Below are the fields extracted per document type. The Azure Form Recognizer ID m
161216
|`Weight`|`string`|Weight|185LB|
162217
|`Sex`|`string`|Sex|M|
163218

164-
#### Document type - `idDocument.residencePermit` fields extracted:
219+
### Document type - `idDocument.residencePermit` fields extracted
220+
165221
| Field | Type | Description | Example |
166222
|:------|:-----|:------------|:--------|
167223
|`CountryRegion`|`countryRegion`|Country or region code|USA|
@@ -175,25 +231,67 @@ Below are the fields extracted per document type. The Azure Form Recognizer ID m
175231
|`PlaceOfBirth`|`string`|Place of birth|Germany|
176232
|`Category`|`string`|Permit category|DV2|
177233

178-
#### Document type - `idDocument.usSocialSecurityCard` fields extracted:
234+
### Document type - `idDocument.usSocialSecurityCard` fields extracted
235+
179236
| Field | Type | Description | Example |
180237
|:------|:-----|:------------|:--------|
181238
|`DocumentNumber`|`string`|Social security card number|WDLABCD456DG|
182239
|`FirstName`|`string`|Given name and middle initial if applicable|LIAM R.|
183240
|`LastName`|`string`|Surname|TALBOT|
184241
|`DateOfIssue`|`date`|Date of issue|08/12/2012|
185242

243+
::: moniker-end
244+
245+
::: moniker range="form-recog-2.1.0"
246+
247+
### ID document field extractions
248+
249+
|Name| Type | Description | Standardized output|
250+
|:-----|:----|:----|:----|
251+
| DateOfIssue | Date | Issue date | yyyy-mm-dd |
252+
| Height | String | Height of the holder. | |
253+
| Weight | String | Weight of the holder. | |
254+
| EyeColor | String | Eye color of the holder. | |
255+
| HairColor | String | Hair color of the holder. | |
256+
| DocumentDiscriminator | String | Document discriminator is a security code that identifies where and when the license was issued. | |
257+
| Endorsements | String | More driving privileges granted to a driver such as Motorcycle or School bus. | |
258+
| Restrictions | String | Restricted driving privileges applicable to suspended or revoked licenses.| |
259+
| VehicleClassification | String | Types of vehicles that can be driven by a driver. ||
260+
| CountryRegion | countryRegion | Country or region code compliant with ISO 3166 standard | |
261+
| DateOfBirth | Date | DOB | yyyy-mm-dd |
262+
| DateOfExpiration | Date | Expiration date DOB | yyyy-mm-dd |
263+
| DocumentNumber | String | Relevant passport number, driver's license number, etc. | |
264+
| FirstName | String | Extracted given name and middle initial if applicable | |
265+
| LastName | String | Extracted surname | |
266+
| Nationality | countryRegion | Country or region code compliant with ISO 3166 standard (Passport only) | |
267+
| Sex | String | Possible extracted values include "M", "F" and "X" | |
268+
| MachineReadableZone | Object | Extracted Passport MRZ including two lines of 44 characters each | "P<USABROOKS<<JENNIFER<<<<<<<<<<<<<<<<<<<<<<< 3400200135USA8001014F1905054710000307<715816" |
269+
| DocumentType | String | Document type, for example, Passport, Driver's License, Social security card and more | "passport" |
270+
| Address | String | Extracted address, address is also parsed to its components - address, city, state, country, zip code ||
271+
| Region | String | Extracted region, state, province, etc. (Driver's License only) | |
272+
273+
### Migration guide and REST API v3.0
274+
275+
* Follow our [**Form Recognizer v3.0 migration guide**](v3-migration-guide.md) to learn how to use the v3.0 version in your applications and workflows.
276+
277+
* Explore our [**REST API**](https://westus.dev.cognitive.microsoft.com/docs/services/form-recognizer-api-2022-08-31/operations/AnalyzeDocument) to learn more about the v3.0 version and new capabilities.
278+
279+
::: moniker-end
186280

187281
## Next steps
188282

189-
* Try the prebuilt ID model in the [Form Recognizer Studio](https://formrecognizer.appliedai.azure.com/studio/prebuilt?formType=idDocument). Use the sample documents or bring your own documents.
283+
::: moniker range="form-recog-3.0.0"
190284

191-
* Complete a Form Recognizer quickstart:
285+
* [Learn how to process your own forms and documents](quickstarts/try-v3-form-recognizer-studio.md) with the [Form Recognizer Studio](https://formrecognizer.appliedai.azure.com/studio)
192286

193-
> [!div class="nextstepaction"]
194-
> [Form Recognizer quickstart](/azure/applied-ai-services/form-recognizer/how-to-guides/v2-1-sdk-rest-api)
287+
* Complete a [Form Recognizer quickstart](quickstarts/get-started-sdks-rest-api.md?view=form-recog-3.0.0&preserve-view=true) and get started creating a document processing app in the development language of your choice.
195288

196-
* Explore our REST API:
289+
::: moniker-end
197290

198-
> [!div class="nextstepaction"]
199-
> [Form Recognizer API v3.0](https://westus.dev.cognitive.microsoft.com/docs/services/form-recognizer-api-2022-08-31/operations/AnalyzeDocument)
291+
::: moniker range="form-recog-2.1.0"
292+
293+
* [Learn how to process your own forms and documents](quickstarts/try-sample-label-tool.md) with the [Form Recognizer sample labeling tool](https://fott-2-1.azurewebsites.net/)
294+
295+
* Complete a [Form Recognizer quickstart](quickstarts/get-started-sdks-rest-api.md?view=form-recog-2.1.0&preserve-view=true) and get started creating a document processing app in the development language of your choice.
296+
297+
::: moniker-end

0 commit comments

Comments
 (0)