Распознавание PDF
Распознавание PDF — задача автоматизированной обработки файлов в формате PDF.
Описание[править]
Автоматическая обработка PDF-файлов, в частности извлечение корректной структуры документа, является довольно сложной задачей. Даже платные программы нередко не в состоянии распознать корректную структуру документа и могут перепутать местами несколько столбцов текста. Это связано с тем, что информация в файлах PDF хранится в виде, ориентированном на визуальное отображение на экране компьютера, и не содержит информацию о границах между строках, словах и т. д., которую можно получить только опосредованно через информацию о пробелах.
В значительном количестве PDF-файлов даже текст хранится таким образом, что при попытке его скопировать получается бессмыслица. В связи с этим для обработки PDF-файлов необходимо фактически написание распознавателя, который сам определяет абзацы и прочие структурные элементы по отступам и пробелам.
Также есть множество различных форматов PDF, и сложность распознавания может отличаться в зависимости от конкретного формата (в некоторых форматах даже информация о тексте хранится в случайном порядке, что не мешает отображению, но сильно осложняет автоматизированную обработку).
В качестве одного из решений для обработки PDF-файлов с сохранением их структуры предлагается библиотека для Java, tabula.java, для которой есть также обертка в Python.[1] Основной направленностью этой системы является распознавание таблиц в PDF-файлах.