本科生毕业设计(论文)
题目:嵌入式手写汉字输入系统的开发
姓名:
学号:
学院:数学与计算机科学学院
专业:计算机科学与技术
年级: 2008级
指导教师:(签名)
年月日
嵌入式手写汉字输入系统的开发
摘要:本文首先介绍了本系统的背景、难点和课题目标。其次,开发环境介绍。最后是开发过程,包括
笔迹的输入与显示、笔画的识别和字的识别。笔迹的输入和显示涉及到输入点的采集、有效性判断和滤波算法。笔画识别按照输入一笔识别一笔的原则进行。为了方便识别,把笔画分为横、竖、撇、捺和折五种,并赋予相应的编码。写完一个字后得到相应的笔画代码串,将代码串与笔画库进行比对进行字的识别。
关键词:触摸屏,手写汉字识别,楷体,算法。
The Development of Chinese Characters Handwriting Input Based on Embeded System
Abstract:This paper first introduces the background, difficult and subject objectives. Second, the development environment is introduced. Finally, the development process, including handwriting input and display, the strokes of the identification and word recognition. The handwriting input and display related to the input of the effectiveness of the collection, judgment and filtering algorithms. Stroke Recognition in accordance with the principle of the input to a recognition a. In order to facilitate identification, the stroke is divided into horizontal, vertical, write, press down and fold five kinds. Recognition a character by comparing the code string with strokes library. Keyword:touch screen,recognition of handwriting characters,typography,algorithm.
1 绪论
1.1课题背景
近些年来,带有触摸屏的可交互式设备的应用越来越广泛,手写汉字系统正是发挥触摸屏优势的一种输入法。此外,传统的汉字输入法也存在着一些弊端。例如音码输入法在发音不准和不会读的情况下无法输入;而五笔输入法要求使用者要记住字的拆分方式和按键位置。因此,在嵌入式设备上进行手写汉字识别技术研究有着重要的现实意义[1]。
1.2研究难点
[1]字数众多
汉字中存在的大量的相似字,例如‘已、己、巳’,‘戍、戌’等,手写时细微的差别就可能导致识别的结果不同。如何让软件提取到这些细小的差别并作出正确的判断是研究的难点之一。
[2]笔顺问题
由于每个人书写习惯的不同,使得不同的人写同一个字的笔顺不同,给单纯通过笔画识别汉字增加了难度。
[3]鲁性棒问题
鲁性棒问题也称为抗干扰性问题,如何克服因硬件不稳定或手写时偶然产生的抖动、断笔等,这些对于汉字手写系统的实际应用有着重大的影响。
1.3课题目标
开发适用于嵌入式系统的精简型手写汉字输入系统,使用32位ARM开发板。本系统基于笔画识别,要求使用者按正确的笔顺工整地输入汉字。
2 开发环境
开发环境由硬件和软件组成,硬件包括计算机、FQ-2478开发板和EasyJTAG 连接口,软件包括Arm Developer Suite开发环境和H-JTAG调试代理软件。
2.1FQ-2478开发板介绍
FQ-2478以LPC2478为核心组成,LPC2478是NXP公司生产的ARM7系列的嵌入式CPU。开发板采用12MHZ的晶振,经PLL电路6倍频生成72MHZ时钟信号供全系统使用。FQ-2478开发板如图2-1所示:
图2-1
2.2软件介绍
ARM Developer Suite集成开发环境简称ADS,是一套专用开发运行ARM内核处理器应用程序的开发工具,可以开发纯汇编程序也可以开发汇编、C/C++混合程序。
H-JTAG 是一款调试代理软件,它包括三个部分,分别是:H-JTAG SERVER,H-FLASHER 和H-CONVERTER 。其中,H-JTAG SERVER实现调试代理的功能,H-FLASHER 实现了FLASH烧写的功能 [2]。
3笔迹的输入与显示
笔迹的输入与显示的原理为:使用者在触摸屏上书写,触摸屏以一定的频率扫描获取笔迹上点的坐标,将坐标校正并转换为液晶屏的坐标,然后进行滤波处理,最后由液晶屏显示,再使用绘线函数将这些点连接起来,就形成了类似手写的笔画。流程如下图所示:
N
图3-1
3.1采样点坐标获取
本系统使用的触摸屏为四线电阻式,工作时靠电压的改变来确定位置[3]。触摸屏以一定的频率检测是否有触摸操作,一旦有触摸操作,则调用函数读取触摸屏的坐标值。由于触摸屏与液晶屏有各自独立的坐标系,所以,触摸屏的坐标进行校正后还要转化为液晶屏的坐标。
3.2笔迹的显示
获得的笔迹上不经处理时,存在着许多偏差较大的点,需要对原始数据进行一些处理。首先判断采样
点的可靠性,然后对有效的采样点进行滤波,最后再使用模拟人手绘的Bresenham画线算法,在屏幕上绘出与手写笔迹基本一致的连续曲线[4]。图3-2是未经处理的笔迹显示,可以看出笔迹中有大量的漂移点,这样的笔迹难以满足用户的需求,并且对笔画的识别也会造成困扰。
图3-2 未经处理的笔迹
3.2.1采样点有效性判断
每次扫描获取的点称为采样点,采样点的数量关系到笔迹显示的真实性。采样点越多,显示的笔画越
接近真实笔迹。扫描频率越高采样点数量越多,但对屏幕的影响也越大,相反扫描频率越低采样点数量越少,笔画的显示就容易失真。因此,扫描间隔的取值应在满足显示的要求下尽可能的大一些。根据反复试验,间隔取10ms。图3-3、图3-4分别是扫描间隔为10、30毫秒时的笔迹显示。从图中可以看出当扫描间隔取30毫秒时,采样点稀疏,甚至会产生断笔;而扫描间隔取10毫秒时,采样点完全可以满足显示需求,不会产生遗漏。
嵌入式系统开发是什么图3-3 扫描间隔为10ms时的笔迹显示图3-4扫描间隔为30ms时的笔迹显示
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论