院 系: 计算机科学学院
专 业:计算机科学与技术
年 级: 级
课 程 名 称: 数字图像处理
组 号: 02
姓名(学号):
指 导 教 师:
4月 29日
年级
级
班号
5
组号
02
学号
专业
计算机科学与技术
姓名
实验名称
Matlab图像处理基础
实验室
9
实
验
目
的
和
要
求
一、实验目的:
(1)熟悉Matlab开发环境;(2)掌握Matlab中数字图像的读取、显示、保存的基本方法的使用;
(3)掌握不同类型的数字图像之间转换方法;
(4)加深空间分辨率和灰度分辨率对图像显示效果的影响;
(5)熟悉Matlab中的傅里叶变换;(6)基于Matlab的数字图像程序设计方法;
二、实验内容:
(1)在Matlab中运用imread函数读取一幅RGB图像(从实验素材中任意选择),查看该图像的大小、数据类型信息,并将该图像转换为灰度图像后以bmp格式保存。
(2)运用imread函数读取一幅灰度图像(从实验素材中任意选择),分别对其进行2采样、4采样和8采样,将原图像及采样后的三幅结果图像按同一大小显示出来并比较空间分辨率对图像显示效果的影响。
(3)运用imread函数读取一幅灰度图像(从实验素材中任意选择),分别以5,10,50为间隔对其灰度重新进行均匀量化,将原图像及重新量化后的三幅结果图像按同一大小显示出来并比较灰度分辨率对图像显示效果的影响。
(4)读取一幅灰度图像,对其进行快速傅里叶变换,将原空域图像和变换后的频域图像显示在同一窗口中。
三、实验要求:
(1)针对具体实验内容要分别展示:指令(或m文件),输出结果,成因分析,经验总结。
(2)所有生成的图像或m文件,必须命名,比如图n:描述图像信息;***.m文件:描述文件信息。
(3)严禁抄袭,一旦发现雷同,所有涉及者均判实验报告不及格。
实
验
原
理
(
算
法
流
程
)
实验(1):
1.代码实现
I=imread('peppers.png');%将图像peppers.png读入数组I中
imshow(I); %显示图像I
imfinfo('peppers.png'); %读取图像大小、数据类型信息
ans %查看图像大小、数据类型信息
I=rgb2gray(I); %将图像转换为灰度图像I
imwrite(I,'peppers.bmp');%将转换后的图像以文件名peppers.bmp保存
2.运行结果
1-1-1图 查看Peppers.png图片的基本信息和显示图片过程
1-1-2图 将Peppers.png图片保存为peppers.bmp图片
3.实验分析
实
验
原
理
(
算
法
流
程
)
先用imread()函数将peppers.png存入I数组中,可见1-1-1图右上角的Workspace中的I。然后用imfinfo()函数和ans函数读取该图像的大小、类型等信息,具体在1-1-1图的Command Window中可见。至于图片格式的转换,就是用rgb2gray()函数将保存在I数组中的数据转换成灰度格式保存在原来的数组I中。最后将变换所得到的数据保存于peppers.bmp文件中。
实验(2):
1.代码实现
I=imread('lena.bmp');%读取灰度图片
subplot(221),imshow(I,[]),title('256*256,256')
I=I(1:2:end,1:2:end);%图片采样
subplot(222),imshow(I,[]),title('128*128,256')
I=I(1:2:end,1:2:end);%图片采样
subplot(223),imshow(I,[]),title('64*64,256')
I=I(1:2:end,1:2:end);%图片采样
subplot(224),imshow(I,[]),title('32*32,256')
2.运行结果
1-2 图 图片空间分辨率对图片的影响
3.实验分析
由1-2图可以看出,在保持灰度级数一定的条件下,随着图片空间分辨率的减半,即256*256,128*128,64*64,32*32的图像,图中的各个区域边缘处的棋盘模式越来越明显,并且全图的像素颗粒越来越粗。证明了空间分辨率是影响图片清晰度的因素之一。
实验(3):
1.代码实现
I=imread('lena.bmp');%读取灰度图片
subplot(221),imshow(I,256