向tess添加四个额外的特殊unicode字符

2024-04-20 08:17:23 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一份关于埃及象形文字音译的文件。我现在对象形文字的OCR不感兴趣,但音译使用了5个英语中不存在的特殊字符。我不必读一整本书来找出如何将这五个字符添加到Tesseract可以阅读的字符集中。你知道吗

我将只列出其中一个字符作为示例,它是十进制的7717,在Python中是chr(7717)。一旦我弄明白了如何让Tesseract去读这个,添加其他的应该很简单。有人知道如何将这个字符添加到Tesseract可以读取的字符集中吗?你知道吗

顺便说一句,我找不到任何关于如何使用Tesseract阅读PDF文本的书籍。我发现了很多关于计算机视觉的书和一些网站,但我讨厌网站,因为它们从来没有足够的细节。因此,如果有人知道任何解释如何使用Python Tesseract的好书,我将不胜感激。你知道吗

另外,我也试过阅读Tesseract的官方文档。大约95%的官方文档都是不好的,并且假设您已经了解如何使用该软件,但是Tesseract的文档在人群中显得特别糟糕。你知道吗


更新

好吧,我做了更多的研究,似乎我必须加入一些语法,它说配置:

try:
    from PIL import Image
except:
    import Image
import pytesseract
str3 =  'beylage.jpg'

str4 = pytesseract.image_to_string(Image.open(str3),
    config='-c tessedit_char_whitelist=0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz.,;-(){}[]ḥ')

虽然我没有收到任何错误消息,但我的输出没有任何更改。加上它输出的字符,我没有指定,如?和#。你知道吗


更新 我发现他们用Tesseract 4.0删除了这个功能。他们做过最糟糕的决定。有100美元的悬赏金来解决这个问题一年,但没有人解决它。 https://www.bountysource.com/issues/42806964-blacklist-and-whitelist-unsupported-with-lstm-4-0

在任何情况下,似乎如果您使用遗留版本,它可能会工作。所以我加入了以下语法:

str4 = pytesseract.image_to_string(Image.open(str3),
    config='--oem 0 -c tessedit_char_whitelist=0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzḥś')

但现在它说它无法加载语言。所以我现在正在解决这个问题。你知道吗


Tags: 文档imageimport音译官方网站语法字符
1条回答
网友
1楼 · 发布于 2024-04-20 08:17:23

好的,我可以通过下载工程培训数据这里

https://github.com/tesseract-ocr/tessdata/blob/master/eng.traineddata

后来,我花了很多时间才找到将文件放在mac电脑上的位置,但我在这里找到了答案:

Where is the default tesseract installation folder on a mac?

然而,由于我现在使用的是旧版本的pytesseract,它的缺点是精度严重下降,几乎到了难以辨认的地步。目前,这个问题还没有解决的办法。你知道吗

相关问题 更多 >