基于MATLAB的图形滤波器程序设计.doc
文本预览下载声明
MATLAB 课程设计报告
题 目: 彩色退化图像滤波处理
专业、班级: 14通1班
学生姓名: 毛剑星
学 号: 1434314119
2016 年 12 月 21 日
MATLAB课程设计任务书
系 电子信息工程 专业 电子信息工程 学生姓名 陈嘉贤 学号 1102201005 设计题目 基于MATLAB的图形滤波器程序设计
基本要求:?
掌握MATLAB编程的原理和方法。??
熟悉语音信号的基本特征和分析处理方法。?
掌握数字信号处理的基本概念、理论和方法。?
熟练运用MATLAB设计合适的IIR数字滤波器。
主要内容:
学习掌握数字图像处理中的图像滤波特点,并了解MATLAB语言中的相关函数,设计程序实现各种图像滤波功能以及一些图片处理。
设计要求:
??自行编写算法,并进行调试,最终实现图像滤波的数字图像处理功能。学有余力的情况下,可以考虑采用图形用户界面(GUI)的方法实现。?
目录
内容 4
一、设计内容? 4
二、设计要求? 4
三、方案论证与设计原理描述 4
四、设计结果? 5
1.GUI程序的设计:? 6
(1)调整亮度的程序设计: 6
(2)完成彩图到灰度图的转换?: 6
(3)在开始菜单下的打开按钮的程序: 6
(4)保存按钮的程序: 7
(5)退出程序: 7
(6)添加噪声程序: 7
(7)还原按键的程序: 8
(8)翻转程序: 8
2.结果 8
总结? 12
参考文献 12
附录? 12
内容
一、设计内容?
??学习掌握数字图像处理中的图像滤波特点,并了解MATLAB语言中的相关函数,设计程序实现各种图像滤波功能。?
二、设计要求?
??自行编写算法,并进行调试,最终实现图像滤波的数字图像处理功能。学有余力的情况下,可以考虑采用图形用户界面(GUI)的方法实现。?
三、方案论证与设计原理描述
图像滤波是改变图像质量,去除图像噪声的一种方法。主要包括空间域滤波和频域滤波。空间域滤波主要包括线性滤波、中值滤波、维纳滤波。
滤波运算matlab函数imfilter(A,H)(或filter2(B,X)),其中A/B为原始图像,H/X为滤波掩膜。fspecial(type,para):主要的三种类型:
1、‘average’:均值滤波,参数为hsize代表模板尺寸,默认值为【3,3】
2、‘gaussian’:高斯低通滤波,有两个参数,hsize表示模板尺寸,默认值为【3 3】,sigma为滤波器的标准值,单位为像素,默认值为0.5.
3、‘laplacian’ :拉普拉斯算子,参数alpha用于控制算子形状,取值范围为【0,1】,默认值为0.2.
基本函数
imread imread函数用于读入各种图像文件,如:a=imread(e:\w01.jpg) 注:计算机E盘上要有w01相应的.jpg文件。
2. imfinfo
imfinfo函数用于读取图像文件的有关信息,如:imfinfo(e:\w01.jpg)
rgb2gray rgb2gray()函数用于把真彩图转换为灰度图
4. imshow imshow函数用于灰度图像文件的显示,如: i=imread(e:\w01.jpg); imshow(i); 1. imnoise imnoise函数用于对图像生成模拟噪声,如: i=imread(e:\w01.jpg); j=imnoise(i,gaussian,0,0.02);%模拟高斯噪声
5. fspecial fspecial函数用于产生预定义滤波器,如: h=fspecial(sobel);%sobel水平边缘增强滤波器 h=fspecial(gaussian);%高斯低通滤波器 h=fspecial(laplacian);%拉普拉斯滤波器 h=fspecial(log);%高斯拉普拉斯(LoG)滤波器 h=fspecial(average);%均值滤波器 6. 中值滤波 medfilt2函数用于图像的中值滤波,如: i=imread(e:\w01.jpg); j=medfilt2(i);
加入高斯噪声比的方式
高斯噪声是指它的概率密度函数服从高斯分布(即正态分布)的一类噪声。 MATLAB中为图片加高斯噪声的语句是
J = imnoise(I, gaussian); (式3-1)
J = imnoise(I, gaussian,paramete
显示全部