2011-05-14 4 views
4

Je suis en train de convertir pdfs en images tiff pour suivre OCR. J'utilise "-density 300x300 -depth 8" comme paramètres. Le premier problème est que de 500 KB fichier pdf, je reçois 72 MB fichier tiff. Le deuxième problème est la mauvaise qualité de l'image résultante qui provoque l'échec de l'OCR. Ici vous pouvez le voir vous-même. Adobe acrobat reader image TIFF généré (imprimé): enter image description herePDF à tiff problème ImageMagick

ImageMaggick image tiff: enter image description here

La différence est énorme. Comment puis-je obtenir la qualité d'image générée par Adobe en utilisant ImageMaggick? Pas tiff besoin, d'autres formats seront également bons. UPD: J'ai trouvé l'option 'antialias'. Maintenant, c'est beaucoup mieux. Mais le résultat OCR n'est toujours pas aussi précis que pour la version Adobe.

+0

En fait, l'un d'Adobe est pire, car il est pas lissées et ressemble beaucoup plus pixélisé. –

+0

Pour l'homme - oui. Mais pour Tesseract, la version Adobe est la meilleure. – clumpter

+0

Pourquoi convertissez-vous les images bi-niveaux en gris 8 bits (-dept 8)? Si vous avez juste besoin de changer le format de PDF en TIFF et ne pas modifier les données d'image, laissez la profondeur de bits comme original. – BitBank

Répondre

5

Ma suggestion est: utilisez une ligne de commande Ghostscript. Parce qu'ImageMagick utilise Ghostscript de toute façon, en arrière-plan (le terme technique IM pour ceci est: Ghostscript est un "délégué" pour certaines des conversions, telles que PDF-> TIFF).

Voici une ligne de commande qui devrait bien fonctionner pour les pages de format lettre d'un fichier PDF de plusieurs pages:

gswin32c.exe^
    -o page_%03d.tif^
    -sDEVICE=tiffg4^
    -r720x720^
    -g6120x7920^
    input.pdf 

Le paramètre -g... contrôle la largeur absolue + hauteur des pages de sortie en utilisant des « points de périphériques » ... (et avec 6120x7920 à 720dpi cela se trouve être de la taille d'une lettre).

Ces pages TIFF ...

  1. ... est noir + blanc,
  2. ... aura une résolution de 720dpi,
  3. ... sera G4-comprimé et
  4. ... sera beaucoup plus petit que votre 300dpi non compressé de l'IM commandline

votre paramètre IM de -depth 8 ne convient pas à donner de bons résultats s du p.o.v. d'OCR plus tard, car il va créer des nuances de gris autour des lettres qui ne contribuent pas à cela.

Vos résultats OCR devraient maintenant être bien meilleurs qu'avant.

Si votre OCR ne peut pas gérer le format TIFF G4 (ce dont je doute), alors vous pouvez générer d'autres sous-formats TIFF à l'aide de Ghostscript. Par exemple:

gswin32c.exe^
    -o page_%03d.tif^
    -sDEVICE=tiffgray^
    -r720x720^
    -g6120x7920^
    -sCompression=lzw^
    input.pdf 

. Le périphérique tiffgray crée une sortie grise 8 bits. Le périphérique tiff24nc crée une sortie couleur RVB 8 bits. Les deux types de TIFF seront bien sûr plus grands que la sortie tiffg4.

+0

Merci beaucoup, ça a l'air fantastique! Une dernière question: savez-vous pour le faire produire un fichier tiff multipage de pdf multipage? – clumpter

+0

@dumpter: Oui. :-) –

+0

@dumpter: Pour un fichier TIFF multipage, utilisez '-o output.tif'. S'il n'y a pas de partie de nom '% 03d' pour la sortie, il n'y aura pas de fichier TIFF à une seule page .... –

0

Pour le format de papier A4 européen et l'utilisation unix/linux:

gs -o output.tif -sDEVICE=tiffg4 -r720x720 -sPAPERSIZE=a4 input.pdf