所以,我对tesseract还是陌生的,有些人遇到的问题与我在这个论坛上遇到的问题类似,但我无法获得令人满意的解决方案,因此我将发布此问题。
我有一个路边照相机的照片,我想获取镜头的时间戳。剪掉时间戳后,它们如下所示:
我通过将tesseract与R一起使用来解决此问题:
library(tesseract)
library(magick)
eng <- tesseract("eng")
input <- image_read("image from above")
使用我得到的基本tesseract:
input %>% tesseract::ocr(,engine = eng)
# [1] "SRE SAA PRO 206197180731 17:33:88\n"
显然,这没有太大帮助。因此,在阅读了该问题后,我尝试了以下操作:
text <- input %>%
image_resize("2000x") %>%
image_convert(type = 'Grayscale') %>%
image_trim(fuzz = 40) %>%
image_write(format = 'png', density = '300x300') %>%
tesseract::ocr()
cat(text)
# es bt i deen | ee) eee i ae 2s ee ee ee eee ec ee |
此结果更加糟糕,这实在令人沮丧。如何获得正确的结果?热烈欢迎任何帮助:)
编辑
@@ Max Teflon回答了此示例的问题。但是,我意识到某些图像仍然被错误地读取,例如
谁能进一步改善他的解决方案?
多么好的问题!玩起来真的很有趣。我发现此解决方案适用于您的示例: