毕业设计-基于VC++的图像处理系统_第1页
毕业设计-基于VC++的图像处理系统_第2页
毕业设计-基于VC++的图像处理系统_第3页
毕业设计-基于VC++的图像处理系统_第4页
毕业设计-基于VC++的图像处理系统_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕业设计(论文) 基于 的图像处理系统 设计与实现 + 级 计 /商 061 学生姓名 钱红蕾 学号 640505025 指导教师 陈芬 职称 讲师 导师单位 徐州工业 职业技术学院信息系 论文提交日期 1 徐州工业职业技术学院 毕业设计(论文)任务书 课题名称 基于 的图像处理系统设计与 实现 课题性质 工程设计 班 级 计 /商 061 学生姓名 钱红蕾 学 号 640505025 指导教师 陈 芬 导师职称 讲 师 2 一 选题意义及背景 : 图像处理技术一直是困扰 +初学者的一个难题,在 +中,没有一个完善的控件能够显示和处理各种格式的图像,有时用户需要了解各种图像的文件格式,这极大的增加了初学者的学习难度。基于此,设计了一个图像处理软件 ,本课题属于小型的图像处理软件,主要用于实现图像的显示与批量转换操作。 通过分析系统的工作过程,将 其用 +程序实现,将理论学习与实例相结合,来培养学生的综合能力。 二毕业设计(论文)主要内容: 主要工作: 负责程序各个功能的整合、调试及运行 三计划进度: 阶段 工作程序和要求 完成时间 前期准备阶段 学习毕业设计管理规定并准备与测试有关的资料 期指导检查阶段 析设计任务书的要求和用户需求,进行可行性分析和需求分析,确定系统所需的模版 ,安装建立设计所需软硬件环境;素材采集,处理 . 在确定的模版上 ,对系统功能进行分工 ,进行相关程序设计,根据用户的使用反馈结果修正自己的设计方案,在解决了大部分的以将系统进行打包。 对测试结果进行分析 期答辩总结阶段 老师审查并修改 毕业设计(论文)结束应提交的材料: 1、测试计划 2、测试脚本 3、测试报告 4、毕业论文 指导教师 教研室主任 年 月 日 年 月 日 3 论文 真实 性 承诺及指导教师 声明 学生 论文 真实 性 承诺 本人郑重声明:所提交的 作品 是本人在 指导教师 的指导下,独立进行研究工作所取得的 成果 ,内容真实可靠,不存在抄袭、造假等学术不端行为 。除文中已经注明引用的内容外,本论文不含其他个人或集体已经发表或撰写过的研究成果。对本文的研究 做 出重要贡献的个人和集体,均已在文中以明确方式标明。 如被发现论文中存在抄袭、造假等学术不端行为, 本人 愿 承担本声明的法律责任 和一切后果 。 毕业 生签名 : 日 期 : 指导教师关于学生论文真实性审核的声明 本人郑重声明: 已经对学生论文所涉及的内容进行严格审核,确定其内容均由学生在本人指导下取得,对他人论文及成果的引 用已经明确注明,不存在抄袭等学术不端行为 。 指 导 教 师签名 : 日 期 : I 摘 要 本文对图形图像处理系统的发展现状和所采用的主要技术进行了详细分析,确定了相应的结构和主要功能,以及实际开发中所采取的技术。系统在 P 平台下实现,本课题是采用 +作为编程工具,采用面向对象的程序设计技术实现一个图形绘制和图像处理的应用软件。主要工作分为三类,包括基本图形绘制与编辑、简单的图像处理、图像格式的转换。图形方面主要是设计图形基类,以及继承图形基类的具体图形类。通过对独立功能的封装,可以为今后需要的图形图像的应用奠定基础。系统的优点有:充分体现了面向对象的设计思想,充分运用了 C+的特性。程序结构清晰,可读性好,程序中做了充分的注释。 最后,对系统进行测试表明,系统功能达到了预期的要求,界面友好,操作简便,运行也较稳定,是一个完成基本功能的图形图像系统。 总体上,本文介绍了系统开发设计的全过程和设计过程中部分代码,对系统中采用的关键技术也作了一些必要的说明,对图像变换的基本原理,图像处理的基本原理和各种图像格式 做了详细的阐述。 关键词: 图像处理系统, 图像显示 ,图片格式转换。 on of as as in P + as a to a is is as as s s s of s of c+ s is in s s is a it of As a of of it in it to of 目 录 摘 要 . I . 一章 图像处理系统 . 1 述 . 1 统分析 . 1 求分析 . 1 行性分析 . 1 总体设计 . 1 目规划 . 1 统功能架构图 . 2 统设计 . 3 计目标 . 3 发及运行环境 . 3 术准备 . 3 本绘图操作 . 3 存画布的设计 . 3 定义全局函数 . 4 定义菜单 . 5 定义工具栏 . 11 . 12 统架构设计 . 12 . 14 主窗体设计 . 14 参考文献: . 18 致谢 . 20 1 第一章 图像处理系统 述 图像处理技术 一直是困扰 +初学者的一个难题,在 +中,没有一个完善的控件能够显示和处理各 种格式的图像,有时用户需要了解各种图像的文件格式,这极大地增加了初学者的学习难度。基于此,设计一个图像处理软件。 统分析 求分析 通过调查 ,要求系统具有以下功能。 显示 实现 实现对位图的旋转、反色、灰度化、线性变换等各种操作。 实现手写数字的识别。 行性分析 为了降低程序开发的难度,使用微软公司的 称为 微软公司 架的一部分,它封装了各种图像的 处理技术。通过使用 户可以非常方便地实现图像的显示与转换。虽然 于 架的一部分,但是用户可以在非 境下使用 有关具体的使用方法,在以下部分进行介绍。 总体设计 目规划 图像处理系统是一个典型的图像处理软件,它由图像显示、图像转换、图像处理、字符识别、其他和帮助等模块组成。 图像显示模块 该模块主要包括显示位图 、显示 示 个部分。 图像转换模式 该模块主要包括位图转换为 换为位图、位图转换为 图像处理系统 图像显示模块 图像转换模块 图像处理模块 字符识别模块 帮助 固定颜色 随机颜色 关于 显示 J 示G I F 显示位图 位图转换 J P E G J 位图转换G I F G I 图像旋转 图像锐化处理 图像反色处理 灰度化处理 线性变换 手写数字识别 其他 转换 为位图 4个部分。 图像处理模块 该模块主要包括图像旋转、图像锐化处理、图像反色处理、灰度化处理、线性变换 5个部分。 字符识别模块 该模块主要包括手写数字识别。 其他模块 该模块主要包括设置菜单的固定颜色和随机颜色两个部分。 帮助模块 该模块主要包括软件的版本、开发单位等信息。 统功能架构图 系统功能构架图如图 图 像处理系统功能架构图 3 统设计 计目标 本系统属于小型的图像处理软件,主要用于实现图像的显示与批量转换操作。具体设计要求如下。 实现各种图 像格式的显示。 系统采用良好的人机对话模式,界面设计美观、友好。 支持图像的单一转换与批量转换。 实现位图的各种常规操作。例如图像旋转、灰度化处理、线性变换等。 系统运行稳定、安全可靠。 发及运行环境 系统开发平台: + 运行平台: P/000/003 。 分辨率:最佳效果 1024*1280 像素。 术准备 本绘图操作 绘图操作通常是指在窗口的某个区域输出位图图像。窗口通常关联一个设备上下文 有的绘图操作都是通过 完成的。用户可以通过调用窗口类的 法获得一个 象指针。 供 方法来输出位图,但是这些方法均需要借助另一个 象来实现。 如何设置源设备上下文,并调用 法输出位图。 ); /获取窗口设备的上下文 /定义位图对象 /定义设备上下文 /创建一个兼容的设备上下文 /加载位图对象 /选中位图 ,600,600,&,0, /调用 法输出位图 存画布的设计 在绘制图像时,如 果频繁的进行多次绘图操作,会出现闪烁的情况。为了防止闪烁的出现,可以设计一个临时的画布,称之为内存画布,让所有的绘图操作均在内存画布上进行,然后在内存画布对象失去作用域时将其输出到目标设备上下文中,这样就阻止了闪烁情况的出现,内存画布的设计 代码如下 : 4 m_ dc, ); /选中位图对象 /设置成员变量 /设置成员变量 /将目标区域绘制在内存画布上 , , /选中之前选中的对象 If( /判断位图对象是否为空 /释放位图对象 /释放设备上下文 内存画布 包含一个构造函数和析构函数,其中,在构造函数部分,将根据参数 建一个兼容的设备上下文,并且将 内容绘制在内存画布上;在析构函数中,会将内存画布的内容输出到目标设备的上下文中。 定义全局函数 在 +中没有提供直接的函数用于获取文 件的名称(去除扩展名)和获取文件的扩展名(去除文件名)。为此,定义了两个全局函数来获取文件的名称和文件扩展名。函数定义如下: /获取文件名称 .) /反向查找 “ .” 的位置 /从左方开始截取字符串,并返回截取的字符串 /获取文件扩展名 .); /反向查找“ .”的位置 在为本系统设计自定义菜单时,由于主界面对话框的宽度可以调整,导致菜单栏的高度会发生变化,如图 示。 图 单栏高 度 从 可以发现,当对话框的宽度变化时,菜单栏的高度也会发生变化,这在绘制菜单的背景颜色时候会带来困难,需要从 态链接库中导出菜单栏高度 5 该函数。流程图如下: 定义菜单 为了使程序界面更加美观,在本系统中自定义了一个菜单,实现菜单的特殊效果显示,如图 示 : 图 定义菜单 在 +中,实现自定义菜单是比较容易的, 库提供了 用于 设计菜单,用户只要从该类派生一个子类,然后改写 法, ; (: 资源 : 资源 N Y N Y :; 6 设置菜单项的高度和宽度;改写 法,根据菜单项的不同状态,绘制不同效果的菜单项就可以了。具体设计如下 : (1) 从 派生一个子类 (2) 定义一个菜单项结构 录菜单项的信息。代码如下: /定义一个结构,记录菜单项的详细信息 /菜单项的文本 /菜单项图像索引 ; / 菜单项的类型 层菜单, 出式菜单, 0:分隔条,其他:普通菜单 (3) 向 中添加成员变量 。 (4) 在 的构造函数中初始化成员变量。 0; /初始化菜单项数量 0; /初始化整型变量 /初始化菜单列表 04,199,186); /初始化背景颜色 93, 210, 238); /初始化顶层菜单颜色 /是否采用随机颜色 (5) 在 的析构函数中释放成员变量占据的堆空间。 0) /如果菜单项 0,则释放菜单列表 (6) 向 中添加 法,获取菜单项的数量,当前流程图如下: 7 (7) 向 中添加 法,附加菜单句柄到对象上 /附加菜单句柄到菜单对象 /获取菜单项的数量 0) /判断菜单项数量是否 0 /创建菜单列表 (8)向 中添加 法,将每个菜单项关联一个 构对象。 (9)向 取顶层菜单的高度。流程图如 下: ; ,& /获取菜单栏的区域 ; /获取顶层菜单的数量 /定义一个区域指针,记录菜单项区域 /定义一个选区指针,记录菜单项选区 /定义一个区域对象 - /获取主窗口区域 ,0,0,0); ,0,0,0); j=0; i, i+ N Y 9 (11)向 中添加 法,绘制菜单项文本。 0,0); (12)向 中添加 法,绘制顶层菜单的背景颜色 。 (13)向 中添加 法,绘制菜单分隔条。 55,0,0),0,255); i+ r j, 以获取非菜 单项区域 j+ by ,1); r1,g1, /读取渐变起点的颜色值 r2,g2,( r3,g3, /菜单区域水平方向每个点 应该变化的度 (范围 ) ( / (); (); (); r,g,b; /菜单区域水平方向每个点的颜色值 i= i); i); 00; 11 (15)改写菜单类的 方法,根据菜单项的文本设置菜单项的宽度。 5; /设置菜单项的宽度 (16)改写菜单类的 方法,根据菜单项的不同状态,绘制不同效果的菜单。 * /获取菜单设备上下文 (-(- /设置透明的背景模式 ,自定义了一个工具栏,示。 图 定义工具栏 自定义工具栏最简单的方法是处理 息,在其消息处理函数中根据工具栏按钮的不同状态绘制不同效果的工具栏按钮。具体设计步骤如下。 12 从 派生一个子类,本例为 向 中添加变量成员。 在 于处理 息。 向 示 于绘制工具栏按钮。 向 据工具栏按钮的不同状态,绘制不同效果的工具栏按钮。 要功能模块的设计 统架构设计 为了使 读者能够对系统文件有更清晰的认识并了解其使用方法,在此设计了文件架构图 ,如图 统主界面 ) 像 图像显示 图像转换 图像处理 字符识别 帮助 图 主文件架构图 图像显示文件架构图和图像转换文件架构如图 图 像显示文件 架构图 示位图 示 示 像显示 13 图 像转换文件架构图 图像处理文件架构图和字符识别文件架构图如图 助文件架构图如图 图 像处理文件架构图 字符识别 帮助 写数字识别 关于 图 符识别文件架构图 图 助文件架构图 像旋转 像锐化处理 像反色处理 图像处理 度化处理 性变换 图转换为 换为位图 图转 换为 像转换 换为位图 14 共模块设计 在设计 图像效果显示时,有些图像可能比较大,在窗口中不能完全显示出来。为了让用户能够浏览图像 ,可以单独设计了一个滚动窗口,当控件设置在窗口中,用户可以通过滚动条来浏览控件的各个部分。滚动窗口的设计步骤如下。 (1)创建一个对话框,类名为“ ,设置对话框的属性 。 (2)处理对话框的 置窗口的滚动方向和范围。代码如下: (3)处理对话框的 置窗口的滚动方向和范围。代码如下: ,增量为 6 ,增量为 6 (4)处理对话框的 应鼠标的滚轮事件。代码如下: /获取滚动条信息 /获取垂直滚动条位置 /设置垂直滚动条的位置 ,6); /滚动窗口 主窗体设计 1. 实现目标 图像处理系统主窗体主要由菜单、工具栏、客户区域和状态栏 4部分组成,主要功能是对图像处理系统的各个模块进行调整。图像处理系统主窗体的运行效果如图 像处理系统主窗体的运行效果 15 2. 设计步骤 ( 1)创建一个单文档 /视图结构的应用程序,工程名称为“ 。 ( 2)在工作区的资源视图窗口中修改菜单资源 “ 设置菜单项的效果如图 图 菜单资源设计 菜单资源文件代码如下: 像显示 ” 显示位图 ” , 示 , 显示 ,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论