Автоматический разбор содержимого PDF и извлечение текста и форм из сервисов с открытым исходным кодом

Общее введение

Он автоматически анализирует макет PDF-документов, определяет текст, заголовки, изображения, таблицы, формулы и другие элементы на странице, а также их правильный порядок. Инструмент поддерживает функцию OCR, вы можете сканировать PDF в текст с возможностью поиска. Он работает под управлением Docker и предоставляет две модели: визуальную (Vision Grid Transformer, или VGT) и LightGBM. Первая отличается высокой точностью, но требует больших затрат ресурсов, вторая - быстрая и экономная. Текущая версия - v0.0.21, бесплатная и открытая на GitHub, подходит для исследователей, которым необходимо работать с PDF, архивистов и так далее.

自动解析PDF内容并提取文字与表格的开源服务

 

Список функций

  • Автоматическое определение текста, заголовков, изображений, таблиц, формул и других элементов на страницах PDF.
  • Поддержка функции OCR для преобразования отсканированного PDF в текст с возможностью поиска.
  • Определите правильный порядок чтения элементов страницы.
  • Предусмотрено два режима анализа: визуальная модель (VGT) и модель LightGBM.
  • Извлечение таблиц и поддержка нескольких форматов для вывода, таких как Markdown, LaTeX, HTML.
  • Извлекает формулы и по умолчанию выводит в формате LaTeX.
  • Поддержка многоязычного OCR, например, английского, корейского и т.д.
  • Предоставляет API-интерфейс для интеграции в другие проекты.
  • Поддерживает визуальный вывод, создавая PDF-файлы с аннотациями.

 

Использование помощи

Процесс установки

Этот инструмент работает с Docker, а его установка выполняется следующим образом:

  1. Подготовка среды
    Сначала установите Docker. Перейдите на сайт Docker, чтобы загрузить и установить его. После установки введите в терминале:
docker --version

Если отображается номер версии, значит, все прошло успешно. При использовании GPU вам также необходимо установить NVIDIA Container Toolkit, см.Руководство по установке.

  1. Вытягивание зеркал
    Введите команду в терминале, чтобы извлечь образ инструмента:
  • Есть графический процессор:
    docker pull huridocs/pdf-document-layout-analysis:v0.0.21
    
  • Нет графического процессора:
    docker pull huridocs/pdf-document-layout-analysis:v0.0.21
    
  1. Операционные услуги
    Запустите службу двумя способами:
  • Есть графический процессор:
    docker run --rm --name pdf-analysis --gpus '"device=0"' -p 5060:5060 huridocs/pdf-document-layout-analysis:v0.0.21
    
  • Нет графического процессора:
    docker run --rm --name pdf-analysis -p 5060:5060 huridocs/pdf-document-layout-analysis:v0.0.21
    

Когда служба запускается, она по умолчанию прослушивает порт 5060. Если порт занят, его можно изменить на другой, например 5061.

  1. служба проверки
    Откройте браузер и посетитеhttp://localhost:5060/infoЕсли информация о версии возвращается, это означает, что программа работает нормально.

Как использовать основные функции

Инструмент работает через API со следующими общими функциями:

1. функция OCR

Чтобы преобразовать отсканированный PDF в текст, пригодный для поиска, можно использовать OCR.

  • процедура::
    Подготовьте PDF-файл, напримерtest.pdfЗапустите в терминале:
curl -X POST -F 'language=en' -F 'file=@/path/to/test.pdf' localhost:5060/ocr --output result.pdf
  • language=enявляется английским и может быть заменен наkor(корейский) и т.д. Поддерживаемые языки доступны черезcurl localhost:5060/infoВид.
  • /path/to/test.pdfэто путь к файлу, например/home/user/test.pdf.
  • выходной файлresult.pdfбудет сохранен в текущем каталоге.
  • в конце концов::
    Получите PDF-файл с возможностью поиска и копирования текста.

2. Анализ макета

Извлечение элементов из PDF и анализ макета:

  • процедура::
    Бег:
curl -X POST -F 'file=@/path/to/test.pdf' localhost:5060 --output analysis.json
  • выходной файлanalysis.jsonСодержит информацию об элементе, такую как местоположение, тип (текст, таблица и т. д.).
  • в конце концов::
    В файле JSON содержится подробная информация о каждом элементе.

3. быстрый режим

Хотите ускорить обработку, используйте модель LightGBM, добавьте параметрыfast=true::

curl -X POST -F 'file=@/path/to/test.pdf' -F 'fast=true' localhost:5060 --output fast_analysis.json
  • принимать к сведению: Быстро, но чуть менее точно.

4. извлечение таблиц и формул

  • Форма отзыва::
    Укажите формат (например, Markdown):
curl -X POST -F 'file=@/path/to/test.pdf' -F 'extraction_format=markdown' localhost:5060 --output table.json

адъювантmarkdown, иlatex, иhtmlФормат.

  • Формула экстракции::
    По умолчанию выводится формат LaTeX, который можно использовать непосредственно с командой Layout Analysis.

5. визуальный вывод

Хотелось бы увидеть аннотированный PDF:

curl -X POST -F 'file=@/path/to/test.pdf' localhost:5060/visualize --output visualized.pdf
  • в конце концов::
    В выходном файле PDF будут указаны местоположение и тип каждого элемента.

6. добавление языковой поддержки

По умолчанию поддерживается небольшое количество языков, хотелось бы добавить больше языков (например, китайский):

  • Войдите в контейнер:
docker exec -it --user root pdf-analysis /bin/bash
  • Установите языковые пакеты, например, китайский:
apt-get install tesseract-ocr-chi-sim
  • Проверьте:
curl localhost:5060/info

видеть, чтоchi_simОзначает успех.

7. прекращение предоставления услуг

Прекращение предоставления услуг:

docker stop pdf-analysis

Порядок вывода элементов

Результаты анализа представляются в определенном порядке. Инструмент использует Poppler для определения первоначального порядка чтения, который затем корректируется в зависимости от типа элемента:

  • Заголовок находится в верхней части страницы и отсортирован по внутреннему порядку.
  • Общие элементы (текст, таблицы и т. д.) расположены в среднем порядке чтения.
  • Нижний колонтитул и сноски размещаются в последнюю очередь.
  • Элементы без текста (например, изображения) упорядочиваются в соответствии с порядком ближайшего элемента с текстом.

предостережение

  • требования к оборудованиюВизуальная модель требует GPU и 5 ГБ видеопамяти, без GPU она будет медленно работать с CPU. lightGBM - только CPU и требует 2 ГБ оперативной памяти.
  • темп: 15 страниц научных статей, 0,42 секунды на страницу в быстром режиме, 1,75 секунды на страницу в VGT (GPU), 13,5 секунды на страницу в VGT (CPU).
  • регулировка компонентов во время тестирования: Просмотр журнала, если что-то пошло не так:
docker logs pdf-analysis

Эти функции и шаги помогут вам быстро приступить к работе и справиться с различными потребностями в PDF.

 

сценарий применения

  1. научные исследования
    Исследователи используют его для извлечения таблиц и формул из документов и более эффективной организации данных.
  2. управление файлами
    Архивариусы преобразуют сканы старых документов в PDF-файлы с возможностью поиска, которые легко найти.
  3. Юридическая работа
    Адвокаты анализируют PDF-файлы договоров, чтобы быстро находить пункты и формы.

 

QA

  1. Это платно?
    Бесплатно. Это инструмент с открытым исходным кодом, его можно бесплатно скачать и использовать на GitHub.
  2. Нужна ли мне сеть?
    Для загрузки образа требуется подключение к Интернету, после чего его можно запускать в автономном режиме.
  3. Поддерживает ли он китайский язык?
    Поддержка. Требуется ручная установка китайских пакетов (например.tesseract-ocr-chi-sim), чуть менее эффективный, чем английский, но вполне пригодный для использования.
© заявление об авторских правах

Похожие статьи

Нет комментариев

Вы должны войти в систему, чтобы участвовать в комментариях!
Войти сейчас
нет
Нет комментариев...