当前位置:文档之家› 实验一空域图像增强技术

实验一空域图像增强技术

实验一空域图像增强技术
实验一空域图像增强技术

实验一 空域图像增强技术

一、实验目的

1.理解和掌握图像的线性变换和直方图均衡化的原理和应用。

2.了解平滑处理的算法和用途,学习使用均值滤波、中值滤波和拉普拉斯锐化进行图像增强处理的程序设计方法。

3.了解噪声模型机对图像添加噪声的基本方法。

二、实验仪器

计算机, MATLAB 程序,记录用的笔、纸。

三、实验原理

1、灰度线性变换就是将图像中所有点的灰度按照线性灰度变换函数进行变换。

)],([),(y x f T y x g =

??

???<≤+-<≤+-≤≤=255),(]),([),( ]),([),(0 ),(),(y x f b g b y x f b y x f a g a y x f a y x f y x f y x g b a γβα

n y m x ,2,1 ,,,2,1==

2、直方图均衡化通过点运算将输入图像转换为在每一级上都有相等像素点数的输出图像。按照图像概率密度函数PDF 的定义:

1,...,2,1,0 )(-==L k n

n r p k k r 通过转换公式获得:

1,...,2,1,0 )()(00-====∑∑==L k n n r p r T s k j k j j j r k k

3、均值(中值)滤波是指在图像上,对待处理的像素给定一个模板,该模板包括了其周围的临近像素。将模板中的全体像素的均值(中值)来代替原来像素值的方法。

4、拉普拉斯算子如下:

????

??????--------111181111

拉普拉斯算子首先将自身与周围的8个像素相减,表示自身与周围像素的差异,再将这个差异加上自身作为新像素的灰度。

四、实验内容

1、灰度线性变换

将小于30的灰度值不变,将30到150的灰度值拉伸到30到200,同时压缩150到255的灰度值到200与255之间。

源程序:

%灰度线性变换

I=imread('cameraman.tif');

figure;imshow(I);title('原始图像');

I=double(I);

[m,n]=size(I);

%进行线性灰度变换

for i=1:m

for j=1:n

if I(i,j)<=30

I(i,j)=I(i,j);

elseif I(i,j)<=150

I(i,j)=(200-30)/(150-30)*(I(i,j)-30)+30;

else

I(i,j)=(255-200)/(255-150)*(I(i,j)-150)+200;

end

end

end

%显示变换后的结果

figure;imshow(uint8(I));title('变换后的图像');

实验结果:

2、直方图均衡化

源程序:

I=imread('cameraman.tif');

figure(1);imshow(I); title('原始图像');%显示图像I的图像

figure(2);imhist(I); title('原始图像直方图');%显示图像I的直方图

II=histeq(I);%对图像I实现直方图均衡化

figure(3);imshow(II); title('变换后图像');%显示图像II的图像

figure(4);imhist(II); title('变换后图像直方图');%显示图像II的直方图实验结果:

3、均值滤波

源程序:

%均值滤波

I=imread('cameraman.tif');

subplot(121);imshow(I);title('原始图像');

J=filter2(fspecial('average',3),I);%进行3×3均值滤波subplot(122);imshow(uint8(J));title('滤波后的图像');实验结果:

4、中值滤波

源程序:

I=imread('cameraman.tif');

subplot(121);imshow(I);title('原始图像');

J=medfilt2(I,[5 5]);%进行5×5模板中值滤波

subplot(122);imshow(uint8(J));title('滤波后的图像');实验结果:

5、拉普拉斯锐化

源程序:

I=imread('cameraman.tif');

subplot(121);imshow(I);title('原始图像');

J=filter2(fspecial('laplacian',0.9991),I);%进行拉普拉斯锐化

subplot(122);imshow(uint8(J));title('滤波后的图像');

实验结果:

5.梯度锐化操作。

I = imread('cameraman.tif'); subplot(131); imshow(I); H=f special('Sobel'); H=H';

TH=filter2(H,I);

subplot(132),imshow(TH,[]); H=H';

TH=filter2(H,I);

subplot(133),imshow(TH,[]);

六、思考题

1、设定不同的斜率值和截距,显示效果会怎样?

答:设定不同的斜率值和截距,可对任一灰度区间进行扩展和压缩。 2、直方图均衡化是什么意思?它的主要用途是什么?

答:若一幅图像其像素占有全部可能的灰度级并且分布均匀,则这样的图像有高对比度和多变的灰度色调,而显示出一幅灰度级丰富且动态范围大的图像。

把原始图像不均衡的直方图变换为均匀分布的形式,这样就增加了灰度值的动态范围,从而达到增强图像整体对比度的效果。

3、均值(中值)滤波的模板大小对处理效果有什么影响?

答:二维中值滤波的窗口形状和尺寸对滤波效果影响较大。不同的图像内容和不

同的应用要求,应该采用不同的窗口形状和尺寸。

实验三 图像增强

实验三 图像增强—直方图变换 一、 实验目的 1.掌握灰度直方图的概念及其计算方法; 2.熟练掌握直力图均衡化和直方图规定化的计算过程; 3.熟练掌握空域滤波中常用的平滑和锐化滤波器; 4.利用MATLAB 程序进行图像增强。 二、 实验内容 1打开计算机,启动MATLAB 程序;输入待处理的图像文件; 2调入数字图像,并进行图像均衡化处理; 3显示原图像的直方图和经过均衡化处理过的图像直方图。 4.利用imnoise 命令在图像上加入高斯(gaussian) 噪声 5.利用预定义函数fspecial 命令产生平均(average)滤波器 111191111---????--????---? ? 6.分别采用3x3和5x5的模板,分别用平均滤波器以及中值滤波器,对加入噪声的图像进行处理并观察不同噪声水平下,上述滤波器处理的结果; 7.选择不同大小的模板,对加入某一固定噪声水平噪声的图像进行处理,观察上述滤波器处理的结果。 8.利用imnoise 命令在图像上加入椒盐噪声(salt & pepper) 9.重复c)~ e )的步骤 10输出全部结果并进行讨论。 11.记录和整理实验报告 三、 思考题 1. 直方图是什么概念?它反映了图像的什么信息? 答:直方图是灰度级数的函数,反映了图像中具有该灰度级数的像素的个数。 2.直方图均衡化是什么意思?它的主要用途是什么?均衡化后的图像有什么特点? 3. 简述高斯噪声和椒盐噪声的特点。 4. 结合实验内容,定性评价平均滤波器/中值滤波器对高斯噪声和椒盐噪声的去噪效果? 5. 结合实验内容,定性评价滤波窗口对去噪效果的影响?

实验一图像增强实验

实验一图像增强实验 实验目的:1.掌握图像增强的算法 2.学习利用MATLAB进行图像的增强 实验内容:1.图像的点操作、邻域操作算法 2.图像的直方图处理算法 实验步骤: 1.读入图像,用MATLAB函数实现图像读入 (1)启动MATLAB (2)在命令行窗口直接输入MATLAB命令,按“回车”键后执行(3)读入命令和显示命令分别为 imread 和 imshow (4)如A=imread('D:\上官军\medical image\woman.jpg') Imshow (A) 结果显示

2.实现图像点操作运算(gamma校正和对数校正)(1)根据图像线形变换三种形式,图像反转 S=L-1-r 、对数变换S=c*log(1+r) 、幂次变换 S=c*r .^γ编写图像点操作函数 (2)建立新的M文件,点操作函数代码如下: function s=dian(r,leixing,chengshu,gamma1) % r为处理图像,leixing为操作类型 s1=imread(r); s2=im2double(s1); %将图像转为double数据型 switch leixing case 'fanzhuan' s=1-s2; case 'duishu' s=chengshu*log(1+s2); case 'gamma' s=chengshu*s2.^gamma1; otherwise error('错误') end subplot(1,2,1), imshow(s1); subplot(1,2,2),imshow(s);

(3)实际操作,如反转: Y=dian('D:\上官军\medical image\woman.jpg','fanzhuan',1,1); 3.图像邻域处理 (1)图像邻域处理是通过设计相应的滤波器来处理相邻图像像素,主要为均值滤波器、中指滤波器、高斯滤波器等 (2)建立新的M文件,均值滤波函数代码如下: function d=avefilt(x,n) a(1:n,1:n)=1; %a即n×n模板,元素全是1 p=size(x);

实验五 图像增强 空域滤波

计算机与信息工程学院综合性、设计性实验报告 一、 实验目的 1、进一步了解MatLab 软件 /语言,学会使用MatLab 对图像作滤波处理,掌握滤波算法,体会滤波效果。 2、了解几种不同滤波方式的使用和使用的场合,培养处理实际图像的能力。 二、实验设备与软件 1、 IBM-PC 计算机系统; 2、 MatLab 软件/语言包括图像处理工具箱(Image Processing Toolbox); 3、 实验所需要的图片。 三、实验要求 1、完成对于给定图像+噪声,使用平均滤波器、中值滤波器对不同强度的高斯噪声和椒盐噪声进行滤波处理; 2、能够正确地评价处理的结果; 3、能够从理论上作出合理的解释。 四、实验内容与步骤 1、调入并显示原始图像Sample2-1.jpg 。 2、 利用imnoise 命令在图像Sample2-1.jpg 上加入高斯(gaussian) 噪声 3、利用预定义函数fspecial 命令产生平均(average)滤波器 111191111---????--????---? ?

4、分别采用3x3和5x5的模板,分别用平均滤波器以及中值滤波器,对加入噪声的图像进行处理并观察不同噪声水平下,上述滤波器处理的结果; 5、选择不同大小的模板,对加入某一固定噪声水平噪声的图像进行处理,观察上述滤波器处理的结果。 6、利用imnoise 命令在图像Sample2-1.jpg 上加入椒盐噪声(salt & pepper) 7、重复3)~ 5)的步骤 8、输出全部结果并进行讨论。 M文件如下: I=imread('electric.tif'); %J = imnoise(I,'gauss',0.02); %添加高斯噪声 J = imnoise(I,'salt & pepper',0.02); %(注意空格) %添加椒盐噪声ave1=fspecial('average',3); %产生3×3的均值模版 ave2=fspecial('average',5); %产生5×5的均值模版 K = filter2(ave1,J)/255; %均值滤波3×3 L = filter2(ave2,J)/255; %均值滤波5×5 M = medfilt2(J,[3 3]); %中值滤波3×3模板 N = medfilt2(J,[4 4]); %中值滤波4×4模板 imshow(I);title('原图像'); figure,imshow(J);title('添加"高斯"噪声后的图像'); %figure,imshow(J);title('添加"椒盐"噪声后的图像'); figure,imshow(K);title('均值滤波3×3'); figure,imshow(L);title('均值滤波5×5'); figure,imshow(M);title('中值滤波3×3模板'); figure,imshow(N);title('中值滤波4×4模板'); 说明:运行时分两次进行,第一次观察高斯噪声把相应的椒盐噪声注释掉,如上面所示,第二次观察椒盐噪声时把相应的高斯噪声注释掉。 运行结果: 1、高斯噪声:

数字图像处理实验1

实验一 实验内容和步骤 练习图像的读取、显示和保存图像数据,步骤如下: (1)使用命令figure(1)开辟一个显示窗口 (2)读入一幅RGB图像,变换为灰度图像和二值图像,并在同一个窗口内显示、二值图像和灰度图像,注上文字标题。 (3)保存转换后的灰度图像和二值图像 (4)在同一个窗口显示转换后的灰度图像的直方图 I=imread('BaboonRGB.bmp'); figure,imshow(I); I_gray=rgb2gray(I); figure,imshow(I_gray); I_2bw=Im2bw(I_gray); figure,imshow(I_2bw); subplot(1,3,1),imshow(I),title('RGB图像'); subplot(1,3,2),imshow(I_gray),title('灰度图像'); subplot(1,3,3),imshow(I_2bw),title('二值图像'); imwrite(I_gray,'Baboongray.png'); imwrite(I_2bw,'Baboon2bw.tif'); figure;imhist(I_gray);

RGB 图 像灰度图 像二值图 像 050100150200250 500 1000 1500 2000 2500 3000

(5)将原RGB 图像的R 、G 、B 三个分量图像显示在figure(2)中,观察对比它们的特点,体会不同颜色所对应的R 、G 、B 分量的不同之处。 [A_RGB,MAP]=imread('BaboonRGB.bmp'); subplot(2,2,1),imshow(A_RGB),title('RGB'); subplot(2,2,2),imshow(A_RGB(:,:,1)),title('R'); subplot(2,2,3),imshow(A_RGB(:,:,2)),title('G'); subplot(2,2,4),imshow(A_RGB(:,:,3)),title('B'); (6)将图像放大1.5倍,插值方法使用三种不同方法,在figure(3)中显示放大后的图像,比较不同插值方法的结果有什么不同。将图像放大到其它倍数,重复实验;A=imread('BaboonRGB.bmp'); figure(3),imshow(A),title('原图像'); B=imresize(A,1.5,'nearest'); figure(4),imshow(B),title('最邻近法') C=imresize(A,1.5,'bilinear'); ; figure(5),imshow(C),title('双线性插值'); D=imresize(A,1.5,'bicubic'); figure(6),imshow(D),title('双三次插值 '); RGB R G B

实验二-图像增强处理实习报告

实验二图像增强处理实习报告 1.实验目的和内容 1.1.实验目的 掌握图像合成和显示增强的基本方法,理解存储的图像数据与显示的图像数据之间的1.2.实验要求 熟练根据图像中的地物特征进行图像合成显示、拉伸、图像均衡化等显示增强操作。 理解直方图的含义,能熟练的利用直方图进行多波段的图像显示拉伸增强处理。 1.3.软件和数据 ENVI 软件。 TM 图像数据。上次实验合成后的图像数据文件AA。 1.4.实验内容 图像的彩色合成显示 图像的基本拉伸方法 图像均衡化方法 图像规定化 2.实验过程 通过合成和拉伸增强显示图像中的信息。 2.1.图像合成 图像合成方法:伪彩色合成、彩色合成两种方式。其中彩色合成包括:真彩色合成、假彩色合成、模拟真彩色合成。 操作: 使用(4,3,2)进行RGB 合成显示图像。图像窗口为#1。

移动图像窗口的红色选框到玄武湖,将光标十字放在红框内,双击,显示光标位置窗口。该窗口中出现了Scrn 和Data,二者后面的RGB 的值是不同的。

2.1.1伪彩色合成 在新的窗口显示第4 波段图像,窗口为#2。

操作: 菜单:窗口菜单Tools-Color Mapping-Density slice…,选择Band 4,确定。在“Density Slice”窗口中,点击“应用”按钮,窗口#2 的图像变成了彩色。

设置默认的分级数为3 个:在“Density Slice”窗口,点击Options-Set number of default range,输入3,确定。点击Options-Apply default range,点击Apply 按钮。查看窗口#2 内的变化。

图像增强—空域滤波实验报告

图像增强—空域滤波实验报告 篇一:5.图像增强—空域滤波 - 数字图像处理实验报告计算机与信息工程学院验证性实验报告 一、实验目的 进一步了解MatLab软件/语言,学会使用MatLab对图像作滤波处理,使学生有机会掌握滤波算法,体会滤波效果。 了解几种不同滤波方式的使用和使用的场合,培养处理实际图像的能力,并为课堂教学提供配套的实践机会。 二、实验要求 (1)学生应当完成对于给定图像+噪声,使用平均滤波器、中值滤波器对不同强度的高斯噪声和椒盐噪声,进行滤波处理;能够正确地评价处理的结果;能够从理论上作出合理的解释。 (2)利用MATLAB软件实现空域滤波的程序:I=imread('electric.tif'); J = imnoise(I,'gauss',0.02); %添加高斯噪声 J = imnoise(I,'salt & pepper',0.02); %添加椒盐噪声ave1=fspecial('average',3); %产生3×3的均值模版ave2=fspecial('average',5); %产生5×5的均值模版 K = filter2(ave1,J)/255; %均值滤波3×3 L = filter2(ave2,J)/255; %均值滤波5×5 M = medfilt2(J,[3 3]);%中值滤波3×3模板 N = medfilt2(J,[4 4]); %中值

滤波4×4模板 imshow(I); figure,imshow(J); figure,imshow(K); figure,imshow(L); figure,imshow(M); figure,imshow(N); 三、实验设备与软件 (1) IBM-PC计算机系统 (2) MatLab软件/语言包括图像处理工具箱(Image Processing Toolbox) (3) 实验所需要的图片 四、实验内容与步骤 a) 调入并显示原始图像Sample2-1.jpg 。 b) 利用imnoise 命令在图像Sample2-1.jpg 上加入高斯(gaussian) 噪声 c)利用预定义函数fspecial 命令产生平均(average)滤波器 ??1?1?1???19?1?????1?1?1?? ? d)分别采用3x3和5x5的模板,分别用平均滤波器以及中值滤波器,对加 入噪声的图像进行处理并观察不同噪声水平下,上述滤波器处理的结果; e)选择不同大小的模板,对加入某一固定噪声水平噪声的图像进行处理,观察上述滤波器处理的结果。 f)利用imnoise 命令在图像Sample2-1.jpg 上加入椒盐噪声(salt & pepper) g)重复c)~ e)的步骤 h)输出全部结果并进行讨论。

数字图像处理实验

(1)矩阵图像的傅里叶变换 f=zeros(30,30); f(5:24,13:17)=1; imshow(f,'notruesize') F=fft2(f); F2=log(abs(F)); figure;imshow(F2,[-1 5],'notruesize');colormap(jet);colorbar;

-0.5 00.5 11.522.533.544.5 (2)图像的傅里叶变换 I=imread('concordorthophoto.png'); imshow(I); B=ffshift(fft2(I)); figure; imshow(log(abs(B)),[]),colorbar;

图像离散余弦变换 RGB=imread('hestain.png'); I=rgb2gray(RGB); imshow(RGB); J=dct2(I); figure,imshow(log(abs(J)),[]),colorbar; J(abs(J)<10)=0; K=idct2(J)/255; figure,imshow(K)

二(1) 直方图均衡化增强图像对比度程序I=imread('trees.tif'); J=imnoise(I,'salt & pepper',0.02); imshow(I);figure,imshow(J) K1=filter2(fspecial('average',3),J)/255; K2=filter2(fspecial('average',5),J)/255; K3=filter2(fspecial('average',7),J)/255; figure,imshow(K1) figure,imshow(K2) figure,imshow(K3)

数字图像处理实验四

数字图像处理 实验 实验四:图像增强—直方图变换学院:信息工程学院 姓名: 学号: 专业及班级: 指导教师:

一、实验目的 1.掌握灰度直方图的概念及其计算方法; 2.熟练掌握直力图均衡化和直方图规定化的计算过程; 3.熟练掌握空域滤波中常用的平滑和锐化滤波器; 4.掌握色彩直方图的概念和计算方法; 5.利用MATLAB程序进行图像增强。 二、实验内容 图像增强是指按特定的需要突出一幅图像中的某些信息,同时,消弱或去除某些不需要的信息的处理方法。其主要目的是处理后的图像对某些特定的应用比原来的图像更加有效。图像增强技术主要有直方图修改处理、图像平滑化处理、图像尖锐化处理和彩色处理技术等。本实验以直方图均衡化增强图像对比度的方法为主要内容,其他方法同学们可以在课后自行联系。 直方图是多种空间城处理技术的基础。直方图操作能有效地用于图像增强。除了提供有用的图像统计资料外,直方图固有的信息在其他图像处理应用中也是非常有用的,如图像压缩与分割。直方图在软件中易于计算,也适用于商用硬件设备,因此,它们成为了实时图像处理的一个流行工具。 直方图是图像的最基本的统计特征,它反映的是图像的灰度值的分布情况。直方图均衡化的目的是使图像在整个灰度值动态变化范围内的分布均匀化,改善图像的亮度分布状态,增强图像的视觉效果。灰度直方图是图像预处理中涉及最广泛的基本概念之一。 图像的直方图事实上就是图像的亮度分布的概率密度函数,是一幅图像的所有象素集合的最基本的统计规律。直方图反映了图像的明暗分布规律,可以通过图像变换进行直方图调整,获得较好的视觉效果。 直方图均衡化是通过灰度变换将一幅图像转换为另一幅具有均衡直方图,即在每个灰度级上都具有相同的象素点数的过程。 三、实验具体实现 显示原图像的直方图和经过均衡化处理过的图像直方图: I=imread('1.jpg'); % 读入原图像 J=histeq(I); %对原图像进行直方图均衡化处理 subplot(2,2,1) ;imshow(I); %显示原图像 title('原图像'); %给原图像加标题名 %对原图像进行屏幕控制;显示直方图均衡化后的图像 subplot(2,2,2) ;imshow(J); %给直方图均衡化后的图像加标题名 title('直方图均衡化后的图像') ; %对直方图均衡化后图像进行屏幕控制;作一幅子图,并排两幅图的第1幅 subplot(2,2,3) ; imhist(I,64); %将原图像直方图显示为64级灰度 title('原图像直方图') ; %给原图像直方图加标题名

图像处理实验-图像增强和图像分割

图像处理实验 图像增强和图像分割 一、实验目的: 掌握用空间滤波进行图像增强的基本方法,掌握图像分割的基本方法。 二、 实验要求: 1、测试图像1中同时含有均值为零的均匀分布噪声和椒盐噪声。用大小为5×5的算术均值滤波器和中值滤波器对图像进行处理,在不同窗口中显示原图像及各处理结果图像,并分析哪一种滤波器去噪效果好? 2、对测试图像2进行图像分割,求出分割测试图像2的最佳阈值。分别显示原图、原图的直方图(标出阈值)、和分割后的二值图。 实验内容: 1. 实验原理 1) 图像增强:流程图: 图像增强可以通过滤波的方式来完成,即消除一部分的噪声。滤波又可以分为均值滤波和中值滤波。 1. 中值滤波原理:中值滤波就是选用一个含有奇数个像素的滑动窗口,将该窗口在图像上扫描,把其中所含像素点按灰度级的升(或降)序排列,取位于中间的灰度值来代替窗口中心点的灰度值。

对于一维序列{N f }: 21,},...,,...,{-=∈=+-m u N i f f f M e d y u i i u i i 对于二维序列{ij F }:为滤波窗口W y ij F Med W ij }{= 2. 均值滤波原理:对于含噪声的原始图像g(s,t)的每一个像素点去一个领 域N ,用N 中所包含的相速的灰度平均值,作为领域平均处理后的图像f(x,y)的像素值,即: ∑∈=xy S t s t s g mn y x f ),(),(1),(? 2) 图像分割: 图像分割:依据图像的灰度、颜色等特征,将一幅图像分为若干个互不重叠的、具有某种同质特征的区域。

本实验中我们是根据灰度值,将灰度值大于阈值T的像素统一置为255,小于的则置为0。如何求出最合适的分割阈值,则需要用到迭代算法。 迭代法算法步骤: (1) 初始化阈值T (一般为原图像所有像素平均值)。 (2) 用T分割图像成两个集合:G1 和G2,其中G1包含所有灰度值小于T的像素,G2包含所有灰度值大于T的像素。 (3) 计算G1中像素的平均值m1及G2中像素的平均值m2。 (4) 计算新的阈值:T =(m1+m2)/2 。 (5)如果新阈值跟原阈值之间的差值小于一个预先设定的范围,停止循环,否则继续(2)-(4)步。 2.程序代码与分析: 1)图像增强: clear all;clc; %读入图像 I1=imread('Fig5.12(b).jpg'); %均值滤波模板 h1=ones(5,'uint8'); %获取分辨率 [a,b]=size(I1); %创建变量 I2=zeros(a+4,b+4,'uint8'); I3=zeros(a+4,b+4,'uint8'); %复制原始图像 for n=3:a+2 for m=3:b+2 I2(n,m)=I1(n-2,m-2); I3(n,m)=I1(n-2,m-2); end end

空域图像增强报告

实验报告 实验课程:光电图像处理姓名: 学号: 实验地点: 指导老师: 实验时间:

一. 实验名称:空间图象增强(一) 二. 实验目的 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 >??-?=-+≤≤?-?

对图像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 >??-?=-+≤≤?-?

数字图像处理实验 实验二

实验二MATLAB图像运算一、实验目的 1.了解图像的算术运算在数字图像处理中的初步应用。 2.体会图像算术运算处理的过程和处理前后图像的变化。 二、实验步骤 1.图像的加法运算-imadd 对于两个图像f x,y和 (x,y)的均值有: g x,y=1 f x,y+ 1 (x,y) 推广这个公式为: g x,y=αf x,y+β (x,y) 其中,α+β=1。这样就可以得到各种图像合成的效果,也可以用于两张图像的衔接。说明:两个示例图像保存在默认路径下,文件名分别为'rice.png'和'cameraman.tif',要求实现下图所示结果。 代码: I1 = imread('rice.png'); I2 = imread('cameraman.tif'); I3 = imadd(I1, I2,'uint8'); I4 = imadd(I1, I2,'uint16'); subplot(2, 2, 1), imshow(I1), title('?-ê?í???1'); subplot(2, 2, 2), imshow(I2), title('?-ê?í???2'); subplot(2, 2, 3), imshow(I3), title('8??í?????ê?'); subplot(2, 2, 4), imshow(I4), title('16??í?????ê?'); 结果截图:

2.图像的减法运算-imsubtract 说明: 背景图像可通过膨胀算法得到background = imopen(I,strel('disk',15));,要求实现下图所示结果。 示例代码如下: I1 = imread('rice.png'); background = imerode(I1, strel('disk', 15)); rice2 = imsubtract(I1, background); subplot(2, 2, 1), imshow(I1), title('?-ê?í???'); subplot(2, 2, 2), imshow(background), title('±3?°í???'); subplot(2, 2, 3), imshow(rice2), title('′|àíoóμ?í???'); 结果截图: 3.图像的乘法运算-immultiply

实验四 图像增强和滤波实验

实验四图像增强和滤波实验 一.实验目的: 掌握基本的图像增强方法,观察图像增强的效果,加深对灰度直方图的理解。掌握基本的图像滤波方法,观察图像滤波的效果。 二.实验内容:对比度增强,灰度变换,直方图均衡化,图像滤波对给定的灰度的数字图像(图像文件名分别为cameraman.tif,rice.tif和pout.tif)进行如下处理: (1)统计原图像的灰度直方图,并利用直方图均衡化处理进行图像增强, 同屏显示处理前后图像及其灰度直方图,比较异同,并回答数字图像均衡化后其直方图分布情况。 (2)利用图像调整函数(直接灰度调整方法)进行图像增强,同屏显示处理前后图像及其灰度直方图,比较异同,并回答数字图像均衡化后其直方图分布情况。

(3)利用函数IMNOISE ,在图像(LENA256.BMP )上分别叠加高斯噪声(gaussian)和椒盐噪声(salt&peppers),对比高斯低通滤波器和均值滤波器的性能。 对上述实验内容,自己创造性地设计实验,得出有意义的结论。 (a)原始图像 (b )原始直方图 (c)均衡化后的直方图 (d )均衡化后的图像

图叠加高斯噪声图图叠加椒盐噪声图 三.实验中用到的函数: 1.图像直方图可用函数imhist创建; 2.直方图均衡化(histogram equalization)函数:histeq; 可以实现强度值调整的自动完成 3.图像调整函数:imadjust; 强度(灰度)调整技术是将图像的强度值映射为一个新的数值范围中的一种方法。 4.Subplot函数:在同一窗口里同时显示几副图时,用来划分窗口的函数5.图像中加入噪声函数imnoise IMNOISE Add noise to image. J = IMNOISE(I,TYPE,...) Add noise of a given TYPE to the intensity image I. TYPE is a string that can have one of these values: 'gaussian' Gaussian white noise with constant mean and variance

数字图像处理图像增强实验报告

实验报告 班级:08108班 姓名:王胤鑫 09号学号:08210224

一、实验内容 给出噪声图像Girl_noise.jpg,请选择合适的图像增强算法,给出你认为最优的增强后的图像。 可以使用Matlab - Image Processing Toolbox 中的处理函数。 原始图像如下: 二、算法分析 对于给出的图像中有灰色的噪声,因此首先处理灰色的线条,根据其方差的大小来判断其所在行。对于两条白色的噪声,根据与前后两行的对比来判断其所在位置。程序中设定灰色线条处理的均方差门限为0.1,白线处理的标准为与前后两行的差值超过0.2(转换为double型)。滤除噪声之后再通过中值滤波、拉普拉斯图像增强等方式对图像进行处理。 三、matlab 源程序 clear all;clc; f=imread('girl_noise.jpg'); figure,imshow(f),title('原始图像'); [m,n]=size(f); f0= im2double(f); % 整型转换为 double 类 f1=f0; std_i=zeros(1,m-2); %灰线处理 for i=2:m-1 %灰线处理 std_i(i-1)=std(f0(i,:)); if(std_i(i-1)<0.1) for j=1:m f0(i,j)=(f0(i-1,j)+f0(i+1,j))/2; end

end end figure,imshow(f0),title('滤除灰线后的图像'); fz=f0-f1; [r,c]=find(fz~=0);%寻找灰线噪声的位置 f2=f0; change=0; count=0; for i=3:m-2 %白线处理 for j=1:m if(abs(f0(i,j)-f0(i-1,j))>0.2&&abs(f0(i,j)-f0(i+1,j))>0.2) count=count+1; end if(count>n*0.8) count=0; change=1; break; end end if(change==1) for k=1:m f0(i,k)=(f0(i-1,k)+f0(i+1,k))/2; end change=0; count=0; end end figure,imshow(f0),title('滤除白线后的图像'); fz1=f2-f0; [r1,c1]=find(fz1~=0); %寻找白线噪声的位置 fn = medfilt2(f0); %反射对称填充 figure, imshow(fn),title('中值滤波后的图像'); f0 = im2double(fn); % 整型转换为 double 类 g =2*f0- imfilter(f0,w4, 'replicate'); % 增强后的图像 figure, imshow(g),title('高提升滤波图像(A=2)');

实验二空域图像增强

实验三空域图像增强 一、实验目的与要求 1、掌握灰度直方图的概念及其计算方法; 2、熟练掌握直力图均衡化和直方图规定化的计算过程; 3、熟练掌握空域滤波中常用的平滑和锐化滤波器; 4、掌握色彩直方图的概念和计算方法 5、利用MATLAB程序进行图像增强。 二、实验内容与步骤 1、图像的直方图与直方图均衡方法 a. 从硬盘加载cameraman.tif图象(using function imread). b. 显示图象. c. 显示图象的直方图(using function imhist). d. 用直方图均衡方法进行图象增强. e. 对处理后的图象显示其直方图. f. 比较图象的质量并且进行讨论. 代码如下: I=imread(‘原图像名.gif); % 读入原图像 J=histeq(I); %对原图像进行直方图均衡化处理 Imshow(I); %显示原图像 Title(‘原图像’); %给原图像加标题名 Figure;imshow(J); %对原图像进行屏幕控制;显示直方图均衡化后的图像 Title(‘直方图均衡化后的图像’) ; %给直方图均衡化后的图像加标题名 Figure; subplot(1,2,1) ;%对直方图均衡化后的图像进行屏幕控制;作一幅子图作为并排两幅图的第1幅图 Imhist(I,64); %将原图像直方图显示为64级灰度 Title(‘原图像直方图’) ; %给原图像直方图加标题名 Subplot(1,2,2); %作第2幅子图 Imhist(J,64) ; %将均衡化后图像的直方图显示为64级灰度 Title(‘均衡变换后的直方图’) ; %给均衡化后图像直方图加标题名 从处理前后的图像可以看出,许多在原始图像中看不清楚的细节在直方图均衡化处理后所得到的图像中都变得十分清晰。 2、对图象加入躁声,改变噪声参数(均值、方差或比例),比较其影响。使用3x3或7x7的均值滤波器、中值滤波器对不同强度的高斯噪声和椒盐噪声,进行滤波处理;能够正确地评价处理的结果;能够从理论上作出合理的解释。相关程序: I=imread('electric.tif'); J = imnoise(I,'gauss',0.05,0.02); %添加均值为0.05,方差为0.02的高斯噪声%J = imnoise(I,'salt& pepper',0.02); %添加2%像素被污染的椒盐噪声 ave1=fspecial('average',3); %产生3×3的均值模版ave2=fspecial('average',7); %产生7×7的均值模版

实验四图像增强

信息工程学院实验报告 课程名称:数字图像处理Array 实验项目名称:实验四图像增强实验时间:2016.11.08 班级::学号: 一、实验目的 1.了解图像增强的目的及意义,加深对图像增强的感性认识,巩固所学理论知识。 2. 掌握图像空域增强算法的基本原理。 3. 掌握图像空域增强的实际应用及MATLAB实现。 4. 掌握频域滤波的概念及方法。 5. 熟练掌握频域空间的各类滤波器。 6.掌握怎样利用傅立叶变换进行频域滤波。 7. 掌握图像频域增强增强的实际应用及MATLAB实现。 二、实验步骤及结果分析 1. 基于幂次变换的图像增强 程序代码: clear all; close all; I{1}=double(imread('fig534b.tif')); I{1}=I{1}/255; figure,subplot(2,4,1);imshow(I{1},[]);hold on I{2}=double(imread('room.tif')); I{2}=I{2}/255; subplot(2,4,5);imshow(I{2},[]);hold on for m=1:2 Index=0; for lemta=[0.5 5] Index=Index+1; F{m}{Index}=I{m}.^lemta; subplot(2,4,(m-1)*4+Index+1),imshow(F{m}{Index},[]) end end 执行结果:

图1 幂次变换增强结果 实验结果分析: 由实验结果可知,当r<1时,黑色区域被扩展,变的清晰;当r>1时,黑色区域被压缩,变的几乎不可见。 2.直方图规定化处理 程序代码: clear all clc close all %0.读图像 I=double(imread('lena.tiff')); subplot(2,4,1); imshow(I,[]); title('原图') N=32; Hist_image=hist(I(:),N); Hist_image=Hist_image/sum(Hist_image); Hist_image_cumulation=cumsum(Hist_image);%累 计直方图 subplot(245); stem(0:N-1,Hist_image); title('原直方图'); %1.设计目标直方图 Index=0:N-1; %正态分布直方图 Hist{1}=exp(-(Index-N/2).^2/N); Hist{1}=Hist{1}/sum(Hist{1}); Hist_cumulation{1}=cumsum(Hist{1}); subplot(242); title('规定化直方图1'); %倒三角形状直方图 Hist{2}=abs(2*N-1-2*Index); Hist{2}=Hist{2}/sum(Hist{2}); Hist_cumulation{2}=cumsum(Hist{2}); subplot(246); stem(0:N-1,Hist{2}); title('规定化直方图2'); %2. 规定化处理 Project{1}=zeros(N); Project{2}=zeros(N); Hist_result{1}=zeros(N); Hist_result{2}=zeros(N); for m=1:2 Image=I; %SML处理(SML,Single Mapping Law单映射规则 for k=1:N Temp=abs(Hist_image_cumulation(k)-Hist_cumulati on{m}); [Temp1,Project{m}(k)]=min(Temp); end %2.2 变换后直方图 for k=1:N

空域图像增强实验报告

一、实验名称:空域图像增强 二、实验目的:掌握Matlab语言图像工具箱中空域图像增强的实现 三、实验要求: 在掌握图像灰度调整、直方图修正和图像锐化的指令基础上,编写程序实现图像的灰度变换,直方图均衡和图像锐化的处理 四、实验仪器和设备:计算机,Matlab软件 五、实验原理: 1、亮度变换S=T(r)点对点的变换(灰度级对灰度级的变换)matlab函数:imadjust() 亮度变换的基本函数g=imadjust(f,[low in high in],[low out high out],gamma); low in and high in 参数分别指定输入图像需要映射的灰度空间范围,low out 和high out 参数分别指定输出图像所在的灰度范围。GAMMA表示曲线的形状,描述输入输出图像之间的关系。如果GAMMA小于1,则映射的权重趋势向更亮输出,如果GAMMA大于1,则趋向更暗的输出。默认值为1。 2、直方图均衡化 直方图是多种空间域处理技术的基础,能有效用于图像增强,是实时图像处理的流行工具,直方图均衡化的目的是使图像在整个灰度值动态变化范围内分布均匀化,改善图像的亮度分布状态,增强视觉效果。直方图均衡化是通过灰度变换将一幅图像转换程另一幅具有均衡性的直方图。即在每个灰度级上都具有相同的像素点数的过程。 3、空域滤波 手工滤波与函数提供滤波器的比较 六、实验步骤: 1、将待处理图片拷到matlab软件’work’文件夹 2、实行亮度变换 3、对图像进行直方图均衡处理 4、空域滤波 5、记录实验结果并分析 七、实验程序及结果记录: 1、亮度变换 I=imread(‘E:\fig308.tif’); Imshow(I); Figure,imhist(I); J=imadjust(I,[0.5 0.9],[0,1]); Figure; imshow(J); Figure; imhist(J) 2、直方图均衡化 I=imread(‘E:\fig308.tig’); J=histea(I); Imshow(I); Title(‘原图像’); Figure; Imshow(J); Title(‘直方图均衡化后的图像’);

数字图像实验报告

图像处理实验报告 1、实验目的: (1)用高斯低通滤波器对图像进行处理,并了解效果以及产生该效果的原因。 (2)生成图片,并对该图片进行多种滤波器处理:算术均值,几何均值,谐波均值,逆谐波均值,中值滤波,中点滤波,最大,最小值滤波等。并分析比较。 2、实验思路: (1) 先将原图像进行零填充,然后再FFT。使用函数paddedsize.计算图像FFT所用的填充尺寸,获得填充参数,使用dftuv函数获得U,V的值,代入高斯滤波器传递函数,最后通过频域滤波得到图像。 (2)实验要求的滤波器都可以用自定义函数spfilt实现。主要的难点在于是spfilt函数的使用。 3、实验代码 (1) f = imread('c.bmp'); subplot(2,2,1),imshow(f,[]), title('原始图像'); PQ = paddedsize(size(f));%用函数paddedsize获得填充参数 [U,V]= dftuv(PQ(1),PQ(2));%计算PQ1*PQ2大小的矩形每一点到矩形原点距离的平方 D0=30; H = exp(-(U.^2 +V.^2)/(2*(D0^2)));%高斯滤波传递函数 for i=1:1:10; F = fft2(f,PQ(1),PQ(2));%得到有填充的傅里叶变换 g = dftfilt(f,H);%频域处理得到滤波图像 f=g; end;

subplot(2,2,2),imshow(g,[]), title('D0=30'); D0=30;%改变循环的值重复以上步骤 H = exp(-(U.^2 +V.^2)/(2*(D0^2))); for i=1:1:20; F = fft2(f,PQ(1),PQ(2)); g = dftfilt(f,H); f=g; end; subplot(2,2,3),imshow(g,[]), title('20次滤波'); D0=30; H = exp(-(U.^2 +V.^2)/(2*(D0^2))); for i=1:1:50; F = fft2(f,PQ(1),PQ(2)); g = dftfilt(f,H); f=g; end; subplot(2,2,4),imshow(g,[]), title('50次滤波'); (2) tk = 1 : 17+7 : (17+7)*10; I = zeros(210+10*2, (17+7)*10); for i = 1 : length(tk)-1 I(10:10+210, tk(i+1):tk(i+1)+6) = 1; end

相关主题
文本预览
相关文档 最新文档