3.2.1 结构特征的提取
首先对经预处理后的图像进行分割,如图3.6所示。
图3.6 图像分割
对图像分割后,结构特征提取的算法如下: 对细化后的数字图像取竖直的三条直线,分别取在5/12,1/2,7/12处,记下这三条竖直直线与数字笔段的交点数。 再取水平三条直线,分别取在1/3,1/2,2/3处, 分别记下这三条水平直线与数字笔段的交点数。 再取对角两条直线, 分别记下这两条对角直线与数字笔段的交点数。 3.2.2 笔划特征的提取
经细化后的数字图像其特征较为稳定,且笔划简单,因此对其抽取的基本结构组件能反映数字的本质特征,从而可快速有效地识别数字符,并达到较好的分类效果。数字端点如图3.7所示。
提取笔划特征的算法如下: 按从上到下,从左到右的顺序扫描预处理后图像并选择黑像素点P; 计算像素P的8-邻域之和N; 若N=1,则像素P为端点,端点计数器加一; 重复步骤(1)-(3),直到遍历整个图像。
图3.7 数字端点
3.2.3 数字的特征向量说明
依据上述特征提取方法,本系统中的特征矢量由9个分量组成,其排列如下所示:
DATA=[ 竖直中线交点数,
竖直5/12处,
竖直7/12处,
水平中线交点数 ,
水平1/3处交点数,
水平2/3处交点数,
左对角线交点数,
右对角线交点数,
3.3 知识库的建立
由于本文采用的是基于模式知识库的识别方法,所以对字符的结构特征的分析以及字符模型的构造是一个十分重要的环节,图3.8就是对识别数字的标准形态进行具体分析而构造的模板。
图3.8 规范手写体数字形态
DATA01=[2,2,2,2,2,2,2,2,0];
DATA11=[1,0,0,1,1,1,1,1,2];
DATA21=[3,3,3,1,1,1,1,1,3];
DATA31=[3,2,3,1,1,1,2,2,3];
DATA41=[1,1,1,2,2,1,3,2,4];
DATA51=[3,3,3,1,1,1,2,2,4];
DATA61=[3,3,2,1,1,2,3,2,1];
DATA71=[2,2,2,1,1,1,1,1,2];
DATA81=[4,4,4,2,2,2,2,2,0];
DATA91=[3,3,3,1,2,1,3,1,1]。
由于本系统是对自由手写体进行识别, 因而要考虑数字书写体的多变性。通过对图3.9所示数字变体的分析来对知识库进行补充。
图3.9 手写体数字变体
DATA02=[1,1,2,2,2,2,1,2,2];
DATA22=[3,2,2,1,1,1,1,3,2];
DATA32=[3,1,4,2,1,1,2,2,3];
DATA42=[1,2,2,3,3,1,2,2,2];
DATA52=[3,3,3,1,1,1,2,2,4];
DATA62=[3,1,3,1,1,2,2,2,2];
DATA82=[4,4,4,2,1,2,1,2,2];
DATA92=[3,2,3,2,1,1,3,1,3]。
最后得到知识库由上述两套模板所组成。
3.4 本系统的模式识别方法
在本次设计过程中,我们选择了模板匹配的识别方法。通过计算欧氏距离来衡量匹配程度。本系统中的特征矢量有9个分量,其计算距离公式如下:
公式(3.1)
但在本次设计中我们计算距离时对上述公式进行了改进,对于可靠性较高的端点数即最后一维特征值加大了权重,改进后的距离计算公式如下:
公式(3.2)
在识别过程,分别计算待识别图像的特征值与知识库中两个模板的距离,与10个数字逐个比较,距离最小的对应的数字就是最后识别结果。该算法具有特征提取和模板建立都比较直观,时间复杂度低,易于实现等优点。其缺点是在建立知识库时需要进行大量的训练,当知识库中的模板增多时,特征矢量间的距离会减小。
4 MATLAB程序设计
本次设计使用MATLAB语言实现该系统,其用户界面分别介绍如下。 读入图像: 读入图像的用户界面如图4.1所示。
图4.1 读入图像 对图像进行各种处理: 选择对图像的各种操作的用户界面如图4.2所示,对图像取反的用户界面如图4.3所示,对图像平滑去噪的用户界面如图4.4所示,对图像进行二值化操作的用户界面如图4.5所示,对图像进行规范化处理的用户界面如图4.6所示,对图像进行细化操作的用户界面如图4.7所示,
图4.2 选择对图像的各种操作
图4.3 图像取反
图4.4 平滑去噪
图4.5 二值化
图4.6 规范化
图4.7 细化 数字图像的识别:对手写体数字进行识别的结果显示界面如图4.8所示。
图4.8识别结果显示
在上述界面中, 系统可根据用户对识别结果正误的选择,自动计算识别率, 识别率结果显示在图像界面上方。
5 实验结果及分析
在实验过程中我们以两组样本作为训练样本对知识库的参数进行调整,这两组训练样本分别为100个规范手写体样本和100个自由手写体样本,规范手写体样本训练结果如表5.1所示,自由手写体样本训练结果如表5.2所示。
表5.1 规范手写体训练结果 数字
类别 正识样本数 误识样本数 识别率 0 10 0 100% 1 10 0 100% 2 9 1 90% 3 9 1 90% 4 9 1 90% 5 9 1 90% 6 10 0 100% 7 10 0 100% 8 10 0 100% 9 9 1 90% 合计 95 5 95%