图像信息处理实验指导 - 4 -
RGB=imread('b747.jpg'); B=rgb2gray(RGB);
figure(1);imshow(RGB);title('原图'); figure(2);imshow(B);title('灰度图');
2. 图像灰度变换处理在图像增强中的作用
RGB=imread('b747.jpg'); B=rgb2gray(RGB);
figure(1);imshow(RGB);title('原图'); figure(2);imshow(B);title('灰度图');
% J = imadjust(I,[low_in; high_in],[low_out; high_out])
% 将low_in至high_in之间的值映射到low_out至high_out之间,low_in以下及high_in以上归零。
g1=imadjust(B,[0 1],[1 0]);
% imcomplement:对图像进行求反运算 g2=imcomplement(B);
g3=im2uint8(mat2gray(log(1+double(B)))); figure(3);imshow(g1);title('灰度调整图'); figure(4);imshow(g2);title('反色图'); figure(5);imshow(g3);title('对数变换图');
3. 绘制图像灰度直方图的方法,对图像进行均衡化处理 1) 对B进行如图所示的分段线形变换处理 x1=0:0.01:0.125; x2=0.125:0.01:0.75; x3=0.75:0.01:1; y1=2*x1;
y2=0.25+0.6*(x2-0.125); y3=0.625+1.5*(x3-0.75); x=[x1,x2,x3]; y=[y1,y2,y3]; plot(x,y)
title('分段线性曲线');
五、实验结果分析与讨论
图像信息处理实验指导 - 5 -
实验二 空间域图像增强
一、实验目的
熟悉数字图像增强的一般方法,包括: 1.掌握空域变换增强的原理、方法 2.掌握直方图变换的原理、方法 二、实验内容
练习图像增强的Matlab命令:histeq,histem
一幅256X256的灰度图像如图(a),将0~60灰度级压缩到0~30范围内,压缩比1/2;60~180的灰度级扩大到30~240,比率为190/120;将180~255灰度级压缩到240~255范围内,压缩比为15/75。效果图如图(b)。
2. 熟悉命令histeq,将原图(a)做直方图均衡和直方图均衡处理,比较图像增强的效果,并用命令histem绘制增强后图像的直方图 三、实验原理:
1、增强图象对比度实际上拉伸图像中一些灰度细节,相对抑制不感兴趣的部分。这可以通过分段线性变换得到。
?c'?a'(1)分段线性变换数学表达式
?c?a(f(i,j)?a)?a';a?f(i,j)?c
??d'?c' f'(i,j)??(f(i,j)?c)?c';c?f(i,j)?d d?c?
?b'?d'(f(i,j)?d)?d';d?f(i,j)?b ??b?d
(2)分段线性变换函数实现算法程序如下: r1=(g1-g0)/(f1-f0); % b1=g0-r1*f0;
r2=(g2-g1)/(f2-f1);% b2=g1-r2*f1; b3=g2-r3*f2;
图像信息处理实验指导 - 6 -
for i=1:m for j=1:n f=X2(i,j); g(i,j)=0;
if (f>=0)&(f<=f1); %找出灰度级范围在0~f1的元素 g(i,j)=r1*f+b1; %灰度级在0~f1的进行灰度变换
else if (f>=f1)&(f<=f2) %找出灰度级范围在f1~f2的元素 g(i,j)=r2*f+b2; %灰度级在f1~f2的进行灰度变换
else if (f>=f2)&(f<=f3) %找出灰度级范围在f2~f3的元素 g(i,j)=r3*f+b3; %灰度级在f2~f3的进行灰度变换 end end end
2、利用分段线性函数进行图像增强 ?r1(f(i,j)?b1;0?f(i,j)?f1?(1)、图像变换公式即: g(i,j)??r2(f(i,j)?c)?b2;f1?f(i,j)?f2(2)、增强对比度参考程序: ?r3(f(i,j)?d)?b3;f2?f(i,j)?f3?X1=imread('pout.tif');
figure(1),imshow(X1);title('原图') f0=0;g0=0; f1=70;g1=30; f2=180;g2=230;
f3=255;g3=255;%绘制变换曲线
figure(2),plot([f0,f1,f2,f3],[g0,g1,g2,g3]) axis tight,xlabel('f'),ylabel('g') title('intensity transformation')
r1=(g1-g0)/(f1-f0);%求0~70灰度级范围内的压缩比 b1=g0-r1*f0;
r2=(g2-g1)/(f2-f1);%求70~180灰度级范围内的压缩比 b2=g1-r2*f1;
r3=(g3-g2)/(f3-f2);%求180~255灰度级范围内的压缩比 b3=g2-r3*f2;
[m,n]=size(X1); %求矩阵的行数m,列数n
X2=double(X1); %将数据类型转换为双精度型 %变换矩阵中的每个元素 for i=1:m for j=1:n f=X2(i,j); g(i,j)=0;
if (f>=0)&(f<=f1); %找出灰度级范围在0~70的元素 g(i,j)=r1*f+b1; %灰度级在0~30的进行灰度变换
elseif (f>=f1)&(f<=f2) %找出灰度级范围在70~180的元素 g(i,j)=r2*f+b2; %灰度级在70~180的进行灰度变换
elseif (f>=f2)&(f<=f3) %找出灰度级范围在180~255的元素 g(i,j)=r3*f+b3; %灰度级在180~255的进行灰度变换 end end end
figure(3),
图像信息处理实验指导 - 7 -
imshow(mat2gray(g));
title('对比度增强图') %函数mat2gray( )将数据矩阵转换成灰度图像 3、直方图均衡化
(1)熟悉下列matlab函数 直方图均衡的MTLAB函数: J=histeq (I,n)
%函数完成直方图均衡,其中I是原始图像矩阵,J是变换后所得的图像矩阵;用户可以指定均衡化后的灰度级数n,默认值为64。 imhist(I,n)
%显示直方图,其中I是原始图像矩阵,灰度级数n,默认值为256。 (2)参考程序:
I = imread('tire.tif'); J = histeq(I);
figure(1),imshow(I),title('原图')
figure(2), imshow(J);title('原图直方图均衡化') figure(3),imhist(I,64),title('原图直方图显示')
figure(4),imhist(J,64),title('直方图均衡化后直方图显示') 4、直方图规定化
(1)直方图均衡的MTLAB函数: J = histeq(I,hgram);
%函数完成直方图规定化,其中I是原始图像矩阵,J是变换后所得的图像矩阵;hgram是由用户指定的矢量。hgram中的各元素的值域为[0,1]、[0,255]、[0,65535]。 (2)参考程序
I=imread('circuit.tif'); [M,N]=size(I); for i=1:8:257 counts(i)=i; end
Q=imread('circuit.tif'); N=histeq(Q,counts); figure
subplot(1,2,1);imshow(N); subplot(1,2,2);imhist(N); axis([0 260 0 5000]) 四、试验结果分析
实验三 数字图像的空间域滤波
一、实验目的
1. 掌握图像滤波的基本定义及目的。
图像信息处理实验指导 - 8 -
2. 理解空间域滤波的基本原理及方法。 3. 掌握进行图像的空域滤波的方法。 二、实验内容与要求
1. 平滑空间滤波:
1) 读出eight.tif这幅图像,给这幅图像分别加入椒盐噪声和高斯噪声后并与前一张
图显示在同一图像窗口中。
2) 对加入噪声图像选用不同的平滑(低通)模板做运算,对比不同模板所形成的效
果,要求在同一窗口中显示。
3) 使用函数imfilter时,分别采用不同的填充方法(或边界选项,如零填
充、’replicate’、’symmetric’、’circular’)进行低通滤波,显示处理后的图像。 4) 运用for循环,将加有椒盐噪声的图像进行10次,20次均值滤波,查看其特点,
显示均值处理后的图像(提示:利用fspecial函数的’average’类型生成均值滤波器)。
5) 对加入椒盐噪声的图像分别采用均值滤波法,和中值滤波法对有噪声的图像做处
理,要求在同一窗口中显示结果。
6) 自己设计平滑空间滤波器,并将其对噪声图像进行处理,显示处理后的图像。 2. 锐化空间滤波
1) 读出moon.tif这幅图像,采用3×3的拉普拉斯算子w = [ 1, 1, 1; 1 – 8 1; 1, 1, 1]对其进行滤波。
2) 编写函数w = genlaplacian(n),自动产生任一奇数尺寸n的拉普拉斯算子,如5×5 的拉普拉斯算子
w = [ 1 1 1 1 1 1 1 1 1 1 1 1 -24 1 1 1 1 1 1 1 1 1 1 1 1]
3) 分别采用5×5,9×9,15×15和25×25大小的拉普拉斯算子对blurry_moon.tif进行锐化滤波,并利用式g(x,y)?f(x,y)??f(x,y)完成图像的锐化增强,观察其有何不同,要求在同一窗口中显示。
4) 采用不同的梯度算子对blurry_moon.tif进行锐化滤波,并比较其效果。
5) 自己设计锐化空间滤波器,并将其对噪声图像进行处理,显示处理后的图像;
三、实验原理与算法分析
1. 空间域增强
空间域滤波是在图像空间中借助模板对图像进行领域操作,处理图像每一个像素的取值都是根据模板对输入像素相应领域内的像素值进行计算得到的。空域滤波基本上是让图像在频域空间内某个范围的分量受到抑制,同时保证其他分量不变,从而改变输出图像的频率分布,达到增强图像的目的。
空域滤波一般分为线性滤波和非线性滤波两类。线性滤波器的设计常基于对傅立叶变换的分析,非线性空域滤波器则一般直接对领域进行操作。各种空域滤波器根据功能主要分为平滑滤波器和锐化滤波器。平滑可用低通来实现,平滑的目的可分为两类:一类是模糊,目的是在提取较大的目标前去除太小的细节或将目标内的小肩端连接起来;另一类是消除噪声。锐化可用高通滤波来实现,锐化的目的是为了增强被模糊的细节。结合这两种
2
百度搜索“70edu”或“70教育网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,70教育网,提供经典综合文库图像信息处理实验指导书(2024)(2)在线全文阅读。
相关推荐: