我正在进行图像分类任务,我正在使用Tesseract OCR进行数字分类。
我的主要问题是从单个数字的OCR收到非常糟糕的结果。
在网上阅读了很多关于提高Tesseract性能的内容之后,我使用以下一般方案使用OpenCV预处理图像:
我得到的东西我非常满意,例如:
我用以下方式调用Tesseract,强调我期待一个数字:
tesseract input.jpg output.txt - psm 10 digits
我认为Tesseract肯定会正确识别它,但它会返回"。"。
有没有人有进一步改进的想法?我猜我可以为这种特定的字体训练Tesseract,但由于我会处理不同的字体,我希望有更好的方法。
答案 0 :(得分:1)
什么版本的Tesseract?它对我有用(注意:' - '和' psm')之间不应该有空格。
$ tesseract ~/Downloads/6digit.jpg stdout -psm 10 digits
6
$ tesseract -v
tesseract 3.05.00dev
leptonica-1.71
libgif 4.2.3 : libjpeg 9a : libpng 1.6.21 : libtiff 4.0.6 : zlib 1.2.8 : libwebp 0.5.0 : libopenjp2 2.1.0
答案 1 :(得分:0)
根据@micka的评论,我最终要做的是将所有单个字符组合回一个图像,然后将该图像发送到OCR。由于某些原因,我仍然不清楚,它确实改善了结果。