基于VC++的数字图像处理课程设计
更新时间:2023-10-12 12:03:01 阅读量: 综合文库 文档下载
基于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(\PT,_T(\位图文件(*.BMP)|*.BMP|\ if(IDOK==dlg.DoModal()) CString filename;
filename.Format (\ 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::OnLaplace() {
// TODO: Add your command handler code here clearmem();
CDibNew1->Laplacian(); //调用Laplacian算子检测处理函数 Invalidate(); }
正在阅读:
基于VC++的数字图像处理课程设计10-12
BOSSINI INT&39;L 2014-15年报05-18
(强烈推荐)浅析我国电子商务诚信问题和对策毕业论文设计05-15
为你高歌作文800字06-14
服装的创业计划书15篇03-28
内部控制试题(有答案)06-03
机械工程材料习题110-27
合同诈骗罪、金融诈骗罪与诈骗罪之比较10-15
2020年学习党纪政纪条规心得09-10
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 图像处理
- 基于
- 课程
- 数字
- 设计
- VC
- 财政补贴与财政拨款的区别
- 上海科教版五年级下册信息技术教案
- 仓库试题及答案
- 军棋规则
- 电力载波集中器设计
- 上海市信息系统升级改造项目预算申请书
- 柳园水轮机埋件装作业指导书1
- 步步高《一页通》2017版浙江选考考前特训英语总复习:第二部分 组合练(一-二十)
- 兖州特色小吃
- 不同水果中的维生素C的含量比较
- SWIFT--MT700格式解读与例证王心水中文版
- 中国古代著名数学家及其主要贡献
- Indi实施安装配置手册 - 图文
- 中国矿业大学女生节活动策划书
- 女士有几种风格 - 图文
- 上海市嘉定、宝山区2015年中考九年级语文二模试卷
- 如何在WINCC在做单个报警触发对应单个报警声音
- 财政所上半年工作总结及下半年工作打算-文档
- 焊缝、铸件缺陷及伪缺陷在X射线底片上影像特征的分析
- 关于组建文艺队方案