Réponse principale
Depuis que je suis intéressé par le même genre de travail (mais pas nécessairement OCR les fichiers PDF, mais pour les convertir en DjVu et puis OCR eux), je trouve cette question et les réponses manquent (puisque je devais deviner le DPI du images avec le nombre de pixels, puis utilisez la taille comme sortie par pdfinfo
ou d'autres astuces --- sans oublier que les images à l'intérieur d'un PDF peuvent avoir des densités différentes, etc.).
Après beaucoup de recherches, j'ai trouvé que vous pouvez utiliser pdfimages
(à partir du package poppler-utils ) comme suit:
$ 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%
Remarquez le x-ppi
et y-ppi
sur la liste ci-dessus. Il répertorie également le format dans lequel les images sont stockées dans le PDF, ce qui est cool (parfois, c'est JBIG2, parfois JPEG2000 etc.)
Remarque: Le fichier deptest.pdf
utilisé ci-dessus est disponible à partir pdfsizeopt
du référentiel de .
La vraie action
Après cela, vous pouvez simplement extraire les images avec pdfimages
lui-même ou utiliser pdftoppm
(également à partir de poppler-utils
) pour rendre des pages entières dans de nombreux formats que vous aimerez (par exemple, tiff, pour numériser avec tesseract
).
Vous pouvez utiliser quelque chose comme ce qui suit (en supposant que vous avez créé un répertoire nommé imgs
où vous placerez vos images):
pdfimages -png Faraway-PRA.pdf imgs/prefix
Les fichiers seront créés dans le répertoire imgs
avec des noms commençant par prefix
, comme dans:
$ 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
(...)
Vous pouvez alors effectuer toute opération que vous jugez appropriée avec des outils comme scantailor
ou ce que vous voulez.
Réponse plus directe
Si vous souhaitez simplement OCR un fichier PDF, vous pouvez utiliser un programme qui est bien entretenu et déjà packagé, à savoir ocrmypdf .
x-ppi
(résolution x en DPI) ety-ppi
(résolution y en DPI) ne sont PAS affichées sur les anciennes versionspdfimages
fournies avec Ubuntu 14.04, par exemple. Ce qui est disponible sur Ubuntu 18.04, cependant, inclut ces valeurs.pdfimages -v
sur ma machine Ubuntu 18.04 montre que j'ai la version 0.62.0, qui n'ont ces caractéristiques.J'avais besoin de ces informations et je les ai trouvées ici:
http://www.wizards-toolkit.org/discourse-server/viewtopic.php?t=16110
Cette technique utilise également ImageMagick:
La sortie est la taille de l'image et le dpi:
la source
J'utilise la commande suivante:
et il retourne:
la source
Size: 595x842
bien que le DPI (vérification dans Acrobat) soit d'environ 130