1一、读取图像使用函数imread可以将图像读入MATLAB环境,其语法格式为:imread('filename')其中,filename是一个含有图像文件全名的字符串。常用图像操作2当filename中不包含任何路径信息时,imread会从当前目录中寻找并读取图像文件。要想读取指定路径中的图像,最简单的办法就是在filename中输入完整的路径。例如,I=imread('D:\myimages\lena.bmp');从驱动器D上名为myimages的文件夹中读取图像文件lena.bmp。对于索引色图像,读取格式为:[X,map]=imread('filename')常用图像操作3二、图像显示imshow是最常用的显示图像的函数,有以下几种格式:■imshow(I,n)用于显示灰度图像,n为灰度级数目,默认值为256。在很多情况下,经过处理的图像数据的值域都会发生变化。比如对一幅double类型的灰度图像滤波后,图像数据的值域已不在[0,1]中了,如果还用前面的显示方法,则得不到正确的结果。常用图像操作4如果清楚地知道数据的值域[lowhigh],可以使用命令imshow(I,[lowhigh])。否则可用空向量为参数,即imshow(I,[])。■imshow(BW)用于显示二值图像。■imshow(RGB)用于显示真彩色图像。■imshow(X,map)用于显示索引色图像。常用图像操作5绘制直方图最简单的方法是使用未指定输出的函数imhist。例:绘制一幅灰度图像的直方图。imhist(I)直方图的绘制6直方图均衡化MATLAB图像处理工具箱提供了用于直方图均衡化的函数histeq,其格式为:J=histeq(I,n)其中,I为输入图像,n为输出图像指定的灰度级数,n的默认值为64。7添加噪声MATLAB图像处理工具箱提供了模拟噪声生成的函数imnoise,它可以对图像添加一些典型的噪声,其格式为:(1)g=imnoise(f,'gaussian',m,var)将均值为m、方差为var的高斯噪声加到图像f上。默认值为均值是0,方差是0.01的噪声。(2)g=imnoise(f,'salt&pepper',d)将噪声密度为d(即包含噪声值的图像区域的百分比)的椒盐噪声加到图像f上。默认的噪声密度为0.05。8添加噪声(3)g=imnoise(f,‘speckle',var)用方程g=f+n×f将乘性噪声添加到图像f上,其中n是均值为0、方差为var的均匀分布的随机噪声。var的默认值为0.04。例:对下面的图像eight.tif分别加入高斯噪声、椒盐噪声和乘性噪声。9添加噪声I=imread('rice.tif');J1=imnoise(I,'gaussian',0,0.02);J2=imnoise(I,'salt&pepper',0.02);J3=imnoise(I,'speckle',0.02);subplot(2,2,1),imshow(I)subplot(2,2,2),imshow(J1)subplot(2,2,3),imshow(J2)subplot(2,2,4),imshow(J3)10空间域平滑—均值滤波MATLAB图像处理工具箱提供了基于卷积的图像滤波函数filter2,其格式为:B=filter2(h,A,'full')其中,A为输入图像,h为滤波算子,'full'表示滤波后的图像与原图像A的大小相同。11空间域平滑—均值滤波最典型的S为3×3邻域,这时均值滤波的模板为:11111111191M这样,将模板在待处理图像中逐点滑动,与图像相卷积,就可得到整幅图像的平滑。12空间域平滑—均值滤波例:对一幅灰度图像lena.bmp添加高斯噪声,并进行均值滤波。(滤波模板大小为3×3)I=imread('lena.bmp');subplot(1,3,1),imshow(I)title('原始图像')J=imnoise(I,'gaussian',0,0.02);subplot(1,3,2),imshow(J)title('加噪图像')13空间域平滑—均值滤波I=imread('lena.bmp');h=[111;111;111];h=h/9;%产生3×3的均值滤波模板J1=filter2(h,J,'same');%用均值模板对图像J滤波subplot(1,3,3),imshow(J1,[])title('均值滤波结果')14空间域平滑—中值滤波MATLAB图像处理工具箱提供了用于实现中值滤波的函数medfilt2,其格式为:B=medfilt2(A,[mn])用大小为m×n的窗口对图像A进行中值滤波,窗口大小的默认值为3×3。15空间域平滑—中值滤波例:对一幅灰度图像lena.bmp添加椒盐噪声,并进行中值滤波。(滤波窗口大小为3×3)I=imread('lena.bmp');subplot(1,3,1),imshow(I)title('原始图像')J=imnoise(I,'salt&pepper',0.1);subplot(1,3,2),imshow(J)title('加噪图像')J1=medfilt2(J);%用3×3的滤波窗口对图像J进行中值滤波subplot(1,3,3),imshow(J1)title('中值滤波结果')16实验一空域图像增强一、实验目的(1)掌握基本的空域图像增强方法,观察图像增强的效果,加深理解;(2)了解空域平滑模板的特性及其对不同噪声的影响;(3)了解空域锐化模板的特性及其对边缘的影响。17实验一空域图像增强二、实验内容(1)直方图处理:直方图均衡(2)空域平滑:均值滤波、中值滤波;三、实验要求(1)用matlab语言进行仿真实验;(2)递交实验报告,要求给出实验原理、源程序、实验结果及分析。18实验一空域图像增强四、实验图像lena.bmphouse.tifpollen.png19实验一空域图像增强五、具体实验内容及要求1.直方图均衡实验内容(1)读入原图像pollen.png并显示原图像以及直方图(2)对原图像进行直方图均衡处理(3)显示均衡后图像以及直方图。要求:分析直方图能够改善视觉效果的原因20实验一空域图像增强五、具体实验内容及要求2.空域平滑实验内容(1)读入原图像lena.bmp并显示;(2)对原图像分别添加高斯噪声和椒盐噪声,并显示加噪图像;(3)采用均值滤波进行去噪处理,并显示去噪图像;(4)采用中值滤波进行去噪处理,并显示去噪图像。21实验一空域图像增强要求:(1)观察模板大小(窗口尺寸)对图像去噪效果的影响(选用3×3、5×5、7×7)。(2)观察均值滤波和中值滤波对不同噪声的滤除效果