我一直在TMS-like服务器上下载瓷砖,显示一些" google tiles"与geodatas。这些数据是法国乡镇,根据地图的传说设置了一些特定的颜色。
我编写了一个算法,主要使用PIL处理图块(如图片),然后再将它们呈现给tesseract(使用pytesseract)。最后,我知道了瓷砖的位置(以及知道哪个乡镇可能在该区域内),我使用模糊模糊过程。提取过去试图找出找到的乡镇。
到目前为止,一些不能处理tesseract任何结果的图片对我来说似乎相对较好(尽管它并不完美,但你可以不同地阅读法语名称" Sainte Honorine de Ducy&# 34;):
我应该确切地说,在这种情况下,原始图块大约是1500x3000像素(我已经扩展了图块的大小)。
我还修改了pytesseract以通过' bazaar'在doc加上自定义用户词'中提到的关键字包含该地区的乡镇。那个说法,我只能找到" bazaar" tesseract 1 documentation中的引用,没有比最新文档中的链接更好的内容。事实上,我似乎记得有一篇关于文档错误的帖子......对于它的价值,它似乎并没有改变结果。
你有什么建议吗?特别是,您认为图片的质量是否足够好以期望获得可靠的结果?
我对使用这些特定字体自行训练tesseract几乎一无所知。考虑到(并且我不管理数据源,我甚至不知道使用了什么字体...),我希望你可能有更好的建议而不是采取这个(巨大的)飞跃。
PS:我知道我也许不应该在没有任何代码的情况下发布这个问题,但我更需要全球指导...无论如何我都会发布任何需要的代码!答案 0 :(得分:0)
我认为问题是文字与图像尺寸相比太小了。
您应该应用更多图像转换来查找文本所在的更精确区域,尝试使用morphological transformations,然后使用文本区域find the contours。看看this教程,它与OpenCV一起使用。
我尝试使用GIMP裁剪图像,然后将其调整大小以使其更大:
pytesseract的结果是:
Saiptnmnorine-de-Ducy
这是可以接受的,其他一些使用fuzzywuzzy的处理你可以得到正确的名字。