已阅读5页,还剩14页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目录图像处理实验(一)1MATLAB初步(2学时)1图像处理实验(二)3图像运算(4学时)3图像处理实验(三)8直方图(2学时)8图像处理实验(四)11图像变换(2学时)11图像处理实验(五)13图像增强(4学时)13图像处理实验(六)17图像压缩(4学时)17图像处理实验(一)MATLAB初步(2学时)一、实验目的:1. 熟悉MATLAB的工作环境2. 掌握图像的读取和显示3. 如何得到一副图像的基本信息4. 图像类型的转化二、实验原理计算机只能处理数字图像,数字图像在计算机中是以矩阵的形式存储的。MATLAB中能够处理四种类型的图形,分别是二值图像、灰度图像、索引图像以及彩色图像。每一种类型的图像的特征是不一样的,我们可以利用MATLAB中提供的图像类型转换函数进行相互转换。三、实验步骤:实验准备:先获取一些图片信息,包括二值图像,灰度图像,彩色图像1. 在MATLAB中利用imread函数读取一副图像F=Imread(test.bmp);2. 利用size函数得到这幅图像的行数和列数Size f3. 利用whos函数得到这幅图像的基本信息Whos(f)4. 利用imshow显示这幅图像Imshow(f)四、实验仪器1. 计算机;2. MATLAB程序;3. 移动式存储器(软盘、U盘等)。4. 记录用的笔、纸。五、实验报告内容1. 叙述实验过程;2. 提交实验的原始图像和结果图像。图像处理实验(二)图像运算(4学时)一、实验目的:1. 熟悉MATLAB的工作环境2. 掌握图像的基本运算:点运算、代数运算以及几何运算二、实验原理数字图象处理的算法很多,有对图像进行线性运算的,也有对多个图像进行处理的,还有从图像中提取特征的。我们按照图像处理的输入输出形式,可以将图像处理的算法可分为一下三种形式。1)单幅图像 单幅图像 。 2)多幅图像 单幅图像。3)单(或多)幅图像 数字或符号等。一、点运算1)点运算是简单而常用的一种技术。对于一幅输入图像,经过点运算得到一副输出图像,输出图像的每个像素的灰度值仅有相应输入像素的灰度值决定。2)点运算的种类(1)线性点运算点运算由灰度变换函数(gray-scale transformation, GST)确定。%f2(线性点运算增加亮度值)RGB=imread(flowers.tif);RGB2=imadd(RGB,50);RGB3=imadd(RGB,100);subplot(1,3,1),imshow(RGB);subplot(1,3,2),imshow(RGB2);subplot(1,3,3),imshow(RGB3);(2)非线性点运算二、代数运算代数运算是对两幅输入图像进行点对点的加,减,乘,除运算而得到输出图像的运算。图像的代数运算在图像处理中有着广泛的应用,它除了可以实现自身所需要的算术操作,还能为许多复杂的图像处理提供准备。%f3(加法运算:两图像相加) i=imread(rice.tif);j=imread(cameraman.tif);k=imadd(i,j); 注意:图片具有相同的大小,如果不同可以在画板中修改属性subplot(1,3,1),imshow(i);subplot(1,3,2),imshow(j);subplot(1,3,3),imshow(k);%f4(减法运算减背景)rice=imread(rice.tif);background=imopen(rice,strel(disk,15);rice2=imsubtract(rice,background);subplot(1,2,1),imshow(rice);subplot(1,2,2),imshow(rice2);%f5(减法运算图像相减)rice=imread(rice.tif);pout=imread(pout.tif);c=imsubtract(rice,pout);subplot(1,2,2),imshow(c);%不能这样相减%提示使用 Z = imlincomb(1.0, X, -1.0, Y)三、几何运算几何运算可以改变图像中物体之间的空间关系。这种运算可以看成是图像内的各物体在图像内移动的过程。例如,物体的转动、扭曲、倾斜、拉伸等等,都是几何运算的结果。 %f9 (图像平移)用translate函数也可以实现以上功能: I = imread(lenna原始图片.png);se = translate(strel(1), 25 25);J = imdilate(I,se);imshow(I), title(Original)figure, imshow(J), title(Translated);但是它始终保持原图像大小,当图像向右下移动时,有部分图像被剪切掉了。%f10(投影变换) I=imread( lenna原始图片.png );udata=0 1;vdata=0 1;tform=maketform(projective,0 0;1 0;1 1;0 1,.-4 2;-8 -3;-3 -5;6 3);B,xdata,ydata=imtransform(I,tform,bicubic,udata,udata,. vdata,vdata,size,size(I),fill,128);subplot(1,2,1),imshow(udata,vdata,I),axis on;subplot(1,2,2),imshow(xdata,ydata,B),axis on;%f11图像缩放1) 图像放大1.25 当然也可以缩小i=imread(lenna原始图片.png );j=imresize(i,1.25);imshow(i);figure,imshow(j);%f13(图像旋转与裁剪) i=imread(lenna原始图片.png );j=imrotate(i,60,bilinear);j1=imrotate(i,60,bilinear,crop);subplot(1,3,1),imshow(i);subplot(1,3,2),imshow(j);subplot(1,3,3),imshow(j1);%f14求一幅图像的梯度图像(边缘)j=zeros(512,512); 注意图像的大小是512*512i map=imread(灰度图片.gif );i=double(i);a=0;b=0;for m=1:511 for n=1:511 a=i(m,n)-i(m+1,n); b=i(m,n)-i(m,n+1); a=abs(a);b=abs(b); if ab j(m,n)=a; else j(m,n)=b; endif j(m,n)3 j(m,n)=0; else j(m,n)=255; end endendimshow(j,0 255);三、实验步骤:实验准备:先获取一些图片信息,包括二值图像,灰度图像,彩色图像,然后根据实验内容的提示在计算机上验证。四、实验仪器1. 计算机;2. MATLAB程序;3. 移动式存储器(软盘、U盘等)。4. 记录用的笔、纸。五、实验报告内容1. 叙述实验过程;2. 提交实验的原始图像和结果图像。图像处理实验(三)直方图(2学时)一、 实验目的:灰度直方图是数字图像处理中很重要的元素。灰度变换是图像增强的一种重要手段,使图像对比度扩展,图像更加清晰,特征更加明显。灰度级的直方图给出了一幅图像概貌的描述,通过修改灰度直方图来得到图像增强。二、实验步骤:1、 灰度直方图(1)计算出一幅灰度图像的直方图clearclose allI=imread(004.bmp);imhist(I)title(实验一(1) 直方图);(2) 对灰度图像进行简单的灰度线形变换, figure subplot(2,2,1) imshow(I); title(试验2-灰度线性变换); subplot(2,2,2) histeq(I);(3) 看其直方图的对应变化和图像对比度的变化。原图像 f(m,n) 的灰度范围 a,b 线形变换为图像 g(m,n),灰度范围a,b公式: g(m,n)=a+(b-a)* f(m,n) /(b-a)figuresubplot(2,2,1)imshow(I)J=imadjust(I,0.3,0.7,0,1,1);title( 实验一(3)用 g(m,n)=a+(b-a)* f(m,n) /(b-a)进行变换 );subplot(2,2,2)imshow(J)subplot(2,2,3)imshow(I)J=imadjust(I,0.5 0.8,0,1,1);subplot(2,2,4)imshow(J)(4) 图像二值化 (选取一个域值,(5) 将图像变为黑白图像)figuresubplot(2,2,1)imshow(I)J=find(I=150);I(J)=255;title( 实验一(4)图像二值化 ( 域值为150 ) );subplot(2,2,2)imshow(I) clc; I=imread(14499.jpg); bw=im2bw(I,0.5);%选取阈值为0.5 figure; imshow(bw) %显示二值图象%灰度图象的直方图数据clcclearfn=rice.tif;I=imread (fn);J=I;%计算灰度图象的直方图数据L=256; %灰度级 Ps = zeros(L,1); %统计直方图结果数据nk=zeros(L,1);row,col=size(I);n=row*col; %总像素个数for i = 1:rowfor j = 1:colnum = double(I(i,j)+1; %获取像素点灰度级nk(num,1) = nk(num,1)+1; %统计nk endend%计算直方图概率估计for i=1:LPs(i,1)=nk(i,1)/n; endfigure(1),subplot(3,1,1);imshow(J),title(原图);subplot(3,1,2),plot(nk),title(直方图(nk));subplot(3,1,3),plot(Ps),title(直方图(Ps));%figure(4),imhist(hist);%p=imhist(hist); %生成直方图函数,返回灰度图象直方图数据%figure(5),plot(p);四、实验仪器5. 计算机;6. MATLAB程序;7. 移动式存储器(软盘、U盘等)。8. 记录用的笔、纸。五、实验报告内容3. 叙述实验过程;4. 提交实验的原始图像和结果图像。图像处理实验(四)图像变换(2学时)一、实验目的1了解图像变换的意义和手段;2熟悉离散傅里叶变换、离散余弦变换的基本性质;3熟练掌握图像变换的方法及应用;4通过实验了解二维频谱的分布特点;5通过本实验掌握利用MATLAB编程实现数字图像的变换。二、实验原理1应用各种离散变换进行图像处理傅里叶变换是线性系统分析的一个有力工具,它能够定量地分析诸如数字化系统、采样点、电子放大器、卷积滤波器、噪音和显示点等的作用。通过实验培养这项技能,将有助于解决大多数图像处理问题。对任何想在工作中有效应用数字图像处理技术的人来说,把时间用在学习和掌握博里叶变换上是很有必要的。2图像变换的基本原理(1)傅立叶(Fourier)变换的定义对于二维信号,二维Fourier变换定义为:二维离散傅立叶变换为:图像的傅立叶变换与一维信号的傅立叶变换变换一样,有快速算法。实际上,现在有实现傅立叶变换的芯片,可以实时实现傅立叶变换。(2)离散余弦变换(DCT)的定义其逆变换为离散余弦变换是图像压缩中常用的一个变换编码方法,任何实对称函数的傅里叶变换中只含余弦项,就成为余弦变换,因此余弦变换是傅里叶变换的特例。余弦变换与傅里叶变换一样有明确的物理意义,是简化傅里叶变换的重要方法。3利用MATLAB软件实现数字图像傅立叶变换、离散余弦变换:(1)二维离散傅立叶变换I=imread(*.gif); %读入原图像文件imshow(I); %显示原图像fftI=fft2(I); %二维离散傅立叶变换sfftI=fftshift(fftI); %直流分量移到频谱中心RR=real(sfftI); %取傅立叶变换的实部II=imag(sfftI); %取傅立叶变换的虚部A=sqrt(RR.2+II.2);%计算频谱幅值A=(A-min(min(A)/(max(max(A)-min(min(A)*225); %归一化figure; %设定窗口imshow(A); %显示原图像的频谱(2)离散余弦变换参见课本第45页例3.3。三、实验步骤1. 打开计算机,安装和启动MATLAB程序;程序组中“work”文件夹中应有待处理的图像文件;2. 利用MatLab工具箱中的函数编制FFT频谱显示的函数;3. a).调入、显示“实验一”获得的图像;图像存储格式应为“.gif”; b)对这三幅图像做FFT并利用自编的函数显示其频谱;c)讨论不同的图像内容与FFT频谱之间的对应关系。4. 记录和整理实验报告。四、实验仪器1计算机;2 MATLAB程序;3移动式存储器(软盘、U盘等)。4记录用的笔、纸。五、实验报告1叙述实验过程;2提交实验的原始图像和结果图像。六、思考题1傅里叶变换有哪些重要的性质?2图像的二维频谱在显示和处理时应注意什么?图像处理实验(五)图像增强(4学时)一、实验目的:1.掌握通过直接灰度变化来实现图像增强线性拉伸和非线性拉伸2.掌握基于灰度直方图的图像增强方法:直方图均衡化、直方图规定化3.掌握空间滤波增强技术平滑滤波(邻域平均,中值滤波)4.学会用Matlab中的下列函数对输入图像进行上述5类运算;感受各种不同的图像处理方法对最终图像效果的影响。Imhist;histeq;nlfilter;mean2;std2;fspecial;filter2;medfilt2;二实验内容:实验内容一:直接灰度变化来实现图像增强分段线性拉伸获取实验用图像:Fig3.10(b).jpg. 使用imread函数将图像读入Matlab。产生灰度变换函数T1,使得:0.3r r 0.65用T1对原图像Fig3.10(b).jpg进行处理,打印处理后的新图像。实验内容二:直接灰度变化来实现图像增强非线性拉伸15.9744r5 r 0.5 (r 0.5)0.2+ 0.12 r 0.5获取实验用图像:Fig3.10(b).jpg. 使用imread函数将图像读入Matlab。产生灰度变换函数T2,使得:s = 用T2对原图像Fig3.10(b).jpg进行处理,打印另一处理后的新图像。实验内容三:直方图均衡化(histogram equalization)以及直方图匹配(histogram matching)1 仔细阅读Matlab帮助文件中有关以上函数的使用说明,能充分理解其使用方法并能运用它们完成实验内容。2 将Fig3.20(a).jpg图像文件读入Matlab,对其作直方图均衡化和直方图匹配运算,显示运算前后该图像的直方图,处理后的图像和灰度变换函数。指定的直方图如下:n =1400rr57000-310r5r209005r20r1801440+8r180r225306012r225r255实验内容四:邻域平均以及中值滤波将Fig5.10(a).jpg图像文件读入Matlab,用fspecial函数生成一33邻域平均窗函数,再用filter2函数求邻域平均,试比较与用nlfilter 函数求邻域平均的速度。最后用medfilt2函数对图像进行中值滤波。要求显示用各种方法处理后的结果。三实验步骤:实验内容一%1figure;subplot(4,3,1);i=imread(Fig3.10(b).jpg);i=im2double(i);imshow(i);title(1);%2subplot(4,3,2);r=0:0.001:1;s=r0.35.*r*0.3+r=0.35.*(0.105+2.6333*(r-0.35)+r0.65.*(1+0.3*(r-1);plot(r,s);title(2p,);subplot(4,3,3);T1=i0.35.*i*0.3+i=0.35.*(0.105+2.6333*(i-0.35)+i0.65.*(1+0.3*(i-1);imshow(T1);title(2i,);imwrite(T1,Fig3.10(b)_T1.jpg,jpg);实验内容二%1figure;subplot(4,3,1);i=imread(Fig3.10(b).jpg);i=im2double(i);imshow(i);title(1);%2subplot(4,3,4);r=0:0.001:1;s=r0.5.*(r-0.5).0.2+0.12);plot(r,s);title(3p,);subplot(4,3,5);T2=i0.5.*(i-0.5).0.2+0.12);imshow(T2);title(3i,);imwrite(T2,Fig3.10(b)_T2.jpg,jpg);实验内容三%1subplot(3,2,1);i=imread(Fig3.20(a).jpg);imhist(i);title(org hist);subplot(3,2,2);i=im2double(i);imshow(i);title(org img);subplot(3,2,3);iee=histeq(i);imhist(iee);title(hist hsit);subplot(3,2,4);imshow(iee);title(histed img);r=1:255;n=1400*r.*r5.*r20.*r180.*r=225+3060-12*r.*r225;subplot(3,2,5);ie=histeq(i,n);ie=ie*255;ie=uint8(ie);imhist(ie);title(after histogram matching hist);subplot(3,2,6);imshow(ie);title(after histogram matching img);figure;subplot(3,2,1);plot(r,n);title(2 :r ,n fuctoin);此外:(直方图均衡化) 来自幻灯片i=imread(pout.tif);subplot(1,2,1),imshow(i);subplot(1,2,2),imhist(i);i2=histeq(i);figure,subplot(1,2,1),imshow(i2);subplot(1,2,2),imhist(i2);实验内容四%1figure;i4=imread(Fig5.10(a).jpg);i4=im2double(i4);subplot(3,2,1);imshow(i4);title(4 :org img );h = fspecial(average,3 3); %生成一33邻域平均窗函数Y = filter2(h,i4); %求邻域平均subplot(3,2,2);imshow(Y);title(fspecial and filter img);YY=medfilt2(i4); %中值滤波subplot(3,2,3);imshow(YY);title(medfilt2 img);四、实验仪器9. 计算机;10. MATLAB程序;11. 移动式存储器(软盘、U盘等)。12. 记录用的笔、纸。五、实验报告内容5. 叙述实验过程;6. 提交实验的原始图像和结果图像。图像处理实验(六)图像压缩(4学时)一、 实验目的1 理解有损压缩和无损压缩的概念;2 理解图像压缩的主要原则和目的; 3 了解几种常用的图像压缩编码方式。4 利用MATLAB程序进行图像压缩。5二、 实验原理1.图像压缩原理图像压缩主要目的是为了节省存储空间,增加传输速度。图像压缩的理想标准是信息丢失最少,压缩比例最大。不损失图像质量的压缩称为无损压缩,无损压缩不可能达到很高的压缩比;损失图像质量的压缩称为有损压缩,高的压缩比是以牺牲图像质量为代价的。压缩的实现方法是对图像重新进行编码,希望用更少的数据表示图像。信息的冗余量有许多种,如空间冗余,时间冗余,结构冗余,知识冗余,视觉冗余等,数据压缩实质上是减少这些冗余量。高效编码的主要方法是尽可能去除图像中的冗余成分,从而以最小的码元包含最大的图像信息。编码压缩方法有许多种,从不同的角度出发有不同的分类方法,从信息论角度出发可分为两大类。(1).冗余度压缩方法,也称无损压缩、信息保持编码或嫡编码。具体说就是解码图像和压缩编码前的图像严格相同,没有失真,从数学上讲是一种可逆运算。(2)信息量压缩方法,也称有损压缩、失真度编码或烟压缩编码。也就是说解码图像和原始图像是有差别的,允许有一定的失真。应用在多媒体中的图像压缩编码方法,从压缩编码算法原理上可以分为以下3类:(1)无损压缩编码种类哈夫曼(Huffman)编码,算术编码,行程(RLE)编码,Lempel zev编码。(2)有损压缩编码种类预测编码,DPCM,运动补偿;频率域方法:正交变换编码(如DCT),子带编码;空间域方法:统计分块编码;模型方法:分形编码,模型基编码;基于重要性:滤波,子采样,比特分配,向量量化;(3)混合编码。有JBIG,H261,JPEG,MPEG等技术标准。本实验主要利用MATLAB程序进行离散余弦变换(DCT)压缩和行程编码(Run Length Encoding, RLE)。1) 离散余弦变换(DCT)图像压缩原理离散余弦变换DCT在图像压缩中具有广泛的应用,它是JPEG、MPEG等数据压缩标准的重要数学基础。和相同图像质量的其他常用文件格式(如GIF(可交换的图像文件格式),TIFF(标签图像文件格式),PCX(图形文件格式)相比,JPEG是目前静态图像中压缩比最高的。JPEG比其他几种压缩比要高得多,而图像质量都差不多(JPEG处理的图像只有真彩图和灰度图)。正是由于其高压缩比,使得JPEG被广泛地应用于多媒体和网络程序中。JPEG有几种模式,其中最常用的是基于DCT变换的顺序型模式,又称为基本系统(Baseline)。用DCT压缩图像的过程为:(1)首先将输入图像分解为88或1616的块,然后对每个子块进行二维DCT变换。(2)将变换后得到的量化的DCT系数进行编码和传送,形成压缩后的图像格式。用DCT解压的过程为:(1)对每个88或1616块进行二维DCT反变换。(2)将反变换的矩阵的块合成一个单一的图像。余弦变换具有把高度相关数据能量集中的趋势,DCT变换后矩阵的能量集中在矩阵的左上角,右下的大多数的DCT系数值非常接近于0。对于通常的图像来说,舍弃这些接近于0的DCT的系数值,并不会对重构图像的画面质量带来显著的下降。所以,利用DCT变换进行图像压缩可以节约大量的存储空间。压缩应该在最合理地近似原图像的情况下使用最少的系数。使用系数的多少也决定了压缩比的大小。在压缩过程的第2步中,可以合理地舍弃一些系数,从而得到压缩的目的。在压缩过程的第2步,还可以采用RLE和Huffman编码来进一步压缩。2)行程编码(RLE)原理:例如如下这幅的二值图像,如果采用行程编码可以按如下格式保存其中10和8表示图像的宽和高。在这个小例子中行程编码并没有起到压缩图像的作用。这是由于这个图的尺寸过小,当图像尺寸较大时行程编码还是不错的无损压缩方法。对于灰度图像和二值图像,用行程编码般都有很高的压缩率。行程编码方法实现起来很容易,对于具有长重复值的串的压缩编码很有效,例如:对于有大面积的阴影或颜色相同的图像,使用这种方法压缩效果很好。很多位图文件格式都采用行程编码,如TIFF,PCX,GEM,BMP等。3. 图像压缩编码的MATLAB程序语句1) 利用DCT变换进行图像压缩的MATLAB程序RGB = imread(*.tif);I = rgb2gray(RGB);J = dct2(I);imshow(log(abs(J),), colormap(jet(64), colorbarJ(abs(J) 10) = 0;K = idct2(J);figure,imshow(I)figure,imshow(K,0
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026事业单位工勤技能-重庆-重庆食品检验工一级(高级技师)历年参考题库含答案详解
- 2026事业单位工勤技能-重庆-重庆殡葬服务工五级(初级工)历年参考题库含答案详解
- 2026事业单位工勤技能-重庆-重庆园林绿化工一级(高级技师)历年参考题库含答案详解
- 2026事业单位工勤技能-辽宁-辽宁经济岗位工三级(高级工)历年参考题库含答案详解
- 2026事业单位工勤技能-辽宁-辽宁广播电视天线工四级(中级工)历年参考题库含答案详解
- 2026事业单位工勤技能-贵州-贵州环境监测工一级(高级技师)历年参考题库含答案详解
- 2026事业单位工勤技能-贵州-贵州家禽饲养员三级(高级工)历年参考题库含答案详解
- 2026事业单位工勤技能-福建-福建殡葬服务工一级(高级技师)历年参考题库含答案详解
- 2026事业单位工勤技能-福建-福建农业技术员五级(初级工)历年参考题库含答案详解
- 2026事业单位工勤技能-甘肃-甘肃收银员五级(初级工)历年参考题库含答案详解
- 2026年污水处理厂安全试题及答案
- 2025年山东省安全员职业资格B证考试试题试卷(含答案)
- 中国心肺复苏指南(2026年更新版)
- 广泛性焦虑障碍诊疗中国指南2025
- 【完整版】南宁市2026年教师招聘笔试考题+答案解析
- 维生素B族课件
- 针灸工作制度及操作规范
- 2025年四川省宜宾市辅警招聘考试题题库(含参考答案)
- 秋季安全施工培训课件
- DB4201∕T 693-2024 建筑与市政工程软弱地基基础技术规程
- 物流司机制度管理制度
评论
0/150
提交评论