《遥感数字图像的滤波处理.doc》由会员分享,可在线阅读,更多相关《遥感数字图像的滤波处理.doc(6页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、实验三:遥感数字图像的滤波处理一、 实验目的本次实验目的有两个:掌握ERDAS软件的滤波功能的使用与操作;掌握用编程实现图像滤波的过程。二、 实验要求1. 要求利用ERDAS软件,使用成都市Landsat真彩色合成影像进行均值滤波、中值滤波处理,给出实验步骤与结果,及相应的描述。2. 要求采用编程(Matlab或其他平台)实现对成都市Landsat真彩色合成图像进行均值滤波与中值滤波,给出实验步骤与结果,及相应的描述。给出相应的代码文件与工程文件。三、 实验内容1. 基于ERDAS软件的遥感数字图像滤波,包括均值滤波与中值滤波。2. 基于编程的遥感数字图像滤波,包括均值滤波与中值滤波。注:编程
2、处理数据时,由于童鞋们的电脑硬件不是太优秀,可以从成都市影像中裁剪出合适的大小来做。四、 实验过程(一)基于ERDAS软件的遥感数字图像滤波1、均值滤波方法步骤:(1)在ERDAS菜单上选择Main/Imagin Interpreter/Spatial Enhancement/Focal Analysis命令,打开Focal Analysis对话框。(2)在对话框中打开待处理的图像文件,设置输出文件路径并命名。(3)Subset Dfintion为处理范围,这里不用输入数值,采用默认的数值。数据输出类型为Unsigned 8 bit。(4)定义处理函数,由于这里是均值滤波,所以这里选择Mean
3、。选中Ignore Zero in States复选框,表示在输出数据统计时忽略0值。(5)单击OK按钮,执行聚焦分析操作,结果如下图。2、中值滤波这里的操作方法与均值滤波基本相同,只是在定义处理函数时,由于这里是中值滤波,所以这里选择Median。执行中值滤波操作的结果如下图。(二)基于编程的遥感数字图像滤波1、中值滤波代码:clc,clear,close all;img = imread(C:UserswqyDesktop456.jpg);%读取原图像gray = rgb2gray(img);salt = imnoise(gray,salt & pepper,0.08); %加入椒盐躁声s
4、ubplot(221)imshow(salt);title(salt);sort=2; height, width = size(gray);x1 = double(salt);x2 = x1;name = salt 3x3 mid 5x5 mid 7x7 mid;n1 = 3 5 7;for n = n1; for i = 1: height-n+1 for j = 1:width-n+1 mb = x1( i:(i+n-1), j:(j+n-1) ); mb = mb(:); mm = median(mb); x2( i+(n-1)/2, j+(n-1)/2 ) = mm; end end
5、 img = uint8(x2); subplot(2,2,sort) imshow(img); title(namesort); sort = sort+1;end结果:2、均值滤波clc,clear,close all;img = imread(C:UserswqyDesktop456.jpg);%读取原图像gray = rgb2gray(img);height,width = size(gray); %输入图像是height x width的,且hightn,widthnx1 = double(gray); x2 = x1;name=3x3 Laplace,5x5 Laplace,7x7
6、 Laplace,9x9 Laplacesort=1;n1=3 5 7 9for n = n1;a(1:n,1:n) = 1; %nn模板,元素全是1for i = 1:height-n+1 for j = 1:width-n+1 c = x1(i:i+(n-1),j:j+(n-1).*a; %取出x1中从(i,j)开始的n行n列元素与模板相乘 s = sum(sum(c); %求c矩阵中各元素之与 x2(i+(n-1)/2,j+(n-1)/2) = s/(n*n); %将与模板运算后的各元素的均值赋给模板中心位置的元素 end end final = uint8(x2);subplot(2,
7、2,sort);% LaplaceH = fspecial(unsharp);sharpened = imfilter(final,H,replicate);imshow(sharpened);title(namesort);sort=sort+1;end对于基于ERDAS的滤波,需要给出详细的软件操作步骤、截图与相应的文字表述。对于编程实现滤波,需要给出程序设计思路、代码文件/工程文件(全套)与数据处理结果(原图与滤波以后的图,作对比用)。报告里给出程序运行的截图、核心代码与实验结果及文字表述。特别提示:报告里给出详细的操作过程,包括截图与相应步骤的文字描述。一定要详细!五、 实验总结针对整个实验过程给出总结,包括自己的心得体会、收获与感悟,以及对图像滤波原理、方法与实际操作的的理解。给出编程过程的体会。最后给出致谢。第 6 页