Основна відповідь
Оскільки мене цікавить такий самий вид роботи (хоча і не обов'язково OCR PDF-файли, а конвертувати їх у DjVu, а потім OCR), я знайшов це питання та відповіді бракує (оскільки мені потрібно було здогадатися про DPI зображення з кількістю пікселів, а потім використовують розмір як вихідний pdfinfoабо інші трюки --- не кажучи вже про те, що зображення всередині PDF можуть мати різну щільність тощо).
Після багатьох досліджень, я виявив, що ви можете використовувати pdfimages(з пакету poppler-utils ) на зразок наступного:
$ pdfimages -list deptest.pdf
page num type width height color comp bpc enc interp object ID x-ppi y-ppi size ratio
--------------------------------------------------------------------------------------------
1 0 image 100 100 gray 1 1 image no 9 0 53 53 169B 14%
2 1 image 100 100 gray 1 1 ccitt no [inline] 53 53 698B 56%
Зверніть увагу на x-ppiта y-ppiв списку вище. Він також перераховує формат, у якому зображення зберігаються у PDF-файлі, який є класним (іноді це JBIG2, іноді JPEG2000 тощо)
Примітка: deptest.pdfВикористовуваний вище файл доступний у pdfsizeoptсховищі .
Справжня дія
Після цього ви можете просто витягнути зображення із pdfimagesсебе або використовувати pdftoppm(також з poppler-utils) для відображення цілих сторінок у багатьох форматах, які вам можуть сподобатися (наприклад, tiff, для сканування за допомогою tesseract).
Ви можете використовувати щось на кшталт наступного (якщо припустити, що ви створили каталог з іменем, imgsкуди будете розміщувати свої зображення):
pdfimages -png Faraway-PRA.pdf imgs/prefix
Файли будуть створені всередині каталогу imgsз іменами, починаючи з prefix, як у:
$ ls
prefix-000.png prefix-047.png prefix-094.png prefix-141.png
prefix-001.png prefix-048.png prefix-095.png prefix-142.png
prefix-002.png prefix-049.png prefix-096.png prefix-143.png
prefix-003.png prefix-050.png prefix-097.png prefix-144.png
(...)
Тоді ви можете виконати будь-яку операцію, яку вважаєте за потрібне з такими інструментами scantailorабо будь-яким іншим.
Більш пряма відповідь
Якщо ви просто хочете OCR-файл у форматі PDF, ви можете використовувати доглянуту та вже упаковану програму, а саме ocrmypdf .
x-ppi(x роздільна здатність в DPI) іy-ppi(y роздільна здатність в DPI) НЕ відображаються, наприклад, у старих версіях,pdfimagesякі поставляються з Ubuntu 14.04. Те, що доступно для Ubuntu 18.04, включає ці значення.pdfimages -vна моєму Ubuntu 18.04 машини шоу у мене є версія 0.62.0, яка робить ці функції.