搜索
您的当前位置:首页正文

DIP数字图像处理实验

来源:好走旅游网
1.实验项目名称:基于Matlab语言的数字图像处理基本操作 2.实验目的

(1)掌握基于Matlab语言的数字图像处理基本操作,包括数字图像读取、显示、存储以及格式转换等操作,数字图像的点、代数和几何运算等;

(2)熟练掌握几种空域图像增强与滤波方法,包括直方图增强、平滑滤波、锐化滤波等。

3.实验内容与实验步骤

(1)数字图像的读、写和显示

使用函数imread 打开一幅灰度图像,使用函数imwrite 将图像另存为不同的文件名;在此过程中观察图像矩阵的形式,并记录5×5的矩阵片断;

使用函数size察看图像大小,使用函数imfinfo查看图像信息;记录图像信息;使用函数imshow显示图像。

(2)图像类型间的转化

使用函数imread打开一幅RGB彩色图像。观察图像矩阵的形式,并分别记录RGB三色5×5的矩阵片断;

将彩色图像变换为灰度图像和二值图像,并在同一个窗口内分成三个子窗口来分别显示RGB图像和灰度图像。

使用im2double转换图像的数据类型,记录5×5矩阵片断在转换前后的变化。

(3)图像的点运算

读入图像pout.tif(图1)或其他图像,为使低值灰度的图像细节更容易看清,应用某种线性变换,显示灰度变换前后图像。

图1 pout.tif

(4)图像的代数运算

读入两幅不同的RGB彩色图像,并对其执行加(imadd)、减(imsubtract)、乘(immultiply)、除(imdivide)操作,在同一个窗口内分别显示。

(5)图像的几何运算

读入一幅图像,采用函数imresize将图像分别放大1.5倍和缩小0.8倍,插值方法使用双线性插值法,显示原图像与变换后的图像;采用函数imrotate将图像顺时针旋转45度,显示旋转后的图像。

思考题:如何判断读入的一幅图像是否为彩色图像。 4.实验环境:计算机与Matlab软件。

实验报告

1.实验程序:

clear all,close all,clc;%清空工作区与全局变量,关闭所有窗口,清空命令区域 %%

I=imread('cell.tif');%打开灰度图像 size(I)%查看图像大小 figure;%建立窗口 imshow(I)%显示图像

imfinfo('cell.tif')%查看图像信息 imwrite(I,'cell2.tif');%另存为图像 %%

I1=imread('onion.png');%打开RGB彩色图像 I2=rgb2gray(I1);%变换为灰度图像 I3=im2bw(I1,0.5);%变换为二值图像 figure;

subplot(221),imshow(I1); subplot(222),imshow(I2);

subplot(223),imshow(I3);%在同一窗口内显示三幅图像 M=im2double(I1)%im2double转换 %%

I4=imread('pout.tif');

I5=imadjust(I4,[0.2,0.5],[0,1]);%线性变换 figure;

subplot(121),imshow(I4); subplot(122),imshow(I5); %%

X=imread('peppers.png'); Y=imread('tape.png'); Z1=imadd(X,Y);%加 Z2=imsubtract(X,Y);%减 Z3=immultiply(X,Y);%乘 Z4=imdivide(X,Y);%除 figure;

subplot(221),imshow(Z1); subplot(222),imshow(Z2); subplot(223),imshow(Z3); subplot(224),imshow(Z4); %%

B1=imresize(X,1.5,'bilinear');%放大1.5倍 B2=imresize(X,0.8,'bilinear');%缩小为0.8倍 B3=imrotate(X,-45);%逆时针旋转45度 figure;

subplot(221),imshow(X); subplot(222),imshow(B1); subplot(223),imshow(B2); subplot(224),imshow(B3);

2.程序运行结果: (1)

灰度图像矩阵片段: I =

118 116 112 111 114 117 119 114 108 110 115 116 114 108 109 114 112 108 108 112 115 114 110 111 112

图像大小: ans =

159 191

图像信息: ans =

Filename: 'D:\\Program

Files\\MATLAB\\R2014b\oolbox\\images\\imdata\\cell.tif'

FileModDate: '21-二月-2001 04:34:50' FileSize: 31028 Format: 'tif' Width: 191 Height: 159 BitDepth: 8

ColorType: 'grayscale' (2)

三色矩阵片段: I1(:,:,1) =

63 67 65 68 66 61 61 64 66 67 61 61 64 65 66 65 63 64 65 65 62 60 60 65 66 I1(:,:,2) =

35 35 32 35 36

37 35 34 35 35 36 36 37 35 35 35 36 37 35 35 35 36 36 36 34 I1(:,:,3) =

64 66 64 66 67 66 64 64 66 67 61 60 64 65 65 63 63 62 65 66 64 65 66 68 68

Im2double语句把图像数据类型转换为双精度浮点类型,像素值被标准化到0-1之间,相当于以上各元素除以255. Figure1

Figure2

Figure3

Figure4

Figure5

(对图片的缩放结果以实际大小为准)

3.思考题

可以看图像矩阵的形式区分是否为彩色图像,可以通过查看图像信息区分是否为彩色图像。

因篇幅问题不能全部显示,请点此查看更多更全内容

Top