[关键词] BMP;图像;MFC ;Visual Python
3.1 需求分析目标
需求分析简单地说就是分析用户的需求。需求分析是设计系统的起点,需求分析的结果是否准确地反映了用户的实际要求,将直接影响到后面各个阶段的设计,并影响到设计结果是否合理和实用。
需求分析的任务是通过详细调查现实世界要处理的对象(组织、部门、企业等),充分了解原系统(手工系统或计算机系统)工作概况,明确用户的各种需求,然后在此基础上确定新系统的功能。调查的重点是“数据”和“处理”,通过调查、收集与分析,获得用户对数据的要求如下:
(1) 图像的打开、关闭及保存:打开并显示图像,并在处理过图像后关闭或保存图像的修改。
(2) 处理要求。指用户要完成什么处理功能,对处理的响应时间有什么要求,处理方式是批处理还是其他处理方式,能够完成图像一般的编辑处理。
(3) 处理效果与效率。图像处理中一个很重要的问题就是如何表示有关的知识并以恰当的方式引入图像处理。由于图像处理任务的复杂性,目前要找出一个通用的方法适应各种情况是几乎不可能的。另一方面,在建立普适的图像处理方法时,往往会忽略某类图像具有的特定属性。相反,针对某类特定问题,则可能找到有效的方法。为此,有研究者提出基于对象图像处理的概念:限定图像处理的对象为一类特殊的图像BMP,考察对象的共有属性(称为先验),并将其结合到图像处理的任务中以提供更多的信息,从而提升图像处理的性能、提高处理效果。由于图像的处理是通过对一个个像素点进行处理,要想提高处理速度就需要寻找一个快速的处理方法。本系统是Windows应用程序,可以进行图像的导入和导出,处理后的图片进行保存,图像的特效处理以及打印输出图片。
3.2 需求分析结果
本系统的主要功能有:
(1) 图像文件的打开和保存,实现了对24位BMP格式图像的操作。
(2) 图像的栅条效应,实现对图像文件栅条样式的显示。
(3) 图像的裁剪,实现对图像部分区域的显示,呈现裁剪效果。
(4) 图像的渐变显示,实现图片渐渐显示出来的效果。
(5) 图像的水平翻转,实现对图像数据的左右水平方向的相互转换。
(6) 图像的垂直翻转,实现对图像数据的垂直上学方向的相互转换。
(7) 图像的底片化处理,实现对图像的底片化效果显示。
(8) 图像的灰度化处理,实现对彩色图像的黑白化处理
(9) 图像加密处理,对图像实现加密,改变原图像的数据,。
(10) 图像解密处理,对图像实现解密,恢复原图像的数据。
目 录
1 绪论 1
1.1 研究的背景和意义 1
1.2 何谓数字图像处理 1
1.2.1 图像的概念 1
1.2.2 图像处理 2
1.3 图像处理学的内容和其他相关学科的关系 2
1.3.1 图像处理学的内容 2
1.3.2 图像处理学与相关学科的关系 2
1.4 数字图像处理的特点及其应用 3
1.4.1 数字图像处理的特点 3
1.4.2 数字图像处理的应用 4
1.5 图像处理的基本概念 4
2 关键技术 4
2.1 图像和调色板 4
2.1.1 调色板 5
2.1.2 色彩系统 6
2.1.3 灰度图 6
2.2 GDI位图 6
2.3 设备无关位图(DIB) 7
2.3.1 BMP文件中DIB的结构 7
2.3.2 DIB访问函数 10
2.3.3 使用DIB读写BMP文件 10
2.4 Visual Python 12
2.4.1 Visual Python简述 12
2.4.2 将Visual Python应用于数字图像的几何变换 12
3 系统设计 12
3.1 需求分析目标 12
3.2 需求分析结果 13
3.3 可行性分析 13
4 编码与实现 14
4.1 图像效果显示模块的设计 14
4.1.1 栅条效应 14
4.1.2 图像裁剪 15
4.1.3 图像渐显 17
4.2 图像翻转模块 19
4.2.1 水平翻转 19
4.2.2 垂直翻转 20
4.3 图像特效处理 22
4.3.1 图像灰度化处理 22
4.3.2 图像底片化处理 23
4.4 图像加密模块 24
5 系统运行 26
5.1 图像打开 26
5.2 图像裁剪 27
5.3 栅条效应 27
5.4 底片化处理 27
5.5 水平翻转 28
5.6 垂直翻转 28
5.7 加密处理 29
5.8 渐变显示 29
5.9 灰度化处理 30
结束语 31
参考文献 32
致谢 33