tiff输出质量Imagemagick vs. Ghostscript

时间:2017-10-30 11:03:47

标签: pdf ghostscript tiff imagemagick-convert

我目前正在开发Google tesseract ocr工作流程。从PDF生成tif有两种选择:

  1. 的Ghostscript:

    gswin64c.exe -r300x300 -dBATCH -dNOPAUSE -sDEVICE = tiff24nc -sOutputFile = thetif.tif -sCompression = lzw thepdf.pdf -c quit -q

  2. Imagemagick - 转换:

    convert -background white -alpha off -density 300 thepdf.pdf -depth 8 -compress zip thetif.tif

  3. 对于(任意)示例文件,提取的tif用于gswin64c,大约是转换结果的五倍。此外,使用转换(!)然后使用gswin64c,文本更平滑,质量更高。所以我更喜欢使用转换,但不幸的是,gswin64c提取的时间大约是4倍。多页pdf 30页(170秒对40秒)。

    有没有机会提高gswin64c的质量(不会极大地扩大输出文件)或加速转换?

2 个答案:

答案 0 :(得分:1)

对我而言,这似乎是速度与质量的通常权衡。你喜欢转换质量,但它太慢,你喜欢Ghostscript的速度,但你觉得质量较低。

当然这表明你不能同时拥有两者?

无论如何,你是否意识到ImageMagick转换调用Ghostscript来呈现PDF文件?因此,无论您使用哪种路线,都使用Ghostscript。

(当然)完全有可能转换是post = -processing图像,但我怀疑它不是。如果你看看转换是如何工作的,你可以找出它为Ghostscript提供的命令行并使用它。

看起来转换器使用的是不同的压缩过滤器(Flate而不是LZW),并且可能正在指定抗锯齿。您可以使用TextAlphaBits和GraphcisAlphaBits或tiffscaled设备来获得抗锯齿。

当然,使用消除锯齿会使文本更流畅(如果你喜欢模糊的文字),但需要更长的时间。

答案 1 :(得分:0)

我不使用谷歌tesseract ocr工作流程,但你的命令看起来很奇怪。为什么两个转换?

输入图像通常在转换后出现,但在您的情况下,-density将首先出现。

我会尝试这样的事情,看看会发生什么:

imagemagick - convert -density 300 thepdf.pdf -background white -alpha off -depth 8 -compress zip thetif.tif