Hyn*_*rix 8 c++ ocr opencv tesseract template-matching
我正在尝试从用消费者相机(包括移动电话)拍摄的图像中提取不形成有意义字的字母数字字符(a-z0-9).字符具有相同的大小和字体类型,并且不格式化.实际处理在Windows下完成.
下图显示了原始输入:

透视处理后,我将以下内容应用于OpenCV:
cv::medianBlur于去除噪音cv::adaptiveThreshold完成所有这些步骤后,我得到的图像与以下相似:



然后我分别在每个提取的细胞图像上运行tesseract(带有最新训练数据的最新SVN版本)(我尝试了不同的-psm和-l值):
tesseract.exe -l eng -psm 11 sample.png outtext
Run Code Online (Sandbox Code Playgroud)
tesseract产生的结果不是很好:
我已经尝试过形态学操作(开放,闭合,侵蚀,扩张)并用OTSU阈值(THRESH_OTSU)替换自适应阈值,但结果变得更糟.
还有什么可以尝试提高识别质量?或者除了使用tesseract之外,还有更好的方法来提取字符(例如模板匹配?)?
编辑(21-12-2014):
我测试了简单的模板匹配(使用标准化的互相关和LMS,但结果更差).但是我通过提取每个字符findCountours然后运行仅包含一个字符的tesseract以及将-psm 10每个输入图像解释为单个字符的选项向前迈出了一大步.Additonaly我在后处理步骤中删除了非字母数字字符.第一批结果令人鼓舞,检出率达到90%且更好.主要问题是"9","g"和"q"字符的错误检测.
问候,