matlab图像处理与动画制作课件_第1页
matlab图像处理与动画制作课件_第2页
matlab图像处理与动画制作课件_第3页
matlab图像处理与动画制作课件_第4页
matlab图像处理与动画制作课件_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、MATLAB图像处理和动画制作简述图像处理工具箱简述图像处理代数运算几何运算图像分析动画制作单幅多帧图像动画制作多幅逐帧图像动画制作多幅逐帧图像制作GIF2/16一、图像处理工具箱简述图像处理工具箱以数字图像处理理论为基础,用MATLAB语言构造出一系列用于图像数据显式与处理的函数。它可以实现:代数运算;几何运算(缩放、剪裁等);分析操作(边缘检测、四叉树分解等);增强操作(亮度、直方图均衡、消噪);图像变换(离散余弦、傅里叶);领域处理;形态学处理;彩色图像处理等。图像格式指的是存储图像文件采用的格式,有BMP、TIFF、JPEG、GIF、PCX、PSD、WMF等。图像类型是指数组数值与像素

2、颜色之间定义的关系,它与图像格式概念有所不同,MATLAB图像工具箱一般有二值图像、索引图像、灰度图像、RGB图像。3/16二、图像处理1、图像代数运算(1)加法:函数调用格式:Z=imadd(X,Y)实现:图像+图像,图像+常数例:加法运算I=imread(rice.png);K=imread(cameraman.tif);J=imadd(I,80);M=imadd(I,K);subplot(231);imshow(I);title(原图);subplot(232);imshow(J);title(加标量);subplot(234);imshow(I);title(原图1);subplot(

3、235);imshow(K);title(原图2);subplot(236);imshow(M);title(相加);4/16(2)减法:检测图像变化及运动物体,作为许多图像处理工作的准备步骤。函数调用格式: Z = imsubtract(X,Y)实现:图像-图像,图像-常数Z=imsubtract(a,b)%差值结果小于0的赋值为0,a和b大小相等Z=imabsdiff(a,b)%差值结果取绝对值例1:函数imsubtract()的应用I=imread(1.tif);K=imread(2.tif);J=imsubtract(K,I);subplot(131);imshow(I);title(

4、原图1);subplot(132);imshow(K);title(原图2);subplot(133);imshow(J);title(相减);5/16(3)乘法:实现掩模操作,即屏蔽掉图像的某些部分;实现缩放:一幅图像乘以一个常数,如果使用的缩放因子大于1,那么将增强图像的亮度,如果因子小于1则会使图像变暗,效果优于简单添加像素偏移量。函数调用格式:Z = immultiply(X,Y)例1:函数immultiply()的应用a=imread(lena.bmp); b=immultiply(a,a);c=immultiply(a,0.5);d=immultiply(a,1.5);subplo

5、t(323);imshow(a)title(原图)subplot(322);imshow(b)title(自乘)subplot(324);imshow(c)title(乘0.5)subplot(326);imshow(d)title(乘1.5)7/16(4)除法:校正成像设备的非线性影响,这在特殊形态的图像(如断层扫描等医学图像)处理中常常用到。检测两幅图像间的区别相应像素值的变化比率,而不是每个像素的绝对差异,因而称为比率变换。imdivide函数的调用格式:Z = imdivide(X,Y)例:函数imdivide()的应用a=imread(lena.bmp);background=imo

6、pen(a,strel(disk,15);a1=imdivide(a,background);subplot(131);imshow(a);title(原始图像);subplot(132);imshow(background);title(背景);subplot(133);imshow(a1);title(相除);8/16(2)裁剪: 图像裁剪函数imcrop调用格式:I=imcrop(X,rect)例:图像裁剪a=imread(lena.bmp);a1=imcrop(a,100 100 300 200);subplot(221);imshow(a);subplot(222);imshow(a

7、1);subplot(223);imshow lena.bmpI=imcrop;subplot(224);imshow(I);10/163、图像分析(1)直方图均衡化灰度直方图是灰度级的函数,它表示图像中具有某种灰度级的像素的个数,反映了图像中某种灰度出现的频率。直方图均衡化处理是把原始图像的灰度直方图从比较集中的某个灰度区间变成在全部灰度范围内的均匀分布。对图像进行非线性拉伸,重新分配图像像素值,使一定灰度范围内的像素数量大致相同,把给定图像的直方图分布改变成“均匀”分布直方图分布。例:直方图均衡化处理I=imread(pout.tif);J=histeq(I);%均衡subplot(221

8、)imshow(I)title(原图)subplot(222)imshow(J)title(均衡化)subplot(223)imhist(I)title(原图直方图)subplot(224)imhist(J)title(均衡直方图)11/16(2)图像平滑图像平滑的主要目的是减少图像噪声。图像噪声来自于多方面,有来自于系统外部的干扰(如电磁波或经电源窜进系统内部的外部噪声),也有来自于系统内部的干扰(如摄像机的热噪声,电器机械运动而产生的抖动噪声内部噪声)。实际获得的图像都因受到干扰而有噪声,噪声产生的原因决定了噪声分布的特性及与图像信号的关系。减少噪声的方法可以在空间域或在频率域处理。在空间

9、域中进行时,基本方法就是求像素的平均值或中值;在频域中则运用低通滤波技术。例:图像平滑处理I=imread(eight.tif);J=imnoise(I,salt & pepper,0.02); L=medfilt2(J,3 3); M=filter2(fspecial(average,5),J);subplot(334),imshow(I),title(原图)subplot(335),imshow(J),title(加噪)subplot(333),imshow(L),title(中值滤波)subplot(339),imshow(uint8(M),title(邻域平均)12/16三、动画制作1

10、、单幅多帧图像阵列制作动画多帧图像是一个包含多个图像的图像文件。MATLAB支持的多帧图像文件格式有HDF和TIFF两种。文件一旦被读入MATLAB中,多帧图像的显示帧数由第四维数值决定。调用montage函数可实现多帧图像显示。语法:montage(D,map)例:mri = uint8(zeros(128,128,1,27);%定义一个4维矩阵,用来存储27幅核磁共振图像 for frame=1:27%循环读出多帧图像中的每一幅图像R(:,:,:,frame),map = imread(mri.tif,frame);endmontage(R,map);%多帧显示mov=immovie(R,map);implay(mov,3)%3帧/秒14/162、多幅逐帧图像制作动画多幅逐帧图像制作动画,是将多幅图像类型相同的静帧图像连接起来以动画的形式输出例:pic=dir(C:UsersComputerDesktop新建文件夹 (3)*.tif); %取文件的数量:num a=size(pic);

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论