欢迎来到天天文库
浏览记录
ID:13208790
大小:5.52 MB
页数:26页
时间:2018-07-21
《基于vc数字图像处理系统课程报告设计__学位论文.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、毕业设计论文基于vc数字图像处理系统摘要:数字图像处理是从20世纪60年代以来随着计算机技术和VLSI的发展而产生、发展和不断成熟起一个新兴技术领域,它在理论上和实际应用上都取得了巨大的成就,并引起各方面人士的广泛重视。本实验研究基于VC平台的数字图像处理基本操作的方法,并在VC平台下实现。该软件可对数字图像实现基本的处理操作,包括对图像的点运算、几何变换以及部分正交变换的操作。该软件功能包括对图像的打开、图像处理的基本操作以及保存新生成的图像。关键字:数字图像处理、vc++6.0平台、vc++6.
2、0编程工具一.引言数字图像处理采用一定的算法对数字图像进行处理,以获得人眼视觉或者某种接受系统所需要的图像处理过程。图像处理的基础是数字,主要任务是进行各种算法设计和算法实现。通过界面实现显示原数字图像以及操作后的效果图。通过界面实现不同操作方法的选择、参数设置等,能通过编程实现对处理后的图像进行保存、生成新的图像文件,能实现不少于6种基本操作。其目的是进一步理解数字图像的原理、基本操作;掌握对数字图像处理操作的实现过程;学习使用VisualC++进行软件编程;熟悉数字图像文件的基本格式。二.设计流
3、程及结果显示(1)设计平台VisualC++6.0(2)设计思想、框图及显示界面思想:首先建立OPEN()函数,然后调用子程序OpenBMP(CStringfileName)打开bmp位图,调用子程序DrawPic(unsignedchar*pDa,intdx,intdy)显示图片。接着实现图像放大、图像缩小、反色、阈值变换、镜像变换、显示系统时间等功能。框图:26调用子程序OpenBMP()打开图片调用子程序DrawPic()显示图片实现的功能图像放大图像缩小阈值变换反色镜像变换时间显示对话框背景
4、图平移建立函数OPEN()开始显示界面:(3)各模块功能及流程图a.图像显示26原理:调用OpenBMP()子程序打开图片,调用DrawPic()子程序显示图片。流程图:显示结果:a.图像放大原理:最邻近点插值算法是最简单也是速度最快的一种算法,其做法是將放大后未知的像素点P,將其位置换算到原始影像上,与原始的邻近的4周像素点A,B,C,D做比较,令P点的像素值等于最靠近的邻近点像素值即可。这种方法会带来明显的失真。在A,B中点处的像素值会突然出现一个跳跃,这就是出现马赛克和锯齿等明显走样的原因。最
5、临近插值法唯一的优点就是速度快。流程图:26开始i=0,j=0i6、在x,y方向移动距离分别为m,n个像素,则新的图像像素值f(x1,y1)定义如下:if(x1-m>=0&&x1-m=0&&y1-n7、(x1,y1)=f(x1,height-y1)。显示结果:X对称:Y对称:26原点对称:f.图像阈值变换:原理:即选择一个阈值,对图像进行二值化。比如,设定阈值thr=100,则像素值小于100的像素值变为0,其他的像素值变为255。显示结果(阈值为45):26g.图像反色:原理:即将图像灰度值作如下变换:y1=255-y0,y0为像素原始值,y1为像素反色后的值。显示结果:h.时间显示原理:显示结果:26i.灰度均衡化原理:流程图:显示结果:一.软件调试分析26(1)显示图像前,需把以下代码添加到8、.h的文件中longg_height;longg_width;boolIsFirstDraw;tagRGBQUADm_orgRGBQUAD[256];unsignedchar*OpenBMP(CStringFileName);voidDrawPic(unsignedchar*pDa,intdx,intdy);CStringm_szFileName;CStringm_szFilePathName;以下代码添加到.cpp头文件中unsignedchar*m_pImg;in
6、在x,y方向移动距离分别为m,n个像素,则新的图像像素值f(x1,y1)定义如下:if(x1-m>=0&&x1-m=0&&y1-n7、(x1,y1)=f(x1,height-y1)。显示结果:X对称:Y对称:26原点对称:f.图像阈值变换:原理:即选择一个阈值,对图像进行二值化。比如,设定阈值thr=100,则像素值小于100的像素值变为0,其他的像素值变为255。显示结果(阈值为45):26g.图像反色:原理:即将图像灰度值作如下变换:y1=255-y0,y0为像素原始值,y1为像素反色后的值。显示结果:h.时间显示原理:显示结果:26i.灰度均衡化原理:流程图:显示结果:一.软件调试分析26(1)显示图像前,需把以下代码添加到8、.h的文件中longg_height;longg_width;boolIsFirstDraw;tagRGBQUADm_orgRGBQUAD[256];unsignedchar*OpenBMP(CStringFileName);voidDrawPic(unsignedchar*pDa,intdx,intdy);CStringm_szFileName;CStringm_szFilePathName;以下代码添加到.cpp头文件中unsignedchar*m_pImg;in
7、(x1,y1)=f(x1,height-y1)。显示结果:X对称:Y对称:26原点对称:f.图像阈值变换:原理:即选择一个阈值,对图像进行二值化。比如,设定阈值thr=100,则像素值小于100的像素值变为0,其他的像素值变为255。显示结果(阈值为45):26g.图像反色:原理:即将图像灰度值作如下变换:y1=255-y0,y0为像素原始值,y1为像素反色后的值。显示结果:h.时间显示原理:显示结果:26i.灰度均衡化原理:流程图:显示结果:一.软件调试分析26(1)显示图像前,需把以下代码添加到
8、.h的文件中longg_height;longg_width;boolIsFirstDraw;tagRGBQUADm_orgRGBQUAD[256];unsignedchar*OpenBMP(CStringFileName);voidDrawPic(unsignedchar*pDa,intdx,intdy);CStringm_szFileName;CStringm_szFilePathName;以下代码添加到.cpp头文件中unsignedchar*m_pImg;in
此文档下载收益归作者所有