你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

表单识别器读取 (OCR) 模型

本文适用于:表单识别器 v3.0 复选标记表单识别器 v3.0

注意

若要从标签、路标和海报等自然环境图像中提取文本,请使用计算机视觉 v4.0 预览版读取功能,借助一个性能增强的同步 API,该功能针对常规非文档图像进行了优化,可以更轻松地在用户体验方案中嵌入 OCR。

什么是适用于文档的 OCR?

适用于文档的光学字符识别 (OCR) 针对采用多种文件格式和全球语言的大型文本密集型文档进行了优化。 它包括许多功能,例如更高分辨率的文档图像扫描(更好地处理小型且密集的文本);段落检测;以及可填充的表单管理。 OCR 功能还包括一些高级方案,例如单个字符框、准确提取发票和收据中常见的关键字段以及其他预生成方案。

表单识别器中的 OCR - 读取模型

表单识别器 v3.0 的读取光学字符识别 (OCR) 模型采用高于计算机视觉读取的分辨率运行,并从 PDF 文档和扫描的图像中提取打印文本和手写文本。 它的预览版还支持从 Microsoft Word、Excel、PowerPoint 和 HTML 文档中提取文本。 它可检测段落、文本行、单词、位置和语言。 除自定义模型外,该读取模型也是其他表单识别器预生成模型(例如布局、常规文档、发票、收据、身份 (ID) 证件)的基础 OCR 引擎。

OCR 支持的文档类型

注意

  • 只有 API 版本 2022-06-30-preview 支持 Microsoft Word、Excel、PowerPoint 和 HTML 文件格式以及 GA 版本支持的其他所有文档类型。
  • 对于 Office 和 HTML 文件格式的预览版,读取 API 会忽略页面参数,默认提取所有页面。 每个嵌入图像计为 1 个页面单元,每个工作表、幻灯片和页面(最多 3000 个字符)计为 1 个页面。
Model 映像 PDF TIFF Word Excel PowerPoint HTML
prebuilt-read GA
(2022-08-31)
GA
(2022-08-31)
GA
(2022-08-31)
预览版
(2022-06-30-preview)
预览版
(2022-06-30-preview)
预览版
(2022-06-30-preview)
预览版
(2022-06-30-preview)

数据提取

Model 文本 语言检测
prebuilt-read

开发选项

表单识别器 v3.0 支持以下资源:

型号 资源 模型 ID
“读取”模型 表单识别器工作室REST APIC# SDKPython SDKJava SDKJavaScript prebuilt-read

试用表单识别器中的 OCR

尝试使用表单识别工作室从表单和文档中提取文本。 需要准备好以下资产:

  • Azure 订阅,可以免费创建一个

  • Azure 门户中的表单识别器实例。 可以使用免费定价层 (F0) 来试用该服务。 在部署资源后,选择“转到资源”以获取密钥和终结点。

屏幕截图:Azure 门户中的密钥和终结点位置。

表单识别器工作室

备注

目前,表单识别器工作室不支持读取版 v3.0 中的 Microsoft Word、Excel、PowerPoint 和 HTML 文件格式。

使用表单识别器工作室处理的示例表单

屏幕截图:表单识别器工作室中的读取处理。

  1. 在表单识别器工作室主页上,选择“读取”

  2. 可以分析示例文档,或选择“+ 添加”按钮上传自己的示例。

  3. 选择“分析”按钮:

    屏幕截图:分析“读取”菜单。

输入要求

  • 为获得最佳结果,请针对每个文档提供一张清晰的照片或高质量的扫描件。

  • 支持的文件格式:

    型号 PDF 图像:
    JPEG/JPG、PNG、BMP 和 TIFF
    Microsoft Office:
    Word (DOCX)、Excel (XLS)、PowerPoint (PPT) 和 HTML
    读取 ✱ REST API 版本
    2022/06/30-preview
    Layout
    常规文档
    预生成
    自定义

    ✱ 其他模型或版本当前不支持 Microsoft Office 文件。

  • 对于 PDF 和 TIFF,最多可处理 2000 页(对于免费层订阅,仅处理前两页)。

  • 用于分析文档的文件大小对于付费 (S0) 层必须小于 500 MB,对于免费 (F0) 层则必须小于 4 MB。

  • 图像尺寸必须介于 50 x 50 像素与 10,000 x 10,000 像素之间。

  • PDF 尺寸不超过 17 x 17 英寸,相当于法律专用纸或 A3 纸张尺寸或更小。

  • 如果 PDF 是密码锁定的文件,则必须先删除锁,然后才能提交它们。

  • 对于 1024 x 768 像素的图像,要提取的文本的最小高度为 12 像素。 此尺寸对应于 150 点/英寸 (DPI) 的大约 8 点文本。

  • 对于自定义模型训练,自定义模板模型的训练数据最大页数为 500,自定义神经模型的训练数据最大页数为 50,000。

  • 对于自定义模型训练,模板模型的训练数据总大小为 50 MB,神经模型的训练数据总大小为为 1G-MB。

支持的语言和区域设置

表单识别器 v3.0 版本支持读取 OCR 模型的多种语言。 有关支持的手写和印刷语言的完整列表,请参阅我们的语言支持

数据检测和提取

Microsoft Office 和 HTML 文本提取

使用 REST API 或该 API 版本的相应 SDK 来预览从 Microsoft Word、Excel、PowerPoint 和 HTML 文件进行的文本提取时,请使用参数 api-version=2022-06-30-preview。 下图展示了通过对图像运行 OCR 从 Word 文档中嵌入的图像中提取数字文本以及文本。

屏幕截图显示由表单识别器读取 OCR 提取的 Microsoft Word 文档。

模型输出中的页面单位计算如下:

文件格式 计算页单位 全部页
Word 最多 3,000 个字符 = 1 个页面单位,每个嵌入图像 = 1 个页面单位 每页最多 3,000 个字符的总页数 + 嵌入图像总数
Excel 每个工作表 = 1 个页面单位,每个嵌入图像 = 1 个页面单位 工作表总数 + 图像总数
PowerPoint 每张幻灯片 = 1 个页面单位,每个嵌入图像 = 1 个页面单位 幻灯片总数 + 图像总数
HTML 最多 3,000 个字符 = 1 个页面单位,不支持嵌入或链接的图像 每页最多 3,000 个字符的总页数

段落提取

表单识别器中的读取 OCR 模型将 paragraphs 集合中所有识别出的文本块提取为 analyzeResults 下的顶级对象。 此集合中的每个条目都表示一个文本块,并包含提取的文本 (content) 和边界 polygon 坐标。 span 信息指向包含文档全文的顶级 content 属性中的文本片段。

"paragraphs": [
    {
        "spans": [],
        "boundingRegions": [],
        "content": "While healthcare is still in the early stages of its Al journey, we are seeing pharmaceutical and other life sciences organizations making major investments in Al and related technologies.\" TOM LAWRY | National Director for Al, Health and Life Sciences | Microsoft"
    }
]

语言检测

表单识别器中的读取 OCR 模型将语言检测添加为针对文本行的一项新功能。 读取将预测为每个文本行检测到的主要语言以及 analyzeResultlanguages 集合中的 confidence

"languages": [
    {
        "spans": [
            {
                "offset": 0,
                "length": 131
            }
        ],
        "locale": "en",
        "confidence": 0.7
    },
]

从文档中提取页面

模型输出中的页面单位计算如下:

文件格式 计算页单位 全部页
图像 每个图像 = 1 个页面单位 图像总数
PDF PDF 中的每个页面 = 1 个页面单位 PDF 中的总页数
TIFF TIFF 中的每个图像 = 1 个页面单位 PDF 中的总图像数
"pages": [
    {
        "pageNumber": 1,
        "angle": 0,
        "width": 915,
        "height": 1190,
        "unit": "pixel",
        "words": [],
        "lines": [],
        "spans": [],
        "kind": "document"
    }
]

提取文本行和字词

读取 OCR 模型将打印和手写样式的文本提取为 lineswords。 模型输出所提取单词的边界 polygon 坐标和 confidencestyles 集合包含任何手写的行样式(如果检测到的话)以及指向关联文本的跨度。 此功能适用于受支持的手写语言

对于 Microsoft Word、Excel、PowerPoint 和 HTML 文件支持的预览版,读取将按原样提取所有嵌入文本。 对于任何嵌入图像,它将对图像运行 OCR,以提取文本,并将每个图像中的文本作为添加到 pages 集合的条目追加。 这些添加的条目将包括提取的文本行和单词、其边界多边形、置信度以及指向关联文本的跨度。

"words": [
    {
        "content": "While",
        "polygon": [],
        "confidence": 0.997,
        "span": {}
    },
],
"lines": [
    {
        "content": "While healthcare is still in the early stages of its Al journey, we",
        "polygon": [],
        "spans": [],
    }
]

选择页面以进行文本提取

对于较大的多页 PDF 文档,请使用 pages 查询参数指示用于文本提取的特定页码或页面范围。

注意

对于 Microsoft Word、Excel、PowerPoint 和 HTML 文件支持的预览版,读取 API 会忽略页面参数,默认提取所有页面。

文本行手写样式(仅限拉丁语)

响应将分类说明每个文本行是否为手写体,同时包括置信度评分。 此功能仅支持拉丁语。 以下示例显示了一个示例 JSON 片段。

"styles": [
{
    "confidence": 0.95,
    "spans": [
    {
        "offset": 509,
        "length": 24
    }
    "isHandwritten": true
    ]
}

后续步骤

完成表单识别器快速入门:

探索 REST API: