OpenCV-Python中的简单数字识别OCR

OpenCV-Python中的简单数字识别OCR

我试图在OpenCV-Python(CV2)中实现一个“数字识别OCR”。这只是为了学习。我想在OpenCV中学习KNeest和SVM的特性。

我有每一个数字的100个样本(即图像)。我想和他们一起训练。

有一个样本letter_recog.py这是OpenCV样本提供的。但我还是想不出怎么用它。我不明白什么是样本,响应等等。而且,它一开始加载一个txt文件,但我没有首先理解。

稍后,通过搜索,我可以在CPP样本中找到一个字母识别数据。我使用了它,并为cv2.KNest编写了一个代码,该代码位于信函_recg.py模型中(仅用于测试):

import numpy as npimport cv2

fn = 'letter-recognition.data'a = np.loadtxt(fn, np.float32, delimiter=',', converters={ 0 : lambda ch : 
ord(ch)-ord('A') })samples, responses = a[:,1:], a[:,0]model = cv2.KNearest()retval = model.train(samples,responses)retval, results,
 neigh_resp, dists = model.find_nearest(samples, k = 10)print results.ravel()

它给了我一个20000码的数组,我不知道它是什么。

问题:

1)什么是字母_识别码.数据文件?如何从我自己的数据集构建该文件?

2)什么是results.reval()指什么?

3)如何编写一个简单的数字识别工具(KNeest或SVM)?


SMILET
浏览 4368回答 3
3回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python