web-dev-qa-db-fra.com

Comment OCR un fichier PDF et obtenir le texte stocké dans le PDF?

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 multipage non consultable PDF et pour transformer ce PDF en un nouveau fichier PDF qui contient la couche de texte sur haut de l'image. Sur Mac OSX ou Windows, nous pourrions utiliser Adobe Acrobat, mais existe-t-il une solution sur Linux, en particulier sur Fedora?

This semble décrire une solution - mais malheureusement, je suis déjà perdu lors de la récupération de l'image exacte.

26
ingli

Après avoir appris que tesseract peut maintenant é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 sous forme de package .tar.bz2 à partir de 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.

10
ingli

Le meilleur moyen et le plus simple est d'utiliser pypdfocr car cela ne change pas le pdf. pypdfocr est un python ici.

pypdfocr your_document.pdf

À la fin, vous aurez un autre your_document_ocr.pdf comme 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:

pypdfocr n'est plus pris en charge depuis 2016 et j'ai remarqué des problèmes de non maintenance. 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
28
Eduard Florinescu

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.

5
jdpipe

J'ai eu ce même problème alors j'ai écrit ça pendant le week-end. Donner un coup de feu; ça marche super! Il s'agit d'un simple wrapper autour de tesseract. Il utilise pdftoppm pour convertir un PDF en un tas de fichiers TIFF, puis il utilise tesseract pour effectuer l'OCR (Optical Character Recognition) sur eux et produire un consultable PDF 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. https://askubuntu.com/questions/473843/how-to-turn-a-pdf-into-a-text-searchable-pdf/1187881#1187881
  3. https://askubuntu.com/questions/16268/whats-the-best-simplest-ocr-solution
  4. https://askubuntu.com/questions/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/
2
Gabriel Staples