支持SVM的Python OpenCV手写识别,更改培训和测试数量

http://opencv-python-tutroals.readthedocs.org/en/latest/py_tutorials/py_ml/py_svm/py_svm_opencv/py_svm_opencv.html

在此示例中,OpenCV给出的训练集为250,测试量也相同。但是,如果更改测试和培训编号,则准确性会降低到0。

# First half is trainData, remaining is testData
train_cells = [ i[:40] for i in cells ] 
test_cells = [ i[40:] for i in cells]

train_amt = 200
responses = np.float32(np.repeat(np.arange(10),train_amt)[:,np.newaxis])

我从原始代码更改了以上各行中的值。我究竟做错了什么?x应该是什么?

OpenCV随附的培训和测试数据:http : //wormassay.googlecode.com/svn/trunk/ThirdParty/OpenCV/samples/python2/data/digits.png

吉姆·博斯(Guine Bosch)

您的数据分割是正确的。它给您0.0准确性的原因是您测量它的方式。

准确性检查通过以下方式完成:

mask = result==responses
correct = np.count_nonzero(mask)
print correct*100.0/result.size

通过新的拆分火车/测试,这不再是正确的。对于初学者resultresponses长度不一样的人,因此mask简单地是False

所以,现在你要测量的精度,需要reshaperesponses根据测试的大小,而不是训练。工作代码只能将200乘300更改:

responses = np.float32(np.repeat(np.arange(10),300)[:,np.newaxis])
mask = result==responses
correct = np.count_nonzero(mask)
print correct*100.0/result.size

准确度会下降一点,但0.0现在不会下降到93.1这是正常的,因为您减少了训练的大小并增加了测试数量。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

支持SVM的Python OpenCV手写识别,更改培训和测试数量

来自分类Dev

如何使用OpenCV和Python将手写文本与图像隔离?

来自分类Dev

支持SVM和群集吗?混乱

来自分类Dev

如何在触控笔和汇总中添加手写笔支持

来自分类Dev

OpenCV SVM“不支持的响应类型”错误

来自分类Dev

OpenCV SVM“不支持的响应类型”错误

来自分类Dev

Opencv 3 SVM培训

来自分类Dev

SVM培训C ++ OpenCV

来自分类Dev

SVM培训OpenCV

来自分类Dev

在python中执行手写字符识别的步骤是什么?使用opencv和sci工具包学习吗?

来自分类Dev

手写数字识别

来自分类Dev

CNTK手写识别

来自分类Dev

支持向量机(SVM),测试,学习,筛分和k均值/病房分类

来自分类Dev

SVM 分类器如何在手写字符识别中工作?

来自分类Dev

Python-Scikit。使用SVM训练和测试数据

来自分类Dev

有手写识别计划吗?

来自分类Dev

有手写识别计划吗?

来自分类Dev

OpenCV SVM:更新经过培训的SVM

来自分类Dev

OpenCV SVM:更新经过培训的SVM

来自分类Dev

实现 Tensorflow 和 SaaK 变换的教程:手写数字识别

来自分类Dev

Google Cloud Vision API 是否支持从具有梳状字段的 pdf/图像读取手写或输入文本

来自分类Dev

使用Python的字符串子序列内核和SVM

来自分类Dev

使用Python的字符串子序列内核和SVM

来自分类Dev

如何在Python中进行PCA和SVM分类

来自分类Dev

如何在Python中锐化然后细化手写数字的图像?

来自分类Dev

手写识别的神经网络?

来自分类Dev

如何使用手写识别模型作为 API?

来自分类Dev

在Python上使用OpenCV选择最佳的SVM内核类型和参数

来自分类Dev

使用cmake命令行支持Python和Java的OpenCV

Related 相关文章

热门标签

归档