Вы просматриваете старую версию данной страницы. Смотрите текущую версию.

Сравнить с текущим просмотр истории страницы

« Предыдущий Версия 43 Следующий »

Извлечь данные в таблицу Версия 8 (Python)

Группа действий: Robin OCR 


Описание

Действие распознает текст с документа, разделяет его на блоки и возвращает в табличном виде.

Иконка действия

Параметры и их настройки

СвойствоОписаниеТипПример заполненияОбязательность заполнения поля
Параметры
ФайлПуть к файлу, из которого нужно извлечь данные. Поддерживаемые форматы: jpg, jpeg, bmp, png, tif, pdfRobin.FilePath
Да
Номер страницыНомер страницы в документе, с которой нужно извлечь данные. Если поле не заполнено, данные будут извлечены со всех страницRobin.Numeric
Нет
ЯзыкПредполагаемый язык текста, который необходимо извлечьRobin.String
Нет
Дополнительный языкДополнительный язык, на котором предположительно может быть распознаваемый текстRobin.String
Нет
АлгоритмЕсли выбран «Текст», действие распознает только текстовые данные. Если «Таблица», действие распознает только табличные данные. Если «Текст и таблица», действие распознает любые данныеRobin.String
Да
Расстояние между словамиМаксимальное расстояние между словами в текстовых данных документа. Используется для деления текста на столбцы в результирующей таблице. Значение по умолчанию - 20 пикселейRobin.Numeric
Нет
Расстояние между строкамиМаксимальное расстояние между строками в текстовых данных документа. Используется для деления текста на строки в результирующей таблице. Значение по умолчанию - 1 пиксельRobin.Numeric
Нет
Путь к папкеПуть к папке, в которую будет сохранено изображение страницы документа с наложенными блоками, на которые действие разделило данные. Для сохранения файла также нужно заполнить поле «Имя файла»Robin.FolderPathC:\doc\imgНет
Имя файлаНазвание изображения страницы документа с наложенными блоками (без расширения). Если действие извлекает данные с нескольких страниц, то на каждую из них будет создан отдельный файл, к названию которого будет добавлен индекс. Для сохранения файла также нужно заполнить поле «Путь к папке»Robin.String
Нет
ПерезаписатьЕсли значение «true», и в указанной папке существует файл изображения с таким же именем, индексом и расширением, то новый файл его перезапишет. Если «false», файл перезаписан не будет и действие вернет ошибкуRobin.BooleantrueНет
ПараметрыДополнительные параметры, влияющие на результат и качество распознавания текстаRobin.String
Нет
ПодписатьЕсли значение «true», то перед каждой распознанной табличной или текстовой частью будет добавлено слово «Part» c порядковым номером этой части. Если значение «false», перед этими частями будет вставлена пустая строкаRobin.BooleantrueНет
Обученная модельФайл с обученной моделью Tesseract в формате .traineddataRobin.FilePath
Нет
Результаты
ТаблицаТаблица, сформированная на основе данных, извлеченных из исходного документаRobin.DataTable

Изображение с блокамиКоллекция путей к файлам изображений страниц документа с наложенными блокамиRobin.Collection

Особые условия использования 

Действие распознает текст документа и разбивает его на блоки в зависимости от указанных входных параметров (расстояние между строками\словами) извлекает данные из текстовых документов и сохраняет их в виде таблицы. При этом исходный документ может и не содержать таблицы.

На вход можно подавать документы:

  • только текстовый слой pdf-документа
  • только изображения
  • и текстовый слой, и изображения.

Работа действия основана на алгоритме извлечения блоков текста документа. Слова и строки документа объединяются в блоки на основе максимального расстояния между словами и максимального расстояния между строками. Эти параметры задаются во входных параметрах действия.

Примеры таких документов: кассовые чеки; документы, содержащие табличные данные с\без разделителей; документы, содержащие сплошной текст. 

Логика работы действия, в зависимости от настройки параметра "Алгоритм": если выбрана "Таблица", действие вернет текст только из таблиц, сохранив его табличную разметку. Если "Текст", вернет все, но для текста из таблиц не учтет его разметку (то есть считывается весь текст из исходного документа, при этом, если были найдены таблицы, текст из них будет извлечен не по табличной разметке, а по расстоянию).  Если "Текст и таблица", распознает и вернет текст из таблиц и обычный текст как отдельные части, сохранив для таблиц разметку.

Следует иметь ввиду, что если обученная модель не работает или плохо натренирована,  то необходимо значения выпадающего списка "Язык" заменить на значения списка "Дополнительный язык".

Пример использования 

Задача

Распознать таблицу из документа obrazec.pdf и записать результат в таблицу в формате CSV. 

Решение

Воспользоваться действиями "Извлечь данные в таблицу", "Сохранить таблицу в CSV". 

Реализация

  1. Собрать схему робота, состоящего из действий:

  2. Настроить параметры для действия "Извлечь данные в таблицу". 
  3. Настроить параметры для действия "Сохранить таблицу в CSV". 
  4. Нажать на кнопку "Старт" в верхней панели. 

Результат

Программный робот отработал успешно. Данные с документа извлечены в таблицу формата CSV. 

Страницы из документа сохранены в формате .png в указанную папку с выделенными блоками.



Таблица излечена и сохранена в формате .csv 

 

 

  • Нет меток