




免费预览已结束,剩余2页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于VC+的数字图像处理课程设计一、概述本次电子课程设计是基于VC+ 6.0 MFC多文档编程编写一个图像处理软件,这个软件能够实现BMP格式图像的浏览与编辑,打开和保存。实现对图像的平滑处理,包括邻域平均法和中值滤波法。还有对图像的锐化处理,包括梯度法和拉普拉斯算子法。BMP文件是Windows操作系统中的标准图像文件格式,可以分成两类:设备相关位图和设备无关位图,使用非常广。它采用位映射存储格式,除了图像深度可选外,不采用其他任何压缩,因此BMP文件所占用的空间很大。由于BMP文件格式是Windows环境交换与图有关的数据的一种标准,因此在Windows环境中运行的图形图像软件都支持BMP图像格式。图像平滑的目的是为了消除噪声,主要处理的方式有邻域平均法即通过提高信噪比,取得较好的平滑效果;空间域低通滤波采用低通滤波的方法去除噪声;以及频率低通滤波法通过除去其高频分量就能去掉噪声,从而使图像的到平滑。图像锐化的主要目的是为了增强图像边缘、轮廓和细节,使模糊的图像变得更加清晰,颜色、细节变得鲜明突出,图像的质量有所改善,产生更适合人眼观察和识别的图像。经过平滑的图像变得模糊的根本原因是因为图像受到了平均或积分运算,因此可对其进行逆运算(如微分运算)就可以使图像变得清晰。从频率域来考虑,图像模糊的实质是因为其高频分量被衰减,因此可以用高通滤波器来使图像清晰。主要功能概述:1、 打开和保存8位bmp图像2、 图像平滑处理:分为邻域平均法和中值滤波法。邻域平均法中又有3*3均值滤波器法、超限邻域平均法、n*n均值滤波器法、有选择的局部平均化。中值滤波法中有n*n中值滤波器法、十字形中值滤波法、n*n最大值滤波器法。3、 图像锐化处理:分为梯度法和拉普拉斯算子法。二、程序流程图开始打开图像锐化处理平滑处理梯度法中值滤波法邻域平均法Laplace算子法结束三、运行效果1、软件界面:2、原图:3、邻域平均法3*3均值滤波器平滑处理后:4、十字形中值滤波平滑处理后:5、梯度法锐化处理后:6、Laplace算子法锐化处理后:四、程序源代码:void CDynSplitView2:OnFilesave() CFileDialog dlg(FALSE,_T(BMP),_T(*.BMP),OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,_T(位图文件(*.BMP)|*.BMP|); if(IDOK=dlg.DoModal() CString filename; filename.Format (%s,dlg.GetPathName() ); CDibNew1-SaveFile(filename);state2=1;Invalidate();void CDynSplitView2:On33junzhi() clearmem(); CDibNew1-threethree();/对图像进行3*3均值滤波Invalidate();void CDynSplitView2:OnChaoxian() clearmem(); THREETHREEJUNZHI dlg; if(IDOK=dlg.DoModal()int t=dlg.m_T; CDibNew1-Chaoxian(t);/超限邻域平均法Invalidate();void CDynSplitView2:OnNnjunzhi() clearmem(); NNJUNZHI dlg; if(IDOK=dlg.DoModal() CDibNew1-nn(dlg.m_n);/对图像进行n*n均值滤波Invalidate();void CDynSplitView2:OnJubupingjun() clearmem(); CDibNew1-jubupingjun();/对图像进行有选择局部平均化 Invalidate();void CDynSplitView2:OnNnzhongzhi() clearmem(); NNJUNZHI dlg; if(IDOK=dlg.DoModal() CDibNew1-nnzhong(dlg.m_n);/对图像进行N*N中值滤波Invalidate();void CDynSplitView2:OnShizi() clearmem(); NNJUNZHI dlg; if(IDOK=dlg.DoModal() CDibNew1-shizi(dlg.m_n);/对图像进行十字型中值滤波Invalidate();void CDynSplitView2:OnNnzuida() clearmem(); NNJUNZHI dlg; if(IDOK=dlg.DoModal() CDibNew1-nnzuida(dlg.m_n);/对图像进行N*N最大滤波Invalidate();void CDynSplitView2:OnTidu() / TODO: Add your command handler code here clearmem(); CDibNew1-GuDingRuiHua(); /对图像进行固定阈值锐化 Invalidate();void CDynSplitView2:OnLaplac
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论