Основна відповідь
Оскільки мене цікавить такий самий вид роботи (хоча і не обов'язково 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, яка робить ці функції.