问题:大约一周前,为了更好地改进Tesseract的准确性,我添加了高斯模糊/ OTSU二值化组合,从而生成漂亮的二进制图像,如附件。我在openCV中这样做,所以我传递给Tesseract的图像已经是一个二进制图像(如附图所示)。当Tesseract对图像进行预处理时(即使是下面发布的图像),图像也会被破坏,因此不会产生有意义的输出。请参阅示例输入下方的图像,了解Tesseract对图像所做的事情。OpenCV高斯模糊打破Tesseract?
问题的根源在于高斯模糊。如果我删除它,那么tesseract输出的Thresholded image
不是乱码,但它也不像我附加的二进制映像那样干净可读。我可以禁用Tesseract预处理我传递的图像吗?为什么高斯模糊完全毁了Tesseract?我感觉好像输入图像和我所附的图像一样清晰,准确性会提高。
两张图片都是同一列。首先是输入图像,其次是Tesseract图像预处理的结果。
输入到超正方体实施例:
超正方体损坏(来自GetThresholdedImage()
获得:
好吧,这帮了很多!因此,阈值图像是一串水平线,所以出现了一些错误。我最终将其追踪到,事实上,我确实在二值化之前为图像添加了高斯模糊以改善图像。但模糊和二值化的结果就像上面提到的那样^^。一个完美的二值化图像如何破解tesseract?我知道tesseract也尝试对图像进行二值化处理,但是在测试之后,我的图像更加清晰。有任何想法吗? –
AFAIK tesseract不会二值化2色图像。所以我想如何将opencv数据传递给tesseract存在问题。我发布了适用于我的示例。 – user898678