数字图像处理作业(第两次) 基于灰度变换的图像增强
- 格式:docx
- 大小:1.54 MB
- 文档页数:4
姓名:吴彦博 班级:计143 学号: 143063
1 数字图像处理作业(第两次) 基于灰度变换的图像增强
第一题 利用幂律变换进行图像增强(实现例3.1)
1. 问题
重现例3.1中的实验,即用幂律变换对冈萨雷斯《数字图像处理(第3版)》Fig.3.8(a)中的图像进行变换。c取1, gamma 分别取0.6,0.4,0.3,观察何时获得最佳的增强效果。
2. 算法步骤:
1)将Fig.3.8(a) 中的图像读入矩阵X中
2)输入参数c和gamma 的值
3)显示图像X;
4)利用参数c和gamma 的值对X 进行幂律变换,得到变换后的图像Y
5)显示变换后的图像Y。
3.程序:
(1) 幂律变换的程序:
function Y=power_enhance(X, gamma, c)
% 对输入图像X进行幂律变换
if ~isa(X,'double')
X=im2double(X);
end
Y=c*X.^gamma;
(2) 主程序:
X=imread('Fig0308(a)(fractured_spine).tif');
figure(1)
imshow(X);
c=1; gamma=0.3;
Y= power_enhance(X, gamma, c);
figure(2)
imshow(Y)
4.
实验结果
c=1,
gamma=0.3时的运行结果:
c=1, gamma=0.4时的运行结果:
c=1, gamma=0.6时的运行结果:
5. 实验结果分析
随着伽马值从0.6减小到0.4,更多的细节变得可见了。当伽马值进一步减小到0.3时,背景中的细节得到了进一步增强,但对比度会降低到图像开始有轻微“冲淡”外观的那一点,尤其是在背景中。比较所有的结果,在对比度和可辨识方面的最好增强在0.4时。 姓名:吴彦博 班级:计143 学号: 143063
2 第二题 利用幂律变换进行图像增强(实现例3.2)
1. 问题
重现例3.2中的实验,即用幂律变换对冈萨雷斯《数字图像处理(第3版)》Fig.3.9(a)中的图像进行变换。c取1, gamma 分别取3, 4 和5 ,观察何时获得最佳的增强效果。
2. 算法步骤:
1)将Fig.3.9(a) 中的图像读入矩阵X中
2)输入参数c和gamma 的值
3)显示图像X;
4)利用参数c和gamma 的值对X 进行幂律变换,得到变换后的图像Y
5)显示变换后的图像Y。
3.程序:
(1) 幂律变换的程序:
function Y=power_enhance(X, gamma, c)
% 对输入图像X进行幂律变换
if ~isa(X,'double')
X=im2double(X);
end
Y=c*X.^gamma;
(2) 主程序:
X=imread('Fig0309(a)(washed_out_aerial_image).tif');
figure(1)
imshow(X);
c=1; gamma=3;
Y= power_enhance(X, gamma, c);
figure(2)
imshow(Y)
4.
实验结果
c=1,
gamma=3时的运行结果:
c=1, gamma=4时的运行结果:
c=1, gamma=5时的运行结果:
5. 实验结果分析
伽马值取3.0和4.0时,可得到合适的结果,且后者由于有比较高的对比度而显示出更令人满意的效果。伽马值取5.0时得到的结果中有些地方太暗,因而丢失了一些细节。
姓名:吴彦博 班级:计143 学号: 143063
3 第三题 实现对比度拉伸和阈值化(实现图3.10)
1. 问题
重现教材69页图3.10中的实验。 即:对Fig.3.10(b) 中的图利用Fig.3.10(a)中所示的函数进行变换,实现对比度拉伸和阈值化。
2. 算法步骤:
1)将Fig.3.10(b) 中的图像读入矩阵X中
2)显示图像X
3)求出图像的最小灰度级rmin和最大灰度级rmax
4)利用变换函数把其原范围线性的拉伸至[0,L-1]
5)显示变换后的图像Y
6)求出图像的平均灰度级m
7)作(r1,s1)=(m,0),(r2,s2)=(m,L-1)的变换
8)显示变换后的图像X
3.程序:
(1) 对比度拉伸的程序:
X=imread('Fig0310(b)(washed_out_pollen_image).tif');
figure(1)
imshow(X);
[width,height,bmsize]=size(X);
rmax=double(max(max(X)))/255;
rmin=double(min(min(X)))/255;
Y=imadjust(X,[rmin rmax],[0 1]);
figure(2)
imshow(Y);
(2) 阈值处理的程序:
X=imread('Fig0310(b)(washed_out_pollen_image).tif');
figure(1)
imshow(X);
rmax=double(max(max(X)));
rmin=double(min(min(X)));
m=double(rmax+rmin)/2;
[width,height,bmsize]=size(X);
for i=1:width
for j=1:height
if X(i,j)>m
X(i,j)=255;
else
X(i,j)=0;
end
end
end
figure(2)
imshow(X);
4. 实验结果
原图: 对比度拉伸的运行结果: 阈值处理的运行结果: 姓名:吴彦博 班级:计143 学号: 143063
4
5. 实验结果分析
对比度拉伸是扩展图像灰度级动态范围的处理,因此,它可以跨越记录介质和显示装置全部灰度范围。