基于CCD和神经网络的LCD数显字符采集与识别

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于CCD和神经网络的LCD数显字符采集与识别
钟亮平;汪伟
【摘要】利用CCD对LCD数码显示字符进行采集,在分析图像处理和神经网络理论的基础上,采用网格法与交线特征提取法,对LCD数显字符进行识别,为具有LCD 数显而与计算机无标准通信接口的仪器仪表设备提供一种实用的无线接口.实验表明,系统对LCD数显字符采集方便,识别率高,并且抗干扰能力强.
【期刊名称】《现代电子技术》
【年(卷),期】2008(031)001
【总页数】2页(P164-165)
【关键词】CCD采集;图像处理;BP神经网络;字符识别
【作者】钟亮平;汪伟
【作者单位】中国计量学院,浙江,杭州,310018;中国计量学院,浙江,杭州,310018【正文语种】中文
【中图分类】TM932;TP216
随着技术的发展,现在的仪器仪表设备越来越多地采用LCD显示,LCD数码显示具有功耗低、无闪烁等很多优点。

然而,很多的仪器仪表设备并没有提供数据存储空间和与计算机通信的标准接口,使得LCD所显示字符难以传输给计算机处理并存储。

文章在分析图像处理和神经网络理论的基础上,实现LCD数码显示字符的快速采集、识别与存储。

1 系统实现
基于CCD和神经网络的LCD数显字符采集与识别系统平台框图如图1所示。

图1 LCD数显字符采集与识别系统平台框图
先利用CCD采集LCD数显字符图像并传输给计算机,再将改进的BP神经网络用于LCD数显字符识别,最后存储于计算机上。

系统主要由CCD图像采集、图像预处理和神经网络几部分组成。

1.1 图像预处理
图像预处理是特征提取和神经网络字符识别的前提,图像预处理的好坏直接影响字符识别结果,文章图像预处理主要有256级灰度化、中值滤波、区域定位、二值化、倾斜调整、字符分割、归一化、重排。

1.1.1 滤波
中值滤波[1]能在保护图像边缘的同时去除噪声,即采用一个滑动窗口,将窗口中各点灰度值的中值来替代指定点(一般是指窗口的中心点)的灰度值。

对于奇数个元素时,中值指按大小顺序排序后中间的数值。

对于偶数个元素,中值指按大小顺序排序后中间两元素灰度值的平均值。

1.1.2 LCD区域定位与二值化
多次实验表明,一般LCD经CCD采集并256级灰度后,LCD区域的灰度级几乎都在175左右,所以,可以根据这个灰度级定位LCD区域,图2为LCD数显表面256级灰度图。

然后对定位后的区域进行二值化,二值化[1]对于特征的提取非常重要,文章采用局部自适应阈值化,图3为区域定位分割后二值化图。

1.1.3 字符分割
字符分割采用投影法[2],由于LCD数码字符之间具有一定的间隔,这个间隔就是字符分割的依据,对字符图像进行垂直投影,相邻字符之间间隔的投影值正好处于波谷处,此处正好为字符分割位置。

图2 LCD数显表面256级灰度图图3 区域定位分割后二值化图
1.2 BP神经网络字符识别
BP(Back Propagation)神经网络于1986年由Rumelhant和McClelland提出,是目前应用最为广泛和成功的神经网络之一[3],学习过程由信号的正向传播和误差的反向传播两个阶段组成[4,5]。

BP神经网络设计主要有特征提取、输入、输出和隐层节点设计。

1.2.1 特征提取
采用网格法与交线特征提取法,把整个归一化后的字符区域全部象素作为特征,文章网格大小为一个象素大小,黑色象素取1,白色取0(因为LCD显示字符一般为黑色),将字符归一化到8*16象素大小,通过网格法提取128个特征。

再根据交线法提取特征,利用3条竖线和4条横线在竖直和水平方向把字符分别分成4份和5份。

如字符“0”,4条横线穿过这个字符,有8个交点,3条竖线有6个交点,图4为字符“0”水平交线图。

所有字符中在水平方向交点最多为 8个,竖直方向最多为9个,再对水平和竖直方向交点共同编码,如字符“9”水平方向有6个交点,竖直方向9交点,则按交线交点顺序可编码为(10101111111111111),共17个交线特征,为增加交线特征的网络影响能力,交线特征编码重复取4次得68个输入特征,再加上网格法提取的特征总共196个,作为输入特征。

1.2.2 I/O及隐层节点数设计
提取了196个特征,即输入节点196个。

识别字符主要由0~9和小数点共11个字符组成,采用“N-1”表示法,取4个输出神经元。

如输入字符“ 1”,输出用(0.1,0.1,0.1,0.9)表示,取0.1和0.9,不取0和1主要是因为选择的神经元功能函数是单极性Sigmoid函数,输出只能无限趋近0和1。

隐层节点数设计先由经验公式(m为隐层节点数,n为输入节点数,l为输出节点)确定初值,然后试凑得出最佳节点数,实验试得隐层最佳节点数为28个。

1.2.3 BP神经网络的改进
改进BP算法主要是增加动量项和调整学习步长。

增加动量项之后,当上次调整与本次调整梯度方向相同时,起加速作用,不同起阻尼作用[6],文章动量系数取0.6。

让学习步长在学习过程中自动调整,学习步长η初值取0.2,对训练中权值的修正值进行检查分析,看他是否真正减小了误差,若权值的修正确实减小了误差,则增大学习步长,
否则,应减小学习步长。

文章学习步长η调整公式如下:
E(k)表示第k次迭代时的误差,η(k)为第k次迭代时的学习步长。

2 实验结果
本实验利用系统平台采集了LCD数码字符样本220个,即每个字符20个样本。

取132个为训练样本(剩下的88个作为测试样本),将训练样本按奇偶分成两部分,采用交叉训练法以提高网络的鲁棒性,训练时间约为1~5 s。

对132个训练样本
本身进行识别,正确率为100%,对剩下的88个测试样本进行识别,正确率为
98.86%,训练好后采集识别并存储每块LCD上数显字符总时间约为0.2~0.5 s,图5为字符识别结果图。

图4 字符“0”水平交线图图5 识别结果图
3 结语
利用CCD和神经网络对LCD数显字符采集与识别,实验表明,采集方便、识别
速度快、抗干扰能力强、正确率高。

增加训练样本数和提取适当的特征,可以进一步提高正确率。

系统可用于LCD数显字符采集录入,为很多带有LCD数显而又与计算机无标准通信接口的仪器仪表设备提供很好的接口,同时,可以推广到LED
数码显示及其他字符采集录入系统中。

参考文献
[1] [日]田村秀行.计算机图像处理[M].北京:科学出版社,2004.
[2] 刘兴,蒋天发.车牌字符图像分割技术的研究与应用[J].武汉大学学报:自然科学版,2006,39(6):125-128.
[3] 朱大奇,史慧.人工神经网络原理及应用[M].北京:科学出版社,2006.
[4] Silva F M,Almeida L B.Speeding up back Propagation[J].Advanced Neural Networks,1988(1):131-139.
[5] Van Ooyen A,Nienhuis B.Improving the Convergence of the Back Propagation Algorithm[J].Neural Networks,1992,5:465-471.
[6] 胡伍生,沙月进.神经网络BP算法的误差分级迭代法[J].东南大学学报:自然科学版,2003,33(3):376-378.。

相关文档
最新文档