comment OCR un fichier pdf et obtenir le texte stocké dans pdf?

23

tout d'abord, veuillez m'excuser si cela a été demandé auparavant - j'ai cherché pendant un certain temps dans les messages existants, mais je n'ai pas pu trouver de support.

Je suis intéressé par une solution pour Fedora pour OCR un pdf multipage non consultable et pour transformer ce pdf en un nouveau fichier pdf qui contient la couche de texte au-dessus de l'image. Sur Mac OSX ou Windows, nous pourrions utiliser Adobe Acrobat, mais sur Linux, en particulier sur Fedora?

https://snippets.webaware.com.au/howto/pdf-ocr-linux/ semble décrire une solution - mais malheureusement, je suis déjà perdu lors de la récupération de l'image exacte.

ingli
la source
Il y a un problème avec le joli script pdfocr que la page à laquelle vous créez un lien recommande: il repose sur pdftk qui est essentiellement obsolète (pour deux raisons, sa dépendance à libgcj et à iText5 +). Une solution différente est donc nécessaire de toute façon ...
Maxim

Réponses:

24

Le meilleur moyen et le plus simple de l'utiliser pypdfocrest de ne pas modifier le pdf. pypdfocr est un lien vers le module python ici.

pypdfocr your_document.pdf

À la fin, vous en aurez un autre your_document_ocr.pdfcomme vous le souhaitez avec du texte consultable. L'application ne change pas la qualité de l'image. Augmente un peu la taille du fichier en ajoutant le texte de superposition.

Je pense que la commande est assez simple car elle ne nécessite aucune interface graphique. Peut-être que l'installation de pypdfocr est un peu plus détaillée:

sudo dnf -y install tesseract 
pip install pypdfocr 

Mise à jour du 3 novembre 2018:

pypdfocrn'est plus pris en charge depuis 2016 et j'ai remarqué des problèmes de non-mentoring. ocrmypdf( module ) fait un travail similaire et peut être utilisé comme ceci:

ocrmypdf in.pdf out.pdf

À installer:

pip install ocrmypdf

ou

sudo apt install ocrmypdf  #ubuntu
sudo dnf -y install ocrmypdf #fedora
Eduard Florinescu
la source
pourquoi installez-vous (en utilisant apt) ocrmypdf dans ubuntu, mais installez tessaract dans fedora? Je pense que vous avez fait une faute de frappe
iuridiniz
@iuridiniz l'a corrigé. C'est une erreur qui s'est glissée
Eduard Florinescu
8

Après avoir appris que tesseract peut désormais également produire des fichiers PDF consultables, j'ai trouvé le sandwich de script: http://www.tobias-elze.de/pdfsandwich/

après l'installation des dépendances (ce n'est peut-être pas la liste complète)

sudo dnf install svn ocaml unpaper tesseract

J'ai suivi le guide du script pour la compilation à partir des sources

Compiler à partir des sources

pdfsandwich est un logiciel open source (licence: GPL). Vous pouvez télécharger les sources en tant que package .tar.bz2 depuis la zone de téléchargement sur le site Web du projet ou les consulter par subversion:

svn checkout svn://svn.code.sf.net/p/pdfsandwich/code/trunk/src pdfsandwich

Si OCaml est installé sur votre système, vous pouvez compiler et installer comme suit:

cd pdfsandwich
./configure
make
sudo make install

et cela me permet maintenant de courir

sandwich multipaged-non-searchable.pdf

résultant en un pdf consultable.

ingli
la source
pour une question connexe, mais distincte, en s'appuyant sur celle-ci, voir unix.stackexchange.com/questions/306051/…
ingli
1
FWIW: pdfsandwich est également disponible dans le référentiel de paquets apt d'Ubuntu. D'autres distributions pourraient également l'avoir.
Laurence Gonsalves
unix.stackexchange.com/questions/471985/… toutes suggestions
Deepak Umredkar
Je viens de tomber sur fedoramagazine.org/4-cool-new-projects-try-copr-october-2018 montrant un package COPR pour fedora qui conditionne pdfsandwich
ingli
3

Un outil simple disponible dans Ubuntu est «ocrfeeder», il permet la génération de PDF avec du texte OCR superposé sur les documents originaux. Il utilise Tesseract ainsi que d'autres moteurs OCR (je ne sais pas lequel) et prévoit également la rotation d'image / «unpaper», etc.

jdpipe
la source
1

J'ai eu ce même problème, alors j'ai écrit cela pendant le week-end. Donner un coup de feu; ça marche super! C'est un simple emballage autour tesseract. Il utilise pdftoppmpour convertir un PDF en un tas de fichiers TIFF, puis il utilise tesseractpour effectuer l'OCR (reconnaissance optique de caractères) et produire un PDF consultable en sortie. Tous les fichiers temporaires intermédiaires sont automatiquement supprimés à la fin du script.

Code source: https://github.com/ElectricRCAircraftGuy/PDF2SearchablePDF

Instructions d'installation et d'utilisation pdf2searchablepdf:

Testé sur Ubuntu 18.04 le 11 novembre 2019.

Installer:

git clone https://github.com/ElectricRCAircraftGuy/PDF2SearchablePDF.git
./PDF2SearchablePDF/install.sh

sudo apt update
sudo apt install tesseract-ocr

Utilisation:

pdf2searchablepdf mypdf.pdf

Vous aurez maintenant un pdf appelé mypdf_searchable.pdf , qui contient du texte consultable!

Terminé. Il n'a pas de dépendances python, car il est actuellement entièrement écrit en bash.

Références ou ressources connexes:

  1. PDF2SearchablePDF : https://github.com/ElectricRCAircraftGuy/PDF2SearchablePDF
  2. /ubuntu/473843/how-to-turn-a-pdf-into-a-text-searchable-pdf/1187881#1187881
  3. /ubuntu/16268/whats-the-best-simplest-ocr-solution
  4. /ubuntu/150100/extracting-embedded-images-from-a-pdf/1187844#1187844
  5. pdfsandwich : wrapper logiciel alternatif que je viens de découvrir, cela vaut également la peine d'être vérifié! http://www.tobias-elze.de/pdfsandwich/
Gabriel Staples
la source