毕业设计单片机系统的二次插值算法的实现.doc
《毕业设计单片机系统的二次插值算法的实现.doc》由会员分享,可在线阅读,更多相关《毕业设计单片机系统的二次插值算法的实现.doc(15页珍藏版)》请在三一办公上搜索。
1、单片机系统的二次插值算法的实现总计 毕业设计(论文) 11 页 表 格 1 个插 图 3 幅姓 名:肖燏 学 号:2009010044 专业班级:电气自动化技术班摘 要汉字字库和西文字库都是非矢量字库,不支持放大,放大后会产生字失真,二次插值算法的使用实现了点阵字的无失真平滑放大和加粗。利用二次插值算法可实现点阵字处理。该算法的创新之处:第一,用低精度的标准字库实现了文字的高精度无失真平滑放大,大大节省了存储字库的空间,并增加文字的清晰度。第二,在低精度标准字库中实现了加粗功能。本文介绍了二次插值算法的基本思想、在点阵字中的应用,仿真结果表明,该算法能较好地实现点阵字的放大和加粗。关键词: 点
2、阵 二次插值 文字放大 文字加粗 斜体字 目 录摘 要I第一章 绪论1 1.1 课题背景1 1.2 单片机介绍2 1.3 字处理概况2 1.4 全文结构4第二章 字库介绍5 2.1 汉字库的介绍5 2.1.1 HZK16库5 2.1.2 区位码的求取6 2.1.3 字库绝对偏移位置的求取6 2.2 ASC16库6第三章 二次插值算法7 3.1 汉字放大功能实现7 3.2 加粗功能实现7 3.3斜体功能实现8第四章 仿真与结果分析9第五章 小 结10参考文献11第一章 绪论1.1 课题背景随着汉字全面向信息化社会转型,计算机在各个领域广泛应用,国际间交流与合作的扩大,信息处理应用对语言文字标准和
3、计算机汉字字库提出了多文种、大字量、多用途的要求。国际标准化组织(ISO)于1984年开始着手研制信息技术通用多八位编码字符集国际标准。原国家技术监督局和电子部也会同有关专家学者,经过多年的艰苦努力,编制完成了统一的中日韩汉字。1992年6月,ISO组织以压倒多数表决通过了ISO-10646标准,收字20902个,其中包括两岸所有的简化字和繁体字。1993年,ISO发布了一个编码标准(简称UCS)。此后,国家技术监督局于1993年12月24日发布了GB13000.1-93国家标准。 新标准的诞生,是电脑中文取得突破性进展的里程碑。它不仅对我国计算机的发展产生深远影响,也对汉字文化圈各国、各地区
4、的文化交流和科技进步起到重大的作用,有益于祖国的统一。随着计算机使用的日益普及,如果使用国际汉字库,我们的社会中必将出现五花八门的文字,简繁体并存,错别字连篇,将严重污染侵害我们的语言环境。为了配合IS010646的实施,全国信息技术标准化技术委员会又于1995年12月1日制订了汉字内码扩展规范(GBK)。GBK的优点是与现行的GB2312内码体系兼容,容易为用户所接受,因此是GB2312-80的理想换代标准。 目前我国自动照排系统采用的汉字字形处理技术,大部分是高点阵汉字 (如 128 128、256256)为母体进行字形的欠量处理,基于低点阵 (64x64点阵以下)汉字为母体的字形缩放处理
5、,在国内一些中文信息处理系统中已经起步,但是还存在一些问题如生成的字形都 同程度存在着字形缩小后部分汉字笔画断笔、粘连及不准确现象;放大后字形程度不同地存在阶梯效应或积界识差。由于低点阵汉字提供的字形处理信息要比高点阵的少的多,要缩小放大出高质量的汉字字形,技术难度很大。因此,研制以低点阵汉字为母体的高质量的汉字字形缩放技术,保证缩小放大后的汉字字形间架结构不变,保持各种汉字字体的原有风格,能输出和铅字相媲美的各种字体的汉字字形,是我们努力解决的技术课题。1.2 单片机介绍单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM
6、、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域的广泛应用。从上世纪80年代,由当时的4位、8为单片机,发展到现在的32位300M的高速单片机。将CPU、并行I/O接口、定时/计数器、RAM、ROM等功能部件集成在一块芯片上的计算机。随着SCM在技术上、体系结构上不断扩展,所集成的部件越来越多,能完成的控制功能越来越丰富。1.3 字处理概况目前书刊报纸常用汉字字号是从七号到特大号,而一般公文、报表等使用七号字到初号字足矣。我们应该在所需要的字号范围内,根据
7、输出设备的分辨率,从铅字号计算出所需的汉字点阵阶数。对于同一种铅字号来说,不同的设备分辨率对应着不同的汉字点阵阶数。下面是铅字号、设备分辨率和汉字点阵阶数之间的关系式:字形点阵阶数:字号的字面尺寸 (mm)输出设备精度 (dpi)25.4167。汉字字形的缩小放大处理技术,实质上是一种图形处理技术。汉字字形的缩放可以看作是一种特殊图形投影变换。目前实现这种字形图形变换的方法主要有:直接放大法、齐次坐标法、逻辑方程插入法、矢量轮廓变倍法。直接放大法实现起来简单,但放大较大时,字形锯齿现象十分严重。齐次坐标法给多种字形变换处理提供了一种简捷的数学工具,并能生成几种美术字,变换字形的效果较好。逻辑方
8、程插入法是基于字形点阵 (bitmap)进行字形加工处理的方法,生成字形的速度快、效果好,国外曾采用这种方法处理字形。矢量轮廓变倍法生成的字形笔划光滑、无畸变 、字形失真小,也是一种较好的方法,但是与前几种方法相比,速度要慢。基于字形点阵图 (bitmap)处理的合成方法是由二种算法原理组成。一种是黑白段逻辑方程插入法;一种是字形直线叠代法 (即Bresenhen法)。黑白段逻辑方程插入法采用以白线段或黑线段为基本处理单位,能保证不漏比划和保存线段之间的空白部分,从而使字形的间架结构不变,这种方法的不足之处是在缩小变换中,容易在横划和竖划的结合点产生露点现象,因此要在程序中加入断点平滑处理才能
9、使变换后的字形更加平滑。直线叠代算法是图形学中较为流行的一种直线算法,是将直线方程转换成一个叠代方程。我们将该方法引入字形处理,其原理如下:在字形的点阵图 (bitmap)中,我们可将字形的某一行、某一列的有效信息看作是不同长度的直线段,对每一个直线段的加工都采用Brescnhen算法来处理。用Bresenhcn箅法先对字形的行方向进行逐行扫描加上处理 然后再对行方向加工后的字形进行列方向的逐列扫描加工处理,这种多次的直线叠代循环就构成了字形的Brcsenhen算法。这种方法的优点是生成的字形不失真,能有效地保存字形的笔划,字形放大的效果较理想。基于字形矢量处理的链码 (Freeman)变倍法
10、。在对较高点阵汉字的缩小放大处理中 (比如6464点阵汉字)借鉴较好的矢量处理方法采用链码变倍法,其工作流程如图1.1。首先对字形的轮廓进行跟踪,找出字形笔划的边缘,用链码序列描述矢量轮廓。然后再用一连串的折线逼近矢量字形轮廓,并保证直线拟合效果和原轮廓相符,这样就生成一种矢量压缩字形。最后根据字形缩放系数,对欠量压缩字形进行变换和产生字形轮廓开关点,按生成的开关点进行字形的奇偶性填充,最终生成所需要字形,这就是链码变倍法的工作过程。图 1.1 链码变倍法工作流程 1.4 全文结构本文采用的二次插值算法是综合考虑的结果,二次插值算法复杂度不高且放大效果较好。因为整个实现方案是针对HZK16和A
11、SC16库进行字处理的,所以有必要对字库进行介绍。本文对HZK16库的区码、位码和字库中汉字的绝对偏移位置的求取进行了重点的介绍。同时也对常用的汉字库进行了简要的介绍。要实现点阵汉字的放大加粗斜体等效果,核心问题是算法,现在常用的算法有很多,比如:直接放大法,逻辑方程插入法,链码变倍法等,这里采用的是二次插值算法。二次插值算法包括两次插值,第一次0/1插值是对字的线性放大,放大后的字形会有较严重的锯齿形,所以要进行第二次0/1插值,这次插值是对无失真放大后的汉字进行平滑处理,使得放大后的字看起来干净简洁。加粗和斜体功能的实现也是根据规定来进行插值。经过插值处理的字要进行仿真验证,对其进行分析,
12、分析的结果中可以看到第一次线性插值放大后的字体有较严重的锯齿,而经过平滑处理后字体有很好的平滑度和清晰度,满足我们的需要。 第二章 字库介绍2.1 汉字库的介绍我们使用1616的点阵宋体字库,是每一个汉字在纵、横各16点的区域内显示的。1616点阵方式是最基础的汉字点阵,存储一、二级汉字及符号8836个,需要282.5kB的容量;而现在常使用的汉字库还有HZK24、HZK32即对应的2424、3232汉字点阵字库,3232点阵存储8836个汉字,需要1.132MB存储容量。虽然汉字库种类繁多,但都是按照区位的顺序排列的。前一个字节为该汉字的区号,后一个字节为该字的位号。每一个区记录94个汉字,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 单片机 系统 二次 算法 实现

链接地址:https://www.31ppt.com/p-4200417.html