本文主要是介绍Android OpenCV(六十九):MNIST + KNN + Android 提高手写字识别,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
前言
前两篇文章中案例均是手写数字识别。
使用数据集为下方图片分割而成的 5000 张 20*20 的图片,训练算法分别为 KNN 和 决策树。
但是从两篇文章末尾的视频可以看出,识别效果并不是很好,误识别的情况比较多。
针对 KNN,尝试修改 K 值大小,识别效果依然无明显改善。在写决策树那篇文章时,发现 http://yann.lecun.com/exdb/mnist/ 网站上的训练图片有 6 万张,于是产生跟换训练集的想法。
MNIST
MNIST 数据集来自美国国家标准与技术研究所, 是NIST(National Institute of Standards and Technology)的缩小版,训练集 (training set) 由来自 250 个不同人手写的数字构成, 其中 50% 是高中学生, 50% 来自人口普查局 (the Census Bureau) 的工作人员,测试集(test set) 也是同样比例的手写数字数据。
我们采用前两个用于 kNN 训练:
- 60000 个样本
- 60000 个标签
考虑到其中的图片全部是以字节的形式进行存储的并且数据量相对较大,所以我们使用 C++ 程序在电脑上进行 KNN 模型的训练,训练完成后将
这篇关于Android OpenCV(六十九):MNIST + KNN + Android 提高手写字识别的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!