毕业设计论文-基于VC++的图像处理系统设计与实现

上传人:ss****gk 文档编号:233085939 上传时间:2022-01-01 格式:DOCX 页数:24 大小:415.31KB
返回 下载 相关 举报
毕业设计论文-基于VC++的图像处理系统设计与实现_第1页
第1页 / 共24页
毕业设计论文-基于VC++的图像处理系统设计与实现_第2页
第2页 / 共24页
毕业设计论文-基于VC++的图像处理系统设计与实现_第3页
第3页 / 共24页
毕业设计论文-基于VC++的图像处理系统设计与实现_第4页
第4页 / 共24页
毕业设计论文-基于VC++的图像处理系统设计与实现_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《毕业设计论文-基于VC++的图像处理系统设计与实现》由会员分享,可在线阅读,更多相关《毕业设计论文-基于VC++的图像处理系统设计与实现(24页珍藏版)》请在金锄头文库上搜索。

1、完整论文本文对图形图像处理系统的发展现状和所采用的主要技术进行了详细分析, 确定了相应的结构和主要功能,以及实际开发中所采取的技术。系统在Windows XP平台下实现,本课题是采用Visual C+作为编程工具,采用面向对象的程序 设计技术实现一个图形绘制和图像处理的应用软件。主要工作分为三类,包括基 本图形绘制与编辑、简单的图像处理、图像格式的转换。图形方面主要是设计图 形基类,以及继承图形基类的具体图形类。通过对独立功能的封装,可以为今后 需要的图形图像的应用奠定基础。系统的优点有:充分体现了面向对象的设计思 想,充分运用了 C+的特性。程序结构清晰,可读性好,程序中做了充分的注释。最后

2、,对系统进行测试表明,系统功能达到了预期的要求,界面友好,操作 简便,运行也较稳定,是一个完成基本功能的图形图像系统。总体上,本文介绍了系统开发设计的全过程和设计过程中部分代码,对系统 中采用的关键技术也作了一些必要的说明,对图像变换的基本原理,图像处理的 基本原理和各种图像格式做了详细的阐述。关键词:图像处理系统,图像显示,图片格式转换。AbstractThis article has carried on the detailed analysis about graph image processing system development and using of the key te

3、chnology, identify the corresponding structure and central function, as well as the system adopts technology in the actual development. The system realizes under the Windows XP platform, the topic use Visual C+ as a programming tool, use object-oriented programming techniques to achieve a graphic an

4、d image processing software. Major work is divided into three categories, basic drawing and editing graphics, simple image processing, and image format conversion. The graph aspect is designs the graph base class , as well as inherits the graph base classs specific graph class. Through independent f

5、unctions encapsulation, for the futures needs of the graphic images lays the foundation. The system merit has: the object-oriented designs thought application of the C+ properties, Programs structure is clear, good readability, codes has the full annotation in the program. Easy expansion and transpl

6、antation.Finally, systems testing shows, systems functions achieve the expected demand, friendly interface, and the operation is simple, also a much stable operation, it has basic functions of the graphic image system.As a whole, this paper describes the system design process and part of the process

7、 of designing code, it made some necessary explanations about key technology in the system, it made the detailed description to image transform of the basic principle, the image processing basic principle and various image formats.Key word: The imagery processing system, image display, image transfo

8、rms.摘要IAbstractII第一章 图像处理系统11.1概述11 - 2系统分析11.2. 1需求分析11.2.2可行性分析11.3 总体设计11. 3. 1项目规划11.3.2系统功能架构图21.4系统设计31. 4. 1设计目标31.4.2开发及运行环境31.5技术准备31. 5.1基本绘图操作31. 5.2内存画布的设计31. 5.3自定义全局函数41. 5.4自定义菜单51.5.5自定义工具栏111.6主要功能模块的设计121. 6. 1系统架构设计121.6. 2公共模块设计141. 6. 3 主窗体设计14参考文献:18致谢20第一章图像处理系统1.1概述图像处理技术一直是困

9、扰Visual C+初学者的一个难题,在Visual C+ 中,没有一个完善的控件能够显示和处理各种格式的图像,有时用户需要了解各 种图像的文件格式,这极大地增加了初学者的学习难度。基于此,设计一个图像 处理软件。1.2系统分析1. 2. 1需求分析通过调查,要求系统具有以下功能。 显示BMP、JPEG、GIF等各种格式的图像。 实现BMP与JPEG、GIF图像的批量转换。实现对位图的旋转、反色、灰度化、线性变换等各种操作。 实现手写数字的识别。1. 2. 2可行性分析为了降低程序开发的难度,使用微软公司的GDI+o GDI+又称为GDIPlus, 是微软公司.NET构架的一部分,它封装了各种

10、图像的处理技术。通过使用GDI, 用户可以非常方便地实现图像的显示与转换。虽然GDI+属于.NET框架的一部 分,但是用户可以在非.NET环境下使用GDI+,有关具体的使用方法,在以下部 分进行介绍。1.3总体设计1.3. 1项目规划图像处理系统是一个典型的图像处理软件,它由图像显示、图像转换、图像 处理、字符识别、其他和帮助等模块组成。图像显示模块该模块主要包括显示位图、显示JPEG、显示GIF 3个部分。图像转换模式该模块主要包括位图转换为JPEG、JPEG转换为位图、位图转换为GIF、GIF转换为位图4个部分。图像处理模块该模块主要包括图像旋转、图像锐化处理、图像反色处理、灰度化处理、线

11、 性变换5个部分。字符识别模块该模块主要包括手写数字识别。其他模块该模块主要包括设置菜单的固定颜色和随机颜色两个部分。帮助模块该模块主要包括软件的版本、开发单位等信息。1.3.2系统功能架构图系统功能构架图如图1. 1所示图像处理系统图像显示模块图像转换模块图像处理模块字符识别模块其他帮助固 定 颜 色随机颜色图1.1图像处理系统功能架构图1.4系统设计1. 4. 1设计目标本系统属于小型的图像处理软件,主要用于实现图像的显示与批量转换操 作。具体设计要求如下。实现各种图像格式的显示。系统采用良好的人机对话模式,界面设计美观、友好。支持图像的单一转换与批量转换。实现位图的各种常规操作。例如图像

12、旋转、灰度化处理、线性变换等。系统运行稳定、安全可靠。1.4. 2开发及运行环境系统开发平台:Visual C+ 6.0。运行平台:Windows XP/Windows 2000/Windows 2003。分辨率:最佳效果1024*1280像素。1 5技术准备1.5.1基本绘图操作绘图操作通常是指在窗口的某个区域输出位图图像。窗口通常关联一个设备 上下文CDC,所有的绘图操作都是通过CDC来完成的。用户可以通过调用窗口 类的GetDC方法获得一个CDC对象指针。CDC提供BitBlt、StretchBlt等方法 来输出位图,但是这些方法均需要借助另一个CDC对象来实现。如何设置源设 备上下文,

13、并调用BitBit方法输出位图。获取窗口设备的上下文定义位图对象定义设备上下文/创建一个兼容的设备上下文加载位图对象选中位图CDC*Pdc=GetDC();CBitmap bk ;CDCmemdc;memdc.CreateCompatibleDC(pDC);bk.LoadBitmap(IDB_CHESSBOARD);memdc. S electObj ec t( &bk);pDC-BitBlt(0,600,600,&memdc,0QSRCCOPY); 调用 BitBit 方法输出位图1.5.2内存画布的设计在绘制图像时,如果频繁的进行多次绘图操作,会出现闪烁的情况。为了防 止闪烁的出现,可以设

14、计一个临时的画布,称之为内存画布,让所有的绘图操作 均在内存画布上进行,然后在内存画布对象失去作用域时将其输出到目标设备上 下文中,这样就阻止了闪烁情况的出现,内存画布的设计代码如下:m_ pbmp-CreateCompatibleBitmap(Pdc,rect.Width。,rect,Height。);m_poldbmp=SelectObject(m_bmp);选中位图对象m_Pdc=PdC;设置成员变量m_Rect=rect;设置成员变量将目标区域绘制在内存画布上this-BitBlt(m_Rect.left, m_Rect.top, m_Rect.Width(), m_Rect.Heig

15、ht(),Pdc, m_Rect.left, m_Rect.top, SRCCOPPY);SelectObject(m_poldbmp);选中之前选中的对象If(m_pbmp!=NULL)判断位图对象是否为空delete m_pbmp ;释放位图对象DelectObject(this);释放设备上下文内存画布CMemDC只包含一个构造函数和析构函数,其中,在构造函数部 分,将根据参数pDC创建一个兼容的设备上下文,并且将pDC的内容绘制在内 存画布上;在析构函数中,会将内存画布的内容输出到目标设备的上下文中。1. 5. 3自定义全局函数在Visual C+中没有提供直接的函数用于获取文件的名称(去除扩展名)和 获取文件的扩展名(去除文件名)。为此,定义了两个全局函数来获取文件的名 称和文件扩展名。函数定义如下:CString ExtractFileName(CString&str)获取文件名称( intpos=str.ReverseFind(,.)反向查找的位置return str

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号