对象检测—OpenCV的SVM 模型训练

SVM是一种训练机器学习的算法,可以用于解决分类和回归问题,同时还使用了一种称之为kernel trick(支持向量机的核函数)的技术进行数据的转换,然后再根据这些转换信息,在可能的输出之中找到一个最优的边界(超平面)。简单来说,就是做一些非常复杂的数据转换工作,然后根据预定义的标签或者输出进而计算出如何分离用户的数据。

支持向量机方法是建立在统计学习理论的VC 维理论和结构风险最小原理基础上的,根据有限的样本信息在模型的复杂性(即对特定训练样本的学习精度,Accuracy)和学习能力(即无错误地识别任意样本的能力)之间寻求最佳折衷,以期获得最好的推广能力(或称泛化能力)。

本文将使用OpenCV的SVM算法来训练文字识别模型(中文文字识别,数字识别,字母识别等)原始训练模型:

对象检测—OpenCV的SVM 模型训练

对象检测—OpenCV的SVM 模型训练

对象检测—OpenCV的SVM 模型训练

原始数据已经共享到百度云盘

直接回复: OpenCV模型

可获取原始数据

模型训练:

1、初始化识别图片

对象检测—OpenCV的SVM 模型训练

2、图片预处理

对象检测—OpenCV的SVM 模型训练

3、图片核函数处理

对象检测—OpenCV的SVM 模型训练

4、建立模型

对象检测—OpenCV的SVM 模型训练

5、使用原始数据训练模型

5.1 初始化训练

对象检测—OpenCV的SVM 模型训练

Config.js已经分享到百度云盘

直接回复: OpenCV模型

可获取配置文件

5.2 训练模型(数字字母)

对象检测—OpenCV的SVM 模型训练

对象检测—OpenCV的SVM 模型训练

5.3 训练模型(汉字)

对象检测—OpenCV的SVM 模型训练

对象检测—OpenCV的SVM 模型训练

6、保存模型

模型训练完成后,我们把训练好的模型保存下来以便后期无需再次训练,直接使用训练好的模型

对象检测—OpenCV的SVM 模型训练

7、主函数入口,开始训练整个模型

对象检测—OpenCV的SVM 模型训练

以上便是整个OpenCV SVM的训练模型的整个过程,当然你也可以搜集自己的数据,训练自己的模型,待模型训练完成后,便可以使用训练好的模型,进行图片文字的识别了

本期使用的原始数据便是车牌识别所需要的数据,我们训练了车牌上的数字,字母,以及省份的汉字,下期,我们将利用训练好的模型,对车牌进行识别

Ps:小编的微信公众号正式上线了,

微信搜索公众号:启示AI科技

可以在上面体验不同的AI工具哟

附件

对象检测—OpenCV的SVM 模型训练

对象检测—OpenCV的SVM 模型训练

对象检测—OpenCV的SVM 模型训练

对象检测—OpenCV的SVM 模型训练

本期基于SVM算法,训练了模型,下期使用模型,进行识别

相关推荐