Tesseract 无法识别德语“für”

Posted

技术标签:

【中文标题】Tesseract 无法识别德语“für”【英文标题】:Tesseract does not recognize german "für" 【发布时间】:2018-11-03 12:59:35 【问题描述】:

我通过 docker image tesseractshadow/tesseract4re 使用 tesseract 4.0

我使用选项-l=deu 给 tesseract 提示,文本是“deutsch”(德语)。

德语单词“für”的结果仍然不好。德语单词很常见(在英语中的意思是“for”)。

Tesseract 经常检测到“fiir”或“fur”。

我能做些什么来改善这一点?

可重现的例子

docker run --name self.container_name --rm \
    --volume  $PWD:/pwd \
    tesseractshadow/tesseract4re \
    tesseract /pwd/die-fuer-das.png /pwd/die-fuer-das.png.ocr-result -l=deu

结果:

cat die-fuer-das.png.ocr-result.txt 
die fur das

图片 die_fuer_das.png:

【问题讨论】:

您是否使用了分辨率足够高的图像?可能 ü 的点只是大了几个像素并被解释为噪点? @DanielAlbertini 质量可能会更好,但是对于每个讲德语的人来说,“für”这个词很容易看到。我添加了一个可重现的示例 是的,我可以确认我看到了 ü ;)。但对于 tesseract 来说,这可能并不容易。 ü 点都只有 3x2px。这可能太小了,因为图像中还有大小几乎相似的白色伪影。有时一个简单的升级就足以让 tesseract 正确处理。或者您可以在图像上使用一些形态学方法(例如腐蚀) “ü vs ii”问题似乎很老了。这是 2017 年 3 月的消息。 tesseract 开发还活着吗? groups.google.com/d/msg/tesseract-dev/8H_4K3vPRJE/if5IQu9WAwAJ 【参考方案1】:

我找到了解决方案。它必须是-l deu 否则德语不会被使用。我不小心用了-l=deu

作品:

===> tesseract  die-fuer-das.png out  -l deu; cat out.txt
Tesseract Open Source OCR Engine v4.0.0-beta.1-262-g555f with Leptonica
die für das

语言错误:

===> tesseract  die-fuer-das.png out  -l=deu; cat out.txt
Tesseract Open Source OCR Engine v4.0.0-beta.1-262-g555f with Leptonica
die fur das

【讨论】:

以上是关于Tesseract 无法识别德语“für”的主要内容,如果未能解决你的问题,请参考以下文章

为啥 Tesseract 数字识别无法正常工作?

Tesseract 无法识别随机英文字符序列

无法识别 Tesseract 中的数字 - android

德语翻译

为啥 Tesseract OCR 库(iOS)根本无法识别文本?

Tesseract OCR 无法识别除法符号“÷”