实验五 图像增强

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1 1 1 1 9 1 1 1 1
d)分别采用 3x3 和 5x5 的模板,分别用平均滤波器以及中值滤波器,对加入噪声的 图像进行处理并观察不同噪声水平下,上述滤波器处理的结果; e)选择不同大小的模板,对加入某一固定噪声水平噪声的图像进行处理,观察上述 滤波器处理的结果。 f)利用 imnoise 命令在图像 Sample2-1.jpg 上加入椒盐噪声(salt & pepper) g)重复 c)~ e)的步骤 h)输出全部结果并进行讨论。
%均值滤波 5× 5 %中值滤波 3× 3 模板 %中值滤波 4× 4 模板
三、实验设备与软件
(1) IBM-PC 计算机系统 (2) MatLab 软件/语言包括图像处理工具箱(Image Processing Toolbox) (3) 实验所需要的图片
四、实验内容与步骤
a) 调入并显示原始图像 Sample2-1.jpg 。 b) 利用 imnoise 命令在图像 Sample2-1.jpg 上加入高斯(gaussian) 噪声 c)利用预定义函数 fspecial 命令产生平均(average)滤波器
七、实验图像
electric.tif(原始图像)
figure(5),imshow(gs,[]) gc= imfilter(f,w,'circular') %与使用零填充的问题相同,周期的使用使得图像的黑暗部分靠 近 光 亮 区 域
figure(6),imshow(gc,[])
例:分别采用 4 种模板对图像进行处理。 f=imread('e:\images\blood1.jpg'); >> figure(1),imshow(f) >> g=imnoise(f,'salt & pepper'); %对图像加椒盐噪声 >> figure(2),imshow(g); >> k=rgb2gray(g); >> k1=im2double(k); >> figure(3),imshow(k1); >> h1= [0.1 0.1 0.1; 0.1 0.2 0.1; 0.1 0.1 0.1]; %定义 4 种模板 h2=1/16.*[1 2 1;2 4 2;1 2 1]; h3=1/8.*[1 1 1;1 0 1;1 1 1];
size_options 则可以是’same’(输出图像的大小与输入图像的大小相同)或’full’(输 出图像的大小与被扩展的图像的大小相同).
例:一幅 double 类图像 f,大小为 512*512,使用一个大小为 31*31 的简单滤波器: f=imread('e:\images\block1.jpg')
五、思考题/问答题
(1) 简述高斯噪声和椒盐噪声的特点。 (2) 结合实验内容,定性评价平均滤波器/中值滤波器对高斯噪声和椒盐噪声的去噪效 果?
(3) 结合实验内容,定性评价滤波窗口对去噪效果的影响?
六、实验报告要求
描述实验的基本步骤,用数据和图片给出各个步骤中取得的实验结果,并进行必要的 讨论,必须包括原始图像及其计算/处理后的图像。
h4=1/2.*[0 1/4 0;1/4 1 1/4;0 1/4 0]; g1=filter2(h1,k1); g2=filter2(h2,k1); g3=filter2(h3, g4=filter2(h4,k1); figure(4),imshow(g1,[]) figure(5),imshow(g2,[]) figure(6),imshow(g3,[]) figure(7),imshow(g4,[]) % 显 示 处 理 结 果 k1); %用 4 种模板进行滤波处理
(4)利用 MATLAB 软件实现空域滤波的程序:
I=imread('electric.tif'); J = imnoise(I,'gauss',0.02); %添加高斯噪声 %添加椒盐噪声
J = imnoise(I,'salt & pepper',0.02); (注意空格) ave1=fspecial('average',3); ave2=fspecial('average',5); K = filter2(ave1,J)/255;
ຫໍສະໝຸດ Baidu
%产生 3× 3 的均值模版 %产生 5× 5 的均值模版 %均值滤波 3× 3
L = filter2(ave2,J)/255; M = medfilt2(J,[3 3]); N = medfilt2(J,[4 4]); imshow(I); figure,imshow(J); figure,imshow(K); figure,imshow(L); figure,imshow(M); figure,imshow(N);
g=imfilter(f,w,filtering_mode,boundary_options,size_options) 其中,f 是输入图像,w 为滤波掩模,g 为滤波效果。 filtering_mode 用 于 指 定 滤 波过程使用相关(’corr’)默认值,还是使用卷积(’conv’)来完成。 boundary_options 用于处理边界充零问题,边界的大小由滤波器的大小确定,默认 值 为 0 。
实验五
一、 实验目的
图像增强—空域滤波
进一步了解 MatLab 软件/语言,学会使用 MatLab 对图像作滤波处理,使学生有机会 掌握滤波算法,体会滤波效果。 了解几种不同滤波方式的使用和使用的场合,培养处理实际图像的能力,并为课堂教 学提供配套的实践机会。
二、实验要求
(1)学生应当完成对于给定图像+噪声,使用平均滤波器、中值滤波器对不同强度的高 斯噪声和椒盐噪声,进行滤波处理;能够正确地评价处理的结果;能够从理论上作出合理 的解释。 (2) 工 具 箱 使 用 函 数 imfilter 来 实 现 线 性 空 间 滤 波 , 语 法 为 :
(3)线性空间滤波基于计算乘积之和,而非线性空间滤波则基于非线性操作,这种操作 包含了一个领域的像素。如,令每个中心点处的响应等于其领域内的最大像素值的操作即 为非线性滤波。 工具箱提供了两个执行常规非线性滤波的函数,即函数 nlfilter 和 colfilt。函数 nlfilter 执行二维操作,而函数 colfilt 则以列的形式组织数据。虽然 colfilt 需要占用更多的内存, 但执行起来比 nlfilter 快得多。所以,更多采用的是 colfilt。 用于生成非线性空间滤波的一个工具是函数 ordfilt2,可以生成统计
w=ones(31) 该 滤 波 器 近 似 一 个 平 均 滤 波 器 。
g=rgb2gray(f); figure(2),gd=imfilter(g,w) %使用默认的边界选项, 使用零(黑色)填充了图像
%的边界,滤波后的图像中黑白边缘模糊了,图像中的较亮部分与边界间的边缘也模糊了 figure(3),imshow(gd,[]) gr=imfilter(f,w,'replicate') figure(4),imshow(gr,[]) gs= imfilter(f,w,'symmetric') % 与 replicate 效 果 相 同 %图像大小通过复制外边界的值来扩展
相关文档
最新文档