APP下载

基于改进的C-支持向量机的手写体数字高识别率方法研究

2019-02-14

数字通信世界 2019年1期
关键词:手写体字符识别率

胡 霖

(中国石油大学胜利学院,东营 257061)

1 支持向量机

1.1 支持向量机

现在,随着计算机科技的发展,机器学习的关注度越来越高,在众多的及其学习方法中支持向量机是一个应用比较广泛的及其学习方法。支持向量机(support vector machines,SVM)的理论主要是建立在统计学习理论VC维理论和结构风险最小化原理基础之上[1]。

在机器学习领域,支持向量机之所以应用广泛,主要是因为支持向量机在解决小样本、非线性和高维模式识别问题中能够表现出强大的计算功能,特别是在遇到“维数灾难”和“过学习”等问题的过程中,支持向量机能够解决有效解决此类问题[2]。同时,支持向量机也是一种发展比较成熟的机器学习方法,它的理论发展非常成熟,数学模型易于理解,这就为研究此类算法的研究人员提供了极大的便利。

机器学习的不断发展,极大地促进了模式识别、函数估计、回归分析、时间序列预测等方面的发展,特别是在在文本识别、手写字体识别、人脸图像识别、基因分类及时间序列预测等领域有着重要应用。

1.2 支持向量机(support vector machines,SVM)的基本算法

支持向量机作为及其识别中的一种分类器,属于一种两类分类器,可以通过对信息进行分类进行信息识别,其基本算法如下。

设海量信息中的样本集中n个样本,样本集表示为(xi,yi),i=1,2……n,xi∈Rd,yi∈{-1,1}可以表示样本属于xi的类别。实际应用中,支持向量机依据训练样本的信息找到识别样本所需的超平面,将训练样本分为两类。在识别样本的超平面中,ω是一个n维向量,x是样本的向量表示,b为实数[3]。

对于给定的样本,理想的情况是使两类分类边界的间距最大,称之为间隔,间隔在数学上的定义为。归一化间隔ω和b后,间隔可以表示为

归一化后的间隔,称为几何间隔。

在两类样本之间的几何间隔中,ω是自变量,目标函数是关于ω的二次函数,约束条件是ω的线性函数,这时,支持向量机的目标识别问题就转化为二次规划函数的求解问题,此时它的约束条件为

为了解决目标识别过程中产生的误差问题,此时需要引入松弛因子和惩罚因子C,引入后信息识别的过程中支持向量机会在错分时继续工作,此时几何间隔在约束条件下变为

利用拉格朗日乘子,最优决策函数为

其中,sgn()是一个符号函数,αi为分类间隔下的拉格朗日乘子。

2 基于改进的C-支持向量机的手写体数字高识别率方法

为了提高手写体数字的识别能力,本文提出了一种基于改进的C-支持向量机的手写体数字高识别率方法,对手写体数字的预处理、端点提取以及四交叉点特征的提取过程的算法进行优化。

2.1 支持向量机核函数

对于支持向量机来说,当其进行信息识别时,经常会遇到信息的线性不可分的现象,这种情况下,为了解决线型不可分问题,需要引入核空间理论[4]。

核空间理论可以解决线性不可分中的高维运算过程中的内积问题。在支持向量机算法中,不同的核函数可以在信息识别中有不同的效果。支持向量机的核函数主要包括线性核函数、多项式核函数、径向基核函数、二层神经网络核函数,其中径向基核函数和多项式核函数用途最多。

在支持向量机进行信息识别过程中,为了找到最合适的核函数和核函数参数,算法通常使用穷举搜索法。用穷举搜索法进行实验,找到线性核函数、多项式核函数、径向基核函数、二层神经网络核函数等核函数中最适合的核函数和参数。

2.2 基于改进的C-支持向量机的手写体数字高识别率方法

(1)对手写体数字字符进行适当的预处理,为数字识别做准备。

对手写体数字字符进行适当的预处理的主要目的是解决图像中的噪声问题,让原本的数字变得更加清晰,同时将灰度图像转换为二值图像。将灰度图像转换为二值图像主要是便于信息的识别。预处理的主要过程包括读图并将其二值、平滑、切割、细化和归一化等。

平滑主要是为了去除手写过程中产生图像时产生的粗糙点,平滑通常采用模板匹配法进行粗糙点平滑。本文利用的是二次毛刺去除法对数字图像进行平滑处理,对数字图像的毛刺进行去除,增加数字的可识别性。为了更好地进行平滑处理,可以将手写体的数字分为粗线条和细线条两种分别进行处理。

切割主要是利用算法,根据手写体数字的轮廓将数字裁剪出来,切割的第一个步骤是对手写体数字进行扫描,目的是确定上下左右切点,然后,根据上下切点的行数和左右切点的列数确定要切割的字符的起始和终止的行数与列数。

切割后,对手写体数字进行细化,将线条统一为细线条,线条细化后需要对手写体数字进行归一化处理,并在特定大小的图像空间中。

去毛刺主要是为了去除细化后的手写体数字边缘的粗糙点,本文提出的基于改进的C-支持向量机的手写体数字高识别率方法需要对手写体数字进行两次去毛刺处理。在对手写体数字进行第二次毛刺去除时,要对不同的模板对手写体数字的的左上、左下、右上、右下、左中、右中、上中和下中八个方向全部进行处理以保证手写体数字识别的准确率。也需要对手写体数字进行模板匹配法,进行断点进行修复。

(2)利用改进的C-支持向量机进行手写体数字字符的特征提取。

特征提取包括很多方面,分别是孔洞特征、端点特征、四交叉点特征、左右截距特征、竖线特征和横线特征,下面介绍改进的C-支持向量机如何进行特征提取。

手写体数字的孔洞特征,第一要找到字符的上切点,并按照右、右上、上、左上、左、左下、下和右下八个方向对手写体数字进行搜索,重复以上操作,找到孔洞就需要进行特征提取。值得注意的是,在搜索孔洞的过程中,如果搜索到的手写体数字链码码长小于算法中阈值,这条线就是一条干扰曲线,算法不需要对这条线进行特征提取。

竖线特征的提取是主要是用于识别字符5和字符7,这两个数字具有明显的竖线特征,横线特征的提取主要是为了提高字符2的识别率,同样,在识别竖线特征和横线特征是也采用模板匹配的方法。

2.3 利用改进的C-支持向量机算法进行手写体数字识别

为了提高手写体数字识别的正确率,降低手写体数字识别误差,在利用本文算法进行识别的过程中,要利用模板匹配法提取特征匹配,在识别的过程中提前规定每一个数字应具备的特征,当某个字符具备这些特征时,就可判定该字符所代表的数字。

3 结束语

由于计算机技术的发展,手写体数字识别率还有很多的限制,造成了手写体数字识别率仍然比较低,为了便于手写体数字应用,很多专家学者开始研究如何提高手写体数字识别率。本文提出了一种基于改进的C-支持向量机的手写体数字高识别率方法,对手写体数字的预处理、端点提取以及四交叉点特征的提取过程都提出了具体的实验方法,实验结果证明基于改进的C-支持向量机的手写体数字高识别率方法有效可行,本实验方法可以提高手写体数字识别率,为更多应用手写体数字的领域提供技术支持。

猜你喜欢

手写体字符识别率
基于大数据下的手写体识别的设计与研发
披着书法外衣的手写体
字符代表几
一种USB接口字符液晶控制器设计
图片轻松变身ASCⅡ艺术画
基于真耳分析的助听器配戴者言语可懂度指数与言语识别率的关系
听力正常青年人的低通滤波言语测试研究*
HBM电子称与西门子S7-200系列PLC自由口通讯
提升高速公路MTC二次抓拍车牌识别率方案研究
对维吾尔语手写体在线计算机识别技术的几点探讨