4 系统的软件设计 单帧读入识别过程如下:
(1)
DSP发帧启动脉冲Fstart给
CPLD,地址译码器和触发器清零。
(2)CPLD接收Fstart。
(3)开始行扫描,并将数字化后的信号存入SRAM。完成一行采集,发DMA信号给DSP。
(4)DSP接收到DMA信号后,启动步进电机前进。
(5)步进电机到达一定位置时,转为(3)。
&n bsp; (6)一帧数据采集完毕时,发中断信号Ready给DSP,DSP读取SRAM,处理数据。
(7)数据处理完,若有新页,则转到(1)。
软件流程图如图3所示。

图3 软件流程图
5 识别算法 根据手写体数字的特征,采用一种简单易行的识别算法。算法中主要包括图像的预处理、特征提取和识别。
(1)二值化。二值化处理是将得到的灰度图像转化为二值数字图像,本系统采用全局阈值法进行二值化处理。
(2)平滑。由于平滑能够去除孤立的噪声、干扰,能平滑笔画的边沿,所以这是必不可少的预处理步骤。这里使用一种简单且行之有效的平滑方法——中值滤波方法。
(3)分割。图像的分割是从图像采集中所得到的整幅图像中分出需要识别的数字图像区和无用的背景图像区。由于手写体数字的限制,这里采用基于方框的查找法。
(4)规范化。为了便于对任意字符的特征提取,还要对字符进行正规化处理。由于每个手写数字的大小和在框内相对位置的不同,不能直接进行训练和识别,所以对处理后的点阵数据用基于重心的位置规范法进行规范,使之成为16×16的点阵数据格式,为后续的处理所用。
(5)细化。本文采用并行细化算法[4]。该方法采用16种3×3的邻域作为删除模板“剥去”图像的最外层,同时又采用两种3×4的邻域作为恢复模板恢复被删去的影响连续性的关键点,从而达到每次迭代都能完全“剥去”图像的最外层而不破坏图像连续性的目的。这种方法计算量小,所得骨架基本上位于图像的中轴,端点无明显的收缩,能满足本文所用识别方法对细化结果的要求。
特征提取的主要任务是对预处理后的二进制点阵数据进行处理,提取出数字图像中有关骨架、轮廓、拓扑结构、笔划分布等方面的特征信息,再送给分类器。本文提取数字的离散余弦特征。