PDF to tiff ImageMagick问题

时间:2011-05-14 13:54:50

标签: command-line imagemagick tiff ghostscript adobe-reader

我正在尝试将pdfs转换为tiff图像以用于跟随OCR。我使用“-density 300x300 -depth 8”作为参数。 第一个问题是从500 KB pdf文件我得到72 MB的tiff文件。 第二个问题是导致OCR失败的结果图像质量差。 在这里你可以自己看。 Adobe Acrobat reader生成(打印)tiff图像: enter image description here

ImageMaggick tiff图片: enter image description here

差异很大。 如何使用ImageMaggick获得与Adobe生成的图像一样好的效果? 不是必要的,其他格式也会很好。

UPD:我发现'antialias'选项。现在它好多了。 但是OCR结果仍然不如Adobe版本那么准确。

2 个答案:

答案 0 :(得分:6)

我的建议是:使用Ghostscript命令行。因为ImageMagick无论如何都在后台使用Ghostscript(技术IM术语是:Ghostscript是某些转换的“委托”,例如PDF-> TIFF)。

这是一个适用于多页PDF文件的字母大小页面的命令行:

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

-g...参数使用“设备点”控制输出页面的绝对宽度+高度...(在720dpi时使用6120x7920,这恰好是字母大小)。

这些TIFF页面......

  1. ...将是黑+白,
  2. ...的分辨率为720dpi,
  3. ...将进行G4压缩和
  4. ...将远远小于IM命令行中未压缩的300dpi
  5. -depth 8的IM参数不适合从p.o.v中获得好的结果。后来的OCR,因为它会在字母周围产生灰色阴影,但对此没有帮助。

    您的OCR结果现在应该比以前好很多。

    如果您的OCR无法处理TIFF G4格式(我怀疑),那么您可以在Ghostscript的帮助下生成其他TIFF子格式。例如:

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

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

    tiffgray设备创建8位灰度输出。 tiff24nc设备创建8位RGB颜色输出。两种类型的TIFF当然都会大于tiffg4输出。

答案 1 :(得分:1)

对于欧洲纸张格式A4和unix / linux使用:

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