Модель макета azure Распознаватель документов
Эта статья относится кРаспознаватель документов версии 3.0. Более ранняя версия:Распознаватель документов версии 2.1
Эта статья относится кРаспознаватель документов версии 2.1. Более поздняя версия:Распознаватель документов версии 3.0
модель макета Распознаватель документов — это расширенный API анализа документов на основе машинного обучения, доступный в Распознаватель документов облаке. Он позволяет принимать документы в различных форматах и возвращать структурированные представления данных документов. API макетирования сочетает в себе мощные возможности улучшенной версии оптического распознавания символов (OCR) с моделями глубокого обучения для извлечения текста, таблиц, меток выделения и структуры документа.
Анализ макета документа
Анализ структуры документа — это процесс анализа документа для извлечения интересующих областей и их взаимосвязей. Цель состоит в извлечении текста и структурных элементов со страницы для создания более семантических моделей понимания. Существует два типа ролей, которые текст воспроизводит в макете документа:
- Геометрические роли. Текст, таблицы и выделенные метки являются примерами геометрических ролей.
- Логические роли. Заголовки, заголовки и нижние колонтитулы являются примерами логических ролей.
На следующем рисунке показаны типичные компоненты на изображении примера страницы.
Образец документа, обработанный с помощью Студии Распознавателя документов
Варианты разработки
Распознаватель документов версии 3.0 поддерживает указанные ниже средства:
Компонент | Ресурсы | Идентификатор модели |
---|---|---|
Модель макета |
|
prebuilt-layout |
Пример документа, обработанный с помощью Распознаватель документов пример модели макета средства маркировки:
Требования к входным данным
Для получения наилучших результатов предоставьте одну четкую фотографию или скан-копию документа высокого качества.
Поддерживаемые форматы файлов:
Моделирование PDF Изображение:
JPEG/JPG, PNG, BMP и TIFFMicrosoft Office:
Word (DOCX), Excel (XLS), PowerPoint (PPT) и HTMLЧтение ✔ ✔ ✱ Версия REST API 2022/06/30-preview
Layout ✔ ✔ Документ общего назначения ✔ ✔ Предварительно созданная ✔ ✔ Особые настройки ✔ ✔ ✱ Файлы Microsoft Office сейчас не поддерживаются в других моделях или версиях.
В файлах формата PDF и TIFF обрабатывается до 2000 страниц (с подпиской уровня "Бесплатный" обрабатываются только первые две страницы).
Размер файла анализируемого документа должен быть меньше 500 МБ для платного уровня (S0) и 4 МБ для бесплатного уровня (F0).
Изображения должны иметь размеры в пределах от 50 x 50 до 10 000 x 10 000 пикселей.
Размер страницы PDF-файла не должен превышать 17 x 17 дюймов, что соответствует размеру листа Legal или A3.
Если PDF-файлы заблокированы паролем, перед отправкой необходимо снять блокировку.
Минимальная высота извлекаемого текста составляет 12 пикселей для изображения размером 1024 x 768 пикселей. Это примерно соответствует шрифту размером 8 пунктов при разрешении 150 точек на дюйм (DPI).
Для обучения пользовательской модели максимальный объем обучающих данных составляет 500 страниц для пользовательской модели шаблона и 50 000 страниц для пользовательской нейронной модели.
Для обучения пользовательской модели общий размер обучающих данных составляет 50 МБ для модели шаблона и 1 Г-МБ для нейронной модели.
- Поддерживаемые форматы файлов: JPEG, PNG, PDF и TIFF
- Для документов формата PDF и TIFF обрабатывается до 2000 страниц. Для подписчиков уровня "Бесплатный" обрабатываются только две первые страницы.
- Размер файла должен быть меньше 50 МБ, а размеры не менее 50 x 50 пикселей и не более 10 000 x 10 000 пикселей.
Попробуйте извлечь макет
Узнайте, как данные, включая текст, таблицы, заголовки таблиц, метки выделения и сведения о структуре, извлекаются из документов с помощью Распознаватель документов. Потребуются следующие ресурсы:
Подписка Azure — создайте бесплатную учетную запись
Экземпляр Распознавателя документов на портале Azure. Вы можете использовать ценовую категорию "Бесплатный" (
F0
), чтобы поработать со службой. После развертывания ресурса выберите Перейти к ресурсу, чтобы получить ключ и конечную точку.
Студия Распознавателя документов
Примечание
Для доступа к Студии Распознавателя документов используется API версии 3.0.
Образец документа, обработанный с помощью Студии Распознавателя документов
На домашней странице Студии Распознавателя документов выберите Макет
Вы можете проанализировать образец документа или нажать кнопку + Добавить, чтобы отправить собственный образец.
Нажмите кнопку Анализировать:
Пример средства создания меток в Распознавателе документов
Перейдите к примеру средства Распознаватель документов.
На домашней странице примера средства выберите Use Layout to get text, tables and selection marks (Использовать макет для получения текста, таблиц и отметок выбора).
В поле Form recognizer service endpoint (Конечная точка службы Распознавателя документов) вставьте значение конечной точки, полученной с помощью подписки Распознавателя документов.
В поле Ключ вставьте ключ, полученный из ресурса Распознавателя документов.
В поле Источник выберите URL-адрес в раскрывающемся меню Вы можете использовать наш пример документа:
Нажмите кнопку Выборка .
Выберите Run Layout (Выполнить макет). Пример средства маркировки данных Распознавателя документов вызовет API анализа макета и проведет анализ документа.
Просмотрите результаты, обращая внимание на извлеченный выделенный текст, обнаруженные отметки выбора и таблицы.
Поддерживаемые типы документов
Модель | Изображения | TIFF | |
---|---|---|---|
Layout | ✓ | ✓ | ✓ |
Поддерживаемые языки и языковые стандарты
Полный список поддерживаемых языков в рукописном и печатном формате см. в разделе Поддержка языков.
Извлечение данных
Начиная с общедоступной версии 3.0, она извлекает абзацы и дополнительные сведения о структуре, такие как заголовки, заголовки разделов, верхний колонтитул страницы, нижний колонтитул страницы, номер страницы и сноска. Эти структурные элементы являются примерами логических ролей, описанных в предыдущем разделе. Эта возможность поддерживается для PDF-документов и изображений (JPG, PNG, BMP, TIFF).
Модель | Текстовые | Метки выделения | Таблицы | Абзацы | Логические роли |
---|---|---|---|---|---|
Layout | ✓ | ✓ | ✓ | ✓ | ✓ |
Поддерживаемые логические роли для абзацев. Роли абзаца лучше всего использовать с неструктурированными документами. Роли абзаца помогают анализировать структуру извлеченного содержимого для улучшения семантического поиска и анализа.
- title
- sectionHeading
- footnote
- pageHeader
- pageFooter
- pageNumber
Извлечение данных
Модель | Текстовые | Таблицы | Метки выделения |
---|---|---|---|
Layout | ✓ | ✓ | ✓ |
Распознаватель документов версии 2.1 поддерживает указанные ниже средства:
Компонент | Ресурсы |
---|---|
API макета |
|
Извлечение модели
Модель макета извлекает из ваших документов текст, метки выделения, таблицы, абзацы и типы абзацев (roles
).
Извлечение абзаца
Модель макета извлекает все идентифицированные блоки текста в коллекции 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"
}
]
Роли абзаца
Новое обнаружение объекта страницы на основе машинного обучения извлекает логические роли, такие как заголовки, заголовки разделов, верхние колонтитулы страницы и многое другое. Модель макета Распознаватель документов назначает определенные текстовые блоки в paragraphs
коллекции с их специализированной ролью или типом, спрогнозированным моделью. Их лучше всего использовать с неструктурированными документами — это поможет разобраться в структуре извлеченного содержимого для более полного семантического анализа. Поддерживаются следующие роли абзаца:
Прогнозируемая роль | Описание |
---|---|
title |
Основные заголовки на странице |
sectionHeading |
Одие или несколько подзаголовков на странице |
footnote |
Текст в нижней части страницы |
pageHeader |
Текст по верхнему краю страницы |
pageFooter |
Текст по нижнему краю страницы |
pageNumber |
Номер страницы |
{
"paragraphs": [
{
"spans": [],
"boundingRegions": [],
"role": "title",
"content": "NEWS TODAY"
},
{
"spans": [],
"boundingRegions": [],
"role": "sectionHeading",
"content": "Mirjam Nilsson"
}
]
}
Извлечение страниц
Коллекция pages — это первый объект, который отображается в ответе службы.
"pages": [
{
"pageNumber": 1,
"angle": 0,
"width": 915,
"height": 1190,
"unit": "pixel",
"words": [],
"lines": [],
"spans": [],
"kind": "document"
}
]
Извлечение текстовых строк и слов
Модель макета документа в Распознаватель документов извлекает печатный и рукописный текст в виде lines
и words
. Модель выводит ограничивающие polygon
координаты и confidence
для извлеченных слов. Коллекция styles
включает любой рукописный стиль для строк, если они обнаружены вместе с диапазонами, указывающими на связанный текст. Эта функция применяется к поддерживаемым языкам рукописного ввода.
"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": [],
}
]
Извлечение меток выделения
Модель макета также извлекает метки выбора из документов. Извлеченные метки выделения отображаются в коллекции pages
для каждой страницы. Сюда входят ограничивающие метки polygon
, confidence
и метки выделения state
(selected/unselected
). Если извлекается связанный текст, он также включается как начальный индекс (offset
) и length
, которые ссылаются на свойство верхнего уровня content
, содержащее весь текст из документа.
{
"selectionMarks": [
{
"state": "unselected",
"polygon": [],
"confidence": 0.995,
"span": {
"offset": 1421,
"length": 12
}
}
]
}
Извлечение таблиц из документов и изображений
Извлечение таблиц является ключевым требованием для обработки документов, содержащих большие объемы данных, обычно отформатированных как таблицы. Модель макета извлекает таблицы в pageResults
разделе выходных данных JSON. Извлеченные сведения о таблице включают число столбцов и строк, диапазон строк и диапазон столбцов. Каждая ячейка с ограничивающим многоугольником выводится вместе с информацией о том, распознается ли она как columnHeader
. Модель поддерживает извлечение вращаемых таблиц. Каждая ячейка таблицы содержит индекс строки и столбца и координаты ограничивающего многоугольника. Для текста ячейки модель выводит сведения span
, содержащие начальный индекс (offset
). Модель также выводит length
в содержимом верхнего уровня, которое содержит полный текст из документа.
{
"tables": [
{
"rowCount": 9,
"columnCount": 4,
"cells": [
{
"kind": "columnHeader",
"rowIndex": 0,
"columnIndex": 0,
"columnSpan": 4,
"content": "(In millions, except earnings per share)",
"boundingRegions": [],
"spans": []
},
]
}
]
}
Рукописный стиль для текстовых линий (только латинские языки)
Ответ включает классификацию текста, является ли каждая строка входного текста рукописной или нет, а также оценку достоверности. Такая функция поддерживается только для языков на основе латиницы. В следующем примере показан пример фрагмента кода JSON.
"styles": [
{
"confidence": 0.95,
"spans": [
{
"offset": 509,
"length": 24
}
"isHandwritten": true
]
}
Извлекает выбранные страницы из документов
Для больших многостраничных документов используйте параметр запроса pages
, чтобы указать конкретные номера страниц или диапазоны страниц для извлечения текста.
Естественный порядок чтения для выводимых данных (только для языков на основе латиницы)
Используя параметр запроса readingOrder
, можно указать порядок, в котором будут выводиться текстовые строки. Для более удобного человеку порядка чтения используйте параметр natural
(естественный), как показано в следующем примере. Такая функция поддерживается только для языков на основе латиницы.
Выбор номеров страниц или диапазонов для извлечения текста
Для больших многостраничных документов используйте параметр запроса pages
, чтобы указать конкретные номера страниц или диапазоны страниц для извлечения текста. В следующем примере представлен документ в 10 страниц с текстом, извлеченным в двух вариантах — все страницы (1–10) и выбранные страницы (3–6).
Операция получения результата формирования макета
Второй шаг — вызов операции получения результата формирования макета. Эта операция принимает в качестве входных данных идентификатор результата, созданного операцией анализа макета. Она возвращает ответ JSON, содержащий поле состояния со следующими возможными значениями.
Поле | Тип | Возможные значения |
---|---|---|
status | строка | notStarted : операция анализа не запущена.running : операция анализа выполняется.failed : ошибка операции анализа.succeeded : операция анализа выполнилась успешно. |
Вызывайте эту операцию итеративно до возвращения значения succeeded
. Используйте интервал от 3 до 5 секунд, чтобы избежать превышения скорости запросов в секунду (RPS).
Если поле status имеет значение succeeded
, ответ JSON будет включать извлеченный макет, текст, таблицы и метки выделения. Извлеченные данные включают в себя извлеченные текстовые строки и слова, ограничивающие прямоугольники, внешний вид текста с указанием рукописного ввода, таблицы и метки выделения с указанием выделения или его отсутствия.
Рукописная классификация текстовых строк (только для латинских языков)
Ответ включает классификацию текста, является ли каждая строка входного текста рукописной или нет, а также оценку достоверности. Такая функция поддерживается только для языков на основе латиницы. В следующем примере представлена рукописная классификация для текста в изображении.
Пример выходного JSON-файла
Ответ на операцию получения результата формирования макета — это структурированное представление документа со всеми извлеченными сведениями. См. здесь пример файла документа и структурированные данные распознавания в примере выходных данных макета.
Выходные данные JSON имеют две части.
- Узел
readResults
содержит весь распознанный текст и все метки выделения. Текст упорядочивается по страницам, затем по строкам, а затем по отдельным словам. - Узел
pageResults
содержит извлеченные таблицы и ячейки, вместе с их ограничивающими прямоугольниками, уровень достоверности и ссылку на строки и слова в поле "readResults".
Пример выходных данных
текст
API макетирования извлекает текст из документов и изображений независимо от угла и цвета текста. Она принимает фотографии документов, факсов, печатный и (или) рукописный текст (только на английском языке) в различных комбинациях режимов. Текст извлекается, и предоставляется информация о строках, словах, ограничивающих прямоугольниках, показателях достоверности и стиле (рукописный или иной). Вся текстовая информация включена в раздел readResults
выходных данных JSON.
Таблицы с заголовками
API макетирования извлекает таблицы в раздел pageResults
выходных данных JSON. Документы могут быть отсканированными, сфотографированными или оцифрованными. Таблицы могут быть сложными с объединенными ячейками или столбцами, с границами или без них, а также с неровными углами. Извлеченные сведения о таблице включают число столбцов и строк, диапазон строк и диапазон столбцов. Каждая ячейка извлекается вместе с ограничивающим прямоугольником и сведениями о том, распознается ли она как часть заголовка. Ячейки заголовка, которые распознала модель, могут охватывать несколько строк и необязательно быть первыми строками в таблице. Повернутые таблицы также можно распознать. В разделе readResults
содержится весь текст каждой ячейки со ссылками на отдельные слова.
Метки выделения
API макетирования также извлекает метки выделения из документов. Для извлеченных меток выделения указаны ограничивающий прямоугольник, достоверность и состояние (выбрана/не выбрана). Сведения о метках выделения извлекаются в раздел readResults
выходных данных JSON.
Руководство по миграции
- Чтобы узнать, как использовать версию 3.0 в приложениях и рабочих процессах, следуйте инструкциям руководства по миграции Распознавателя документов 3.0.
Дальнейшие действия
Узнайте, как обрабатывать собственные формы и документы с помощью Распознаватель документов Studio
Изучите краткое руководство по Распознавателю документов и приступите к созданию приложения для обработки документов на любом удобном для вас языке разработки.
Узнайте, как обрабатывать собственные формы и документы с помощью примера средства маркировки Распознаватель документов
Изучите краткое руководство по Распознавателю документов и приступите к созданию приложения для обработки документов на любом удобном для вас языке разработки.