OpenCV-Python实战(番外篇)——利用 SVM 算法识别手写数字
前言
支持向量机 (Support Vector Machine, SVM) 是一种监督学习技术,它通过根据指定的类对训练数据进行最佳分离,从而在高维空间中构建一个或一组超平面。在博文《OpenCV-Python实战(13)——OpenCV与机器学习的碰撞》中,我们已经学习了如何在 OpenCV 中实现和训练 SVM 算法,同时通过简单的示例了解了如何使用 SVM 算法。在本文中,我们将学习如何使用 SVM 分类器执行手写数字识别,同时也将探索不同的参数对于模型性能的影响,以获取具有最佳性能的 SVM 分类器。
使用 SVM 进行手写数字识别
我们已经在《利用 KNN 算法识别手写数字》中介绍了 MNIST 手写数字数据集,以及如何利用 KNN 算法识别手写数字。并通过对数字图像进行预处理( desew() 函数)并使用高级描述符( HOG 描述符)作为用于描述每个数字的特征向量来获得最佳分类准确率。因此,对于相同的内容不再赘述,接下来将直接使用在
本文介绍了如何使用OpenCV-Python中的SVM算法进行手写数字识别,探讨了参数C和γ对识别精度的影响,并通过调整参数实现了99.25%的准确率,相较于KNN分类器,SVM在该任务中表现出更优性能。
订阅专栏 解锁全文
1192





