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

上传人:b****8 文档编号:9889015 上传时间:2023-02-07 格式:DOCX 页数:22 大小:2.76MB
下载 相关 举报
多媒体图像处理第1次实验报告.docx_第1页
第1页 / 共22页
多媒体图像处理第1次实验报告.docx_第2页
第2页 / 共22页
多媒体图像处理第1次实验报告.docx_第3页
第3页 / 共22页
多媒体图像处理第1次实验报告.docx_第4页
第4页 / 共22页
多媒体图像处理第1次实验报告.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

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

《多媒体图像处理第1次实验报告.docx》由会员分享,可在线阅读,更多相关《多媒体图像处理第1次实验报告.docx(22页珍藏版)》请在冰豆网上搜索。

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

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

实验一Matlab图像处理基础

一、实验目的

1.了解Matlab的基本功能及操作方法

2.练习图像读写和显示函数的使用方法

3.掌握Matlab支持的五类图像的显示方法(灰度、索引、黑白、彩色等)

4.熟悉常用的图像文件格式与格式转换;

二、实验内容

1.图像的读写

A)图像读

RGB=imread('ngc6543a.jpg');

imshow(RGB);

B)图像写

先从一个.mat文件中载入一幅图像,然后利用图像写函数imwrite,创建一个.bmp文件,并将图像存入其中。

loadclown;

whos;

imwrite(X,map,'clown.bmp');

imshow('clown.bmp');

C)图像文件格式转换

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','crop');%逆时针旋转10°

subplot(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图像显示如下:

whos

BW2=uint8(BW1);

figure,imshow(BW2,'notruesize');

BW2图像显示如下:

BW3=BW2~=0;%逻辑标志置为on

figure,imshow(BW3,'notruesize')

BW3图像显示如下:

whos

BW=imread('circles.png');

imshow(BW);

BW图像显示如下:

figure,imshow(~BW);

BW图像取反显示如下:

figure,imshow(BW,[100;001]);

BW图像以特定颜色显示如下:

F)灰度图像的显示

I=imread('testpat1.tif');

J=filter2([12;-1-2],I);

imshow(I)

figure,imshow(J,[])

图像I显示如下:

图像J显示如下:

G)索引图像的显示

loadclown%装载一幅图像

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,128,1,27));%27帧文件mri.tif初始化

forframe=1:

27

[mri(:

:

:

frame),map]=imread('mri.tif',frame);%读入每一帧

end

imshow(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]=imread('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语句功能十分强大,一条语句可完成十分复杂的任务。

它大大加快了工程技术人员从事软件开发的效率。

据MathWorks公司声称,Matlab软件中所包含的Matlab源代码相当于70万行C代码。

3)易学易用性:

Matlab不需要用户有高深的数学知识和程序设计能力,不需要用户深刻了解算法及编程技巧。

2.MatLab软件可以支持哪些图像文件格式?

GIF、BMP、TIFF、PCX、JPG、PSD。

3.如何显示多帧图像的所有帧?

如何根据多帧图像创建电影片段?

imshow(X(:

:

:

3),map)的形式显示所有帧,montage在矩形框中同时显示多幅图像。

immovie创建多帧索引图的电影动画。

4.图像显示时,若不带参数’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=uint8(J);%转换为uint8

subplot(132),imshow(rice2)

J=I*1.5-60;

rice3=uint8(J);%转换为uint8

subplot(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=imread('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后的图像如下:

 

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

当前位置:首页 > 经管营销 > 财务管理

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1