收藏 分享(赏)

多媒体图像处理第1次实验报告.doc

上传人:HR专家 文档编号:11380743 上传时间:2020-04-08 格式:DOC 页数:20 大小:2.91MB
下载 相关 举报
多媒体图像处理第1次实验报告.doc_第1页
第1页 / 共20页
多媒体图像处理第1次实验报告.doc_第2页
第2页 / 共20页
多媒体图像处理第1次实验报告.doc_第3页
第3页 / 共20页
多媒体图像处理第1次实验报告.doc_第4页
第4页 / 共20页
多媒体图像处理第1次实验报告.doc_第5页
第5页 / 共20页
点击查看更多>>
资源描述

1、实验一 Matlab图像处理基础一、实验目的1. 了解Matlab的基本功能及操作方法2. 练习图像读写和显示函数的使用方法3. 掌握Matlab支持的五类图像的显示方法(灰度、索引、黑白、彩色等)4. 熟悉常用的图像文件格式与格式转换;二、实验内容1. 图像的读写A) 图像读RGB = imread(ngc6543a.jpg);imshow(RGB);B) 图像写先从一个.mat 文件中载入一幅图像,然后利用图像写函数imwrite,创建一个.bmp文件,并将图像存入其中。load clown;whos;imwrite(X,map,clown.bmp);imshow(clown.bmp);C

2、) 图像文件格式转换bitmap = imread(clown.bmp,bmp);imwrite(bitmap,clown.png,png);imshow(clown.png);转换前clown.bmp图像如下:转换后.png格式的图像如下:D) 图像综合操作利用matlab提供的函数将图像读入;编写程序实现对给定图像进行一定比例的放大和缩小处理,在Mfile编辑器中写入以下程序,全速执行:I=imread(lena.tif); %读入图像J = imresize(I,10); %放大10倍K = imresize(I,0.1); %缩小10倍L=imrotate(I,-10,bilinear

3、,crop); %逆时针旋转10subplot(2,2,1),imshow(I),title(原图); %原图subplot(2,2,2),imshow(J),title(放大10); %放大10倍subplot(2,2,3),imshow(K),title(缩小0.1); %缩小10倍subplot(2,2,4),imshow(L),title(逆时针旋转10); %逆时针转10图像处理结果如下:2. 图像显示E) 二进制图像的显示BW1=zeros(20,20);%创建仅包含0/1的双精度图像BW1(2:2:18,2:2:18)=1;imshow(BW1,notruesize);BW1图像

4、显示如下:whosBW2=uint8(BW1);figure,imshow(BW2,notruesize);BW2图像显示如下:BW3=BW2=0; %逻辑标志置为onfigure,imshow(BW3,notruesize)BW3图像显示如下:whosBW=imread(circles.png);imshow(BW);BW图像显示如下:figure,imshow(BW);BW图像取反显示如下:figure,imshow(BW,1 0 0;0 0 1);BW图像以特定颜色显示如下:F) 灰度图像的显示I=imread(testpat1.tif);J=filter2(1 2;-1 -2,I);i

5、mshow(I)figure,imshow(J,)图像I显示如下:图像J显示如下:G) 索引图像的显示load clown %装载一幅图像imwrite(X,map,clown.bmp); %保存为bmp文件imshow(X)imshow(X,map)H) RGB图像的显示I=imread(flowers.tif);imshow(I)图像I显示如下:RGB=imread(ngc6543a.jpg);figure,imshow(RGB)图像RGB显示如下:imshow(I(:,:,3)% 显示第3个颜色分量图像I的第3个分量显示如下:I) 多帧图像的显示mri=uint8(zeros(128,1

6、28,1,27); % 27帧文件mri.tif初始化 for frame=1:27 mri(:,:,:,frame),map=imread(mri.tif,frame); % 读入每一帧 endimshow(mri(:,:,:,3),map); % 显示第3帧figure,imshow(mri(:,:,:,6),map); % 显示第6帧figure,imshow(mri(:,:,:,10),map); % 显示第10帧figure,imshow(mri(:,:,:,20),map); % 显示第20帧J) 显示多幅图像X1,map1=imread(forest.tif);X2,map2=i

7、mread(trees.tif);subplot(1,2,1),imshow(X1,map1);subplot(1,2,2),imshow(X2,map2)subplot(1,2,1),subimage(X1,map1)subplot(1,2,2),subimage(X2,map2)三、思考题1.简述MatLab软件的特点。1) 可扩展性:Matlab最重要的特点是易于扩展,它允许用户自行建立指定功能的M文件。对于一个从事特定领域的工程师来说,不仅可利用Matlab所提供的函数及基本工具箱函数,还可方便地构造出专用的函数,从而大大扩展了其应用范围。2) 高效性:Matlab语句功能十分强大,一

8、条语句可完成十分复杂的任务。它大大加快了工程技术人员从事软件开发的效率。据MathWorks公司声称,Matlab软件中所包含的Matlab源代码相当于70万行C代码。3) 易学易用性:Matlab不需要用户有高深的数学知识和程序设计能力,不需要用户深刻了解算法及编程技巧。2.MatLab软件可以支持哪些图像文件格式?GIF、BMP、TIFF、PCX、JPG、PSD。3. 如何显示多帧图像的所有帧?如何根据多帧图像创建电影片段? imshow(X(:,:,:,3),map)的形式显示所有帧,montage在矩形框中同时显示多幅图像。immovie 创建多帧索引图的电影动画。4. 图像显示时,若

9、不带参数notruesize,显示效果如何?显示时按图片实际大小显示图片,窗口会自动调节大小去适应图片尺寸。5. 如何显示RGB图像的某一个颜色分量?imshow(X(;,;,i),map)的形式显示某一个颜色分量。实验二 图像运算一、实验目的1.熟悉图像点运算和代数运算的实现方法2.了解图像几何运算的简单应用3.了解图像的邻域操作二、实验内容1. 图像点运算读入图像rice.png,通过图像点运算改变对比度。rice=imread(rice.png);subplot(131),imshow(rice)I=double(rice); %转换为双精度类型J=I*0.43+60;rice2=uin

10、t8(J); %转换为uint8subplot(132),imshow(rice2)J=I*1.5-60;rice3=uint8(J); %转换为uint8subplot(133),imshow(rice3)图像显示如下:2. 图像的代数运算A) 图像加法运算I=imread(rice.png);imshow(I)图像I显示如下:J=imread(cameraman.tif);figure,imshow(J);图像J显示如下:K=imadd(I,J);figure,imshow(K)图像相加的结果显示如下:K2=imadd(I,J,uint16);figure,imshow(K2,)RGB=i

11、mread(flowers.tif);RGB2=imadd(RGB,50);imshow(RGB)figure,imshow(RGB2)图像RGB和RGB2显示如下:RGB3=imadd(RGB,100);figure,imshow(RGB3)图像RGB3显示如下:B) 图像减法运算I=imread(rice.png);imshow(I)background = imopen(I,strel(disk,15); %估计背景图像figure, imshow(background);I2=imsubtract(I,background); %从原始图像中减去背景图像figure, imshow(I2)原始图像如下:背景图像如下: 相减的图像如下:C) 图像乘除法运算I=imread(moon.tif);J=immultiply(I,1.2);K=immultiply(I,0.5);imshow(I)figure,imshow(J)figure,imshow(K)原始图像如下:乘1.2后的图像如下:乘0.5后的图像如下:

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 实用文档 > 工作总结

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报