数字图像处理实验报告 空域图像增强技术
空域图像增强实验报告

一、实验名称:空域图像增强二、实验目的:掌握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(‘直方图均衡化后的图像’);Figure;Subplot(1,2,1);Imhist(I,64);Title(‘原图像直方图’);Subplot(1,2,2);Imhist(J,64);Title(‘均衡变换后的直方图’);Subplot(1,2,2);Imhist(J,64);Title(‘均衡变换后的直方图’);2、空域滤波F=imread(‘E:\fig3016.tif’);W4=fspecial(‘laplacian’,1);W8=[1 1 1;-8 1;1 1 1];F=im2double(f);G4=f_imfilter(f,w4,’replicate’);G8=f_imfilter(f,w8,’replicate’);Figure;Subplot(1,3,1);Imshow(f);Title(‘原图’);Subplot(1,3,2);Imshow(g4);Title(‘中心为-4拉普拉斯的效果’);Subplot(1,3,3);Imshow(g8);Title(‘中心为-8拉普拉斯的效果’);八、实验结果分析:亮度变换直方图均衡化可以对图像进行处理,进行空域图像增强。
数字图像处理实验报告(空间域图像增强)

实验报告实验名称空间域图像增强课程名称数字图像处理姓名成绩班级学号日期地点1.实验目的(1)了解空间域图像增强的各种方法(点处理、掩模处理);(2)通过编写程序掌握采用直方图均衡化进行图像增强的方法;(3)使用邻域平均法编写程序实现图像增强,进一步掌握掩模法及其改进(加门限法)消除噪声的原理;(4)总结实验过程(实验报告,左侧装订):方案、编程、调试、结果、分析、结论。
2.实验环境(软件、硬件及条件)Windws7MATLAB 6.x or above3.实验方法对如图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('原图像直方图');%直方图均衡化ima=histeq(image1);subplot(2,2,3);%显示均衡化后的图像imshow(ima);title('直方图均衡化后图像');subplot(2,2,4);%显示直方图均衡化后的图像直方图imhist(ima);title('直方图均衡化后的直方图');本次实验的第二题,是对图像进行加噪后平滑,噪声为点噪声,分别采用不加门限的四邻域平均法和加门限的四邻域平均法进行平滑。
图像处理的MATLAB实现实验一 空域图像增强

图像处理的MATLAB 实现实验一 空域图像增强一、实验目的(1)掌握基本的空域图像增强方法,观察图像增强的效果,加深理解;(2)了解空域平滑模板的特性及其对不同噪声的影响;(3)了解空域锐化模板的特性及其对边缘的影响。
二、实验内容(1)直方图处理:直方图均衡(2)空域平滑:均值滤波、中值滤波;三、实验要求(1)用matlab 语言进行仿真实验;(2)递交实验报告,要求给出实验原理、源程序、实验结果及分析。
四、具体实验内容及要求4.1 实验内容4.1.1 直方图均衡(1)读入原图像pollen.png 并显示原图像以及直方图(2)对原图像进行直方图均衡处理(3)显示均衡后图像以及直方图。
4..1.2 图像空域平滑(1)读入原图像lena.bmp 并显示;(2)对原图像分别添加高斯噪声和椒盐噪声,并显示加噪图像;(3)采用均值滤波进行去噪处理,并显示去噪图像;(4)采用中值滤波进行去噪处理,并显示去噪图像。
4.1.3 空域锐化(1)读入原图像bridge.gif 并显示;(2)采用sobel 算子对图像进行处理,并显示结果;(3)尝试采用其他锐化模板进行处理。
4.2 实验原理4.2.1 直方图均衡实验原理对图像像素个数多的灰度级进行展宽,而对图像中像素个数少的灰度级进行压缩。
而且,输入灰度级r 与输出灰度级s 的概率密度函数()r p r 和()s p s 有如下关系()()ds dr r p s p r s = 积分形式如下()()()dw w p L r T s rr ⎰-==01 4.2.2 图像滤波 (1)、椒盐噪声的中值滤波由于椒盐噪声的出现使该点的像素比周围的亮或暗许多,如果在某个模板中,对像素由小到大重新排列,那么最暗或最亮的点一定被排在两侧,取模板中间位置的灰度值像素代替待处理图像像素的灰度值,从而达到滤除噪声的目的。
(2)、高斯噪声的均值滤波均值滤波是一种空域线性的滤波方法,用像素邻域内各像素的灰度平均值代替该像素原来的灰度值;均值滤波采用的是模板操作,将模板在图像中从左到右,从上到下的顺序移动将模板中心与每个像素重合;将模板中个系数与其对应的像素一并相乘,然后再经所有的结果一并相加;将上面相加的结果重新付给模板中心对应的像素点,那么该灰度值,就是经均值滤波后平滑后的灰度值。
《数学实验》实验报告——空域变换在图像增强中的应用

试验过程(含详细试验步骤、程序清单及异常情况记录等)
I=imread('D:\11.jpg'); subplot(2,2,1); imshow(I); 导入图像 title('原始图片'); K=imadd(I,-50); %对图像的每个像素减去一个参数 subplot(2,2,2); 进行代数运算,调整亮度 imshow(K); title('调整亮度的图片'); I=double(I); %对数运算不支持 unit8 类型,将图像转换为 double 类型 J=log(I+1); %进行灰度的对数变换 subplot(2,2,3); 进行对数变换, 调整对比 imshow(mat2gray(J)); title('调整对比度的图片'); x=[35 558 346 103]; y=[253 250 17 148]; %指定 xi 和 yi 的参数,避免交互式的处理模式 subplot(2,2,4); improfile(I,x,y),grid on内容
****
学号
****
姓名 试验 类别
****
成绩 试验 时间 2011.5.20 -2011.5.27
空域变换在图像增强中的应用
自选试验
试验问题:
1)Matlab 在图像处理中有什么显著功能? 2)图像预处理阶段中的数学原理? 3)空域变换在图像处理中反应图像的什么信息?
试验目的:
1)利用 MATLAB 程序进行图像增强; 2)掌握空域变换的概念及其原理; 3)熟练对数变换和图像加法的计算过程; 4)理解强度描述图的含义。
问题分析(可含问题的背景、相关知识、数学建模与求解的方法等) :
图像处理系统可以分为三个阶段,在获取原始图像后,首先是图像的预处理阶段,第 二是特征抽取阶段,第三是识别分析阶段。图像预处理尤为重要,而图像增强是图像预处 理中的重要方法。 图像增强是指按特定的需要突出一幅图像中的某些信息,同时,消弱或去除某些不需 要的信息的处理方法。其主要目的是处理后的图像对某些特定的应用比原来的图像更加有 效。图像增强技术主要有空域增强方法与频域增强方法。本实验以几类空域增强方法为主, 探讨对图像处理的应用。 空域增强方法指的是直接在图像所在的空间进行处理,也就是在像素组成的空间里直 接对像素进行操作。而空域增强方法又分有两类:1.基于像素点;2.基于模板。 强度描述图是将红绿蓝三色分离,各自均表达独立的线条,Matlab 图像处理工具箱提 供了 improfile 函数用于得到图像中的一条线段或多条线段强度值,并绘制图形。 对图像增加对比度有很多方法,如直方图、对数变换、gramma 等。这里只讨论对数变 换可以扩展低值灰度,压缩高值灰度,这样可以使低值灰度的图像细节更容易看清楚。对 数变换的灰度映像采用的表达式是 g x, y log( f ( x, y) 1) 。 代数运算也可以实现图像的增强,代数运算是指对两幅图像进行像素点对像素点的加 减乘除或计算而得到输出图像的运算。对于相加和相乘的情况,可以不仅有两幅图像参加 运算。 Matlab 提供了一些函数来进行图像的代数运算, 这里只探讨最基础的运算——加减。
数字图像处理实验报告——图像增强实验

实验报告课程名称数字图像处理导论专业班级_______________姓名_______________学号_______________电气与信息学院和谐勤奋求是创新2.编写函数w = genlap lacia n(n),自动产生任一奇数尺寸n的拉普拉斯算子,如5×5的拉普拉斯算子w = [ 1 1 1 1 11 1 1 1 11 1 -24 1 11 1 1 1 14.采用不同的梯度算子对b lurry_moon.tif进行锐化滤波,并比较其效果。
[I,m ap]=im read('trees.tif');I=double(I);subplo t(2,3,1)imshow(I,m ap);title(' Original Im age');[Gx,Gy]=gradie nt(I); % gradie n t calcul ationG=sqrt(Gx.*Gx+Gy.*Gy); % matrixJ1=G; % gradie nt1subplo t(2,3,2)imshow(J1,m ap);title(' Operator1 Im age');J2=I; % gradie nt2 K=find(G>=7);J2(K)=G(K);subplo t(2,3,3)im show(J2,m ap);title(' Operator2 Im age');J3=I; % gradie n t3 K=find(G>=7);J3(K)=255;subplo t(2,3,4)im show(J3,m ap);title(' Operator3 Im age');J4=I; % gradie n t4 K=find(G<=7);J4(K)=255;subplo t(2,3,5)im show(J4,m ap);title(' Operator4 Im age');J5=I; % gradie nt5 K=find(G<=7);J5(K)=0;Q=find(G>=7);J5(Q)=255;subplo t(2,3,6)im show(J5,m ap);title(' Operator5 Im age');5.自己设计锐化空间滤波器,并将其对噪声图像进行处理,显示处理后的图像;附录:可能用到的函数和参考结果**************报告里不能用参考结果中的图像1)采用3×3的拉普拉斯算子w = [ 1, 1, 1; 1 – 8 1; 1, 1, 1]滤波I=im read('moon.tif');T=double(I);subplo t(1,2,1),im show(T,[]);title('Origin al Im age');w =[1,1,1;1,-8,1;1,1,1];K=conv2(T,w,'sam e');subplo t(1,2,2)im show(K);title('Laplacian Transf orm ation');图2.9 初始图像与拉普拉斯算子锐化图像2)编写函数w = genlap lacia n(n),自动产生任一奇数尺寸n的拉普拉斯算子,如5×5的拉普拉斯算子:w = [ 1 1 1 1 11 1 1 1 11 1 -24 1 11 1 1 1 11 1 1 1 1]functi on w = genlap lacia n(5)%Com put es the Laplac ian operat orw = ones(n);x = ceil(n/2);w(x, x) = -1 * (n * n - 1);3)分别采用5×5,9×9,15×15和25×25大小的拉普拉斯算子对blurry_mo on.tif进行锐化滤波,并利用式完成图像的锐化增强,观察其有何不同,要求在同一窗口中显示。
实验二 图像空域锐化增强

数字图像处理实验报告姓名:田蕾 学号:20091202098 专业:信号与信息处理 年级:09实验二 图像空域平滑滤波一、 实验目的理解图象锐化的概念,掌握常用空域锐化增强技术。
进一步加深理解和掌握图像锐化的原理和具体算法。
理解图象锐化增强的处理过程和特点。
二、 实验内容1、一阶微分锐化增强设计程序,分别实现Roberts 、Sobel 、Priwitt 算子的锐化处理。
观察处理前后图像效果,分析实验结果和算法特点。
2、拉普拉斯锐化增强设计程序,实现拉普拉斯图像和原始图像叠加的增强处理,即{22(,)(,)(,)(,)(,)f x y f x y f x y f x yg x y -+∇∇ (拉普拉斯模板中心系数为负和拉普拉斯模板中心系数为正) 观察处理前后图像效果,分析实验结果和算法特点。
三、 实验原理Roberts 、Sobel 、Priwitt 算子都是突出图像的细节或者是增强被模糊了的细节。
因此要对图像实现锐化处理,可以用空间微分来完成,但是,这样图像的微分增强了边缘和其他的突变(如噪声)并削弱了灰度变化缓慢区域。
拉普拉斯算子具有各向同性的特点,这种滤波器的响应与滤波器作用的图像的突变方向无关。
即各向同性滤波器旋转不变,原图像旋转后进行滤波后处理给出的结果与先对图像滤波然后再进行旋转地结果相同。
四、 算法设计(含程序设计流程图)五、 实验结果及分析(需要给出原始图像和处理后的图像)原图Roberts 算子锐化处理后图像叠加图原图sobel 算子锐化处理后图像叠加图原图P r w t t 算子锐化处理后的图像叠加图原图L a p a c e 算子锐化处理后图像叠加图实验结果分析:(1)Roberts 算子,Sobel 算子和Priwitt 算子用来实现消除图像模糊地增强的方法。
即“锐化”。
此处理是为了加强图像的边界和细节。
Roberts 算子提出的是在2*2的邻域上计算对角导数,Sobel 算子提出了一种将方向差分局部均匀相结合的方法。
实验一空域图像增强技术

实验一空域图像增强技术实验一、空域图像增强技术班级: 学号: 姓名:实验时间: 实验学时:2学时一、实验目的1、结合实例学习如何在视频显示程序中增加图像处理算法;2、理解和掌握图像的线性变换和直方图均衡化的原理和应用;3、了解平滑处理的算法和用途,学习使用均值滤波、中值滤波和拉普拉斯锐化进行图像增强处理的程序设计方法;4、了解噪声模型及对图像添加噪声的基本方法。
二、实验原理1、灰度线性变换就是将图像中所有点的灰度按照线性灰度变换函数进行变换。
)],([),(y x f T y x g =⎪⎩⎪⎨⎧<≤+-<≤+-≤≤=255),(]),([),( ]),([),(0 ),(),(y x f b g b y x f by 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 k3、均值(中值)滤波是指在图像上,对待处理的像素给定一个模板,该模板包括了其周围的临近像素。
将模板中的全体像素的均值(中值)来代替原来像素值的方法。
4、拉普拉斯算子如下:⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡--------111181111拉普拉斯算子首先将自身与周围的8个像素相减,表示自身与周围像素的差异,再将这个差异加上自身作为新像素的灰度。
三、 实验步骤1、启动MATLAB 程序,对图像文件分别进行灰度线性变换(参考教材50页,例4.1)、直方图均衡化(参考教材56页,例4.6)、均值滤波(参考教材60页,例4.9)、中值滤波(参考教材64页,例4.11)和梯度锐化操作(参考教材66页,例4.12)。
数字图像处理技术-图像增强--空域、频域滤波

实验五图像增强--空域、频域滤波课程名称:数字图像处理技术实验日期: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手动增强的图像')四、实验结果截图五、实验体会经过很长时间学会应用这些东西。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程名称:
实验项目:
实验地点:
专业班级:学号:学生姓名:
指导教师:
2012年月日
实验一 空域图像增强技术
一、 实验目的
1结合实例学习如何在视频显示程序中增加图像处理算法;
2理解和掌握图像的线性变换和直方图均衡化的原理和应用;
3了解平滑处理的算法和用途,学习使用均值滤波、中值滤波和拉普拉斯锐化进行图像增强处理的程序设计方法;
4 了解噪声模型及对图像添加噪声的基本方法。
二、 实验原理
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 启动MA TLAB 程序,对图像文件分别进行灰度线性变换(参考教材57页,例4.1)、直方图均衡化、均值滤波、中值滤波和梯度锐化操作。
添加噪声,重复上述过程观察处理结果。
2记录和整理实验报告
灰度线性变换
I=imread('a.tif');
imshow(I);
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(2);imshow(uint8(I));
添加噪声
灰度线性变换
直方图均衡化
I=imread('b.tif');
figure
subplot(221);imshow(I); subplot(222);imhist(I)
I1=histeq(I);
figure;
subplot(221);imshow(I1) subplot(222);imhist(I1)
添加噪声
直方图均衡化
均值滤波
I=imread('c.tif');
[M,N]=size(I);
II1=zeros(M,N);
for i=1:16
II(:,:,i)=imnoise(I,'gaussian',0,0.01);
II1=II1+double(II(:,:,i));
if or(or(i==1,i==4),or(i==8,i==16));
figure;
imshow(uint8(II1/i));
end
end
中值滤波
I=imread('f.tif');
J=imnoise(I,'salt & pepper',0.02);
subplot(231),imshow(I);title('原始图像');
subplot(232),imshow(J);title('添加椒盐噪声图像') k1=medfilt2(J);
k2=medfilt2(J,[5,5]);
k3=medfilt2(J,[7,7]);
k4=medfilt2(J,[9,9]);
subplot(233),imshow(k1);title('3x3模板中值滤波') subplot(234),imshow(k2);title('5x5模板中值滤波') subplot(235),imshow(k3);title('7x7模板中值滤波') subplot(236),imshow(k4);title('9x9模板中值滤波')
梯度锐化操作
I=imread('b.tif');
subplot(131);imshow(I)
H=fspecial('Sobel');
H=H';
TH=filter2(H,I);
subplot(132),imshow(TH,[]); H=H';
TH=filter2(H,I);
subplot(133),imshow(TH,[])
四、实验仪器
1计算机;
2 MA TLAB程序;
3记录用的笔、纸。