【发布时间】:2017-07-17 15:41:13
【问题描述】:
我有一个扫描的文档,我想使用 Tesseract 从中获取文本。
这是我的 PDF 质量示例:
正如您在“维护”中看到的,“c”上方有一个小点。 Tesseract 使用以下命令将这个词翻译成:“mafintenanée”:
tesseract 1.pdf final -l eng --oem 2
tesseract 1.pdf final -l eng --oem 1
tesseract 1.pdf final -l eng
我负担不起这种检测,所以我尝试使用 imagemagick 改进我的 PDF。
我已经尝试了以下所有命令:
convert 1.pdf -resize 400% outResize400.tif
convert 1.pdf -quality 100 out.tif
convert 1.pdf -quality 100 outquality100.tif
convert 1.pdf -background white backgroundwhite.tif
convert 1.pdf -density 200x200 density200x200.tif
convert 1.pdf -density 200x200 density200.jpg
convert 1.pdf -antialias antialias.tif
convert 1.pdf -background white -density 800 backgroundwhitewithdensity800.tif
convert 1.pdf -density 400% density400percent.tif
我得到的最好结果之一是:
如您所见,imageMagick 完全破坏了文本。
您知道我应该使用哪些设置来改进我的结果吗?
【问题讨论】:
-
您是否尝试过此站点上的任何其他想法?搜索“imagemagick text pdf”会出现 193 个其他线程。
-
请发布您的实际 PDF 文件。在读取 PDF 等矢量文件之前,您通常需要指定 -density XXX。所以通常可以转换 -density 288 1.pdf -resize 25% 1.tiff。标称密度为 72 dpi,因此 288=4*72 且 25% 为 1/4。因此,这会以高密度读取此 PDF,然后将大小调整回输入大小。如果您想要更大的字符,则将 更改为更大的字符或删除 -resize。如果扫描不干净,那么我们需要查看实际的 PDF 以建议进一步处理,这可能取决于分配的密度。
-
你应该发表你的评论作为答案,你是对的,我只需要把密度放在文件名之前:)
-
@fmw42 将此添加为答案。通过简单地调整图像大小,您的评论帮助我将 OCR 率从 ~1% 提高到 >90%。谢谢
标签: pdf imagemagick tesseract