«sh: 1: невозможно открыть /tmp/pdfsandwich4e375e.html: Нет такого файла» при использовании pdfsandwitch [закрыто]

Я попытался добавить текстовый слой к некоторым файлам PDF, чтобы сделать их доступными для поиска. Этот метод объясняется в немецкой вики Ubuntu: http://wiki.ubuntuusers.de/pdfsandwich . После установки зависимостей

sudo apt-get install imagemagick exactimage ghostscript tesseract-ocr

и pdfsandwich он должен быть таким же простым, как

pdfsandwich test.pdf

Однако я получаю:

Input file: "test.pdf"
Output file: "test_ocr.pdf"
Number of pages in inputfile: 272

Parallel processing with 8 threads started.
Processing page order may differ from original page order.

Processing page 137.
Processing page 171.
Processing page 1.
PProcessing page Processing pProcessing page rocess35.
age 239.
Processing page 69.
205.
ing page 103.
sh: 1: cannot open /tmp/pdfsandwich4e375e.html: No such file

, за которым следуют многие другие не удается открыть ... предупреждения. Проверка моего каталога / tmp показывает, что вместо этих файлов * .html существуют соответствующие файлы * .txt . Похоже, тессеракт не выводит в формате hocr. Я прочитал справочные страницы tesseract и попытался обеспечить вывод hocr, создав файл конфигурации с именем tesseract-config

hocr true

(я пробовал различные его варианты) и запустив pdfsandwich с помощью

pdfsandwich -tesso tesseract-config test.pdf

. Но это, похоже, ничего не меняет.Есть идеи, как заставить pdfsandwich производить правильный вывод?

Обратите внимание на связанные вопросы Как добавить текст с оптическим распознаванием текста в исходный PDF-файл в gscan2pdf? и Добавление информации оптического распознавания текста в PDF . Однако мне нужно обработать много файлов PDF, поэтому мне нужно решение командной строки, которое я могу автоматизировать.

1
задан 13 April 2017 в 15:23

2 ответа

Причиной этой ошибки является то, что tesseract изменил свои стандартные расширения файлов для hocr, сделав его несовместимым с pdfsandwich < 0.1.0. Для tesseract 3.02 с pdfsandwich < 0.1.0 это помогает изменить файл опций tesseract и передать его в pdfsandwich с -tesso.

Tesseract 3.03, являющаяся версией tesseract по умолчанию в Ubuntu 14.04, существенно изменила свою обработку hocr, сделав ее частично несовместимой с hocr2pdf, так что исправление «-tesso» часто приводит к тому, что текстовые слои не соответствуют сканируемому. изображений. Вместо этого нужно использовать не hocr2pdf, а сам tesseract для создания каждой отдельной страницы PDF-файлов.

Pdfsandwich> = 0.1.0 автоматически распознает версию тессеракта и выбирает подходящий способ взаимодействия с тессерактом, чтобы все эти ошибки больше не возникали.

0
ответ дан 13 April 2017 в 15:23

Оказалось, что формат файла конфигурации изменился с текущей версией Tesseract для Ubuntu (3.02.01): http://code.google.com/p/tesseract-ocr/source/browse/ trunk / tessdata / configs / hocr? r = 526 . Теперь Tesseract может быть задан вывод в формате hocr с помощью однострочного файла конфигурации tesseract-config:

tessedit_create_hocr 1

Как отмечалось в вопросе, tesseract может быть дано указание прочитать файл конфигурации, передав -tesso опция для pdfsandwich:

pdfsandwich -tesso tesseract-config test.pdf
0
ответ дан 13 April 2017 в 15:23

Другие вопросы по тегам:

Похожие вопросы: