人工免疫系统在手写希腊字符识别中的应用
摘 要:基于自然免疫系统的人工免疫系统是人工神经网络和进化计算之后的新型计算智能,以其强大的信息处理和问题解决能力被广泛应用到众多领域。本文提出了基于人工免疫系统的手写希腊字符识别策略并进行了实验仿真。利用3*3子网格算法对24*24字符图像样本提取64个特征参数,通过人工免疫算法训练图像样本,建立24个抗体库用于识别手写希腊字符。另外,利用BP神经网络进行了对比实验。实验结果表明,人工免疫系统模型在手写希腊字符识别中较BP神经网络具有更大的优势。
【关键词】模式识别 人工免疫系统 BP神经网络 子网格
1 引言
希腊字母广泛应用于数学、物理、生物和天文学中,手写希腊字母的识别对于手写公式识别是非常重要的。然而,目前手写识别的相关研究主要集中在数字、英文字符、中文字符、阿拉伯字符的手写识别中,手写希腊字母还没有很好的识别算法。因此,它的研究具有重要的理论和实践价值。
人工免疫系统是基于脊椎动物免疫系统处理过程的计算系统,通过改变系统结构和函数增强其适应性。免疫算法应用了免疫系统的学习和记忆特征,因此广泛用于解决数学、工程、信息技术等领域的计算问题。
本文将人工免疫系统用于识别手写希腊字符识别并取得了较好的效果。
2 手写希腊字符预处理
预处理是字符识别重要过程,有助于特征提取、提高识别正确率和识别效率。
本文对24个手写希腊字母进行了初步识别。1680个原始字符图像由70个学生完成,即每个字符类别为70个样本。
预处理被应用于图像样本以消除与字符分类不相关因素的影响。首先,利用3*3 KNN 平滑滤波器进行去噪,使图像的特征信息更加突出。其次,对手写图像样本进行归一化。归一化方式包括位置、大小和灰度,使用线性拉伸与压缩算法,将字符图像归一化为24*24。归一化后,利用Pavlidis 算法尽可能地将字符比划的宽度降低到一个像素。最后,使用阈值算法将图像进行二值化。
3 手写希腊字符特征提取
目前存在很多图像特征提取方式,提取方式的选择对于识别效果是至关重要的。本文采用了网格特征提取用于手写希腊字符识别。
网格特征广泛应用于字符识别。网格有两种应用方式:弹性网格和固定网格。对于固定网格,字幅图像被分割为多个固定大小的子网格。弹性网格中,根据像素分布概率动态决定网格线的位置,该方式被广泛应用于汉字识别。
本文采用固定网格进行特征参数的提取,子网格的大小分别为2*2、3*3 和 4*4,并进行了编程实验测试。根据实验结果、AIS的自适应性、学习能力和计算效率,3*3子网格被用于特征提取更有利于实现字符分类,即使用3*3子网格从左到右、从上到下对24*24二进制手写字符图像进行扫描,系数即为3*3网格内的像素值之和,由此可得到64个特征系数。图1即为从α、β、ε、Ψ和φ的350个字符样本中随机抽取的5个字符样本的64个特征系数。图a为在灰度值小于128时像素值为1、否则为0的二值化后子网格内像素值的累加,图b则为在灰度值小于128时像素值为0、否则为1的二值化后子网格内像素值的'累加。
由图可知,以灰度值小于128时像素值为1、否则为0的二值化后的3*3子网格提取的64个系数可较好地实现字符分类。
4 基于AIS的手写希腊字符识别
基于AIS的手写希腊字符识别中,经人工免疫算法训练,可得到24个字符识别模式库,即抗体库。抗体和抗原由源自3*3子网格的64个特征系数构成,抗体是AIS训练样本,抗原是需要识别的字符。所有的抗体库都可用于识别输入样本。
4.1 亲和度函数
抗体与抗原的亲和度函数描述的是两者的匹配性,亲和度与它们的距离成反比。本文将欧氏距离的倒数被定义为亲和度函数。
抗体之间的亲和度函数指的是抗体之间的相似性,表明抗体的多样性。其亲和度函数同上。
4.2 利用人工免疫算法构建抗体库
模拟生物免疫系统的抗体与抗原识别关系的人工免疫算法用于建立抗体库以识别手写希腊字符。每个分类库的建立步骤如下:
步骤1初始化:从每个字符类别的70个样本中随机抽取50个样本作为抗原和抗体,其中,20个为初始抗体库A,30个为抗原集;剩余的样本用于测试。最大重复步数为50。
步骤2 亲和度计算、交叉与变异概率的确定:依据定义的亲和度函数,抗体与抗原、抗体与抗体的亲和度分别计算出来。由于抗体库中的两个抗体不可能完全匹配,因此亲和度不可能为1。如果亲和度为1,一个抗体必须被剔除,重新选择抗体补充到抗体库中。如果抗体与相似字符的抗原的平均亲和度大于设定的阈值,该抗体就会被删除,新样本就会被随机选择作为新的抗体以提高相似字符识别的正确率。
交叉与变异概率和抗体、抗原的亲和度有关。亲和度越高,概率则越低。大概率将加速亲和度成熟,而低概率则有助于防止良好抗体中单一重要基因的丢失。因此,采用动态策略决定交叉与变异概率以提高运算效率和准确性。
步骤3 克隆算子:20个抗体子代通过克隆、交叉、变异获得。
抗体克隆的规模与抗体与抗原、抗体与抗体的亲和度有关,其随着抗体间相似度的降低、抗体与抗原相似度的增加而增大,动态策略被用于设定克隆规模。20个克隆子代通过克隆得到。
交叉操作在一个克隆子代的所有抗体中执行。不同子代的抗体采用不同的交叉概率。交叉概率越高,执行的交叉操作越多;反之,相应的操作越少。另外,相对目标抗体而言,具有更高的亲和度的抗体通常被用来与目标抗体执行交叉操作,每个交叉操作如下:
Two antibodies are selected from the different clone descendants and c1 is the object antibody.
从子代中任选两个抗体,c1为目标抗体,
c1={x1, x2…xj-1, xj, xj+1…..x64}
c2={y1, y2…yj-1, yj, yj+1…..y64}
随机选择一个位置 j进行交叉操作,ci 转换为di。