数字图像处理实验
- 格式:doc
- 大小:233.00 KB
- 文档页数:17
石家庄铁道学院Shijiazhuang Railway Institute
研究生课程考试答题纸
培养单位___ 电气分院__ _
学科专业_电力电子与电力传动_
课程名称 _数字图像处理实验__
任课教师__ __王硕禾_ ____
考试日期___2008年 12月_____
学生姓名______李光__ _____
学号__ __T07502__ __
研究生分院
数字图像处理—实验一
一.实验内容:
图像灰度变换 二.实验目的:
学会用Matlab 软件对图像灰度进行变换;感受各种不同的灰度变换方法对最终图像效果的影响。 三.实验步骤:
1.获取实验用图像:P1.jpg. 使用imread 函数将图像读入Matlab 。 2.产生灰度变换函数T1,使得:
0.3r
r < 0.35
s = 0.105 + 2.6333(r – 0.35) 0.35 ≤ r ≤ 0.65
1 + 0.3(r – 1)
r > 0.65
用T1对原图像P1.jpg 进行处理,打印处理后的新图像。
3.产生灰度变换函数T2,使得:
s =
用T2对原图像P1.jpg 进行处理,打印另一处理后的新图像。
4.分别用 s = r 0.6; s = r 0.4; s = r 0.3 对Fig3.08(a).jpg 图像进行处理。为简便起
见,请使用Matlab 中的imadjust 函数。
5.对Fig3.04(a).jpg 图像实施反变换(Negative Transformation )。s =1-r; 6.对P1.jpg 图像实施灰度切片(Gray-level slicing )。具体要求如下:
当0.2 ≤ r ≤ 0.4时,将r 置为0.6, 当r 位于其他区间时, 保持其灰度与原图像一样。
四.实验结果:
五、matlab程序:%1
figure;
subplot(4,3,1);
i=imread('p1.jpg');
i=im2double(i);
imshow(i);title('1');
%2
subplot(4,3,2);
r=[0:0.001:1];
s=[r<0.35].*r*0.3+[r<=0.65].*[r>=0.35].*(0.10 5+2.6333*(r-0.35))+[r>0.65].*(1+0.3*(r-1)); plot(r,s);title('2p,');
subplot(4,3,3);
T1=[i<0.35].*i*0.3+[i<=0.65].*[i>=0.35].*(0.1 05+2.6333*(i-0.35))+[i>0.65].*(1+0.3*(i-1)); imshow(T1);title('2i,');
imwrite(T1,'p1_T1.jpg','jpg'); %3
subplot(4,3,4);
r=[0:0.001:1];
s=[r<=0.5].*(r.^5)*15.9744+[r>0.5].*((r-0.5). ^0.2+0.12);
plot(r,s);title('3p,');
subplot(4,3,5);
T2=[i<=0.5].*(i.^5)*15.9744+[i>0.5].*((i-0.5) .^0.2+0.12);
imshow(T2);title('3i,');
imwrite(T2,'p1_T2.jpg','jpg');
%4
subplot(4,3,6);
ss1=r.^0.6;
ss2=r.^0.4;
ss3=r.^0.2;
plot(r,ss1,r,ss2,r,ss3);title('4p,'); subplot(4,3,7);
s1=imadjust(i,[],[],0.6);
imshow(s1);title('41i,');
subplot(4,3,8);
s2=imadjust(i,[],[],0.4);
imshow(s2);title('42i,');
subplot(4,3,9);
s3=imadjust(i,[],[],0.3);
imshow(s3);title('43i,');
%5
subplot(4,3,10);
rr=imread('Fig3.04(a).jpg'); rr=im2double(rr);
imshow(rr);title('5i,');
ss=1-rr;
imwrite(ss,'Fig3.10(a)_ss.jpg','jpg');
%6
subplot(4,3,11);
r=[0:0.001:1];
s=[r<=0.4].*[r>=0.2]*0.6;
plot(r,s);title('6p,');
subplot(4,3,12);
s6=[i<=0.4].*[i>=0.2]*0.6+[i>0.4].*i+[i<0.2]. *i;
imshow(s6);title('6i,');
imwrite(s6,'p1_s6.jpg','jpg');
数字图像处理—实验二
一.实验内容:
1邻域平均(neighborhood averaging ),2局域增强(local enhancement ), 3中值滤波(median filtering )。 二.实验目的:
学会用Matlab 中的下列函数对输入图像进行上述5类运算;感受各种不同的图像处理方法对最终图像效果的影响。
Imhist ;histeq ;nlfilter ;mean2;std2;fspecial ;filter2;medfilt2; 三.实验步骤:
1.仔细阅读Matlab 帮助文件中有关以上函数的使用说明,能充分理解其使用
方法并能运用它们完成实验内容。
2.将p2.jpg 图像文件读入Matlab ,用nlfilter 对其进行3×3邻域平均和计算邻
域标准差,再对其黑暗部分的特征进行局域增强而保持明亮部分图像不变,显示增强后的效果图。在进行局域增强时,应按下列算法进行:
E ·f (x ,y ) if m Sxy ≤k 0M G and k 1D G ≤σSxy ≤k 2D G
f (x ,y )
otherwise
适当调整k 0,k 1和k 2的值,使局域增强达到最佳效果。参见教材k 0=0.4, k 1=0.02, k 2=0.4。
3.将p3.jpg 图像文件读入Matlab ,用fspecial 函数生成一3×3邻域平均窗函
数,再用filter2函数求邻域平均,试比较与用nlfilter 函数求邻域平均的速度。最后用medfilt2函数对图像进行中值滤波。要求显示用各种方法处理后的结果。
四.实验结果:
p2.jpg
g (x ,y )
=