实验五 图像增强 空域滤波
- 格式:docx
- 大小:1.38 MB
- 文档页数:8
计算机与信息工程学院验证性实验报告一、实验目的1.掌握怎样利用傅立叶变换进行频域滤波 2.掌握频域滤波的概念及方法 3.熟练掌握频域空间的各类滤波器 4.利用MATLAB 程序进行频域滤波二、实验原理及知识点频域滤波分为低通滤波和高通滤波两类,对应的滤波器分别为低通滤波器和高通滤波器。
频域低通过滤的基本思想:G (u,v )=F (u,v )H (u,v )F (u,v )是需要钝化图像的傅立叶变换形式,H (u,v )是选取的一个低通过滤器变换函数,G (u,v )是通过H (u,v )减少F (u,v )的高频部分来得到的结果,运用傅立叶逆变换得到钝化后的图像。
理想地通滤波器(ILPF)具有传递函数:01(,)(,)0(,)ifD u v D H u v ifD u v D ≤⎧=⎨>⎩其中,0D 为指定的非负数,(,)D u v 为(u,v )到滤波器的中心的距离。
0(,)D u v D =的点的轨迹为一个圆。
n 阶巴特沃兹低通滤波器(BLPF)(在距离原点0D 处出现截至频率)的传递函数为201(,)1[(,)]nH u v D u v D =+与理想地通滤波器不同的是,巴特沃兹率通滤波器的传递函数并不是在0D 处突然不连续。
高斯低通滤波器(GLPF)的传递函数为222),(),(σv u D ev u H =其中,σ为标准差。
相应的高通滤波器也包括:理想高通滤波器、n 阶巴特沃兹高通滤波器、高斯高通滤波器。
给定一个低通滤波器的传递函数(,)lp H u v ,通过使用如下的简单关系,可以获得相应高通滤波器的传递函数:1(,)hp lp H H u v =-利用MATLAB 实现频域滤波的程序f=imread('room.tif');F=fft2(f); %对图像进行傅立叶变换%对变换后图像进行队数变化,并对其坐标平移,使其中心化 S=fftshift(log(1+abs(F)));S=gscale(S); %将频谱图像标度在0-256的范围内 imshow(S) %显示频谱图像h=fspecial('sobel'); %产生空间‘sobel’模版 freqz2(h) %查看相应频域滤波器的图像 PQ=paddedsize(size(f)); %产生滤波时所需大小的矩阵 H=freqz2(h,PQ(1),PQ(2)); %产生频域中的‘sobel’滤波器H1=ifftshift(H); %重排数据序列,使得原点位于频率矩阵的左上角 imshow(abs(H),[]) %以图形形式显示滤波器 figure,imshow(abs(H1),[])gs=imfilter(double(f),h); %用模版h 进行空域滤波gf=dftfilt(f,H1); %用滤波器对图像进行频域滤波 figure,imshow(gs,[]) figure,imshow(gf,[])figure,imshow(abs(gs),[]) figure,imshow(abs(gf),[])f=imread('number.tif'); %读取图片PQ=paddedsize(size(f)); %产生滤波时所需大小的矩阵 D0=0.05*PQ(1); %设定高斯高通滤波器的阈值H=hpfilter('gaussian',PQ(1),PQ(2),D0); %产生高斯高通滤波器 g=dftfilt(f,H); %对图像进行滤波 figure,imshow(f) %显示原图像figure,imshow(g,[]) %显示滤波后图像三、实验步骤:1.调入并显示所需的图片;2.利用MATLAB 提供的低通滤波器实现图像信号的滤波运算,并与空间滤波进行比较。
link appraisement楚智媛 吕 吉林医药学院楚智媛(1990吉林医药学院实训中心,吕闯(1980-)男,吉林医药学院数学教研室,博士,讲师,吉林省吉林市人。
项目名称:基于SPOC混合式教学模式的高校数学建模课程改革研究项目编号:JGJX2020C65;支持单位:吉林省高教学会应用上面的式子作为中值滤波最后的结果值。
中值滤波的优点是在:它去除图像中的椒盐噪声的效果要比均值滤波的效果好很很多,因为他在抑制噪声的同时还能够保持图像的边缘尽量清晰,所以在MATLAB中我们常常要使用中值滤波来去除图像的椒盐噪声。
中值滤波同样也可以去除图像中的高斯噪声和乘性噪声等,但是它的效果却没有去除椒盐噪声的效果好。
wiener滤波Wiener滤波又称维纳滤波器,它是本身是一种使估计误差的的均方值达到最小的一种滤波手段,是一种相对平稳过程的最优估计器。
因为wiener滤波器的输出与期望的输出之间的均方误差尽可能达到最小,所以它是一种最佳的滤波器,它可用于提取出被平稳的噪声所干扰的信号。
wiener()函数对图像的噪声进行自适应滤波,它滤波器的输出是根据图像的局部的方差所决定的。
当局部的方差大的时候,那么滤波器的平滑效果就会较弱;程序运行后,线性均值滤波对椒盐噪声、高斯噪声、乘性噪声滤除对比的效果如下图2所示。
由实验结果可以看出中值滤波对去除图像中的椒盐噪声效果较好,图像增强之后的边缘清晰且椒盐噪声去除的效果也比较好,与中值滤波相比,均值滤波的效果稍弱一些,但是效果也是在可以接受的范围之内,但是自适应滤波的效果就比较差,不能满足我们对图片的处理要求。
三种滤波对乘性噪声进行图像增强仿真实验在MATLAB中,具体代码实现如下:I=imread(‘rice.png’);I=im2double(I);J=imnoise(I,’speckle’,0.05);G1=wiener2(J,[3 3]);G2=medfilt2(J,[3 3]);G3=filter2(fspecial(‘average’,3),J);图1图2图3。
实验五图像增强实验五图像增强⼀、实验⽬的1.了解灰度变换增强和空域滤波增强的Matlab实现⽅法2.掌握直⽅图灰度变换⽅法3.掌握噪声模拟和图像滤波函数的使⽤⽅法4.了解图像复原的Matlab实现⽅法⼆、实验步骤1、打开MATLAB软件,设置⼯作路径,新建M⽂件。
2、将图⽚放到当前⼯作路径下3、写⼊图像增强(包括灰度变换增强、空域滤波增强)程序保存并调试运⾏。
程序具体要求:1)灰度变换增强A)线段上像素灰度分布B)直⽅图变换(直⽅图显⽰、直⽅图灰度调节、直⽅图均衡化)2)空域滤波增强A)噪声模拟B)空域滤波空域滤波对上述噪声图像进⾏均值滤波和中值滤波,⽐较滤波效果。
总结均值滤波和中值滤波的特点及使⽤场合。
*对图像'saturn.tif'采⽤'laplacian'⾼通滤波器进⾏锐化滤波。
4、保存实验结果并完善实验报告。
三、实验程序1.灰度变换增强A)线段上像素灰度分布读⼊灰度图像‘cameraman.tif’,采⽤交互式操作,⽤improfile绘制⼀条线段的灰度值。
imshow('cameraman.tif')improfile读⼊RGB图像‘trees.tif’,显⽰所选线段上红、绿、蓝颜⾊分量的分布imshow('trees.tif')i mprofileB)直⽅图变换直⽅图显⽰读⼊图像‘trees.tif’,在⼀个窗⼝中显⽰灰度级n=64,128和256的图像直⽅图。
I=imread('trees.tif');imshow(I)figure,imhist(I,64)figure,imhist(I,128)figure,imhist(I,256)直⽅图灰度调节利⽤函数imadjust调解图像灰度范围,观察变换后的图像及其直⽅图的变化。
I=imread('trees.tif');imshow(I)figure,imhist(I)J=imadjust(I,[0.15 0.9],[0 1]);figure,imhist(J)figure,imshow(J)I=imread('cameraman.tif');imshow(I)figure,imhist(I)J=imadjust(I,[0 0.2],[0.5 1]);figure,imhist(J)figure,imshow(J)直⽅图均衡化分别对图像‘pout.tif’和‘tire.tif’进⾏直⽅图均衡化处理,⽐较处理前后图像及直⽅图分布的变化。
实验五图像增强--空域、频域滤波课程名称:数字图像处理技术实验日期:2015-11-03 成绩:班级:姓名:学号:一、实验目的1.了解图像空域滤波、频域滤波的基本操作;2.掌握噪声模拟和图像滤波函数的使用方法3. 实现彩色图像的增强。
二、实验内容1. (基础题)制作自己的GUI用户界面,实现图像在空域中的均值滤波、中值滤波、锐化滤波;(提高题)定义自己的过滤器实现锐化滤波。
2. (基础题)在GUI中,实现图像的频域滤波:低通滤波、高通滤波。
3. (基础题)在GUI中,实现彩色图像增强:伪彩色增强、假彩色增强、真彩色增强。
三、实验代码function pushbutton1_Callback(hObject, eventdata, handles)% hObject handle to pushbutton1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)clear;figureA=imread('1.jpg');B=rgb2gray(A);h1=ones(7,7)/49;B2=imfilter(B,h1);h2=ones(9,9)/81;B3=imfilter(B,h2);subplot(2,2,1);imshow(B);title('灰度图像');subplot(2,2,3);imshow(B2);title('7*7均值滤波');subplot(2,2,4);imshow(B3);title('9*9均值滤波');% --- Executes on button press in pushbutton2.function pushbutton2_Callback(hObject, eventdata, handles)% hObject handle to pushbutton2 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)clear;figureA=imread('1.jpg');B=rgb2gray(A);B2=medfilt2(B,[5 5]);B3=medfilt2(B,[9 9]);subplot(2,2,1);imshow(B);title('灰度图像');subplot(2,2,3);imshow(B2);title('5*5中值滤波');subplot(2,2,4);imshow(B3);title('9*9中值滤波');% --- Executes on button press in pushbutton3.function pushbutton3_Callback(hObject, eventdata, handles)% hObject handle to pushbutton3 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) clear;figureA=imread('1.jpg');B=rgb2gray(A);h1=[1 2 1;0 0 0;-1 -2 -1];B2=imfilter(B,h1);h2=[1 0 -1;2 0 -2;1 0 -1];B3=imfilter(B,h2);subplot(2,2,1);imshow(B);title('灰度图像');subplot(2,2,3);imshow(B2);title('水平锐化');subplot(2,2,4);imshow(B3);title('竖直锐化');% --- Executes on button press in pushbutton4.function pushbutton4_Callback(hObject, eventdata, handles)% hObject handle to pushbutton4 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) clear;figureA=imread('1.jpg');f=rgb2gray(A);subplot(2,2,1);imshow(f);f=im2double(f);F=fftshift(fft2(f));[M,N]=size(F);n = 30;D0 = 40;u0=floor(M/2);v0=floor(N/2);for u=1:Mfor v=1:ND=sqrt((u-u0)^2+(v-v0)^2);H=1/(1+(D/D0)^(2*n));G(u,v)=H*F(u,v);endendg=ifft2(ifftshift(G));g=im2uint8(real(g));subplot(2,2,4);imshow(g);% --- Executes on button press in pushbutton5.function pushbutton5_Callback(hObject, eventdata, handles)% hObject handle to pushbutton5 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) clear;figureA=imread('1.jpg');f=rgb2gray(A);subplot(2,2,1);imshow(f);f=im2double(f);F=fftshift(fft2(f));[M,N]=size(F);n = 30;D0 = 40;u0=floor(M/2);v0=floor(N/2);for u=1:Mfor v=1:ND=sqrt((u-u0)^2+(v-v0)^2);H=1/(1+(D0/D)^(2*n));G(u,v)=H*F(u,v);endendg=ifft2(ifftshift(G));g=im2uint8(real(g));subplot(2,2,4);imshow(g);% --- Executes on button press in pushbutton6.function pushbutton6_Callback(hObject, eventdata, handles)% hObject handle to pushbutton6 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) clear;figureA=imread('1.jpg');B=rgb2gray(A);subplot(1,2,1);imshow(B);title('灰度图像');Y=floor(B/64);[M,N]=size(Y);for i=1:Mfor j=1:Nswitch Y(i,j)case 0Y1(i,j,1:3)=[0 0 255];case 1Y1(i,j,1:3)=[200 0 200];case 2Y1(i,j,1:3)=[255 150 0];case 3Y1(i,j,1:3)=[255 255 0];otherwiseY1(i,j,1:3)=[255 255 255];endendendsubplot(1,2,2);imshow(Y1);% --- Executes on button press in pushbutton7.function pushbutton7_Callback(hObject, eventdata, handles)% hObject handle to pushbutton7 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) clear;figureA=imread('1.jpg');f=rgb2gray(A);subplot(1,2,1);imshow(f);title('灰度图像');[M,N]=size(f);L=255;f=double(f);f1=floor(f/64);R=f1;G=f1;B=f1;for i=1:Mfor j=1:Nswitch f1(i,j)case 0R(i,j)=0;G(i,j)=4*f(i,j);B(i,j)=L;case 1R(i,j)=0;G(i,j)=L;B(i,j)=-4*f(i,j)+2*L;case 2R(i,j)=4*f(i,j)-2*L;G(i,j)=L;B(i,j)=0;case 3R(i,j)=L;G(i,j)=-4*f(i,j)+4*L;B(i,j)=0;endendendg(:,:,1)=R;g(:,:,2)=G;g(:,:,3)=B;g=uint8(g);subplot(1,2,2);imshow(g);% --- Executes on button press in pushbutton8.function pushbutton8_Callback(hObject, eventdata, handles)% hObject handle to pushbutton8 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) clear;figureRGB=imread('1.jpg');RGB = im2double(RGB);R = RGB(:, :, 1);G = RGB(:, :, 2);B = RGB(:, :, 3);subplot(1,2,1),imshow(RGB)title('原始图像');c=R.*1.26d=G.*1.03e=B.*1.15enhance=cat(3, c, d, e);subplot(1,2,2),imshow(enhance)title('RGB手动增强的图像')四、实验结果截图五、实验体会经过很长时间学会应用这些东西。
实验四图像增强和滤波实验一.实验目的:掌握基本的图像增强方法,观察图像增强的效果,加深对灰度直方图的理解。
掌握基本的图像滤波方法,观察图像滤波的效果。
二.实验内容:对比度增强,灰度变换,直方图均衡化,图像滤波对给定的灰度的数字图像(图像文件名分别为cameraman.tif,rice.tif和pout.tif)进行如下处理:(1)统计原图像的灰度直方图,并利用直方图均衡化处理进行图像增强,同屏显示处理前后图像及其灰度直方图,比较异同,并回答数字图像均衡化后其直方图分布情况。
(2)利用图像调整函数(直接灰度调整方法)进行图像增强,同屏显示处理前后图像及其灰度直方图,比较异同,并回答数字图像均衡化后其直方图分布情况。
(3)利用函数IMNOISE,在图像(LENA256.BMP)上分别叠加高斯噪声(gaussian)和椒盐噪声(salt&peppers),对比高斯低通滤波器和均值滤波器的性能。
三、实验原理1、图像增强技术;图像滤波技术介绍图像增强是将原来不清晰的图像变得清晰或强调某些关注的特征,抑制非关注的特征,使之改善图像质量、丰富信息量,加强图像判读和识别效果的图像处理方法。
按所处理的对象不同可分为灰度图像增强和彩色图像增强。
图像非常直观,易于理解,但在实际应用中得到的图像品质并不是那么好,或在图像采集过程中不可避免的加入了噪声,因此研究快速且有效地图像增强算法成为推动图像分析和图像理解领域发展的关键内容之一。
突出图像中目标物体的某些特点、从数字图像中提取目标物的特征参数等等,这些都有利于对图像中目标的识别、跟踪和理解。
图像增强并不要求忠实地反映原始图像相反,含有某种失真(例如突出轮廓线)的图像可能比无失真的原始图像更为清晰。
在力学应用中,液体流动双折射图像的处理,物体变形图像的处理等。
按照增强处理的空间不同可分为两类:空域增强,频率增强。
前者直接在图像所在的二维空间进行增强处理,即增强构成图像的像素,包括灰度变换增强,直方图增强,图像平滑和图像锐化等。
本科生实验报告(二)姓名:学院:专业:信息安全班级:信息安全实验课程名称:数字图像处理与分析实验日期:2013 年 4 月 25 日指导教师及职称:王云峰实验成绩:开课时间:2012-2013 学年第 2 学期甘肃政法学院实验管理中心印制灰度变换(对数变换)2. 空域滤波空域滤波:基于邻域处理,应用某一模板对每个像素及其周围邻域的所有像含噪声的图像三阶Butterworth原图加噪图常用的两种非线性扩展方法:(1)对数扩展:基本形式: g(x,y)=lg[f(x,y)]实际应用中一般取自然对数变换,具体形式如下:g(x,y)=C•ln[f(x,y)+1][f(x,y)+1]是为了避免对零求对数,C为尺度比例系数,用于调节动态范围。
变换函数曲线:(2)指数扩展:基本形式: g(x,y)=bf(x,y)实际应用中,为了增加变换的动态范围,一般需要加入一些调制参数。
具体形式如下:g(x,y)=bc[f(x,y)-a]-1 ,参数a可以改变曲线的起始位置,参数c可以改变曲线的变化速率.指数扩展可以对图像的高亮度区进行大幅扩展.灰度直方图灰度直方图是灰度值的函数,它描述了图像中各灰度值的像素个数。
通常用横坐标表示像素的灰度级别,纵坐标表示对应的灰度级出现的频率(像素的个数)。
频率的计算公式为:p(r)=nr ,nr是图像中灰度为r的像素数。
常用的直方图是规格化和离散化的,即纵坐标用相对值表示。
设图像总像素为N,某一级灰度像素数为nr,则直方图表示为:p(r)= nr /N 灰度直方图反映了一幅图像的灰度分布情况。
直方图均衡化通过把原图像的直方图通过变换函数修正为分布比较均匀的直方图,从而改的反变换用下式表示.。
一、实验名称遥感图像空间域增强处理二、实验目的对图像数据采用各种图形增强算法,提高图像的目视效果,方便人工目视解译、图像分类中的样本选取等,方便以后的图像解译。
学会使用ENVI软件对遥感影像进行分析增强处理,初步掌握各种图像增强方法,并对其结果进行比较,观察增强效果。
三、实验原理空间域增强处理是通过直接改变图像中的单个像元及相邻像元的灰度值来增强图像,包括直方图增强及邻域增强。
直方图增强主要有图像拉伸、图像均衡化以及直方图规定化。
拉伸是最基本的图像处理方法,主要用于改善图像显示的对比度。
如果拉伸后的图像不理想,可以通过直方图均衡化做适当修改。
邻域增强主要通过定义卷积模板对图像进行滤波处理。
卷积滤波是通过消除特定的空间频率来增强图像,可分为低通率波、带通滤波和高通滤波,还有增强图像某些方向特征的方向滤波等。
四、数据来源本次实验所用数据来自于国际数据服务平台;landsat4-5波段30米分辨率TM影像,投影为WGS-84,影像主要为山西省大同市恒山地区,中心纬度:38.90407 中心经度:113.11840。
五、实验过程1、灰度拉伸1)打开并显示TM影像文件,从ENVI 主菜单中,选择File →Open Image File选择影像,点击Load Band 在主窗口加载影像。
2)在图像的主菜单上单击ENHANCE菜单,在下拉菜单中选择INTERECTIVE STRETCHING 菜单,在弹出的对话框的主菜单上单击STRETCH_TYPE菜单。
3)线性拉伸:单击linear,再在STRETCH对应的两个文本框中输入需要拉伸的范围,然后单击对话框上的APPLY按钮,图像显示为线性拉伸后的效果。
如图所示:4) 分段线性拉伸:单击Piecewise linear通过使用鼠标在输入直方图中放置几个点交互地限定,各点之间的部分采用线性拉伸。
如图所示:5)高斯拉伸:选择Stretch_Type>Gaussian.输入拉伸的最小和最大值,要手动地输入所需要的标准差值,选择Options > SetGaussian Stdv。
《遥感原理与应用》课程上机ENVI初步学习和影像增强处理一. 实验目的学习ENVI软件的基本操作,能够将图像进行相应变换和增强处理,在此操作中加深对理论知识的理解和掌握二.数据介绍介绍实验数据为软件自带数据,实习前应将实验数据所用图像改为本人姓名拼音原始图像三. 实验过程(一)空间域增强点运算1.线性对比度拉伸Linear Contrast Stretch)线性变换所用的变换函数是线性的或分段线性的,是将像元值的变动范围按线性关系扩展到指定范围,变换函数y=a*x+b.目的是为了改善图像的对比度,改变图像像元的灰度值。
线性对比度拉伸是系统默认的交互式拉伸。
线性拉伸的最小和最大值分别设置为 0 和 255,两者之间的所有其它值设置为中间的线性输出值具体做法如下所示:Enhance->interactive stretching,从 Interactive Contrast Stretching 对话框内,选择Stretch_Type > Linear Contrast Stretch,要限定最小和最大输入值,点击“Apply” ,把拉伸应用于显示的数据。
如图2分段线性对比度拉伸(Piecewise Linear Contrast Stretch)分段线性变换就是在一些灰度段拉伸,另一些灰度段压缩分段线性对比度拉伸可以通过使用鼠标在输入直方图中放置几个点进行交互地限定。
当在点之间提供线性拉伸时,线段在点处连接起来。
具体做法如下所示:选择Stretch_Type > Piecewise Linear.,要限定最小和最大输入值,点击“Apply” ,把拉伸应用于显示的数据。
如图3高斯对比度拉伸(Gaussian Contrast Stretch)系统默认的 Gaussian 拉伸是围绕DN平均值127的三个标准差的数据分布(centered at a mean DN of 127 with the data distributed over a range of 3 standard deviations)。
空域滤波的过程和原理
空域滤波是一种图像处理技术,它通过对图像中每一个像素的数值进行操作,来改变图像的外观和质量。
以下是空域滤波的过程和原理:
1. 图像平滑:空域滤波常用于图像平滑操作,这是通过将每一个像素的数值与其周围像素的数值进行平均或加权平均来实现的。
这样可以减少图像中的噪声和细微变化,使图像更加平滑。
2. 图像增强:空域滤波也可以用于图像的增强操作。
这是通过将每一个像素的数值与其周围像素的数值进行比较,并进行一定的算术操作,如加法或乘法来实现的。
这样可以增加图像的对比度和亮度,使图像更加清晰和鲜明。
3. 模糊和锐化:空域滤波还可以用于图像的模糊和锐化操作。
模糊操作通过在图像中每一个像素周围取平均数或加权平均数来实现,可以降低图像的细节和清晰度,使图像看起来更加模糊。
锐化操作则是通过增加图像中每一个像素的值与其周围像素的差值来实现,可以使图像的轮廓更加清晰和锐利。
4. 过滤器选择:在空域滤波中,选择合适的过滤器是很重要的。
过滤器是一个矩阵,用于定义每一个像素与周围像素之间的操作。
常用的过滤器包括平均滤波器、高斯滤波器、中值滤波器等。
不同的过滤器可以实现不同的效果,如平均滤波器可以平滑图像,高斯滤波器可以去除噪声,中值滤波器可以去除椒盐噪声等。
总的来说,空域滤波通过对图像中每一个像素的数值进行操作,实现图像平滑、增强、模糊和锐化等效果。
选择合适的过滤器可以实现不同的图像处理目标。
实验五图像增强—空域滤波一、实验目的1、进一步了解MatLab软件/语言,学会使用MatLab对图像作滤波处理,使学生有机会掌握滤波算法,体会滤波效果。
2、了解几种不同滤波方式的使用和使用的场合,培养处理实际图像的能力,并为课堂教学提供配套的实践机会。
二、实验要求(1)学生应当完成对于给定图像+噪声,使用平均滤波器、中值滤波器对不同强度的高斯噪声和椒盐噪声,进行滤波处理;能够正确地评价处理的结果;能够从理论上作出合理的解释。
(2)利用MATLAB软件实现空域滤波的程序:I=imread('electric.tif');imshow(J);J = imnoise(I,'gauss',0.02); %添加高斯噪声figure,imshow(J);J = imnoise(I,'salt & pepper',0.02); %添加椒盐噪声figure,imshow(J);ave1=fspecial('average',3) %产生3×3的均值模版ave2=fspecial('average',5) %产生5×5的均值模版K = filter2(ave1,J)/255; %均值滤波3×3figure,imshow(J);L = filter2(ave2,J)/255; %均值滤波5×5figure,imshow(L);M = medfilt2(J,[3 3]); %中值滤波3×3模板figure,imshow(M);N = medfilt2(J,[4 4]); %中值滤波4×4模板figure,imshow(N);三、实验设备与软件(1) IBM-PC计算机系统(2) MatLab软件/语言包括图像处理工具箱(Image Processing Toolbox)(3) 实验所需要的图片四、实验内容与步骤a) 调入并显示原始图像Sample2-1.jpg 。
图像增强的实验报告图像增强的实验报告引言:图像增强是数字图像处理领域中的一项重要任务。
通过改善图像的质量和清晰度,图像增强可以使我们更好地观察和分析图像中的细节。
本实验旨在探索图像增强的不同方法,并评估它们在不同场景下的效果。
实验设计:为了比较不同的图像增强方法,我们选择了一组具有不同特征的图像作为实验对象。
这些图像包括自然风景、人像和低对比度图像。
我们将使用以下三种方法进行图像增强:直方图均衡化、自适应直方图均衡化和增强对比度自适应拉伸。
实验步骤:1. 直方图均衡化:直方图均衡化是一种常用的图像增强方法,它通过重新分布图像的像素值来增强对比度。
我们首先将图像转换为灰度图像,然后计算灰度直方图。
接下来,我们使用累积分布函数对直方图进行均衡化,使得图像中的像素值分布更加均匀。
最后,我们将均衡化后的图像转换回原始图像的颜色空间。
2. 自适应直方图均衡化:直方图均衡化在某些情况下可能会导致图像的局部细节丢失。
为了解决这个问题,我们使用自适应直方图均衡化方法。
在这种方法中,我们将图像分成许多小区域,并对每个区域的直方图进行均衡化。
通过这种方式,我们可以保留图像的局部特征,并增强整体对比度。
3. 增强对比度自适应拉伸:增强对比度自适应拉伸是一种简单而有效的图像增强方法。
它通过将图像的像素值映射到一个更大的范围来增强对比度。
我们首先计算图像的平均亮度和标准差,然后使用以下公式对图像进行拉伸:enhanced_pixel = (pixel - mean) * (max_stretch / std) + mean其中,pixel是原始图像中的像素值,mean是图像的平均亮度,std是图像的标准差,max_stretch是拉伸的最大范围。
实验结果:我们将三种图像增强方法应用于不同类型的图像,并进行了对比分析。
结果显示,直方图均衡化方法在某些情况下可以显著增强图像的对比度,特别是对于低对比度图像。
然而,它可能会导致图像的噪声增加和细节丢失。
昆明理工大学信息工程与自动化学院学生实验报告实验一、空域图像增强一、实验目的1、理解空域图像增强的概念;2、掌握灰度线性变换和非线性变换的图像增强方法及应用;3、掌握灰度直方图均衡化的图像增强方法及应用;4、掌握平滑空域滤波器方法,并会用其来消除图像噪声;5、掌握锐化空域滤波器方法,并会用其来增强图像细节。
二、实验原理及基本技术路线图(方框原理图)术语“空域”指的是图像平面本身。
在空域上,图像处理方法是通过直接对图像像素的处理来实施的。
图像增强是将原来不清晰的画面变得清晰或强调某些关注的特征,抑制非关注的特征,使之改善视觉质量、丰富信息量,加强图像判读和识别效果的图像处理方法。
空域处理方法可分为两种:灰度级变换与空域滤波。
空域技术所使用的对像素的直接操作可用下式表示:()[]),(xg=,yTxf,y其中f(x,y)为输入图像,g(x,y)为输出图像,T是对图像f进行处理的操作符,它定义在像素点(x,y)所指定的空间邻近像区(简称为邻域)内。
定义像素点(x,y)的邻域的主要方法是,使用以(x,y)为中心的方形或矩形像区。
当这样的邻域的中心从左上角原点的开始遍历像素点时,将覆盖图像中不同的像区。
当T应用于每个被遍历的像素点f(x,y)时,便得到在该像素点的输出图像g(x,y)。
在计算g(x,y)时,只使用在(x,y)邻域中的像素。
在处理灰度图像并且当邻域大小为1×1时,T的形式最简单,它成为一个灰度(或亮度)级的变化函数(即,灰度变换)。
此时,g(x,y)的值仅由在(x,y)处的亮度f(x,y)来决定。
由于灰度变换T仅取决于灰度的值,与(x,y)无关,所以T可写成如下的简单形式:()r Ts=,其中,r表示图像f中相应点(x,y)的灰度,s表示图像g中相应点(x,y)的灰度。
灰度变换T通常包括灰度变换增强与直方图增强。
灰度变换增强可以通过改变图象的灰度范围及分布来实现。
在实际应用中,为了突出图像中感兴趣的研究对象,常常要求局部扩展拉伸某一范围的灰度值,或对不同范围的灰度值进行不同的拉伸处理,即分段拉伸。
实验图像的滤波增强处理实验目的1了解空域增强的基本原理2掌握平滑滤波器和锐化滤波器的使用3掌握图像中值滤波增强的使用4了解频域增强的基本原理5掌握低通滤波器和高通滤波器的使用实验原理1.空域增强空域滤波是在图像空间中借助模板对图像进行领域操作,处理图像每一个像素的取值都是根据模板对输入像素相应领域内的像素值进行计算得到的。
空域滤波基本上是让图像在频域空间内某个范围的分量受到抑制,同时保证其他分量不变,从而改变输出图像的频率分布,达到增强图像的目的。
空域滤波一般分为线性滤波和非线性滤波两类。
线性滤波器的设计常基于对傅立叶变换的分析,非线性空域滤波器则一般直接对领域进行操作。
各种空域滤波器根据功能主要分为平滑滤波器和锐化滤波器。
平滑可用低通来实现,平滑的目的可分为两类:一类是模糊,目的是在提取较大的目标前去除太小的细节或将目标内的小肩端连接起来;另一类是消除噪声。
锐化可用高通滤波来实现,锐化的目的是为了增强被模糊的细节。
结合这两种分类方法,可将空间滤波增强分为四类:1)线性平滑滤波器(低通)2)非线性平滑滤波器(低通)3)线性锐化滤波器(高通)4)非线性锐化滤波器(高通)空间滤波器都是基于模板卷积,其主要工作步骤是:1(1)将模板在图中移动,并将模板中心与图中某个像素位置重合;2(2)将模板上的系数与模板下对应的像素相乘;3(3)将所有乘积相加;(4)将和(模板的输出响应)赋给图中对应模板中心位置的像素。
1.1平滑滤波器线性低通平滑滤波器也称为均值滤波器,这种滤波器的所有系数都是正数,对3×3 的模板来说,最简单的是取所有系数为1,为了保持输出图像任然在原来图像的灰度值范围内,模板与象素邻域的乘积都要除以9。
MATLAB 提供了fspecial 函数生成滤波时所用的模板,并提供filter2 函数用指定的滤波器模板对图像进行运算。
函数fspecial 的语法格式为:h=fspecial(type)h=fspecial(type,parameters)其中参数type 指定滤波器的种类,parameters 是与滤波器种类有关的具体参数。
计算机与信息工程学院综合性、设计性实验报告
一、 实验目的
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、经过上面的处理后发现中值滤波器对椒盐噪声滤除效果很好,而对高斯噪声滤除效果却不是很好。
2、用平均滤波器时5x5的模板比起3x3的模板噪声滤除效果要好,但细节丢失较多。