gpt4 book ai didi

macos - 提高 tesseract OCR 的图像质量

转载 作者:行者123 更新时间:2023-12-02 01:12:09 24 4
gpt4 key购买 nike

关于this问题和this问题,在我询问如何下载数以千计的 PDF 并处理它们以使用 OCR 提取文本的地方,我在增强文本输出方面再次碰壁.

我有兴趣提取一堆 PDF 的文本,以便在文本中搜索姓氏(我不需要一定能够阅读其余文本)。 PDF 代表旧报纸文章,发表于 1810 年至 1832 年间,写于 German Fraktur。 .这种字体似乎对 tesseract 尤其具有挑战性。

问:我怎样才能进一步提高 tesseract 的图像质量 - 至少 - 可以更改以在文本中查找姓氏?您建议采用哪种程序?

如果我们取 this以pdf为例,我在申请时收到如下图片

convert -colorspace GRAY -resize 3000x -units PixelsPerInch example.pdf example-page.jpg

enter image description here

如果我现在使用tesseract

tesseract --tessdata-dir /usr/local/share/tessdata/ -l deu_frak example-page.jpg example-page.txt

如果只检测到大约 360 个变音符号,它在该图像上的表现会很糟糕。我的文本输出完全乱码。

当我使用 Fred 的 ImageMagick 脚本时 textcleaner , 应用任一

textcleaner -g -e stretch -f 25 -o 10 -u -s 1 -T -p 10

textcleaner -g -e stretch -f 25 -o 20 -t 30 -u -s 1 -T -p 20

我得到了这样的东西

enter image description here

然后,当我使用上述命令再次运行 tesseract 时,生成的文本要好得多(检测到大约 700-800 个变音符号),但仍然杂乱无章,无法找到文本的大多数姓氏。

我知道示例页面是一个特别难的页面,但是,即使页面不是墨色打印且开始时没有倾斜,在使用 tesseract 处理它们时也会产生大部分困惑的输出和无法辨认的姓氏> 和上面的命令。

例如这个页面

enter image description here

问:我怎样才能进一步提高 tesseract 的图像质量 - 至少 - 可以更改以在文本中查找姓氏?您建议采用哪种程序?

编辑:我不知道,是否需要训练 tesseract 或处理给定的德国 Fraktur 字体的好主意,因为 GUI 框编辑器似乎在 MacOS 上可靠地工作,例如,参见 jTessBoxEditor , Qt-box-editor , 或 Tesseract-Box-Editor ,我也不明白如何训练 tesseract,请参阅 tesseract 训练 wiki here和另一个教程 here .

最佳答案

我父亲对他的旧剪报也有类似的问题,我通过使用 GhostScript 进行预处理然后应用 Tesseract 取得了一定的成功。你的旅费可能会改变。我的命令 (Windows) 是

set nm=%1
set d=%2
"C:\Program Files\gs\gs9.21\bin\gswin32.exe" -dSAFER -dBATCH -dNOPAUSE -sDEVICE=pgmraw -r150 -dTextAlphaBits=4 -sOutputFile="%nm%-%%00d.pgm" %nm%.pdf
echo. 2>"%nm%.txt"

for %%f in (%nm%*.pgm) do (
echo %%~nf
"C:\Program Files\Tesseract-OCR\tesseract.exe" "%%~nf.pgm" "%%~nf"
cat "%%~nf.txt" >> "%nm%.txt"
del "%%~nf.pgm"
del "%%~nf.txt"
)
"C:\Program Files\Microsoft Office\Office11\winword.exe" "%nm%.txt"

编辑:对评论的回应

首先,在您的 Mac 上安装 ghostscript。参见 https://wiki.scribus.net/canvas/Installation_and_Configuration_of_Ghostscript#Installing_Ghostscript_on_Mac_OS_X

然后做

gs -dSAFER -dBATCH -dNOPAUSE -sDEVICE=pgmraw -r150 -dTextAlphaBits=4 -sOutputFile='paper-%00d.pgm' paper.pdf

这将创建光栅化文件 paper-01.pgm、paper-02.pgm 等(以防您的 pdf 有多个页面)。您可以将“paper”替换为原始 pdf 的基本名称。您也可以弄乱分辨率。那和其他东西可以在 https://ghostscript.com/doc/9.19/Use.htm 找到

然后在每个 pgm 文件上使用 tesseract。

关于macos - 提高 tesseract OCR 的图像质量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44848664/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com