当前位置:文档之家› 实验四-图像增强

实验四-图像增强

实验四-图像增强
实验四-图像增强

实验四-图像增强

信息工程学院实验报告

课程名称:数字图像处理

实验项目名称:实验四 图像增强

实验时间: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(Hi

st_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);

stem([0:N-1],Hist{1});

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_cumulation{m});

[Temp1,Project{m}(k)]=min(Temp); end

%2.2 变换后直方图 for k=1:N

Temp=find(Project{m}==k); if isempty(Temp) Hist_result{m}(k)=0; else

Hist_result{m}(k)=sum(Hist_imag

e(Temp)); end end

subplot(2,4,(m-1)*4+3); stem(0:N-1,Hist_result{m}); title(['变换后的直方图',num2str(m)]); %2.3结果图 Step=256/N; for K=1:N

Index=find(I>=Step*(k-1)&I

Image(Index)=Project{m}(k); end

subplot(2,4,(m-1)*4+4),imshow(I mage,[]);

title(['变换后的结果图',num2str(m)]); end

执行结果:

原图

0.020.040.06

0.080.10

0.020.040.06

0.080.10

0.02

0.04

0.06

0.08规定化直方图2

20

40

0.050.1

0.15

0.2变换后的直方图1

变换后的结果图1

020

40

0.02

0.040.060.08

0.10.12变换后的直方图2

变换后的结果图2

图2 直方图规定化

实验结果分析:

由实验结果可知,采用直方图规定化技术后,原图的直方图逼近规定化的直方图,从而有相应的变换后的结果图1和变换后的结果图2。

3. 灰度图像常用平常、锐化滤波 程序代码:

clear all ;

close all ; %0.原图

I=double(imread('lena.tiff')); subplot(2,4,1);imshow(I,[]);tit le('原图');

%1.均值低通滤波

H=fspecial('average',5); F{1}=double(filter2(H,I)); subplot(2,4,2);imshow(F{1},[]);title('均值低通滤波'); %2.gaussian 低通滤波

H=fspecial('gaussian',7,3); F{2}=double(filter2(H,I)); subplot(2,4,3);imshow(F{2},[]);title('高斯低通滤波'); %3.增强图像=原图-均值低通滤波

F{3}=2*I-F{1};

subplot(2,4,4);imshow(uint8(F{3}),[]);title('原图-均值低通滤波'); %4.增强图像=原图-高斯低通滤波 F{4}=2*I-F{2};

subplot(2,4,5);imshow(uint8(F{4}),[]);title('原图-高斯低通滤波'); %5.'prewitt'边缘算子增强 H=fspecial('prewitt'); F{5}=uint8(I+filter2(H,I)); subplot(2,4,6);imshow(F{5},[]);title('prewitt 边缘算子增强'); %6.'soble'边缘算子增强 H=fspecial('sobel'); F{6}=uint8(I+filter2(H,I)); subplot(2,4,7);imshow(F{6},[]);title('sobel 边缘算子增强');

执行结果:

均值低通滤

高斯低通滤

原图-均值低通滤

原图-高斯低通滤

波prewitt 边缘算子增

强sobel 边缘算子增强

图3 灰色图像平滑、锐化

实验结果分析:

数字图像处理实验报告

数字图像处理实验报告 实验一数字图像基本操作及灰度调整 一、实验目的 1)掌握读、写图像的基本方法。 2)掌握MATLAB语言中图像数据与信息的读取方法。 3)理解图像灰度变换处理在图像增强的作用。 4)掌握绘制灰度直方图的方法,理解灰度直方图的灰度变换及均衡化的方 法。 二、实验内容与要求 1.熟悉MATLAB语言中对图像数据读取,显示等基本函数 特别需要熟悉下列命令:熟悉imread()函数、imwrite()函数、size()函数、Subplot()函数、Figure()函数。 1)将MATLAB目录下work文件夹中的forest.tif图像文件读出.用到imread, imfinfo 等文件,观察一下图像数据,了解一下数字图像在MATLAB中的处理就是处理一个矩阵。将这个图像显示出来(用imshow)。尝试修改map颜色矩阵的值,再将图像显示出来,观察图像颜色的变化。 2)将MATLAB目录下work文件夹中的b747.jpg图像文件读出,用rgb2gray() 将其 转化为灰度图像,记为变量B。 2.图像灰度变换处理在图像增强的作用 读入不同情况的图像,请自己编程和调用Matlab函数用常用灰度变换函数对输入图像进行灰度变换,比较相应的处理效果。 3.绘制图像灰度直方图的方法,对图像进行均衡化处理 请自己编程和调用Matlab函数完成如下实验。 1)显示B的图像及灰度直方图,可以发现其灰度值集中在一段区域,用 imadjust函 数将它的灰度值调整到[0,1]之间,并观察调整后的图像与原图像的差别,调整后的灰

度直方图与原灰度直方图的区别。 2) 对B 进行直方图均衡化处理,试比较与源图的异同。 3) 对B 进行如图所示的分段线形变换处理,试比较与直方图均衡化处理的异同。 图1.1 分段线性变换函数 三、实验原理与算法分析 1. 灰度变换 灰度变换是图像增强的一种重要手段,它常用于改变图象的灰度范围及分布,是图象数字化及图象显示的重要工具。 1) 图像反转 灰度级范围为[0, L-1]的图像反转可由下式获得 r L s --=1 2) 对数运算:有时原图的动态范围太大,超出某些显示设备的允许动态范围, 如直接使用原图,则一部分细节可能丢失。解决的方法是对原图进行灰度压缩,如对数变换: s = c log(1 + r ),c 为常数,r ≥ 0 3) 幂次变换: 0,0,≥≥=γγc cr s 4) 对比拉伸:在实际应用中,为了突出图像中感兴趣的研究对象,常常要求 局部扩展拉伸某一范围的灰度值,或对不同范围的灰度值进行不同的拉伸处理,即分段线性拉伸: 其对应的数学表达式为:

实验三 图像增强

实验三 图像增强—直方图变换 一、 实验目的 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. 结合实验内容,定性评价滤波窗口对去噪效果的影响?

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

实验四图像增强和滤波实验 一.实验目的: 掌握基本的图像增强方法,观察图像增强的效果,加深对灰度直方图的理解。掌握基本的图像滤波方法,观察图像滤波的效果。 二.实验内容:对比度增强,灰度变换,直方图均衡化,图像滤波对给定的灰度的数字图像(图像文件名分别为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

数字图像处理实验

(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.实验目的和内容 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 内的变化。

图像的对比度增强

图像的对比度增强 1.原理 增强图像对比度实际是增强原图的各部分的反差。实际中往往是通过增强原图里某两个灰度值间的动态范围来实现的。我选用的是书本上最典型的图像增强对比度。 如图所示,可以看出通过这样一个变换,原图中灰度值在0到1s 和2s 到L-1间的动态 范围减小了,而原图中灰度值在1s 和2s 间的动态范围增强了,从而这个范围内的对比度增 强了。实验中我选用的数值是s1=50,s2=120,t1=60,t2=100。 2.代码 void CImageProcessingDoc::OnImageContrast() { m_pDibInit->Save("r_temp1.bmp"); // TODO: Add your command handler code here int i,j; //循环变量 int m_Width, m_Height, m_SaveWidth; int t[256]={0},s[256]={0}; double s1=50,s2=120,t1=60,t2=100; m_Width = m_pDibInit->GetWidth(); m_Height = m_pDibInit->GetHeight(); m_SaveWidth = m_pDibInit->GetSaveWidth(); for(j=0;jm_pDibBits[j*m_SaveWidth + i]m_pDibBits[j*m_SaveWidth + i]=(unsigned char) (m_pDibInit->m_pDibBits[j*m_SaveWidth + i]*(t1/s1)); else if(m_pDibInit->m_pDibBits[j*m_SaveWidth + i]>=s1||m_pDibInit->m_pDibBits[j*m_SaveWidth + i]<=s2) m_pDibInit->m_pDibBits[j*m_SaveWidth + i]=(unsigned char)

用matlab数字图像处理四个实验

数字图像处理 实验指导书

目录 实验一 MATLAB数字图像处理初步 实验二图像的代数运算 实验三图像增强-空间滤波 实验四图像分割 第二图像基本运算 一、实验目的 1.了解图像的算术运算在数字图像处理中的初步应用。 2.体会图像算术运算处理的过程和处理前后图像的变化。 二、实验原理 图像的代数运算是图像的标准算术操作的实现方法,是两幅输入图像之间进行的点对点的加、减、乘、除运算后得到输出图像的过程。如果输入图像为A(x,y)和B(x,y),输出图像为C(x,y),则图像的代数运算有如下四种形式: C(x,y) = A(x,y) + B(x,y) C(x,y) = A(x,y) - B(x,y) C(x,y) = A(x,y) * B(x,y) C(x,y) = A(x,y) / B(x,y) 图像的代数运算在图像处理中有着广泛的应用,它除了可以实现自身所需的算术操作,

还能为许多复杂的图像处理提供准备。例如,图像减法就可以用来检测同一场景或物体生产的两幅或多幅图像的误差。 使用MATLAB的基本算术符(+、-、*、/ 等)可以执行图像的算术操作,但是在此之前必须将图像转换为适合进行基本操作的双精度类型。为了更方便地对图像进行操作,MATLAB图像处理工具箱包含了一个能够实现所有非稀疏数值数据的算术操作的函数集合。下表列举了所有图像处理工具箱中的图像代数运算函数。

表2-1 图像处理工具箱中的代数运算函数 能够接受uint8和uint16数据,并返回相同格式的图像结果。虽然在函数执行过程中元素是以双精度进行计算的,但是MATLAB工作平台并不会将图像转换为双精度类型。 代数运算的结果很容易超出数据类型允许的范围。例如,uint8数据能够存储的最大数值是255,各种代数运算尤其是乘法运算的结果很容易超过这个数值,有时代数操作(主要是除法运算)也会产生不能用整数描述的分数结果。图像的代数运算函数使用以下截取规则使运算结果符合数据范围的要求:超出数据范围的整型数据将被截取为数据范围的极值,分数结果将被四舍五入。例如,如果数据类型是uint8,那么大于255的结果(包括无穷大inf)将被设置为255。 注意:无论进行哪一种代数运算都要保证两幅输入图像的大小相等,且类型相同。三、实验步骤 1.图像的加法运算 图像相加一般用于对同一场景的多幅图像求平均效果,以便有效地降低具有叠加性质的随机噪声。直接采集的图像品质一般都较好,不需要进行加法运算处理,但是对于那些经过长距离模拟通讯方式传送的图像(如卫星图像),这种处理是必不可少的。 在MATLAB中,如果要进行两幅图像的加法,或者给一幅图像加上一个常数,可以调用imadd函数来实现。imadd函数将某一幅输入图像的每一个像素值与另一幅图像相应的像素值相加,返回相应的像素值之和作为输出图像。imadd函数的调用格式如下:Z = imadd(X,Y) 其中,X和Y表示需要相加的两幅图像,返回值Z表示得到的加法操作结果。 图像加法在图像处理中应用非常广泛。例如,以下代码使用加法操作将图2.1中的(a)、(b)两幅图像叠加在一起: I = imread(‘rice.tif’); J = imread(‘cameraman.tif’); K = imadd(I,J); imshow(K); 叠加结果如图2.2所示。

数字图像处理实验四

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

一、实验目的 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('原图像直方图') ; %给原图像直方图加标题名

数字图像处理实验报告--直方图均衡化

数字图像处理实验报告 实验名称:直方图均衡化 : 班级: 学号: 专业:电子信息工程(2+2) 指导教师:华华 实验日期:2012年5月24日

直方图均衡化 图像对比度增强的方法可以分成两类:一类是直接对比度增强方法;另一类是间接对比度增强方法。直方图均衡化是最常见的间接对比度增强方法。直方图均衡化则通过使用累积函数对灰度值进行“调整”以实现对比度的增强。 直方图均衡化处理的“中心思想”是把原始图像的灰度直方图从比较集中的某个灰度区间变成在全部灰度围的均匀分布。直方图均衡化就是对图像进行非线性拉伸,重新分配图像像素值,使一定灰度围的像素数量大致相同。直方图均衡化就是把给定图像的直方图分布改变成“均匀”分布直方图分布。 缺点: 1)变换后图像的灰度级减少,某些细节消失; 2)某些图像,如直方图有高峰,经处理后对比度不自然的过分增强。 直方图均衡化是图像处理领域中利用图像直方图对对比度进行调整的方法。 这种方法通常用来增加许多图像的局部对比度,尤其是当图像的有用数据的对比度相当接近的时候。通过这种方法,亮度可以更好地在直方图上分布。这样就可以用于增强局部的对比度而不影响整体的对比度,直方图均衡化通过有效地扩展常用的亮度来实现这种功能。 直方图均衡化的基本思想是把原始图的直方图变换为均匀分布的形式,这样就增加了象素灰度值的动态围从而可达到增强图像整体对比度的效果。设原始图像在(x,y)处的灰度为f,而改变后的图像为g,则对图像增强的方法可表述为将在(x,y)处的灰度f映射为g。在灰度直方图均衡化处理中对图像的映射函数可定义为:g = EQ (f),这个映射函数EQ(f)必须满足两个条件(其中L为图像的灰度级数): (1)EQ(f)在0≤f≤L-1围是一个单值单增函数。这是为了保证增强处理没有打乱原始图像的灰度排列次序,原图各灰度级在变换后仍保持从黑到白(或从白到黑)的排列。 (2)对于0≤f≤L-1有0≤g≤L-1,这个条件保证了变换前后灰度值动态围的一致性。 累积分布函数即可以满足上述两个条件,并且通过该函数可以完成将原图像f的分布转换成g的均匀分布。此时的直方图均衡化映射函数为: gk = EQ(fk) = (ni/n) = pf(fi) , (k=0,1,2,……,L-1) 上述求和区间为0到k,根据该方程可以由源图像的各像素灰度值直接得到直方图均衡化后各像素的灰度值。在实际处理变换时,一般先对原始图像的灰度情况进行统计分析,并计算出原始直方图分布,然后根据计算出的累计直方图分布求出fk到gk的灰度映射关系。在重复上述步骤得到源图像所有灰度级到目标图像灰度级的映射关系后,按照这个映射关系对

数字图像处理实验五

数字图像处理 实验 实验五:图像增强-空域滤波 学院:信息工程学院 姓名: 学号: 专业及班级: 指导教师:

一、 实验目的 进一步了解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); 三、实验具体实现 a) 调入并显示原始图像Sample2-1.jpg 。 b) 利用imnoise 命令在图像Sample2-1.jpg 上加入高斯(gaussian) 噪声 c)利用预定义函数fspecial 命令产生平均(average)滤波器 111191111---????--????---? ? d )分别采用3x3和5x5的模板,分别用平均滤波器以及中值滤波器,对加入噪声的图像进行处理并观察不同噪声水平下,上述滤波器处理的结果; e )选择不同大小的模板,对加入某一固定噪声水平噪声的图像进行处理,观察上述滤波器处理的结果。 f )利用imnoise 命令在图像Sample2-1.jp g 上加入椒盐噪声(salt & pepper)

实验四 图像增强

信息工程学院实验报告 课程名称:数字图像处理Array 实验项目名称:实验四图像增强实验时间: 班级:姓名:学号: 一、实验目的 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_ima ge); 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); stem([0:N-1],Hist{1}); 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)-

数字图像处理实验报告(空间域图像增强)

实验报告 实验名称空间域图像增强课程名称数字图像处理 姓名成绩 班级学号 日期地点

1.实验目的 (1)了解空间域图像增强的各种方法(点处理、掩模处理); (2)通过编写程序掌握采用直方图均衡化进行图像增强的方法; (3)使用邻域平均法编写程序实现图像增强,进一步掌握掩模法及其改进(加门限法)消除噪声的原理; (4)总结实验过程(实验报告,左侧装订):方案、编程、调试、结果、分析、结论。 2.实验环境(软件、硬件及条件) Windws7 MATLAB 6.x or above 3.实验方法 对如图4.1所示的两幅128×128、256级灰度的数字图像fing_128.img和cell_128.img 进行如下处理: (1)对原图像进行直方图均衡化处理,同屏显示处理前后图像及其直方图,比较异同, 并回答为什么数字图像均衡化后其直方图并非完全均匀分布。 (2)对原图像加入点噪声,用4-邻域平均法平滑加噪声图像(图像四周边界不处理,下同),同屏显示原图像、加噪声图像和处理后的图像。 ①不加门限; ②加门限T=(1/2)*avg(f(m,n)), 其中avg(f(m,n)=(1/N^2)*f(i,j)) 本次实验中的第一题,是对图像进行直方图统计和均衡化,在Matlab中有imhist()函数和histeq()函数直接调即可获得相应结果,代码如下: close all; clear all; fid=fopen('cell_128.img','r'); image1=fread(fid,[128,128],'uint8'); image1=uint8(image1); fclose(fid); subplot(2,2,1); %显示原图像 imshow(image1,[]); title('原图像'); subplot(2,2,2); %统计图像直方图 imhist(image1); title('原图像直方图');

实验五 图像增强 空域滤波

计算机与信息工程学院综合性、设计性实验报告 一、 实验目的 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、高斯噪声:

图像处理实验报告

武汉大学新闻与传播学院实验教学中心实验报告 专业:网络传播专业2010年10 月25 实验名称图像处理指导教师洪杰文 姓名华滢年级08 学号2008300710123 成绩 一、预习部分 1、实验目的 2、实验基本原理 3、主要仪器设备(含必要的元器件、工具) 1、实验目的:(1)熟悉和掌握数字图像的基本概念和技术指标,掌握色彩模式、图像分辨率、图像深度、图像文件格式与图像的显示效果、文件容量的关系。 (2)了解和掌握数字图像压缩的概念,观察不同的压缩比对图像的影响。 (3)了解和掌握图像中色彩的确定及选取方法,掌握前景色和背景色的概念及调整方法,掌握色彩填充的基本概念及应用。 (4)了解和掌握图像处理软件Photoshop的基本功能和基本使用方法,熟练掌握图层与选择区的基本使用方法。 (5)通过创造性的构图和对布局及色彩等的巧妙处理,一幅好的图画可以将一个主题以含蓄而又深刻的方式予以提示,并往往具有比单纯的语言文字更强的表现力。在掌握图像处理基本概念和Photoshop基本使用方法的基础上,对已有的数字图像做一些基本的创意设计和编辑处理。 2、实验基本原理:基于photoshop软件的图像处理。 3、主要仪器设备(含必要的元器件、工具):Adobe Photoshop 二、实验操作部分 1、实验操作过程 2、实验数据、观察到的实验现象 1、实验操作过程: 1.图像的基本变换 (1)自选一幅不小于400×400pixel的彩色数字图像。在Photoshop中打开该图像,记录其技术参数:文件格式、文件容量,图像尺寸(pixel和cm)、分辨率、色彩模式等。

文件格式:JPEG 图像;文件容量:59.7kb;图像尺寸(pixel和cm):600×600pixel;分辨率:72像素/英寸;色彩模式:RGB模式。 (2)对该图像重采样,要求采样后的图像分辨率为150dpi,图像尺寸为300×300pixel。色彩模式分别变换成灰度、Indexed和RGB模式,按BMP格式分别保存成不同名称的图像文件;重新打开并观察变换后的显示效果,并记录各个文件的容量。 灰度:容量大小为:88.9kb Indexed;容量大小为:88.9kb

实验六 遥感影像增强处理

实验六遥感影像增强处理 实习目的:掌握常用的遥感影像增强处理的方法。 实习内容:遥感影像空间、辐射、光谱增强处理的主要方法 空间增强:包括卷积增强处理、纹理分析、自适应滤波等 辐射增强:LUT拉伸处理、直方图均衡化处理、直方图匹配、亮度反转处理等 光谱增强:主成份变换、缨帽变换、色彩变换、指数计算等 图像增强是改善图像质量、增加图像信息量、加强图像判读和识别效果的图像处理方法。图像增强的目的是针对给定图像的不同应用,强调图像的整体或局部特性,将原来不清晰的图像变得清晰或增强某些感兴趣区域的特征,扩大图像中不同物体特征之间的差别,满足某些特殊分析的需要。图像增强的途径是通过一定的手段对原图像附加一些信息或变换数据,有选择的突出图像中感兴趣区域的特征或抑制图像中某些不需要的特征。图像增强的方法包括空间域增强和频率域增强两类。空间域增强包括空间增强、辐射增强和光谱增强。在实际运用中,不是所有的图象增强处理方法都要用到,具体采用哪种图象增强处理方法,视具体的研究区域,研究内容和对象而定。 1.图像解译功能简介(Introduction of Image Interpreter) 利用ERADS IMAGINE 进行图像增强主要采用ERADS IMAGINE的图像解译器(Image Interpreter)模块,该模块包含了50多个用于遥感图像处理的功能模块,这些功能模块在执行过程中都需要通过各种按键或对话框定义参数,多数功能都借助模型生成器(Model Maker)建立了图形模型算法,容易调用或编辑。 图像解译器(Image Interpreter或Interpreter),可以通过两种途径启动:ERDAS图标面板菜单条: Main/Image Interpreter--Image Interpreter 菜单 ERDAS图标面板工具条:点击Interpreter图标一Image Interpreter菜单

数字图像实验三图像增强

实验三、图像增强 一、实验目的 (1)熟悉并学会使用MATLAB中图像增强的相关函数。 (2)掌握图像灰度修正、平滑去噪、锐化加强边缘和轮廓的方法,并编程实现。 二、实验主要仪器设备 (1)台式机或笔记本电脑。 (2)MATLAB软件(含图像处理工具箱)。注意:由于软件版本的缘故,软件的界面可能有所差异,读者可以根据实际安装的软件选择相关的命令。 (3)典型的灰度、彩色图像文件。 三、实验原理 数码相机的曝光量指到达DC感光器件上的光线总量,用曝光值(EV)表示。图像的过度曝光、曝光不足时,用曝光补偿调节曝光量,这种功能可修正自动曝光设置值为上升或下降几级。例如,某些DC的EV调整范围为+3~0~-3。尝试对同一景象进行正确曝光、过度曝光和曝光不足三种情况成像情况。 (1)将一幅图像视为一个二维矩阵,用MATLAB进行图像增强。 (2)利用MATLAB图像处理工具箱中的函数imread(读入),imshow(显示),imnoise (加噪),filter2(滤波)对图像进行去噪处理。 (3)图像灰度修正:灰度变换。对不满意的图像通过线性或非线性灰度映射关系进行变换,其效果可以得到明显提高。通过分析,会发现变换前后图像的直方图 也发生相应的变化。 (4)图像平滑方法:领域平均、中值滤波。分析图像降质的性质,区分平稳性还是非平稳型、加性还是乘性等,采用合适的去噪方法,可以去除或降低噪声对图 像的影响。从频率域看,平均操作在降低噪声的同时衰减了图像的高频分量, 会影响图像细节的重现。中值滤波对某些信号具有不变形,适用于消除图像中 的突发干扰,但如果图像含有丰富的细节,则不宜使用。 (5)图像锐化方法:人眼对目标的边缘和轮廓较为敏感,对图像进行锐化,有助于突出图像的这些特征。从频率域看,锐化提升了图像的高频分量。 四、实验内容 MATLAB图像增强:①图像灰度修正;②图像平滑方法;③图像锐化方法。 五、实验步骤 MATLAB图像增强。 (1)图像灰度修正。测试图像为pout.tif、tire.tif。读入一幅灰度级分布不协调的图像,分析其直方图。根据直方图,设计灰度变换表达式,或调用imadjuct函数。调 整变换表达式的参数,直到显示图像的灰度级分布均衡为止。 (2)不均匀光照的校正。测试图像为pout.tif。采用分块处理函数blkproc和图像相减函数imsubtract校正图6.6存在的不均匀光照现象。 (3)三段线性变换增强。测试图像为eight.tif。选择合适的转折点,编程进行三段线

数字图像处理实验报告

数字图像处理实验 报告 学生姓名:学号: 专业年级: 09级电子信息工程二班

实验一常用MATLAB图像处理命令 一、实验内容 1、读入一幅RGB图像,变换为灰度图像和二值图像,并在同一个窗口内分成三个子窗口来分别显示RGB图像和灰度图像,注上文字标题。 实验结果如右图: 代码如下: Subplot (1,3,1) i=imread('E:\数字图像处理\2.jpg') imshow(i) title('RGB') Subplot (1,3,2) j=rgb2gray(i) imshow(j) title('灰度') Subplot (1,3,3) k=im2bw(j,0.5) imshow(k) title('二值') 2、对两幅不同图像执行加、减、乘、除操作,在同一个窗口内分成五个子窗口来分别显示,注上文字标题。 实验结果如右图: 代码如下: Subplot (3,2,1) i=imread('E:\数字图像处理 \16.jpg') x=imresize(i,[250,320]) imshow(x) title('原图x') Subplot (3,2,2) j=imread(''E:\数字图像处理 \17.jpg') y=imresize(j,[250,320]) imshow(y) title('原图y') Subplot (3,2,3) z=imadd(x,y) imshow(z)

title('相加结果');Subplot (3,2,4);z=imsubtract(x,y);imshow(z);title('相减结果') Subplot (3,2,5);z=immultiply(x,y);imshow(z);title('相乘结果') Subplot (3,2,6);z=imdivide(x,y);imshow(z);title('相除结果') 3、对一幅图像进行灰度变化,实现图像变亮、变暗和负片效果,在同一个窗口内分成四个子窗口来分别显示,注上文字标题。 实验结果如右图: 代码如下: Subplot (2,2,1) i=imread('E:\数字图像处理 \23.jpg') imshow(i) title('原图') Subplot (2,2,2) J = imadjust(i,[],[],3); imshow(J) title('变暗') Subplot (2,2,3) J = imadjust(i,[],[],0.4) imshow(J) title('变亮') Subplot (2,2,4) J=255-i Imshow(J) title('变负') 二、实验总结 分析图像的代数运算结果,分别陈述图像的加、减、乘、除运算可能的应用领域。 解答:图像减运算与图像加运算的原理和用法类似,同样要求两幅图像X、Y的大小类型相同,但是图像减运算imsubtract()有可能导致结果中出现负数,此时系统将负数统一置为零,即为黑色。 乘运算实际上是对两幅原始图像X、Y对应的像素点进行点乘(X.*Y),将结果输出到矩阵Z中,若乘以一个常数,将改变图像的亮度:若常数值大于1,则乘运算后的图像将会变亮;叵常数值小于是,则图像将会会暗。可用来改变图像的灰度级,实现灰度级变换,也可以用来遮住图像的某些部分,其典型应用是用于获得掩膜图像。 除运算操作与乘运算操作互为逆运算,就是对两幅图像的对应像素点进行点(X./Y), imdivide()同样可以通过除以一个常数来改变原始图像的亮度,可用来改变图像的灰度级,其典型运用是比值图像处理。 加法运算的一个重要应用是对同一场景的多幅图像求平均值 减法运算常用于检测变化及运动的物体,图像相减运算又称为图像差分运算,差分运算还可以用于消除图像背景,用于混合图像的分离。

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