数字识别算法/图像处理指南



我正在努力学习图像处理,我在这方面设定了自己的目标。数字识别系统。

所以我学习了Alasdair McAndrew的Matlab数字图像处理入门,并学习了诸如边缘检测,阈值,膨胀和侵蚀以及命中和未命中变换等内容。

现在的问题是,我很难想象这些工具将如何帮助我实现我的目标。

我还有一些其他关于图像处理的书,虽然每个人都教如何腐蚀或扩张,但没有人告诉我如果我想识别图像中的对象,数字或字符该怎么做。

这真的很令人沮丧,因为在网上查找这个问题给出了非常笼统和广泛的答案。

有谁能告诉我如何从我自己用这些技术在油漆中制作的图像中识别数字吗?

如果没有,至少可以给我推荐一本书,甚至一个领域,因为在看了一些书之后,我觉得我看错了方向。

有太多的OCR方法,可能很难推荐任何特定的方法。但目前有很多免费的OCR系统可用,你可以下载其中的一些,看看它们是如何处理字符识别的。我看到的开源项目如下:

gocr http://jocr.sourceforge.net/

clara-ocr http://www.claraocr.org/

cuneiform https://launchpad.net/cuneiform-linux(开源商业ocr引擎)

tesseract http://code.google.com/p/tesseract-ocr/(开源商业ocr引擎).

高级ocr引擎通常的方法是同时结合几种字符识别方法,然后使用某种投票机制来选择字符的最佳匹配。

通常所有的引擎都是从图像的聚类开始,将文本分成单独的字符。然后运行多种算法来尝试识别每个字符。例如,楔形ocr引擎使用a)特征检测(如字符中的笔画数),这就是扩展/等。b)将字符图像降采样到15x15大小,然后应用像识别器这样的神经网络。C)针对特定字符的多个特别规则。

我认为,从神经网络或其他分类器(例如线性分类器或支持向量机分类器)开始是尝试并获得快速结果的最佳主意。

所以在你的地方,我会从简单的字符分割算法+训练简单的神经网络/线性/svm分类器在数字图像数据库上开始。NIST提供手写数字图像的大型数据库。

最新更新