当前位置:文档之家› 空域图像增强报告

空域图像增强报告

实验报告
实验课程:光电图像处理姓名:
学号:
实验地点:
指导老师:
实验时间:
一. 实验名称:空间图象增强(一)
二. 实验目的
1. 熟悉和掌握利用matlab 工具进行数字图像的读、写、显示、像素处理等数字图像处理的基本步骤和流程。

2. 熟练掌握各种空间域图像增强的基本原理及方法。

3. 熟悉通过灰度变换方式进行图像增强的基本原理、方法和实现。

4. 熟悉直方图均衡化的基本原理、方法和实现。

三. 实验原理
(一)数字图像的灰度变换
1、线性灰度变换
令原图像灰度范围由[a,b]线性变换后图像灰度范围[c,d],以便于提升原图像的对比度。

线性灰度变换公式如下:
()(,),[(,)](,)(,)d f x y b d c g x y f x y a c a f x y b b a
c
f x y a >⎧⎪-⎪=-+≤≤⎨-⎪<⎪⎩ (1)
其中,f (x,y)为原始图像,灰度范围为[a,b],g(x,y)为增强后的数字图像,灰度范围为[c,d]。

注:实验中[a,b]可由实际图像来确定,[c,d]可视具体情况人为给定。

2、非线性灰度变换(对数变换或幂律变换选作其一) 非线性拉伸不是对图像的灰度值进行扩展,而是有选择地对某一灰度范围进行扩展,其他范围的灰度值则可能被压缩。

常用的非线性变换:对数变换和指数变换。


对数变换公式为:
()(,)log 1(,)g x y c f x y =+
幂律(伽马)变换为:
(,)(,)g x y cf x y γ=
(二)直方图处理
对图像2种定义下的直方图统计统计,并分别画出两种定义下的直方图。

直方图均衡化主要用于增强动态范围偏小的图像的反差。

该方法的基本思想是把原始的直方图变换为均匀分布的形状,这样就增加了像素灰度值的动态范围,从而达到增强图像整体对比度的效果。

四. 实验步骤
(一)数字图像的灰度变换
1、线性灰度变换
1)读取一幅对比度低的灰度图像并显示。

2)以m 文件形式编写matlab 代码,实现数字图像的灰度范围由[a,b]到[c,d]的线性拉伸,以便于提升原图像的对比度。

线性灰度变换公式如下:
()(,),[(,)](,)(,)d f x y b d c g x y f x y a c a f x y b b a c
f x y a >⎧⎪-⎪=-+≤≤⎨-⎪<⎪⎩ (1) 其中,f (x,y)为原始图像,灰度范围为[a,b],g(x,y)为增强后的数字图像,灰度范围为[c,d]。

注:实验中[a,b]可由实际图像来确定,[c,d]可视具体情况人为给定。

3)显示经过线性灰度变换后的图像,并对变换结果进行必要的分析,画出灰度变换曲线图。

4)以另一个文件名形式保存灰度变换后的图像。

2、非线性灰度变换(对数变换或幂律变换选作其一)
1)读取一幅灰度图像并显示。

2)分别对其进行对数变换或幂律(伽马)变换。


对数变换公式为:
()(,)log 1(,)g x y c f x y =+ (2)
幂律(伽马)变换为:
(,)(,)g x y cf x y γ= (3)
3)显示变换后的图像,并利用matlab工具画出对数或幂律变换曲线。

4)以另一个文件名形式保存变换后的图像。

(二)直方图处理
1)读取一幅灰度图像并显示原始图像。

2)编写m文件实现对输入图像2种定义下的直方图统计统计(即各个灰度级出现的次数及概率分布),并分别画出两种定义下的直方图。

3)对输入灰度图像进行直方图均衡化处理,分别显示均衡处理前后的图像和对应的直方图。

五.实验结果及分析
(一)数字图像的灰度变换
1、线性灰度变换
实验结果:
2、非线性灰度变换(对数变换或幂律变换选作其一)
(二)直方图处理
结果分析:实验结果与预期一致
六.程序源代码
(一)数字图像的灰度变换
1、线性灰度变换
程序源代码:
I1=imread('T1.jpg');
I1=rgb2gray(I1);
subplot(221);
imshow(I1);
a=min(min(I1));
b=max(max(I1));
B=(250-10)/double((b-a))*(I1-a)+10;
subplot(222);
imshow(B);
subplot(223);
imhist(I1);
subplot(224);
imhist(B);
2、非线性灰度变换(对数变换或幂律变换选作其一)subplot(231)
I=imread('T2.jpg');
I=rgb2gray(I);
imshow(I);
a=min(min(I));
b=max(max(I));
c=2,r=0.8
G=uint8(12*log(1+double(I))); subplot(232)
imshow(G);
subplot(233)
z=0:1:1000;
plot(z,12*log(double(z)));
subplot(234)
imhist(I);
subplot(235)
imhist(G);
(二)直方图处理
I=imread('pout.tif');
[height,width]=size(I);
subplot(231);
imshow(I),title('root image') subplot(232)
imhist(I);title('原始直方图');
L=256;
K=zeros(1,L);
for i=1:height
for j=1:width
K(I(i,j)+1)=K(I(i,j)+1)+1 end
end
subplot(233)
bar(K);
pk=K;
for i=1:L
pk(i)=K(i)/double(height*width) end
subplot(234)
bar(pk)
ps=pk
ps(1)=pk(1)
for i=2:L
ps(i)=ps(i-1)+pk(i)
end
ps=floor(255.*ps+0.5);
leq=I;
for i=1:height
for j=1:width
leq(i,j)=ps(I(i,j)+1);
end
end
subplot(235)
imshow(leq),title(‘均衡化后的图像’);
subplot(236)
imhist(leq);
八.思考题
1. 为了扩展一幅图像的灰度,使其最低灰度为C 、最高灰度为L-1,试给出一个单调的灰度变换函数。

答:
()(,),[(,)](,)(,)d f x y b d c g x y f x y a c a f x y b
b a
c f x y a >⎧⎪-⎪=-+≤≤⎨-⎪<⎪⎩
令c=C,d=L-1
2. 数字图像经过对数变换与幂律变换后,变换结果有什么差异?请按不同参数的取值范围进行具体分析。

答:对数变换公式为:()(,)log 1(,)g x y c f x y =+
其中,f 为输入灰度级, g 为变换后的灰度级,c 为一个比例因子。

特点:低灰度区扩展,高灰度区压缩。

3.从连续函数的概率分布来分析,直方图均衡处理可以使得各个灰度级分布
变为均匀分布,即拉平直方图。

而对实际数字图像的处理结果却是一种近似平直,而不是严格意义上的均匀直方图,试说明其理由。

答:对实际数字图像的处理结果是一种近似平直,而不是严格意义上的均匀直方图,是因为在进行连续函数的概率直方图处理时,其中一个步骤有四舍五入,即将一段区间的灰度级归为一个直方图中。

相关主题