图像分析与艺术化处理实验1
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《数字图像分析与艺术化处理》
实验指导书
马文娟
学号:
姓名:
班级:
浙江理工大学
二0一四年十一月
实验一VC++图像编程基础
实验项目名称:VC++图像编程基础
实验项目性质:验证性实验
所属课程名称:数字图像分析与艺术化处理
实验计划学时:2
一.实验目的
(1)学习使用vc++图像处理的基本知识。
(2)了解BMP位图格式。
(3)掌握利用VC++建立单文档工程。
(4)掌握使用CDIB类。
(5)掌握添加菜单项和响应函数。
二.实验内容和要求
在VC++6.0环境下编程利用CDIB类实现对位图的读取,获取BMP图像的高度、宽度、分辨率、位深等信息,并显示位图。
三.实验主要仪器设备和材料
计算机,VC++6.0
四.实验步骤
1.建立单文档工程。
步骤一:建立工程
步骤二:编译工程
2、添加CDIB类
步骤一:将dib.cpp和dib.h文件拷贝到工程目录下。
步骤二:打开工程空间(双击刚才建立的目录下的test.dsw) 。单击在编译窗口中的Project→Add To Project→Files,在弹出的对话框中选择dib.cpp和dib.h。单击确定。
步骤三:在类视图中查看是否有CDIB类(如图1.4),如果没有请重复步骤一
3、打开图像
(1)建立菜单项
步骤一、点击ResouceView。双击资源中的MEUM->IDR_MAINFRAME。在编辑框中将看到主框架的菜单资源
步骤二、在菜单资源中,添加菜单栏和菜单项。双击其中的一个空白菜单栏,即进入其属性框,可添加或修改其名称,这里将其命名为“图像操作”
步骤三、在“图像操作栏”中添加菜单项――“打开图像”。
步骤四、编译(单击!),将出现如图1.8的界面,如果没有出现菜单栏和菜单项,请重复步骤一到步骤三。
(2)添加CTestView的公共成员函数m_dib
(3)添加响应函数
步骤一、右击编辑框中的任意位置,在弹出的提示菜单中,选择ClassWizard,在弹出的类向导对话框中,按照提示进行选择和操作。
步骤二、查看类视图中的CTestView类中是否有OnOpenImage函数,单击该函数即进入该函数体。
(4)实现响应函数的功能
在ClassView中CTestView类中的OnOpenImage函数,进入其函数体。
(5)添加显示代码
在ClassView中CTestView类中的OnDraw函数,进入其函数体。
(6)编译运行
点击(!)编译运行刚才的代码,如果没有出错则可单击“图像操作”――》“打开图像”,选择图像打开,有错则对图从第一部分重新新一步一步调试。
4、显示图像属性
(1)按上述方法在“图像操作”菜单栏中新建菜单项“显示图像属性”,ID为
ID_SHOW_PROP。
(2)利用ClassWizard为菜单项“显示图像属性”添加响应函数OnShowPorp( )。
(3)实现响应函数的功能
(4)编译运行
五、实验心得
此次实验非常简单粗暴,按照老师的步骤很快就完成了,但是完成后我们一定要明白实验的运行机制,了解BMP位图格式。掌握利用VC++建立单文档工程。掌握使用CDIB类。Visual C++ MFC中没有提供一个专门的类来处理DIB位图,因此,为了方便地使用位图文件,我们派生一个CDIB类。掌握添加菜单项和响应函数。没什么说的,就是在完成实验的同时一定要理解其原理。