1、浙江师范大学本科毕业设计(论文)计算机科学与工程学院 专业 计算机科学与技术学号 设计成绩作者姓名学院班级指导老师完稿时间浙师大计算机科学与工程学院毕业设计附录目 录摘要 引言 第一章 系统的概述 1.1 系统的主界面 1.2 系统的功能 1.3 系统的简单操作 第二章 Visual Basic 的介绍及 API 函数2.1 Visual Basic 简介 2.2 Windows API 函数第三章 图像处理技术 3.1 过滤 3.2 彩色转换 3.3 卷积处理 3.4 滤波 3.4.1 最大值滤波 3.4.2 最小值滤波 3.4.3 中值滤波3.5 对比度增强 3.6 FFT 分析 第四章
2、系统软件设计 4.1 程序设计 4.1.1 需求分析4.1.2 总体设计 4.1.3 详细设计4.1.4 编码和测试4.2 关键技术 4.2.1 代码转换4.2.2 API 函数调用4.2.3 然后显示调色板中的颜色4.2.4 工具栏中的工具调用4.2.5 菜单栏的编辑4.2.6 历史框恢复的原理12223455678999999101011111114151516161818181821浙师大信息科学与工程学院毕业设计附录4.2.7 实现两幅图像叠加成新图像4.3 常见问题及回答结束语 参考文献 附录 外文翻译 1外文翻译 2学术论文 基于 VB 的数字图像处理技术的开发与研究摘要:本文首先
3、介绍数字图像处理技术的背景和意义,然后介绍基于 VB 的所完成的图像处理应用软件,具体介绍该软件的功能、结构及简单操作。接着介绍一下 VB 和 Windows 的 API 函数,最后着重介绍软件中一些图像处理技术,关键技术讲解利用 VB 中的 API 函数,并通过 VB 编程语言如何进行图像处理的实现,介绍在这个设计过程中碰到的难题及解决方法。关键词: Visual Basic、API、图像处理、FFTAccording to the VB arithmetic figure picture handles technical development and researchAbstract:
4、 This text introduces first the arithmetic figure picture handles technical background with meaning, then introduction according to the VB a picture for completing handles to apply the software, introducing function, construction and simple operations of that software in a specific way.Introduce the
5、 VB immediately after with the Windows the function of API, emphasize to introduce finally the some picture in inside in software handles technique, the key technique explains in detail the exploitation the function of API in the VB, and passes the VB weave the distance language how to proceed the p
6、icture handles of realize, introduce the hard nut to crack run into in this design process and solute the method.Key words: Visual Basic、API、图像处理、FFT浙师大信息科学与工程学院毕业设计附录引 言随着科学技术的不断发展,计算机的更新速度不断提高,人们的思想文化素质的提高,对图像的要求也越来越高。因此把原始图像与计算机结合起来,从而创作出许多更加完美的图像,满足人们的需求。计算机图像处理,是指利用计算机对图像进行一系列加工,以便获得人们所需要的效果。图像
7、是人类获取和交换信息的主要来源,人类感知外界信息,80%以上是通过视觉得到的。因此,图像处理的应用领域必然涉及到人类生活和工作的方方面面。图像处理或图像分析方法的应用越来越广泛,其主要理论基础是形态数学,立体学,集合论等。图像处理或图像分析方法的应用越来越广泛,其主要理论基础是形态数学,立体学,集合论等。图像处理的应用领域很广,大致可以分为六大领域以及十余个子领域:材料科学:光学材料,金属材料,晶体材料,陶瓷建筑材料。地学:岩矿结构,岩体裂隙特征,土体颗粒。生命科学:生物,植物,医学,基因。地理学:经济地理,土地资源,地貌,气象学。机器人: 包括电路设计,识别等。鉴定:指纹鉴定,财务印章管理,
8、防伪鉴定等。图像处理虽然也可以用光学方法或模拟技术来实现,但目前主要是利用计算机来实现,称为数字图像处理。因此,图像处理一般是指数字图像处理。常见的图像处理有图像数字化、图像编码、图像增强、图像复原、图像分割与图像分析等。经过处理后的图像,一定能够更好的被用于工业或者个人目的。为此开发这个数字图像处理软件,能够处理一些图像,并对图像处理技术此方面进行深入的研究。第一章 软件系统的概述因在本章节中,我们将对基于 VB 图像处理软件进行分析。给出它的主体界面,能实现的功能以及系统的简单操作。1.1 系统的主体界面由于现在关于图像处理的应用软件很多,优秀的有 Adobe 公司的浙师大信息科学与工程学
9、院毕业设计附录Photoshop、Macromedia 公司的 Fireworks 等,它们的版本不断在更新,功能也在不断的提高。本应用软件就参照图像处理软件新视觉的主体界面。本软件的主体界面如下:包括主界面、工作区、工具栏、调色板、历史框。如图 11.2 系统的功能该系统的功能主要集中在菜单栏和工具栏中,菜单栏中所体现的都是处理图像的功能。包括以下方面:1.新建一幅图像,或者打开、保存、关闭和退出等功能。2.对图像进行复制、粘贴、剪切、全选、取消选择和翻转。其中翻转包括水平翻转和垂直翻转。3.过滤图像,包括锐化、浮雕、腐蚀、风化。4 对图像进行滤波处理:包括最小值滤波处理、最大值滤波处理和中
10、值处图 1浙师大信息科学与工程学院毕业设计附录理。5.对彩色图像进行变换:包括彩色转灰度、彩色转黑白、平滑处理、霓红处理。6.软化图像,包括红色、绿色、橙色;硬化图像,包括红色、绿色、蓝色。7.对图像进行卷积处理,包括水平增强、垂直增强和双向增强。8.对图像进行边缘探测,例如右下边缘抽出,拉普拉斯(8 邻域) 。9.给图像进行对比度增强,进行 FFT 分析,以及对两幅图像进行合成。工具栏中的功能主要体现在工具中,正如平时画图工具的工具一样,可以选择一定的区域,放大图像、画圆、画方,输入文字、剪切一定的区域,简单的渐变等。1.3 系统简单操作举两个简单的例子:其一,我们要处理一幅图片,要想得到一
11、个浮雕的效果。那么,首先在文件菜单项中选择打开文件,到指定的目录下选择你需要处理的图片,打开之后,在菜单栏中的过滤选项中选择浮雕,那么软件就执行相应的操作,进行图像处理。处理完后,如果不需要其它操作,就可以在文件菜单项中选择保存项,保存到你指定的目录下。其二,我们要自己建一幅自己的图片。选择菜单栏中文件下的新建,然后在工作区,选择工具条的多种工具,可以画圆,也可以画放方,剪切一定的区域,进行简单的渐变色,输入文字等,然后保存即可。处理前 处理后浙师大信息科学与工程学院毕业设计附录第二章 Visual Basic 的介绍及 API 函数2.1 Visual Basic 简介Visual Basi
12、c(简称 VB)是美国微软公司开放的一种可视化编程工具。它功能强大、简单易学,能够方便快捷地开放 Windows 应用程序。它主要沿袭了BASIC 系列语言的语法,非常简洁。Visual Basic 中的“Visual ”,其含义是“可视化的” ,指的是开发图形用户界面(GUI Graphical User Interfaces)的方法。 “Basic”指的是BASIC(Beginners All-Purpose Symbol Instruction Code,即初学者通用符号指令代码)语言。Visual Basic 与一般的 BASIC 语言不同,它是可视化的 BASIC 语言,不必编写大量
13、代码是描述程序界面,而只要把预先建立好的对象拖放到窗口界面中即可。Visual Basic 具有以下突出特点:1. 方便的开发环境。Visual Basic 提供了完善的可视化编程环境。可以同时打开多个工程,可以浙师大信息科学与工程学院毕业设计附录建立多文档界面和单文档界面,具有强大的代码编辑器。在代码窗口中可以自动列出控件的属性和方法,可以自动提示函数的语法。2. 事件驱动的程序机制Visual Basic 程序运行的基本方法是由“事件”来驱动程序运行的。不使用传统编程中的“主程序”和“子程序”之间细致的连带关系,而是将大规模的程序分为若干个单一的、独立的、小规模的段落程序,分别由各种“事件
14、”来驱动执行,大大降低了程序的编写难度。Visual Basic 版本简介:它有三种版本,各自满足不同的开发需要。1.学习版。利用学习版编程人员可以轻松的开发出 Windows 下的应用程序。它包括所有的内部控件及 Grid、Tab 和 Data_Bound 控件。学习版提供的文档有程序员指南 、 联机帮助 、及Visual Basic 联机手册 。2.专业版。为专业编程人员提供了一整套进行系统开发的功能完备的工具。该版本包括学习版的全部功能同 ActiveX 控件,还包括 Internet 控件和Crystal Report Writer。专业版提供的文档有程序员指南 、 联机帮助 、部件工
15、具指南 。3.企业版。使得专业编程人员能够开发功能强大的组内分别式应用程序。该版本包括专业版的全部功能连同工程版的控制系统等。企业版提供的文档除包括专业般的所有文档外,还有客户/服务器应用程序开发指南 和SourceSafe Users Guide 。因为本软件开发的平台为企业版 Visual Basic 6.0,而且现在市面上流行的也是企业版 Visual Basic6.0,因此这里我们主要介绍 Visual Basic 6.0。Visual Basic 6.0 是微软公司系列可视化开发工具 Visual Studio 6.0 中的产品,是创建 Windows 应用程序最简便、最快捷的开发工
16、具之一。同时 Visual Basic 6.0具有强大的图形图像处理功能,并广泛应用于图形设计、图像处理及多媒体技术中。2.2 Windows API 函数Win32 API 即为 Microsoft 32 位平台的应用程序编程接口( Application Programming Interface) 。所有在 Win32 平台上运行的应用程序都可以调用这些函数。浙师大信息科学与工程学院毕业设计附录使用 Win32 API,应用程序可以充分挖掘 Windows 的 32 位操作系统的潜力。 Mircrosoft 的所有 32 位平台都支持统一的 API,包括函数、结构、消息、宏及接口。使用
17、Win32 API 不但可以开发出在各种平台上都能成功运行的应用程序,而且也可以充分利用每个平台特有的功能和属性。在具体编程时,程序实现方式的差异依赖于相应平台的底层功能的不同。最显著的差异是某些函数只能在更强大的平台上实现其功能。例如,安全函数只能在 Windows NT 操作系统下使用。另外一些主要差别就是系统限制,比如值的范围约束,或函数可管理的项目个数等等。标准 Win32 API 函数可以分为以下几类:1. 窗口管理 2. 窗口通用控制 3. Shell 特性图形设备接口4. 系统服务 5. 国际特性 6. 网络服务而在我们的软件设计过程中将使用其中的两类,分别为窗口管理函数和图形设
18、备接口函数。在 Windows 程序设计领域处于发展初期时,Windows 程序员可使用的编程工具唯有 API 函数。这些函数在程序员手中犹如“ 积木块“ 一样,可搭建出各种界面丰富、功能灵活的应用程序。不过,由于这些函数结构复杂,所以往往难以理解,而且容易误用。随着软件技术的不断发展,在 Windows 平台上出现了很多优秀的可视化编程环境,程序员可以采用“ 所见即所得“ 的编程方式来开发具有精美用户界面和功能的应用程序。这些可视化编程环境操作简便、界面友好,比如:Visual C+, Delphi,Visual Basic 等等。在这些工具中提供了大量的类库和各种控件,它们替代了 API
19、的神秘功能。事实上,这些类库和控件都是构筑在 Windows API 的基础上的,但它们使用方便,加速了 Windows 应用程序的开发,所以受到程序员的普遍采用。有了这些类库和控件,程序员们便可以把主要精力放在整体功能的设计上,而不必过于关注具体细节。不过,这也导致了非常多的程序员在类库面前“固步自封 “,对下层 API 函数的强大功能一无所知。实际上。程序员要想开发出更灵活、更实用、更具效率的应用程序,必然要涉及到直接使用 API 函数。虽然类库和控件使应用程序的开发容易得多,但它们只提供 Microsoft Windows 的一般功能,对于一些比较复杂和特殊的功能来说,单使用类库和控件是
20、难以实现的,必须直接使用 API 函数来编写。API 函浙师大信息科学与工程学院毕业设计附录数是构筑整个 Windows 框架的基石,只有充分理解和利用 API 函数,才能深入到 Windows 的内部,充分发挥各种 32 位平台的强大功能和灵活性,才能成功地扩展和突破类库、控件和可视开发环境的限制。第三章 图像处理技术 基本图像处理技术图像的颜色是由三种基本颜色,即红(R) 、绿(G)、蓝(B)有机组合而成的,称为三基色。每种基色可取 0 到 255 的值,因此由三基色可组合成(256*256*256)1677 万种颜色,每种颜色都有其对应的 R、G 、B 值。例如,常见的 7 种颜色及其对应的 R、G、B 值如图 2 所示。对一幅彩色图像的各像素值进行变换并依变换后的新像素值重新显示,则可以实现不同的显示效果3.1 过滤技术包括锐化、浮雕、风化、腐蚀。这里介绍两种分别是锐化和浮雕。图 2